● online
- Modul Sensor Tegangan AC Bolak balik 220V Listrik ....
- PWM DC 10A Motor 12V-40V Pulse Width Modulation Sp....
- LCD 16x2 / 1602 Display Biru + I2C Backpack Sudah ....
- 10mm Kapton Tape Polymide Film Gold High Temp isol....
- ASIS (Andika Smart IoT Socket)....
- Kabel Jumper arduino Dupont Pelangi 30 cm Male to ....
- TP5100 4.2v 8.4v 1S 2S Single / Double Cell Lithiu....
- LM35DZ Sensor Suhu - LM35....
- Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
- Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
Mengendalikan LED dari Push Button Menggunakan Raspberry Pi dan Python
Push Button dan LED (Light Emitting Diode) menjadi sebuah komponen yang umum ditemukan pada piranti elektronik sehingga menjadikan kedua perangkat ini memiliki banyak kegunaan. Push Button adalah saklar yang penggunaannya dengan cara ditekan untuk menghubungkan atau memutuskan listrik. Sedangkan LED adalah lampu kecil yang terbuat dari bahan semikonduktor yang memiliki 2 kaki yaitu kaki Anode dan Katode. Pada kesempatan kali ini, saya akan menggunakan Raspberry PI 3B (bisa juga untuk Raspi 4) untuk membuat LED yang mampu dikendalikan dengan Push Button.
ALAT DAN BAHAN PERCOBAAN LED – Push Button Raspberry Pi
- Raspberry Pi 3B (sudah terinstal Raspbian OS)
- Laptop/Personal Computer (PC)
- Kabel USB yang dapat terhubung ke Raspberry Pi
- 3 buah LED (warna: merah, kuning, hijau)
- 3 buah Resistor 220 Ohm
- 3 buah Push Button
- Kabel jumper secukupnya
- Protoboard/projectboard/breadboard
PERCOBAAN 1: Kendali LED dengan Push Button di Raspberry Pi
Dari alat dan bahan percobaan di atas, buatlah gambar rangkaian seperti gambar berikut:

Kemudian buat program Python berikut ini menggunakan Thonny (IDE Python bawaan di Raspberry Pi)
''' PROGRAM RASPBERRY PI GPIO DENGAN LED #5 BY. INDOMAKER '''
''' PROGRAM RASPBERRY PI GPIO DENGAN LED #5 BY. INDOMAKER ''' # memasukan library import RPi.GPIO as GPIO from time import sleep as sleep # konfigurasi PIN R_LED = 14 Y_LED = 15 G_LED = 18 R_PB = 4 Y_PB = 17 G_PB = 27 # Setting pin GPIO GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) # pin LED sebagai OUTPUT GPIO.setup(R_LED,GPIO.OUT) GPIO.setup(Y_LED,GPIO.OUT) GPIO.setup(G_LED,GPIO.OUT) # pin PushButton sebagai INPUT GPIO.setup(R_PB,GPIO.IN, pull_up_down=GPIO.PUD_UP) GPIO.setup(Y_PB,GPIO.IN, pull_up_down=GPIO.PUD_UP) GPIO.setup(G_PB,GPIO.IN, pull_up_down=GPIO.PUD_UP) # instruksi mematikan LED GPIO.output(R_LED, GPIO.LOW) GPIO.output(Y_LED, GPIO.LOW) GPIO.output(G_LED, GPIO.LOW) # menyalakan LED Hijau def led_hijau(): print("LED HIJAU NYALA") # menampilkan teks GPIO.output(R_LED, GPIO.LOW) # instruksi mematikan LED merah GPIO.output(Y_LED, GPIO.LOW) # instruksi mematikan LED kuning GPIO.output(G_LED, GPIO.HIGH) # instruksi menyalakan LED hijau # menyalakan LED Merah def led_merah(): print("LED MERAH NYALA") # menampilkan teks GPIO.output(R_LED, GPIO.HIGH) # instruksi menyalakan LED merah GPIO.output(Y_LED, GPIO.LOW) # instruksi mematikan LED kuning GPIO.output(G_LED, GPIO.LOW) # instruksi mematikan LED hijau # menyalakan LED Kuning def led_kuning(): print("LED KUNING NYALA") # menampilkan teks GPIO.output(R_LED, GPIO.LOW) # instruksi mematikan LED merah GPIO.output(Y_LED, GPIO.HIGH) # instruksi menyalakan LED kuning GPIO.output(G_LED, GPIO.LOW) # instruksi mematikan LED hijau # eksekusi program terus menerus try: while True: # perulangan While-loop R_btnState = GPIO.input(R_PB) Y_btnState = GPIO.input(Y_PB) G_btnState = GPIO.input(G_PB) if(R_btnState == 0): # panggil fungsi merah led_merah() else: GPIO.output(R_LED, GPIO.LOW) if(Y_btnState == 0): # panggil fungsi hijau led_hijau() else: GPIO.output(G_LED, GPIO.LOW) if(G_btnState == 0): # pangil fungsi kuning led_kuning() else: GPIO.output(Y_LED, GPIO.LOW) sleep(1) except KeyboardInterrupt: GPIO.cleanup() # membersihkan pin GPIO untuk digunakan kembali
Tampilan output Shell dapat diihat sebagai berikut:

