07 - KONTROL MOTOR / KONTROL RODA
- Sabtu, 09 November 2024
- Administrator
- 0 komentar
TUJUAN : Untuk memahami kontrol roda kana dan kiri, juga untuk mengetahui ada tidaknya kesalahan dalam instalasi/pemasangan kabel konektor motor.
LANGKAH PRAKTEK :
- Pastikan posisi Sakelar Power Batere dalam keadaan / digeser ke ON :
- Tekan saklar power pada modul ER-1.
- Robot akan berjalan maju selama 3 detik kemudian mundur selama 3 detik.
- Kemudian Robot berhenti.
- Jika jalannya robot tidak sesuai Anda bisa cek pada pemasangan konektor M1 dan M2
mungkin terbalik.
KODING :
Untuk memudahkan pemrograman, kita buat koneksi antara sensor & driver motor dengan pin
Arduino seperti dibawah ini (Perhatikan skematik).
const int L1 = 2;
const int L2 = 3;
const int R1 = 4;
const int R2 = 7;
const int L = 5;
const int R = 6;
void setup()
Tentukan pin sebagai output untuk mengontrol putaran motor.
pinMode(L1, OUTPUT);
pinMode(L2, OUTPUT);
pinMode(R1, OUTPUT);
pinMode(R2, OUTPUT);
pinMode(L, OUTPUT);
pinMode(R, OUTPUT);
Kondisi Awal motor OFF:
analogWrite(L, 0);
analogWrite(R, 0);
Atur Roda kanan dan kiri kearah maju:
digitalWrite(L1, HIGH);
digitalWrite(L2, LOW);
digitalWrite(R1, HIGH);
digitalWrite(R2, LOW);
Beri nilai PWM maksimal untuk ke 2 motor, sehingga robot berjalan maju dengan kecepatan
maksimal selama 3 detik:
analogWrite(L, 255);
analogWrite(R, 255);
delay(3000);
Nilai PWM minimal 0 dan maksimalnya 255.
Robot berjalan mundur selama 3 detik dengan nilai PWM maksimal:
digitalWrite(L1, LOW);
digitalWrite(L2, HIGH);
digitalWrite(R1, LOW);
digitalWrite(R2, HIGH);
analogWrite(L, 255);
analogWrite(R, 255);
delay(3000);
Semua PWM diberi nilai 0 sehingga Robot berhenti dan program berhenti pada perintah while(1):
analogWrite(L, 0);
analogWrite(R, 0);
while(1);//PROGRAM LOOPING DISINI
Untuk mengatur kecepatan Robot Anda bisa merubah nilai PWM-nya dari 0 s/d 255.