Modul 4





Obstacle Avoidence Robot 
(Robot penghindaran kendala/rintangan)

[KEMBALI KE MENU SEBELUMNYA]

  Alat robot obstacle avoidance robot ini bertujuan untuk memudahkan manusia dalam mengontrol robot atau kendaraan jika ada benda yang menghalangi atau kendala yang dia lalui maka kendaraan / robot tersebut sudah di susun (program) dengan sedemikian rupa sehingga menghindar dari jalan berkendala ke jalan yang bisa di lalui secara otomatis mencari jalan yang bisa di lalui dengan baik dan lancar.

2.Alat dan Bahan (Komponen yang digunakan)[kembali] monospace;">  Komponen :
 1. Sensor Ultrasonik
 2. Arduini Uno
 3. Driver Motor L29
 4. LCD 16x2
 5. 2 Motor DC
 6. Motor Servo
 7. Driver
 8. Jumper
 9.  Batrei
10. papan akrilik untuk body robot.



3. Teori(Sesuai Komponen yang di gunakan)[kembali]




Arduino Uno berguna untuk sebagai I/O program yang di gunakan dalam komponen ini yang akan di hubungkan ke motor servo dan servo terhubung ke modul drivel dan motor DC sehingga terhubung dan berjalan sesuai program yang di atur.

Hasil gambar untuk motor servo
Servomotor adalah aktuator rotari atau aktuator linier yang memungkinkan untuk mengontrol posisi sudut atau linier, kecepatan dan percepatan secara tepat. 
Hasil gambar untuk motor DC
Motor DC adalah salah satu dari kelas mesin listrik putar yang mengubah energi listrik arus searah menjadi energi mekanik

Hasil gambar untuk Sensor Ultrasonik

Transduser ultrasonik atau sensor ultrasonik adalah jenis sensor akustik yang dibagi menjadi tiga kategori besar: pemancar, penerima dan transceiver. Pemancar mengubah sinyal listrik menjadi ultrasound, receiver mengubah ultrasound menjadi sinyal listrik

Hasil gambar untuk Lcd 16x2

Merupakan jenis penampil yang mepergunakan kristal cair sebagai bahan untuk menampilkan data yang berupa tulisan maupun gambar.





 Rangkaian pengontrol robot sensor ultrasonik yang dimana prosesnya akan di inputkan pada rambat bunyi atau suara yang di pantulkan sesuai dengan prinsip kerja pada pemantulan suara kelelawar atau gelombang ultrasonik disini akan di input ka oleh sensor yang dimana suara yang di transfer pertama atau di keluarkan pertama akan di pantulkan lagi jika sudah mencapai pada suatau ukuran benda yang akan di ukur yang dimana ini di sebut suara pantul atau suara 2 input dan di teruskan e arduino uno yang akan d proses oelh Arduino uno dan di ouputkan pada Motor DC dan LCD akan di tampikan jarak dan nilainya .Jika ada halangan benda di depannya maka robot tersebut mencari jalan di samping kiri kanan yang akan di lewatinya sesuai program yang di atur sedemikian rupa. dan akan di tampilkan ke LCD kegunaanya


Rangkaian terdiri dari sebuah senspr ultrasonik  , 1 buah arduino uno  , 2 buah motor Dc . 

Rangkaian ini akan bekerja saat sensor ultrasonik mendeteksi benda atau objek, kemudian sinyal ini akan dikirimkan ke arduino, dan arduino akan mengirimkan sinyal kepada driver motor untuk berjalan. Hasil jarak yang dideteksi oleh sensor ini akan diperlihatkan di dalam virtual terminal.



5.Listing Program[kembali]


#include <LiquidCrystal.h>
LiquidCrystal lcd(9, 8, 7, 6, 5, 4);
//Praktikum MIkroprosesor dan Mikrokontroler
//Laboratorium Elektronika Digital 
// sensor ultrasonic

const int trigPin = A1; //Memberikan nama pada A1
const int echoPin = A0; //Memberikan nama pada A0

//motor DC

int kiriA = 13; //Menginput kiriA,sebagai pin 13
int kiriB = 12; //Menginput kiriB,sebagai pin 12
int kananA = 11; //Menginput kananA,sebagai pin 11
int kananB = 10; //Menginput kananB,sebagai pin 10

void setup()
{
  lcd.begin(16,2);
  Serial.begin(9600); //Komunikasi serial arduino dengan komputer
  pinMode(kiriA,OUTPUT); //Menginisialisasikan kiriA,sebagai OUTPUT
  pinMode(kiriB,OUTPUT); //Menginisialisasikan kiriB,sebagai OUTPUT
  pinMode(kananA,OUTPUT);//Menginisialisasikan kananA,sebagai OUTPUT
  pinMode(kananB,OUTPUT);//Menginisialisasikan kananB,sebagai OUTPUT
}

void loop()
{

 long duration, inches, cm; //Menginput tipe data long untuk duration,inches, dan cm

  pinMode(trigPin, OUTPUT); //Menginisialisasi pingPin,sebagai OUTPUT
  digitalWrite(trigPin, LOW); //Memberikan nilai LOW, pada pingPin
  delayMicroseconds(2); //waktu tunda selama 2 us
  digitalWrite(trigPin, HIGH); //Memberikan nilai HIGH, pada pingPin
  delayMicroseconds(10);//waktu tunda selama 10us
  digitalWrite(trigPin, LOW); //Memberikan nilai LOW, pada pingPin

  pinMode(echoPin, INPUT); //Menginisialisasi echoPin, sebagai INPUT
  duration = pulseIn(echoPin, HIGH); //Memberikan nilai pada duration

  // konversi waktu ke jarak
  inches = microsecondsToInches(duration); //Konversi waktu ke jarak dalam bentuk inches
  cm = microsecondsToCentimeters(duration); //Konversi waktu ke jarak dalam bentuk cm

  
  lcd.print(inches); 
  lcd.print("inches , ");
  lcd.print(cm);
  lcd.print("cm");
  lcd.println();
  delay(100);
  lcd.clear();

  if (cm <=50) //fungsi if saat benda kurang dari 50 cm dari sensor
  {
  analogWrite(kiriA,255); //Memberikan nilai 255 pada motor kiriA
  analogWrite(kiriB,0); //Memberikan nilai 0, pada motor kiriB
  analogWrite(kananA,0); //Memberikan nilai 0, pada motor kanan A
  analogWrite(kananB,255); //Memberikan nilai 255, pada motor kanan B
  }
  else
  {
  analogWrite(kiriA,0); //Memberikan nilai 0 pada motor kiri A
  analogWrite(kiriB,255); //Memberikan nilai 255 pada motor kiri B
  analogWrite(kananA,0); //Memberikan nilai 0, pada motor kanan A
  analogWrite(kananB,255); //Memberikan nilai 255 pada motor kanan B
  }

}

long microsecondsToInches(long microseconds)
{
  return microseconds / 74 / 2;
}
long microsecondsToCentimeters(long microseconds)
{
  return microseconds / 29 / 2;
}



6. Flowchart[kembali]


Flowchart :




Visual Designer :








7. Link Download[kembali]
File Rangkaian Download
File Video Download
File Html Download

Tidak ada komentar:

Posting Komentar