Pada saat program di eksekusi, maka ketika salah satu Push Button di tekan maka akan menyalakan salah satu LED. Misalkan, Push Button yang disetting pada pin 4 ketika di tekan akan menyalakan LED Merah. Push Button yang disetting pada pin 17 ditekan akan menyalakan LED Kuning. Sedangkan, pada push Button yang disetting pada pin 27 ditekan akan menyalakan LED Hijau. Pada program ini, LED akan menyala sesaat hanya pada saat push button ditekan saja akan tetapi ketika push button dilepas maka LED pun akan mati. Lalu, bagaimana caranya supaya LED tetap menyala meskipun push button dilepas? Simak percobaan bagian 2 berikut ini
PERCOBAAN 2 LED + Push Button Raspberry Pi
Dengan menggunakan rangkaian yang sama seperti percobaan sebelumnya, ubahlah program Python di atas (pada bagian while True) di Thonny IDE Raspberry Anda
while True: R_btnState = GPIO.input(R_PB) Y_btnState = GPIO.input(Y_PB) G_btnState = GPIO.input(G_PB) if(R_btnState == 0): # menyalakan LED Merah led_merah() if(Y_btnState == 0): # menyalakan LED Hijau led_hijau() if(G_btnState == 0): # menyalakan LED Kuning led_kuning()
Prinsip kerja program bagian 2 ini mirip dengan percobaan 1, perbedaannya hanya pada saat salah satu push button ditekan kemudian dilepas maka LED masih tetap menyala sampai push button lain ditekan. Hal Ini disebabkan karena pada kode program kita tidak lagi menambahkan else untuk mematikan LED pada saat dilepas. Nah, sudah semakin jelas kan belajarnya? 😊
Demikian sedikit tutorial pada kesempatan kali ini. Program di atas dimaksudkan untuk menyalakan dan mematikan LED dengan Push Button menggunakan Raspberry Pi 3B. Terdapat 2 percobaan, kedua percobaan tersebut membuat program yang mampu mengendalikan LED melalui push Button. Perbedaannya hanya pada saat push Button ditekan dan dilepaskan saja. Jika hasil percobaan Anda sesuai dengan hasil di atas maka percobaan Anda berhasil, Anda dapat kembangkan sesuai dengan keinginan atau kebutuhan Anda. Selamat berkreasi.
Mengendalikan LED dari Push Button Menggunakan Raspberry Pi dan Python
Setelah kemarin sudah belajar Blynk dan sensor LDR DISINI, sekarang lanjut ke sensor berikutnya yaitu sensor DHT11 untuk memonitoring... selengkapnya
Phyton merupakan bahasa yang sangat populer saat ini. Bahasa yang dibuat oleh Guido Van Rossum pada tahun 1991 ini... selengkapnya
Hallo semuanya, kali ini saya akan mendemonstrasikan penggunaan RFID RC522 untuk membaca e-KTP maupun e-Toll. Pada postingan sebelumnya sudah... selengkapnya
Alat dan Bahan ESP8266 Lolin(Wemos) NodeMcu v3 beli Modul MAX7219 LED dot matrix 8×8 beli Jenis Modul Modul MAX7219... selengkapnya
Penggunaan LCD I2C sering kali gagal menampilkan teks karena deklarasi awal yaitu alamat I2C yang salah/keliru dikarenakan alamat yang... selengkapnya
Pada postingan artikel kali ini akan mengupas tentang penggunaan LCD 20×4 pada Arduino. Maksud dari 20×4 adalah lcd ini... selengkapnya
Sensor suhu lagi? Gpp ya disini kita belajar semua sensor suhu, nah tinggal sensor mana nih yang akan digunakan,... selengkapnya
Arduino Pro Micro adalah jenis arduino yang berukuran kecil, ukuranya hampir sama seperti Arduino Pro Mini. Secara fungsi dan... selengkapnya
Pernahkah Anda mengambil foto pada saat hujan lebat, untuk menghasilkan gambar yang benar-benar realistis hujan, beberapa orang akan memperjuangkan... selengkapnya
Flow meter yaitu sebuah sensor yang berfungsi untuk menghitung aliran air (debit) dan volume air dalam suatu alur dan... selengkapnya
Dimmer AC 220 Volt 4000 Watt + Casing Aluminium Potensiometer untuk mengatur tegangan output min/max pada tegangan AC PLN 220V…. selengkapnya
Rp 52.500Item Deskripsi : This module performance is stable, measure the distance accurately. performance nearly the same as SRF05, SRF02 SRF05,… selengkapnya
Rp 13.900Bosan dengan modul arduino yang kalian punya, saatnya mencoba modul programmer yang lain yah ini dia RASPBERRY PI 4 COMPUTER… selengkapnya
Rp 1.545.000Penurun tegangan DC-DC ekonomis yang bisa distel tegangan output nya. Cocok untuk pemasangan variasi mobil dan sepeda motor, dijadikan charger… selengkapnya
Rp 9.000Kabel Jumper Dupont Pelangi 10 cm.. male to female 1 lembar isi 40 kabel
Rp 9.000Deskripsi Produk “LED Dot Matrix Display dengan 32×8 pixel, berwarna Merah, menggunakan IC MAX7219 sebagai driver dan dapat dikoneksikan ke… selengkapnya
Rp 47.500Mini Solderless Breadboard 400 Tie Points adalah breadboard 400 titik lubang, dengan ukuran yang compact sangat cocok untuk anda yang… selengkapnya
Rp 7.800POTENSIOMETER LINEAR MONO 10K ohm
Rp 1.900Features: It is of high power density, high efficiency, high-reliability, small size and lightweight. It can isolate unsteady single-way voltage… selengkapnya
Rp 18.500The power supply is isolated industrial power modules, with a temperature protection, overcurrent and short circuit full protection, high and… selengkapnya
Rp 15.900
Saat ini belum tersedia komentar.