AYO KITA MEMBUAT PROGRAM UNTUK MENGENDALIKAN KECEPATAN RUNNING LED DENGAN POTENSIOMETER
Haalo Selamat datang kembali di tutorial #6 kali ini, pada kesempatan kali ini kita akan mencoba hal yang menarik dari tutorial sebelumnya, yaitu kita akan mencoba mengendalikan kecepatan running led dengan sebuah potensiometer. Jika sebelumnya kita hanya mengatur kecerahan lampu saja kali ini yang kita kendalikan adalah kecepatan running LED. Pasti sobat semua pada penasaran gimana caranya kan, oke langsung saja kita siapkan alat dan bahannya terlebih dahulu, Seperti berikut ya :
- Arduino Uno
- Potensiometer
- LED 3 Pcs
- Resistor 220 / 1k ohm 1 Pc
- Kabel jumper
bagi teman-teman yang ingin membeli arduino untuk mencoba tutorial ini, sobat bisa klik nama komponen yang berwarna biru ya atau jika sobat ingin membeli arduino kit untuk memundah sobat dalam belajar arduino dapat membeli. Jika para sobat robot baru pertama datang ke artikel ini, sobat semua dapat mengakses artikel kami sebelumnya membahas tutorial sebelum agar sobat mudah mengaksesnya
Pada tutorial kali kita akan menggunakan potensiometer untuk mengendalikan kecepatan Running LED dengan menggunakan potensiometer. Dimana potensiometer ini berfungsi untuk mengatur jeda waktu pergantian mati/hidupnya LED. Oke langsung saja tanpa berlama-lama kita buat gambar rangkaian seperti pada gambar dibawah ini.
Oke sobat setelah kita membuat rangkaian arduino uno seperti diatas maka langsung kita masukkan code program, untuk melihat hasil rangkaian yang telah kita buat, oke tanpa berlama -lama langsung saja kita buat seperti dibawah ini :
int LED1 = 11;
int LED2 = 12;
int LED3 = 13;
int PT = A0;
int run;
void setup() {
Serial.begin(9600);
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(PT,INPUT);
}
void loop() {
int potensio = analogRead(A0);
int speed = map (potensio, 0, 1023, 0, 2000);
int run = 11;
// Running LED Maju
while (run <= 13) {
digitalWrite(run, HIGH);
delay (speed);
digitalWrite(run, LOW);
delay(speed);
Serial.println("jeda Waktu");
Serial.println(speed);
run++;
}
// Running LED Mundur
while (run >= 11) {
digitalWrite(run, HIGH);
delay (speed);
digitalWrite(run, LOW);
delay(speed);
Serial.println("jeda Waktu");
Serial.println(speed);
run--;
}
}
Penjelasan Program
Baik setelah membuat program maka kita akan membahas beberapa hal penting code yang kita gunakan berikut penjelasannya
int LED1 = 11;
int LED2 = 12;
int LED3 = 13;
int PT = A0;
int run;
Kita menggunkan variable LED di port 11,12,13 dan variable PT di di port A0. dimana LED kita gunakan sebagai OUTPUT dan PT sebagai INPUT.
int potensio = analogRead(A0);
int speed = map (potensio, 0, 1023, 0, 2000);
Variable potensio berfungsi untuk menyimpan nilai analogRead dari PT, sedangkan untuk variable speed untuk menyimpan nilai yang sudah diubah atau rentangnya di perbesar menjadi 0 - 2000, dimana nilai ini akan kita buat sebagai kecepatanya yang kita inginkan. dimana kita akan buat menjadi satuan ms atau milisecond, dalam artinya kita bisa ngatur kecepatan running LED dalam rentang waktu 0 ms hingga maksimal 2000 ms atau 2 detik
int run = 11;
while (run <= 13) {
digitalWrite(run, HIGH);
delay (speed);
digitalWrite(run, LOW);
delay(speed);
Serial.println("jeda Waktu");
Serial.println(speed);
run++;
dalam penulisan code diatas kita menggunakan perulangan menggunakan syntax while dimana nilai awal adalah variable run kita beri nilai 11 atau dimulai dari port 11. jika run <= 13 maka akan menjalan perintah mengidupkan atau matikan LED kemudian syntax run++ adalah menambahkan nilai run + 1, misalnya nilai run = 11, menjadi run = 12, sehingga lampu yg hidup atau mati pada port 11. Begitu juga dengan syntax run--, kebalikannya yaitu mengurangi nilai 1 misalnya run = 12 akan berubah menjadi run = 11 karena dikurangi 1. Semoga penjelasan singkat ini sobat bisa paham.
Hasil Program
Baik setelah membuat program maka hasil yang didapatkan adalah running LED berjalan dari Kiri ke kanan kemudian dari kanan ke kiri, dimana kita dapat merubah kecepatannya sesuai yang kita inginkan dengan cara memutar potensio searah jarum jam atau berlawanan jarum jam. Kita juga dapat memonitor jeda waktu yang kita digunakan. Hasilnya sesuai dengan gambar dibawah ini.
Gambar Hasil Simulasi
Sumber : Wokwi.com



Social Media