Daftar Isi:
- Langkah 1: Apa yang Anda Butuhkan
- Langkah 2: Bangun Sirkuit Anda
- Langkah 3: Buat Script untuk Mengontrol dan Menguji LED
- Langkah 4: Menambahkan Fleksibilitas dengan Menggunakan Parameter dan Pernyataan Bersyarat
Video: Mengontrol Beberapa LED Dengan Python dan Pin GPIO Raspberry Pi Anda: 4 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Instruksi ini menunjukkan cara mengontrol beberapa pin GPIO pada RaspberryPi Anda untuk memberi daya pada 4 LED. Ini juga akan memperkenalkan Anda pada parameter dan pernyataan kondisional dengan Python.
Instruksi kami sebelumnya Menggunakan Pin GPIO Raspberry Pi Anda untuk Mengontrol LED menunjukkan cara menghidupkan dan mematikan satu LED dengan menggunakan perintah GPIO.output. Instruksi ini dibangun di atas pengetahuan itu untuk mengajari Anda cara mendapatkan kontrol lebih besar atas sirkuit Anda.
Langkah 1: Apa yang Anda Butuhkan
- RaspberryPi dengan Raspbian sudah terpasang. Anda juga harus dapat mengakses Pi menggunakan Monitor, Mouse, dan Keyboard atau melalui Remote Desktop. Anda dapat menggunakan model Raspberry Pi apa saja. Jika Anda memiliki salah satu model Pi Zero, Anda mungkin ingin menyolder beberapa pin header ke port GPIO.
- LED Merah, Biru, Kuning dan Hijau
- Papan Tempat Memotong Roti Prototipe Tanpa Solder
- Resistor 4 x 330 ohm
- Beberapa kabel jumper Pria ke Wanita
Langkah 2: Bangun Sirkuit Anda
Bangun sirkuit di atas pada papan tempat memotong roti Anda untuk memastikan bahwa tidak ada kabel komponen yang bersentuhan dan LED terhubung dengan cara yang benar.
Bagaimana Anda mengidentifikasi lead positif dan negatif (polaritas) pada LED Anda? Jika Anda melihat LED dari dekat, Anda akan melihat bahwa ia memiliki dua potongan logam kecil di dalam casing berwarna. Ini disebut Anoda dan Katoda. Katoda adalah yang terbesar dari keduanya dan juga terhubung ke kabel negatif LED.
Setelah Anda memeriksa sirkuit Anda, sambungkan kabel jumper pin GPIO Raspberry Pi Anda dengan mengikuti diagram di atas.
Langkah 3: Buat Script untuk Mengontrol dan Menguji LED
Di Raspberry Pi Anda, buka IDLE (Menu > Programming > Python 2 (IDLE)).
Buka proyek baru, buka File > File Baru. Kemudian ketik (atau salin dan tempel) kode berikut:
impor RPi. GPIO sebagai GPIO
waktu impor GPIO.setmode(GPIO. BCM) GPIO.setup(17, GPIO. OUT) GPIO.setup(18, GPIO. OUT) GPIO.setup(22, GPIO. OUT) GPIO.setup(23, GPIO. OUT) GPIO.output(17, True) time.sleep(3) GPIO.output(17, False) time.sleep(1) GPIO.output(18, True) time.sleep(3) GPIO.output(18, False) time.sleep(1) GPIO.output(22, True) time.sleep(3) GPIO.output(22, False) time.sleep(1) GPIO.output(23, True) time.sleep(3) GPIO. keluaran(23, Salah)
Simpan proyek Anda sebagai multilights.py (File > Save As) di folder Dokumen Raspberry Pis Anda.
Di Raspberry Pi Anda, buka Terminal (Menu > Accessories > Terminal) dan arahkan ke folder Documents Anda dengan mengetikkan yang berikut:
cd /home/pi/Documents
Anda sekarang dapat menjalankan skrip baru Anda dengan mengetikkan yang berikut:
python multilights.py
Lampu akan mengambilnya secara bergantian untuk dinyalakan dan dimatikan. Script di atas menggunakan perintah time.sleep untuk membuat jeda di antara setiap langkah, membuat setiap lampu tetap menyala selama 3 detik dan menunggu selama 1 detik sebelum menyalakan lampu berikutnya.
Langkah 4: Menambahkan Fleksibilitas dengan Menggunakan Parameter dan Pernyataan Bersyarat
Dengan menggunakan Parameter dan Pernyataan Bersyarat kita dapat membuat skrip di atas jauh lebih fleksibel.
Parameter memungkinkan Anda untuk menyimpan nilai yang dapat Anda gunakan nanti dalam skrip. Jenis nilai yang paling umum adalah string (teks), integer (bilangan bulat) atau float (bilangan desimal).
Pernyataan Bersyarat akan menentukan apakah segmen kode harus dieksekusi atau tidak dengan memeriksa apakah kondisi tertentu terpenuhi. Kondisi juga dapat melibatkan parameter.
Buka IDLE di Raspberry Pi Anda dan buka proyek baru (File > File Baru). Kemudian ketik berikut ini. Berhati-hatilah untuk memastikan bahwa semua indentasi (tab) disertakan dengan menggunakan tombol tab:
impor RPi. GPIO sebagai GPIO
waktu impor dari sistem impor argv whichled=argv[1] ledaction = argv[2] LEDa=17 LEDb=18 LEDc=22 LEDd=23 GPIO.setmode(GPIO. BCM) GPIO.setup(LEDa, GPIO. OUT) GPIO. setmode(GPIO. BCM) GPIO.setup(LEDb, GPIO. OUT) GPIO.setmode(GPIO. BCM) GPIO.setup(LEDc, GPIO. OUT) GPIO.setmode(GPIO. BCM) GPIO.setup(LEDd, GPIO. KELUAR) jika ledaction=="off": if whichled=="a": GPIO.output(LEDa, False) if whichled=="b": GPIO.output(LEDb, False) if whichled=="c": GPIO.output(LEDc, False) jika whichled=="d": GPIO.output(LEDd, False) if whichled=="all": GPIO.output(LEDa, False) GPIO.output(LEDb, False) GPIO. output(LEDc, False) GPIO.output(LEDd, False) if ledaction=="on": if whichled=="a": GPIO.output(LEDa, True) if whichled=="b": GPIO.output(LEDb, True) if whichled=="c": GPIO.output(LEDc, True) if whichled=="d": GPIO.output(LEDd, True) if whichled=="all": GPIO.output(LEDa, Benar) GPIO.output(LEDb, Benar) GPIO.output(LEDc, Benar) GPIO.output(LEDd, Benar)
Simpan proyek Anda sebagai controllight.py (File > Save As) di folder Documents Anda. Sekarang buka Terminal (Menu > Accessories > Terminal) dan ketik perintah berikut:
python controllight.py b on
LED kedua harus menyala. Sekarang ketik berikut ini:
python controllight.py mati
LED kedua harus dimatikan.
Pada baris 5, 6, 7 & 8, kita membuat parameter LEDa, LEDb, LEDc dan LEDd untuk menyimpan pin GPIO mana yang telah kita sambungkan ke LED mana. Ini memungkinkan kami untuk menggunakan pin GPIO alternatif tanpa harus membuat perubahan substansial pada skrip.
Misalnya, jika kita menghubungkan kabel LED pertama ke Pin 3 (GPIO 2), kita hanya perlu mengubah baris 5 menjadi berikut:
LED = 2
Baris 4 menyimpan nilai yang Anda ketikkan setelah controllight.py ke dalam parameter yang dipimpin (c) dan ledaction (aktif). Script kemudian menggunakan parameter ini, di samping sejumlah Pernyataan Bersyarat untuk memutuskan LED mana yang akan dikontrol dan apakah akan menyalakan atau mematikannya.
Baris 16 (jika ledaction=="on":) adalah pernyataan bersyarat. Baris indentasi yang mengikuti pernyataan ini hanya akan berjalan jika kondisi pernyataan terpenuhi. Dalam skenario ini, kondisinya adalah ledaction berisi teks aktif.
Dengan membaca Pernyataan Bersyarat skrip lainnya, dapatkah Anda memprediksi apa yang akan terjadi ketika Anda mengetikkan perintah berikut di Terminal?
python controllight.py semua aktif
Mengapa tidak mencobanya dan kirimkan jawaban Anda di bagian komentar di bawah.
Direkomendasikan:
Tutorial: Bagaimana Arduino Mengontrol Beberapa Perangkat Alamat yang Sama dengan Menggunakan Multiplexer TCA9548A I2C: 3 Langkah
Tutorial: Bagaimana Arduino Mengontrol Beberapa Perangkat Alamat yang Sama dengan Menggunakan TCA9548A I2C Multiplexer: Deskripsi:Modul Multiplexer TCA9548A I2C memungkinkan untuk menghubungkan perangkat dengan alamat I2C yang sama (hingga 8 alamat I2C yang sama) yang terhubung ke satu mikrokontroler. Multiplexer bertindak sebagai penjaga gerbang, memindahkan perintah ke set yang dipilih
Gunakan Cortana dan Arduino untuk Mengontrol RGB Led atau Ledstrips Dengan Suara Anda!: 4 Langkah (dengan Gambar)
Gunakan Cortana dan Arduino untuk Mengontrol RGB Led atau Ledstrips Dengan Suara Anda!: Dalam instruksi ini saya akan menunjukkan kepada Anda bagaimana Anda dapat mengontrol led RGB atau strip led dengan suara Anda. Ini dilakukan oleh aplikasi CoRGB yang tersedia secara gratis di toko aplikasi windows. Aplikasi ini adalah bagian dari proyek CortanaRoom saya. Ketika Anda selesai dengan
Cara Mengontrol Suhu dan Gravitasi Fermentasi Bir Dari Smartphone Anda: 4 Langkah (dengan Gambar)
Cara Mengontrol Suhu dan Gravitasi Fermentasi Bir Dari Ponsel Cerdas Anda: Saat bir berfermentasi, Anda harus memantau gravitasi dan suhunya setiap hari. Sangat mudah untuk lupa melakukannya, dan tidak mungkin jika Anda pergi. Setelah beberapa googling, saya menemukan beberapa solusi untuk pemantauan gravitasi otomatis (satu, dua, tiga). Salah satu dari
Cara Menggerakkan Banyak LED Dari Beberapa Pin Mikrokontroler: 6 Langkah (dengan Gambar)
Cara Menggerakkan Banyak LED Dari Beberapa Pin Mikrokontroler.: Menggunakan fakta bahwa banyak pin mikrokontroler memiliki tiga status (+V, GND, atau "impedansi tinggi", Anda dapat menggerakkan LED N*(N-1) dari N pin Jadi mikrokontroler 8pin kecil seperti PIC12Fxxx atau ATtiny11 dapat menggerakkan 20 LED pada lima yang tersedia
Menggunakan PSP Sebagai Joystick Komputer dan Kemudian Mengontrol Komputer Anda Dengan PSP: 5 Langkah (dengan Gambar)
Menggunakan PSP Sebagai Joystick Komputer dan Kemudian Mengontrol Komputer Anda Dengan PSP: Anda dapat melakukan banyak hal keren dengan homebrew PSP, dan dalam instruksi ini saya cam akan mengajari Anda cara menggunakan PSP sebagai joystick untuk bermain game, tetapi ada juga sebuah program yang memungkinkan Anda menggunakan joystick sebagai mouse. Berikut materinya