Isi kandungan:

Cara Membuat Robot Pintar Menggunakan Arduino: 4 Langkah
Cara Membuat Robot Pintar Menggunakan Arduino: 4 Langkah

Video: Cara Membuat Robot Pintar Menggunakan Arduino: 4 Langkah

Video: Cara Membuat Robot Pintar Menggunakan Arduino: 4 Langkah
Video: Cara sederhana membuat robot arduino di rumah 2024, November
Anonim
Image
Image

hello,

Saya pembuat arduino dan dalam tutorial ini saya akan menunjukkan kepada anda bahawa cara membuat robot pintar menggunakan arduino

jika anda menyukai tutorial saya, maka pertimbangkan untuk menyokong saluran youtube saya yang bernama pembuat arduino

Bekalan

PERKARA YANG ANDA PERLU:

1) arduino uno

2) sensor ultrasonik

3) Motor Bo

4) roda

5) batang ais krim

6) Bateri 9v

Langkah 1: SAMBUNGAN

Lekatkan SEMUA KOMPONEN DI TEMPAT
Lekatkan SEMUA KOMPONEN DI TEMPAT

Selepas, dapatkan semua bekalan sekarang anda harus mula menyambungkan semua perkara mengikut gambarajah litar yang diberikan di atas

Langkah 2: Lekatkan SEMUA KOMPONEN DI TEMPAT

OKEY,

sekarang sambungkan semua perkara di tempat seperti yang ditunjukkan dalam gambar di atas

Langkah 3: PROGRAM

Sekarang,

mulakan pengaturcaraan papan dengan kod yang diberikan di bawah

// ARDUINO OBSTACLE MENGHINDARI KERETA //// Sebelum memuat naik kod, anda harus memasang perpustakaan yang diperlukan // // AFMotor Library https://learn.adafruit.com/adafruit-motor-shield/library-install // // Perpustakaan NewPing https://github.com/livetronic/Arduino-NewPing// // Perpustakaan Servo https://github.com/arduino-libraries/Servo.git // // Untuk memasang perpustakaan pergi ke lakaran >> Sertakan Perpustakaan >> Tambah. ZIP Fail >> Pilih fail ZIP yang Dimuat turun Dari pautan di atas //

#sertakan

#sertakan

#sertakan

#tentukan TRIG_PIN A0

#tentukan ECHO_PIN A1 #tentukan MAX_DISTANCE 200

#define MAX_SPEED 150 // menetapkan kelajuan motor DC

#tentukan MAX_SPEED_OFFSET 20

Sonar NewPing (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);

AF_DCMotor motor1 (1, MOTOR12_1KHZ);

// AF_DCMotor motor2 (2, MOTOR12_1KHZ); // AF_DCMotor motor3 (3, MOTOR34_1KHZ); AF_DCMotor motor4 (4, MOTOR34_1KHZ); Servo myservo;

boolean goingForward = palsu;

jarak int = 100; int speedSet = 0;

batal persediaan () {

myservo.attach (10);

myservo.write (115); kelewatan (1000); jarak = bacaPing (); kelewatan (100); jarak = bacaPing (); kelewatan (100); jarak = bacaPing (); kelewatan (100); jarak = bacaPing (); kelewatan (100); }

gelung kosong () {

int jarakR = 0; int jarakL = 0; kelewatan (40); jika (jarak <= 15) {moveStop (); kelewatan (100); bergerak ke belakang(); kelewatan (300); bergerakStop (); kelewatan (200); jarakR = lookRight (); kelewatan (300); jarakL = lookLeft (); kelewatan (300);

jika (jarakR> = jarakL)

{ belok kanan(); bergerakStop (); } lain {turnLeft (); bergerakStop (); }} lain {moveForward (); } jarak = readPing (); }

int lookRight ()

{myservo.write (50); kelewatan (650); jarak int = readPing (); kelewatan (100); myservo.write (115); jarak balik; }

int lookLeft ()

{myservo.write (170); kelewatan (650); jarak int = readPing (); kelewatan (100); myservo.write (115); jarak balik; kelewatan (100); }

int readPing () {

kelewatan (70); int cm = sonar.ping_cm (); jika (cm == 0) {cm = 250; } pulangan cm; }

batal bergerakStop () {

motor1.run (SIARAN); //motor2.run(RELEASE); //motor3.run(RELEASE); motor4.run (SIARAN); } batal moveForward () {

jika (! pergi ke hadapan)

{goingForward = benar; motor1.run (KEHADIRAN); //motor2.run(FORWARD); //motor3.run(FORWARD); motor4.run (KEHADIRAN); untuk (speedSet = 0; speedSet <MAX_SPEED; speedSet + = 2) // perlahan-lahan menaikkan kelajuan untuk mengelakkan memuatkan bateri terlalu cepat {motor1.setSpeed (speedSet); //motor2.setSpeed(speedSet); //motor3.setSpeed(speedSet); motor4.setSpeed (speedSet); kelewatan (5); }}}

batal bergerakKembali () {

pergiForward = palsu; motor1.run (LATAR BELAKANG); //motor2.run(BACKWARD); //motor3.run(BACKWARD); motor4.run (LATAR BELAKANG); untuk (speedSet = 0; speedSet <MAX_SPEED; speedSet + = 2) // perlahan-lahan menaikkan kelajuan untuk mengelakkan memuatkan bateri terlalu cepat {motor1.setSpeed (speedSet); //motor2.setSpeed(speedSet); //motor3.setSpeed(speedSet); motor4.setSpeed (speedSet); kelewatan (5); }}

kekosongan pusingan kanan () {

motor1.run (LATAR BELAKANG); //motor2.run(BACKWARD); //motor3.run(FORWARD); motor4.run (KEHADIRAN); kelewatan (350); motor1.run (KEHADIRAN); //motor2.run(FORWARD); //motor3.run(FORWARD); motor4.run (KEHADIRAN); } kekosongan turnLeft () {motor1.run (KEHADIRAN); //motor2.run(FORWARD); //motor3.run(BACKWARD); motor4.run (LATAR BELAKANG); kelewatan (350); motor1.run (KEHADIRAN); //motor2.run(FORWARD); //motor3.run(FORWARD); motor4.run (KEHADIRAN); }

Disyorkan: