Cara Membuat Robot Sederhana : Robot Digital Light Follower Dengan Arduino Uno

Membuat robot digital light follower sama denagan membuat robot line follower yang teleh  kita buat sebelumnya. Baik sensor dan motornya .
Yang membedahan hanya di pemrograman arduino nya saja dan peletakan sensor phototransistornya saja.
Jika pada robot line follower sensor LDR diletakan menghadap ke lantai(ke garis lintasan) sedangkan untuk robot light follower sensor LDR diletakan menghadap kedepan.

Gambar diatas menunjukkan robot akan bergerak mengikuti arah sumber cahaya.

Jika sumber cahaya ada di sebelah kanan robot, maka motor kiri robot akan bergerak lebih cepat sehingga robot akan berbelok ke arah kanan.
Sedangkan jika sumber cahaya berada di sebelah kiri robot, maka motor kanan robot akan bergerak lebih cepat sehingga robot akan belok ke arah kiri.
Desain rangkaian robot Light Follower
Posisi Sensor robot light follower menghadap ke depan dengan posisi di kanan dan kiri robot.
Dua buah sistem sensor di pasang pada pin Analog Input A0 untuk sensor kiri dan A1 untuk sensor kanan, sedangkan sistem actuator motor DC dipasang pada Port 9 dan 6 untuk motor kiri, PORT 5 dan 3 untuk motor kanan.
light follower digital
Skema robot light follower menggunakan Arduino Uno
Prinsip kerja robot Light Follower
Saat sesnsor mendeteksi adanya cahaya maka resistensi sensor berkurang sehingga arus bergerak melalui sensor.
Sebaliknya jika sensor tidak mendeteksi adanya cahaya, resistensi sensor sangat besar sehingga arus tidak akan melalui sensor.
Logika gerakan robot Light Follower
KondisiA0 < 200A0 > 200
A1 < 200MajuBelok Kanan
A1 > 200Belok KiriDiam

KondisiPORT 9PORT 6PORT 5PORT 3
MajuLOWHIGHLOWHIGH
Belok KiriHIGHLOWLOWHIGH
Belok KananLOWHIGHHIGHLOW
DiamLOWLOWLOWLOW
Mendesain Program IDE Arduino Robot Light Follower
  1. Susun rangkain robot light follower seperti pada gambar di bawahLight Follower Robot
  2. Hubungkan Arduino ke Komputer dengan kabel USB.
  3. Buka software Arduino, dan ketik program robot light follower                                                                                          [box]//VISIBOT ROBOT LIGHT FOLLOWER DIGITAL
    //DILENGKAPI LCD DAN KOMUNIKASI SERIAL#include <LiquidCrystal.h>
    LiquidCrystal lcd(13,12,11,10,8,7);
    int kiriA = 9;
    int kiriB = 6;
    int kananA = 5;
    int kananB = 3;
    int sensorkiri = A0;
    int sensorkanan = A1;
    void setup()
    {
    lcd.begin(16,2);
    Serial.begin(9600);
    pinMode(kiriA,OUTPUT);
    pinMode(kiriB,OUTPUT);
    pinMode(kananA,OUTPUT);
    pinMode(kananB,OUTPUT);
    pinMode(sensorkiri,INPUT);
    pinMode(sensorkanan,INPUT);
    }
    void loop()
    {
    int kiri = analogRead(sensorkiri);
    int kanan = analogRead(sensorkanan);
    //Serial Program
    Serial.print(kiri);
    Serial.print(" ");
    Serial.print(kanan);
    Serial.println();
    //HIGH=hitam, LOW=putih
    if ((kiri<=200)&&(kanan>=200))
    {
    digitalWrite(kiriA,HIGH);
    digitalWrite(kiriB,LOW);
    digitalWrite(kananA,LOW);
    digitalWrite(kananB,HIGH);
    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("ki=");
    lcd.print(kiri);
    lcd.print(" ka=");
    lcd.print(kanan);
    lcd.setCursor(0,1);
    lcd.print("BELOK KIRI");
    delay(100);
    }
    else if ((kiri>=200)&&(kanan<=200))
    {
    digitalWrite(kiriA,LOW);
    digitalWrite(kiriB,HIGH);
    digitalWrite(kananA,HIGH);
    digitalWrite(kananB,LOW);
    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("ki=");
    lcd.print(kiri);
    lcd.print(" ka=");
    lcd.print(kanan);
    lcd.setCursor(0,1);
    lcd.print("BELOK KANAN");
    delay(100);
    }
    else if ((kiri>=200)&&(kanan>=200))
    {
    digitalWrite(kiriA,LOW);
    digitalWrite(kiriB,LOW);
    digitalWrite(kananA,LOW);
    digitalWrite(kananB,LOW);
    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("ki=");
    lcd.print(kiri);
    lcd.print(" ka=");
    lcd.print(kanan);
    lcd.setCursor(0,1);
    lcd.print("DIAM");
    delay(100);
    }
    else
    {
    digitalWrite(kiriA,LOW);
    digitalWrite(kiriB,HIGH);
    digitalWrite(kananA,LOW);
    digitalWrite(kananB,HIGH);
    //LCD Program
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("ki=");
    lcd.print(kiri);
    lcd.print(" ka=");
    lcd.print(kanan);
    lcd.setCursor(0,1);
    lcd.print("MAJU");
    delay(100);
    }
    }[/box]
  4. Pilih Board dan Serial PORT yang digunakan di menu Tools.
  5. Setelah muncul pesan “Done Compilling”, selanjutnya tekan tombol Upload yang ada di kanan tombol Verify sampai muncul pesan “Done Uploading”.
Saat kedua sensor mendeteksi adanya cahaya maka robot akan bergerak maju,
Jika sensor kiri tidak mendeteksi cahaya sedangkan sensor kanan mendeteksi cahaya maka robot akan berbelok ke arah kanan, begitulah saat sensor kanantidak mendeteksi cahaya.
Sedangkan sensor kiri mendeteksi cahaya maka robot akan berbelok ke arah kiri, dan jika kedua sensor tidak mendeteksi sumber cahaya maka robot akan diam.



1 Response to "Cara Membuat Robot Sederhana : Robot Digital Light Follower Dengan Arduino Uno"

  1. Double Zero Roulette Wheel | Shootercasino dafabet link dafabet link 바카라사이트 바카라사이트 12bet 12bet 7979California SuperLotto Plus winning numbers of 49

    ReplyDelete

wdcfawqafwef