Langsung ke konten
BerandaMengembangkan Prototipe Kendaraan Otonom dengan Arduino

Mengembangkan Prototipe Kendaraan Otonom dengan Arduino

Kendaraan otonom dengan Arduino adalah kemampuan kendaraan dalam bergerak dan beroperasi secara mandiri tanpa intervensi manusia menggunakan platform Arduino untuk mengontrol dan mengatur berbagai aspek dari kendaraannya. Hal ini dapat mencakup pengendalian motor, sensor, sistem navigasi dan perangkat lunak yang diperlukan untuk membuat keputusan secara real-time.


 

Baca juga : Cara Menggunakan Arduino untuk Prototipe Sensor Lingkungan


Komponen Utama

 

1. Arduino Uno atau Arduino Mega.

2. Motor driver untuk mengontrol motor DC, biasanya menggunakan L298N motor driver.

3. Motor DC untuk menggerakkan roda kendaraan.

4. Chassis struktur dasar kendaraan yang dilengkapi dengan roda.

5. Sensor ultrasonik seperti HC-SR04 yang digunakan untuk mendeteksi rintangan di sekitar kendaraan.

6. Sensor garis (line follower) untuk mengikuti garis di lantai dan membantu navigasi.

7. Baterai sebagai sumber daya untuk Arduino dan motor.

8. Breadboard dan kabel jumper untuk membuat rangkaian elektronik.

 

Langkah - langkah Perancangan Sistem

 

1. Perakitan Hardware

• Pasang motor DC pada chassis kendaraan dan hubungkan roda ke motor.

• Hubungkan kabel motor ke motor driver L298N.

• Hubungkan pin kontrol motor driver ke pin digital pada Arduino.

• Posisikan sensor ultrasonik di bagian depan kendaraan dan hubungkan ke pin digital Arduino.

• Posisikan sensor garis di bagian bawah kendaraan dan hubungkan ke pin analog atau digital Arduino.

• Hubungkan baterai ke Arduino dan motor driver untuk menyediakan daya.

2. Pengkodean

Setelah hardware dirakit, langkah selanjutnya adalah pengkodean. Berikut ini contoh kode program dasar untuk mengontrol kendaraan otonom dengan Arduino.

• Pengaturan Pin

 

#define IN1 8

#define IN2 9

#define IN3 10

#define IN4 11

#define TRIG 7

#define ECHO 6

#define LINE_SENSOR_LEFT A0

#define LINE_SENSOR_CENTER A1

#define LINE_SENSOR_RIGHT A2

void setup() {

  pinMode(IN1, OUTPUT);

  pinMode(IN2, OUTPUT);

  pinMode(IN3, OUTPUT);

  pinMode(IN4, OUTPUT);

  pinMode(TRIG, OUTPUT);

  pinMode(ECHO, INPUT);

  pinMode(LINE_SENSOR_LEFT, INPUT);

  pinMode(LINE_SENSOR_CENTER, INPUT);

  pinMode(LINE_SENSOR_RIGHT, INPUT);

  Serial.begin(9600);

}

 

• Fungsi untuk Menggerakkan Motor

 

void moveForward() {

  digitalWrite(IN1, HIGH);

  digitalWrite(IN2, LOW);

  digitalWrite(IN3, HIGH);

  digitalWrite(IN4, LOW);

}

void moveBackward() {

  digitalWrite(IN1, LOW);

  digitalWrite(IN2, HIGH);

  digitalWrite(IN3, LOW);

  digitalWrite(IN4, HIGH);

}

void stop() {

  digitalWrite(IN1, LOW);

  digitalWrite(IN2, LOW);

  digitalWrite(IN3, LOW);

  digitalWrite(IN4, LOW);

}

void turnLeft() {

  digitalWrite(IN1, LOW);

  digitalWrite(IN2, HIGH);

  digitalWrite(IN3, HIGH);

  digitalWrite(IN4, LOW);

}

void turnRight() {

  digitalWrite(IN1, HIGH);

  digitalWrite(IN2, LOW);

  digitalWrite(IN3, LOW);

  digitalWrite(IN4, HIGH);

}

 

• Fungsi untuk Mengukur Jarak

 

long measureDistance() {

  digitalWrite(TRIG, LOW);

  delayMicroseconds(2);

  digitalWrite(TRIG, HIGH);

  delayMicroseconds(10);

  digitalWrite(TRIG, LOW);

  long duration = pulseIn(ECHO, HIGH);

  long distance = (duration * 0.034) / 2;

 

  return distance;

}

 

• Logika untuk Mengikuti Garis dan Menghindari Rintangan

 

void loop() {

  long distance = measureDistance();

  if (distance < 20) {

    stop();

    delay(500);

    moveBackward();

    delay(500);

    turnLeft();

    delay(500);

  } else {

    int leftSensor = analogRead(LINE_SENSOR_LEFT);

    int centerSensor = analogRead(LINE_SENSOR_CENTER);

    int rightSensor = analogRead(LINE_SENSOR_RIGHT);

 

    if (centerSensor < 500) {

      moveForward();

    } else if (leftSensor < 500) {

      turnLeft();

    } else if (rightSensor < 500) {

      turnRight();

    } else {

      stop();

    }

  }

}

 

3. Pengujian

Setelah kode diunggah ke Arduino, langkah selanjutnya adalah pengujian. Tempatkan prototipe kendaraan otonom pada permukaan yang datar dengan lintasan garis untuk diikuti. Aktifkan sistem dan amati bagaimana kendaraan bergerak. Jika kendaraan tidak bergerak seperti yang diharapkan, lakukan penyesuaian pada kode atau pengaturan hardware.

 

Baca juga : Panduan Praktis: Membuat Prototipe Perangkat Wearable dengan Arduino

 

 

 

 

 

 

 

Siap Untuk Membuat Proyek Impianmu Menjadi Kenyataan?

Klik di sini untuk chat langsung via WhatsApp dan dapatkan dukungan langsung dari tim ahli kami!

 

 

Bagikan tutorial iniWhatsApp ↗

Terima kasih sudah belajar bersama Arduino Indonesia.

← Kembali ke beranda

Komentar (0)