Pada tutorial ini Latihan Arduino bakal membagikan tutorial masih dengan LED. Di tutorial sebelumnya (LED Berkedip (Blink) menggunakan Arduino - Mr. Ido), kita telah membagikan cara untuk membuat LED berkedip. Kali ini kita bakal upgrade sedikit dengan cara memberikan waktu berkedip LED yang diatur dengan Potensiometer. Pada pin analog Arduino kita manfaatkan perubahan nilai yang masuk ke pin analog tersebut dengan merubah nilai resistansi dari potensiometer. Tegangan yang dapat dibaca pada pin analog ini adalah 0 - 5V dengan nilai analog yang memiliki rentang 0 - 1023 dalam bilangan integer. Dari nilai analog tersebut bisa digunakan untuk mengatur lamanya delay LED berkedip. Untuk merubahnya dalam satuan waktu, bisa digunakan perbandingan antara delay waktu maksimum yang diinginkan dengan 1023, yang dapat ditulis dalam persamaan berikut
Keterangan:
- Delay waktu merupakan delay yang akan dipakai untuk delay berkedip
- Waktu maksimum merupakan waktu delay maksimum yang diinginkan. Misal delay maskimumnya 2 detik, maka waktu masksimumnya 2000 dalam satuan ms.
- 1023 merupakan nilai analog maksimum
- Nilai analog merupakan input nilai analog yang diatur berdasarkan perubahan nilai resistansi dari potensiometer
Alat dan Bahan
1. Arduino Uno
2. LED - 1 buah
3. Resistor 100 Ω - 1 buah
4. Potensiometer 10KΩ - 1 buah
4. Jumper - 5 buah
5. Breadboard
Skematik Rangkaian
Untuk skematik rangkaiannya adalah sebagai berikut
Keterangan:
1. Anoda (+) LED -- Resistor 100Ω -- D13 Arduino
2. Katoda (-) LED -- GND
3. Kaki potensiometer sisi pinggir 1 -- 5V Arduino
4. Kaki potensiometer sisi tengah -- A0 Arduino
5. Kaki potensiometer sisi pinggir 2 -- GND
Setelah rangkaian dirangkai di breadboard, langsung tulis sketch berikut di Arduino IDE, atau bisa langsung download di sini
/*Created by Mr. Ido
latihanarduino.blogspot.com */
#define LED 13 //pin D13 didefinisikan sebagai LED
float Tmax = 1000.00; //didefinisikan untuk waktu delay (ms) max dalam bilangan desimal
float Amax = 1023.00; //didefinisikan untuk nilai input analog max
void setup() {
pinMode(LED, OUTPUT); //pin LED sebagai output
}
void loop() {
int pot = analogRead(A0); //pembacaan input analog pada A0 dalam bilangan bulat
float x = Tmax/Amax; //persamaan pembagian Tmax/Amax
int waktu = pot * x; //untuk delay waktu yg didapat dari pot * x
digitalWrite(LED, HIGH); //LED menyala
delay(waktu); //LED menyala selama waktu
digitalWrite(LED, LOW); //LED mati
delay(waktu/2); //LED mati selama 1000ms (1 detik)
}
Setelah itu diverify dan upload ke Arduinolatihanarduino.blogspot.com */
#define LED 13 //pin D13 didefinisikan sebagai LED
float Tmax = 1000.00; //didefinisikan untuk waktu delay (ms) max dalam bilangan desimal
float Amax = 1023.00; //didefinisikan untuk nilai input analog max
void setup() {
pinMode(LED, OUTPUT); //pin LED sebagai output
}
void loop() {
int pot = analogRead(A0); //pembacaan input analog pada A0 dalam bilangan bulat
float x = Tmax/Amax; //persamaan pembagian Tmax/Amax
int waktu = pot * x; //untuk delay waktu yg didapat dari pot * x
digitalWrite(LED, HIGH); //LED menyala
delay(waktu); //LED menyala selama waktu
digitalWrite(LED, LOW); //LED mati
delay(waktu/2); //LED mati selama 1000ms (1 detik)
}
Selesai...
Untuk melihat hasilnya bisa dilihat pada video tutorial kita (link menyusul), atau silahkan langsung dicoba sendiri. Lama LED berkedip dapat diatur dengan memutar potensiometernya
Nah itu dulu tutorial kita, semoga dapat bermanfaat.
tengkyu
Comments
Post a Comment