Langsung ke konten utama

Robot Line Follower

 Robot Line Follower




1. Rakit Sasis Mobil Pintar 2WD 2 Roda


2. Hubungkan sensor IR ke Modul Analog ke Digital dan Komparator


IN1 > Sensor IR 1


IN2 > Sensor IR 2


IN3 > Sensor IR 3


IN4 > Sensor IR 4


3. Kemudian sambungkan pin output ke pin analog Arduino UNO


KELUAR1 > A2


KELUAR2 > A3


KELUAR3 > A4


KELUAR4 > A5


4. Hubungkan Vin ke 5V dan GND ke GND di Arduino UNO


5. Kemudian sambungkan pin driver motor ke pin Arduino UNO


DALAM1 > D10


DALAM2 > D9


DALAM3 > D6


DALAM4 > D5


6. Hubungkan kedua motor ke driver motor


Motor A > Motor kanan


Motor B > Motor kiri


Setelah koneksi selesai, sambungkan Arduino ke catu daya dengan kabel USB.


.


Langkah 3: Masukkan Kode Sumber

.


1. Download kode tes dan buka dengan menggunakan software Arduino atau IDE.


2. Pastikan Anda telah memilih papan yang tepat dan port yang sesuai. (Dalam tutorial ini, Arduino Uno digunakan)


3. Kemudian upload kode tes ke Arduino Uno Anda.


.


Kode Test

#define SEN_1_PIN A2

#define SEN_2_PIN A3

#define SEN_3_PIN A4

#define SEN_4_PIN A5


#define IN1 10

#define IN2 9

#define IN3 6

#define IN4 5


#define MOT_RIGHT 0

#define MOT_LEFT 1


void setup()

{

pinMode(SEN_1_PIN, INPUT);

pinMode(SEN_2_PIN, INPUT);

pinMode(SEN_3_PIN, INPUT);

pinMode(SEN_4_PIN, INPUT);


pinMode(IN1, OUTPUT);

pinMode(IN2, OUTPUT);

pinMode(IN3, OUTPUT);

pinMode(IN4, OUTPUT);

Serial.begin(9600);

}


void loop()

{

char cSen_Status = 0b00000000;


cSen_Status = cRead_Sensor();


if((cSen_Status == 0b00000110) || (cSen_Status == 0b00000111) || (cSen_Status == 0b00001110)) //Forward

{

vMotor_Control(MOT_RIGHT, 80);

vMotor_Control(MOT_LEFT, 80);

}

else if((cSen_Status == 0b00000010) || (cSen_Status == 0b00000011) || (cSen_Status == 0b00000001))

{

vMotor_Control(MOT_RIGHT, 0);

vMotor_Control(MOT_LEFT, 80);

}

else if((cSen_Status == 0b00000100) || (cSen_Status == 0b00001100) || (cSen_Status == 0b00001000))

{

vMotor_Control(MOT_RIGHT, 80);

vMotor_Control(MOT_LEFT, 0);

}

else

{

vMotor_Control(MOT_RIGHT, 0);

vMotor_Control(MOT_LEFT, 0);

}


Serial.println((short)cSen_Status);

}


char cRead_Sensor(void) //stop

{

short sSen_Pin[4] = {SEN_1_PIN, SEN_2_PIN, SEN_3_PIN, SEN_4_PIN};

char cStatus = 0b00000000;


for(short i=0; i<4; i++)

{

cStatus = cStatus | (digitalRead(sSen_Pin[i]) << i);

}


return cStatus;

}


void vMotor_Control(short sWhich_Mot, short sSpeed)

{

if(sWhich_Mot == MOT_RIGHT)

{

if(sSpeed < 0) //reverse

{

sSpeed = abs(sSpeed);

analogWrite(IN1, sSpeed);

digitalWrite(IN2, LOW);

}

else

{

digitalWrite(IN1, LOW);

analogWrite(IN2, sSpeed);

}

}

else

{

if(sSpeed < 0) //reverse

{

sSpeed = abs(sSpeed);

analogWrite(IN3, sSpeed);

digitalWrite(IN4, LOW);

}

else

{

digitalWrite(IN3, LOW);

analogWrite(IN4, sSpeed);

}

}

}


Komentar

Postingan populer dari blog ini

Sistem Nilai & Kehadiran - MTS Kaliwungu Kelas 2 MTS KALIWUNGU Sistem Informasi Akademik MTS Kaliwungu Kelas 2 Wali Kelas: Bapak Ali Rohman S.Pd Login Wali Kelas Login Orang Tua Login Wali Kelas Masuk Kem...

Kisah Seekor Kucing di Kapal Titanic

Jenny si Kucing Pahlawan Kebanyakan orang mengetahui kisah tragis Titanic, tetapi sedikit yang pernah mendengar tentang Jenny, kucing yang tinggal di kapal dan mungkin satu-satunya yang merasakan apa yang akan terjadi. Jenny bukan kucing biasa. Dia adalah pemburu tikus resmi Titanic, yang dibawa ke kapal untuk mengendalikan populasi hewan pengerat tersebut. Selama uji coba kapal di laut, ia melahirkan sejumlah anak kucing dan dirawat dengan penuh kasih sayang oleh seorang pekerja bernama Jim Mulholland. Jim menyiapkan sarang yang nyaman untuknya dan bayi-bayinya di dekat dapur, dihangatkan oleh ketel uap. Dia bahkan berbagi sisa makanan dengannya saat istirahat. Rutinitas yang tenang itu memberinya perasaan tenang di tengah kekacauan mempersiapkan kapal paling mewah dalam sejarah untuk pelayaran perdananya. Tetapi sesuatu yang aneh terjadi. Beberapa hari sebelum Titanic berlayar dari Southampton ke New York, perilaku Jenny berubah. Dia mulai gelisah. Lalu—tanpa peringatan—dia mulai men...

Perbedaan Arus Tegangan dan Daya

 Perbedaan utama antara daya, arus, dan tegangan adalah: arus adalah laju aliran muatan listrik, tegangan adalah perbedaan potensial listrik yang mendorong aliran muatan, dan daya adalah energi yang digunakan atau dihasilkan per satuan waktu.  Berikut penjelasan lebih detail: Arus (Ampere, A): Arus listrik adalah aliran muatan listrik (elektron) melalui suatu rangkaian. Bayangkan seperti aliran air dalam pipa. Semakin banyak air (muatan) yang mengalir per detik, semakin besar arusnya.  Tegangan (Volt, V): Tegangan adalah perbedaan potensial listrik antara dua titik dalam rangkaian. Ini adalah gaya yang mendorong elektron untuk mengalir. Semakin tinggi tegangan, semakin besar "dorongan" untuk elektron mengalir, sehingga semakin besar pula arus yang dihasilkan jika resistansi tetap.  Daya (Watt, W): Daya adalah laju energi yang digunakan atau dihasilkan dalam suatu rangkaian listrik. Daya dihitung dengan mengalikan tegangan dan arus (P = V x I). Jadi, daya menunjukkan ...