0% menganggap dokumen ini bermanfaat (0 suara)
535 tayangan5 halaman

Membuat Robot Avoider Atau Robot Halang Rintang Dengan Arduino Dan Sensor Ultrasonic

Robot avoider adalah robot yang dapat menghindari halangan di depannya dengan menggunakan sensor ultrasonik dan motor DC. Ia dirancang menggunakan Arduino, sensor ultrasonik, driver motor L298N dan komponen elektronika lainnya. Program Arduino mengukur jarak halangan dengan sensor ultrasonik dan mengontrol arah laju motor sesuai kondisi.

Diunggah oleh

rizha
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
535 tayangan5 halaman

Membuat Robot Avoider Atau Robot Halang Rintang Dengan Arduino Dan Sensor Ultrasonic

Robot avoider adalah robot yang dapat menghindari halangan di depannya dengan menggunakan sensor ultrasonik dan motor DC. Ia dirancang menggunakan Arduino, sensor ultrasonik, driver motor L298N dan komponen elektronika lainnya. Program Arduino mengukur jarak halangan dengan sensor ultrasonik dan mengontrol arah laju motor sesuai kondisi.

Diunggah oleh

rizha
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 5

Membuat Robot Avoider atau Robot Halang

Rintang dengan Arduino Dan Sensor Ultrasonic

Apakah robot avoider itu ? Robot avoider adalah robot yang otomatis berjalan menghindari
segala berbagai rintangan/halangan yang ada di depannya. Robot avoider merupakan dasar
untuk membuat sebuah robot yang canggih.

Berikut ini komponen yang harus dipersiapkan :

 1 buah Arduino (bisa menggunakan Arduino UNO, MEGA, NANO, MINI atau
yang lain.
 1 buah Sensor Ultrasonic
 1 buah Driver Motor L298N
 2 buah Motor DC + Roda 
 Baterai sesuai kebutuhan, tegangan sekitar 5-12V 
 Kabel jumper secukupnya
 Breadboard/Projectboard jika diperlukan
 Software Arduino IDE

Dan berikut ini adalah skema rangkaiannya :


Keterangan Rangkaian :

 Bisa Menggunakan Segala Jenis Arduino (UNO, NANO, MEGA, MINI, dll), karena
penomoran pinnya sama. Tinggal cocokkan Saja nomor Pin-Pin nya.
 Pin Trigger sensor ultrasonic ==> Pin 3 Arduino
 Pin Echo sensor ultrasonic ==> Pin 2 Arduino
 Pin In1 Driver Motor ==> Pin 7 Arduino
 Pin In2 Driver Motor ==> Pin 6 Arduino
 Pin In3 Driver Motor ==> Pin 5 Arduino
 Pin In4 Driver Motor ==> Pin 4 Arduino
 Pin ENA-bawah Driver Motor ==> Pin 9 Arduino
 Pin ENB-bawah Driver Motor ==> Pin 9 Arduino
 Pin ENA-atas Driver Motor ==> Pin 5V Arduino
 Pin ENB-atas Driver Motor ==> Pin 5V Arduino
 OUT1 dan OUT2 Driver Motor ==> Motor 1
 OUT3 dan OUT4 Driver Motor ==> Motor 2
 Pin 12V Driver Motor ==> Hubungkan ke baterai
 Pin GND Driver Motor ==> Hubungkan ke Ground(-) Baterai dan Ground(GND)
Arduino

  Kaki vcc pada masing-masing komponen hubungkan ke sumber power positif 5v (bisa
dari 5v Arduino)

 Kaki gnd/ground pada masing-masing komponen hubungkan ke sumber negatif power


(dihubungkan ke pin gnd Arduino)

 
PROGRAM

// inialisasi pin untuk motor kanan-kiri


const int motor1 = 7;
const int motor2 = 6;
const int motor3 = 5;
const int motor4 = 4;

// inialisasi pin sensor ultrasonic


const int pinT = 3; // pin Trigger
const int pinE = 2; // pin Echo

// inialisasi variabel durasi dan jarak, pembacaan sensor ultrasonic


int durasi, jarak;

// inialisasi pin untuk pengaturan kecepatan


// wajib menggunakan pin PWM
const int pinSpeed = 9;
// inialisasi variabel penampung nilai kecepatan
int Speed;

// ------ program default/setting awal ------ //


void setup()
{
// inialisasi status I/O masing2 pin
pinMode(motor1, OUTPUT);
pinMode(motor2, OUTPUT);
pinMode(motor3, OUTPUT);
pinMode(motor4, OUTPUT);

pinMode(pinT, OUTPUT);
pinMode(pinE, INPUT);

pinMode(pinSpeed, OUTPUT);
}

// ----- program utama, looping/berulang terus-menerus ------ //


void loop()
{
// ------------- pengaturan kecepatan -------------- //
// membatasi nilai speed 0 - 255
Speed = constrain(Speed, 0, 255);
// inialisasi nilai kecepatan
// nilai kecepatan dapat diubah, batasannya antara 0 - 255
Speed = 255;
// menuliskan nilai speed pada pinSpesed
analogWrite(pinSpeed, Speed);

// ----------- mengaktifkan sensor ultrasonic -------------- //


// mengaktifkan pin trigger
digitalWrite(pinT, HIGH);
// delay 10 mikrodetik
delayMicroseconds(10);
// mematikan pin trigger
digitalWrite(pinT, LOW);

// mendapat data durasi pantulan gelombang ultrasonic


durasi = pulseIn(pinE, HIGH);
// konversi durasi ke jarak dalam satuan centimeter(cm)
jarak = ((durasi * 0.034) / 2);

// ------------ mengatur pergerakan robot --------------- s//


// jika jarak lebih besar atau sama dengan 20 cm
if (jarak >= 20)
{
// jalan maju
digitalWrite(motor1, HIGH);
digitalWrite(motor2, LOW);
digitalWrite(motor3, HIGH);
digitalWrite(motor4, LOW);
}

// jika jarak kurang dari atau sama dengan 19 cm


else if (jarak <= 19)
{
// jalan mundur selama 300 milidetik
digitalWrite(motor1, LOW);
digitalWrite(motor2, HIGH);
digitalWrite(motor3, LOW);
digitalWrite(motor4, HIGH);
delay(300);

// lalu belok kiri selama 300 milidetik


digitalWrite(motor1, HIGH);
digitalWrite(motor2, LOW);
digitalWrite(motor3, LOW);
digitalWrite(motor4, HIGH);
delay(300);
}
}

Anda mungkin juga menyukai