TUTORIAL PUSH BUTOON ARDUINO PULL-UP & PULL-DOWN
1.
Pendahuluan
Pada tutorial kali ini kita akan membahas lebih
kepada dasar digital input, memang terlihat sederhana namun sebenarnya tutorial
ini adalah logic dasar ketika kita ingin membuat sistem yang lebih kompleks. Meskipun
pada tutorial ini kita hanya menggunakan Push Button sebagai input dan LED
sebagai Output namun kedua komponen tersebut sudah dapat mewakili hamper semua
logic mengenai input dan output pada pemrograman Arduino.
Pada pengaplikasian secara nyata logic input
pusbutton dapat diganti dengan logic dari output sensor digital lainnya seperti
modul sensor cahaya, module sensor gas, modul sensor suara dan masih banyak
lainnya, begitupun dengan LED yang dapat kita ganti dengan berbagai macam actuator
seperti lampu DC/AC, motor DC/AC, dan lainnya tentu dengan bantuan driver.
Kita akan mulai dengan tombol
(push buttons) yang sederhana. Koneksi untuk penggunaan tombol juga sangat
mudah. Ada tambahan komponen yaitu resistor, yang bisa berfungsi sebagai pull-up atau pull-down,
tergantung penempatannya. Kenapa diperlukan resistor? Karena Arduino berbeda
dengan kita yang tahu kapan tombol ditekan atau tidak. Arduino ‘merasakan’
bahwa tombol ditekan atau tidak dari arus yang melewatinya, apakah HIGH atau LOW.
Ada dua skenario penggunaan
tombol yang akan kita bahas. Pertama, ketika tombol ditekan pin Arduino akan
menjadi LOW dan menjadi HIGH kalau dilepas. Skenario yang kedua adalah ketika
tombol ditekan, pin Arduino akan menjadi HIGH dan LOW kalau tombol dilepas
2.
Skematik
2.1 Pull-Down
Gambar 2.1 Rangkaian Pull-Down
Pada rangkaian Pulldown, input
yang masuk ke Arduino pada awalnya bernilai “0” atau LOW, namun ketika
push-Button ditekan maka aka ada arus yang mengalir dari Vcc (tegangan 5V) ke
input Arduino sehingga bernilai “1” atau High.
Tidak ditekan à
LOW
Ditekan à
HIGH
Untuk lebih jelasnya mari kita uji
coba secara langsung. Berikut ini adalah rangkaain yang harus di buat.
Gambar 2.2 Push Button
Pull-down Arduino LED
Di bawah ini adalah kode
pemrograman yang digunakan untuk push button. Tidak perlu mengetiknya karena
sudah tersedia pada software Arduino. Klik menu File > Examples >
2.Digital > Button. Atau Download disini dengan penjelasan Bahasa Indonesia.
https://drive.google.com/drive/folders/18OAPd-sTh20LZNNQI5eJeZHUscnMgkKF?usp=sharing
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | const int buttonPin = 2;// Push-Button di Pin 2 const int ledPin = 13;// LED di pin 13 int buttonState = 0;// variable Untuk membaca status Push-Button void setup() { pinMode(ledPin, OUTPUT); // Sting Pusbutton Sebagai Input pinMode(buttonPin, INPUT); // Sting LED Sebagai Output } void loop() { //Baca Nilai Push-button buttonState = digitalRead(buttonPin); //Jika Push-Button Bernilai Hight (Karena Pull-down maka ketika ditekan) if (buttonState == HIGH) { // Nyalakan LED: digitalWrite(ledPin, HIGH); } // jika “tidak” bernilai High atau Low (Ketika Push-button tidak ditekan) else { // Matikan LED: digitalWrite(ledPin, LOW); } } |
Pada rangkaian dan program di
atas kita telah membuat simulasi dimana rangkaian push button dengan pulldown resistor
memiliki sifat ketika ditekan maka akan menghasilkan logika input “HIGH” dan
dalam program kita memerintahkan ketika logika HIGH maka LED akan menyala dan
sebaliknya jika dilepas maka Logika menjadi LOW dan dalam program di bagian “else”
(salah/selain dari IF) diperintahkan agar LED mati.
2.2
Pullup
Gambar 2.3 Rangkaian Pull-Up
Kebalikan dari rangkaian Pull-down,
pada rangkaian Pull-up input yang masuk ke Arduino pada awalnya bernilai “1”
atau HIGH, namun ketika push-Button ditekan maka arus yang tadinya mengalir
dari Vcc (tegangan 5V) ke pin Arduino mengalir ke Gnd sehingga logikanya
menjadi “0” atau LOW.
Tidak ditekan à HIGH
Ditekan à LOW
Untuk membuktikannya mari membuat rangkaian Pull-up seperti
pada gambar di bawah ini:
*Catatan: Perhatikan perbedaan
rangkaian ini dengan rangkaian sebelumnya yaitu terletak pada penempatan kaki
resistor yang semula terhubung dengan 5V sekarang terhubung dengan GND juga
kabel yang terhubung dengan pushbutton.
Gambar 2.2 Push Button
Pull-Up Arduino LED
Dengan program yang sama maka
logika yang sebelumnya ketika sebelum ditekan LED dalam keadaan mati dan ketika
ditekan akan menyala maka untuk kali ini mula-mula LED akan berada dalam
keadaan menyala kemudian jika di tekan akan mati.
Kedua keadaan diatas akan
membantu kita untuk mengasah logika kita ketika kita menemukan sesnsor dengan
output High ataupun Low maka kita akan dapat dengan mudah beradaptasi dalam hal
pembuatan program yang lebih kompleks.
Tidak ada komentar:
Posting Komentar