Pada rangkaian
ini, digunakan arduino sebagai mikrokontroller, motor DC sebagai output,
baterai sebagai sumber tegangan, dan terdapat driver motor L293D.
Jalannya
rangkaian ini sesuai dengan prinsip dari L293D, yaitu ketika input1 berlogika
HIGH dan input2 berlogika LOW, maka motor (output) akan berputar searah jarum
jam (berputar ke kanan). Hal ini juga bergantung pada listing program yang
telah dibuat. Pada listing program, kondisi pertama dibuat in1 HIGH dan in2 LOW
sehingga motor berputar ke kanan, lalu dibuat delay 8s sehingga motor terus
berputar selama 8s sebelum berbalik arah. Setelah 8s, masuk ke kondisi kedua
pada listing program yaitu in1 LOW dan in2 HIGH sehingga motor berputar
berlawanan arah jarum jam (ke kiri) selama 8s.
#define in1 10
#define in2 9
void setup() {
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
}
void loop() {
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
delay(8000);
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
delay(8000);
}
Pada
percobaan ini kondisinya adalah motor bergerak ke kanan selama 8 detik, lalu ke
kiri 8 detik.
Jika tidak ada baterai (sumber tegangan), maka motor tidak dapat berputar. Pada percobaan ini, motor diberi tegangan 12V, maka agar dapat berputar / bekerja dengan baik, harus diberi tegangan 12V pula pada baterai. Jika tegangan pada baterai kurang dari 12V, maka pergerakan / putaran motor akan lambat. Sedangkan semakin besar tegangan yang diberikan pada baterai (lebih dari 12V) maka perputaran motor semakin cepat.
2. Jelaskan listing program pada bagian yang menjalankan kondisi masing-masing kelompok (bagian deklarasi variabel dan set input output tidak usah)?
Kondisi percobaannya adalah motor berputar kekanan 8s, lalu ke kiri 8s. Maka pada listing program, dibuat fungsi void loop untuk mejalankan program secara berulang. Kemudian terdapat penulisan pada pin digital:
digitalWrite (in1, HIGH);
digitalWrite (in2, LOW);
delay (8000);
pada kode diatas ditampilkan bahwa in1 yang disambungkan ke pin 10 pada arduino akan berkondisi HIGH, dan in2 atau inputan2 akan berkondisi LOW. Kondisi ini membuat motor berputar ke arah kanan, kemudian diberikan delay (8000 ms) atau 8s, sehingga motor akan berputar ke arah kanan selama 8 detik. Setelah itu motor akan berbalik arah (berputar ke arah kiri) dengan memasukkan kode:
digitalWrite (in1, LOW);
digitalWrite (in2, HIGH);
delay (8000);
berarti inputan1 adalah LOW dan inputan2 adalah HIGH sehingga motor berputar berlawanan arah jarum jam. Kemudian akan diberi delay 8s untuk masuk ke kondisi selanjutnya, sehingga motor akan berputar ke arah kiri juga 8s.
3. Bagaimana jika pin in1 dan in2 tidak dihubungkan ke pin PWM, tetapi ke pin digital biasa (misal pin 12 dan 13)?
Jika pin In1 dan In 2 dihubungkan ke pin digital biasa, maka tidak ada perubahan pada putaran motor. PWM berfungsi untuk memperlebar / memperkecil lebar dari suatu pulsa analog, sehingga tidak ada pengaruhnya pada putaran motor.
Tidak ada komentar:
Posting Komentar