- Bahan yang Dibutuhkan:
- Diagram Sirkuit:
- Program Raspberry Python:
- Mengontrol LED dengan Raspberry Pi dan bot Telegram:
Telegram adalah aplikasi optimal untuk digabungkan dengan Raspberry Pi untuk semua tujuan kontrol seluler kami. Ini memiliki dukungan pengembang yang sangat baik dan banyak fitur yang direncanakan akan segera dirilis untuk meningkatkan kinerja Telegram Bot. Dalam tutorial kami sebelumnya, kami belajar bagaimana kami dapat mengatur bot telegram untuk raspberry pi dan juga belajar harus mengobrol dengannya dan berbagi gambar, dokumen dan file Audio.
Sekarang, kami akan melanjutkan ke langkah berikutnya dengan mempelajari Bagaimana kami dapat mengontrol pin GPIO pada Pin Raspberry menggunakan Telegram, sehingga kami menyediakan beberapa dukungan perangkat keras untuk bot kami. Dalam tutorial ini kita akan menghubungkan empat LED ke pin Raspberry Pi GPIO dan mengaktifkannya menggunakan bahasa alami (seperti mengobrol) dari Telegram. Kedengarannya menarik bukan? Mari kita mulai.
Bahan yang Dibutuhkan:
- Empat LED (warna apa saja)
- Raspberry Pi (dengan koneksi internet)
- Papan tempat memotong roti
- Menghubungkan kabel
Prasyarat:
Sebelum melanjutkan tutorial pastikan Raspberry Pi Anda terhubung ke internet dan Anda dapat menjalankan program python di Pi Anda. Baca juga tutorial sebelumnya untuk mengetahui cara mengatur bot Telegram dengan Raspberry Pi Pi, karena saya akan menganggap Anda sudah familiar dengan hal-hal itu untuk melanjutkan proyek.
Jika Anda baru mengenal Raspberry Pi, ikuti artikel Pengenalan Raspberry Pi kami dan Tutorial Raspberry Pi lainnya.
Diagram Sirkuit:
Diagram sirkuit untuk Mengontrol LED menggunakan Raspberry Pi dan Aplikasi Telegram Android tidak lebih dari empat LED dan beberapa kabel penghubung. Kami tidak memerlukan resistor pembatas arus karena pin Raspberry Pi GPIO bekerja pada 3.3V TTL. Ikuti sirkuit di bawah ini dan hubungkan LED Anda.
Tabel berikut akan membantu Anda menentukan nomor pin dan nomor GPIO untuk sambungan empat led.
Terminal Led |
Nomor PIN |
Nomor GPIO |
Anoda Hijau |
Pin 31 |
GPIO 6 |
Anoda Merah |
Pin 33 |
GPIO 13 |
Anoda Kuning |
Pin 35 |
GPIO 19 |
Anoda Putih |
Pin 37 |
GPIO 26 |
Katoda keempatnya |
Pin 39 |
Tanah |
Di bawah ini adalah diagram Sirkuit di mana empat LED dihubungkan sesuai dengan Tabel yang diberikan di atas:
Setelah koneksi Anda, pengaturan perangkat keras Anda akan terlihat seperti ini di bawah ini.
Program Raspberry Python:
Setelah perangkat keras siap, kita dapat melanjutkan dengan Program Python. Dalam program ini kita harus membaca data (pesan) yang dikirim dari bot Telegram dan mengaktifkan LED yang sesuai. Untuk membuatnya lebih alami, daripada memeriksa setiap kalimat dan melakukan hard coding pada kalimat tersebut di dalam program kita, kita dapat memeriksa kata-kata dan melanjutkannya.
Jadi program ini terutama akan memeriksa dua kata, yaitu aktif dan nonaktif. Setelah mendeteksi salah satu dari dua kata ini, kata kunci lain seperti putih, kuning, hijau, dan merah akan dicari . Masing-masing LED warna akan berubah hanya jika kata tersebut terdeteksi. Kami juga akan memperbarui string untuk kata-kata yang terdeteksi untuk mengirim pesan kembali ke bot telegram.
Program lengkap dapat ditemukan di bagian bawah halaman ini; tepat di bawah ini saya telah menjelaskan program dengan memecahnya menjadi sampah kecil yang bermakna.
Agar program ini berfungsi, kami memerlukan telepot yang diunduh dan diimpor di Raspberry Pi kami. Dalam tutorial kami sebelumnya, kami telah mengunduh teleportasi di dalam Raspberry Pi kami, jadi sekarang kami hanya perlu mengimpornya ke program kami bersama dengan pustaka GPIO seperti yang ditunjukkan di bawah ini.
impor RPi.GPIO sebagai GPIO, impor telepot dari telepot.loop impor MessageLoop
Kami akan mengontrol lampu LED menggunakan program ini dan warna LED adalah Putih, Kuning, Merah dan Hijau. Mereka terhubung ke pin yang ditunjukkan pada diagram sirkuit; mari kita tentukan nama pin untuk LED ini berdasarkan warnanya sehingga bisa digunakan dalam program.
putih = 26 kuning = 19 merah = 13 hijau = 6
Langkah selanjutnya adalah menentukan semua pin LED ini sebagai pin keluaran dan mendefinisikannya sebagai dimatikan secara default dengan menggunakan baris di bawah ini.
#LED Putih GPIO.setup (putih, GPIO.OUT) GPIO.output (putih, 0) #Off awalnya #LED Kuning GPIO.setup (kuning, GPIO.OUT) GPIO.output (kuning, 0) #Off awalnya #LED Merah GPIO.setup (merah, GPIO.OUT) GPIO.output (merah, 0) #Off awalnya #LED hijau GPIO.setup (hijau, GPIO.OUT) GPIO.output (hijau, 0) #Off awalnya
Seperti yang kita pelajari di tutorial sebelumnya, semua tindakan yang harus dilakukan oleh bot Raspberry akan ditentukan di dalam tindakan fungsi. Di sini kita harus membuat bot untuk mendengarkan pesan yang dikirim dari ponsel, membandingkannya dengan beberapa kata kunci dan mengaktifkan LED yang sesuai.
Untuk setiap pesan yang kita kirim dari ponsel, akan ada id dan perintah obrolan. ID obrolan ini diperlukan oleh program untuk membalas kembali ke pengirim. Jadi kami menyimpan id obrolan dan, pesan seperti yang ditunjukkan di bawah ini.
chat_id = perintah msg = pesan
Sekarang, apa pun yang kami kirim dari telepon akan disimpan sebagai string dalam perintah variabel. Jadi, yang harus kita lakukan adalah memeriksa kata kunci dalam variabel ini. Python memiliki perintah untuk mempermudah di sini. Misalnya, jika kita harus memeriksa apakah kata "on" ada dalam string yang disimpan dalam variabel perintah, kita cukup menggunakan baris di bawah ini.
jika 'on' dalam perintah:
Demikian pula kami memeriksa semua kata kunci, setelah kami menerima "on", kami melanjutkan untuk memeriksa warna mana yang telah disebutkan pengguna. Ini juga dilakukan dengan perintah yang sama dengan membandingkan kata kunci yang sama. Kami juga memperbarui pesan bernama string yang dapat dibalas kembali ke pengguna sebagai pesan status.
jika 'on' dalam perintah: message = "Dihidupkan" jika 'putih' dalam perintah: pesan = pesan + "putih" GPIO.output (putih, 1) jika 'kuning' di perintah: pesan = pesan + "kuning" GPIO.output (kuning, 1) jika 'merah' di perintah: message = pesan + "merah" GPIO.output (merah, 1) jika 'hijau' di perintah: pesan = pesan + "hijau" GPIO.output (hijau, 1) if 'all' in command: message = message + "all" GPIO.output (putih, 1) GPIO.output (kuning, 1) GPIO.output (merah, 1) GPIO.output (hijau, 1) message = message + "light (s)" telegram_bot.sendMessage (chat_id, pesan)
Seperti yang ditunjukkan di atas, kami mencari kata kunci seperti 'hijau', 'putih', 'merah', 'kuning' dan 'semua' dan 'Menghidupkan' LED khusus itu saja. Setelah pekerjaan selesai, kami mengirim pesan kembali kepada pengguna tentang apa yang baru saja terjadi. Cara yang sama bisa digunakan untuk mematikan lampu dengan baik.
jika 'off' dalam perintah: message = "Dimatikan" jika 'putih' dalam perintah: pesan = pesan + "putih" GPIO.output (putih, 0) jika 'kuning' dalam perintah: pesan = pesan + "kuning" GPIO.output (kuning, 0) jika 'merah' di perintah: pesan = pesan + "merah" GPIO.output (merah, 0) jika 'hijau' di perintah: pesan = pesan + "hijau" GPIO.output (hijau, 0) if 'all' in command: message = message + "all" GPIO.output (putih, 0) GPIO.output (kuning, 0) GPIO.output (merah, 0) GPIO.output (hijau, 0) message = message + "light (s)" telegram_bot.sendMessage (chat_id, pesan)
Mengontrol LED dengan Raspberry Pi dan bot Telegram:
Hubungkan LED Anda dan luncurkan program Anda di python. Pastikan Anda telah mengubah alamat Token untuk bot Anda. Dan mulailah mengetikkan perintah yang Anda inginkan. Misalnya untuk menyalakan lampu merah dan kuning Anda dapat menggunakan salah satu dari perintah berikut.
1.Turn di Red dan Kuning Terang
2. Aktifkan warna Merah dan Kuning ke kanan
3. Pada warna merah dan kuning
4. Silakan menempatkan di dalam kuning dan merah muda
Seperti yang Anda lihat, bot hanya mencari Kata Kunci dan akan mengabaikan kata lain dalam Kalimat, dengan cara ini Anda dapat berbicara dengannya secara alami. Pekerjaan lengkap proyek dapat ditemukan di Video yang diberikan di akhir halaman ini.
Lanjutkan! bermainlah dengan proyek Anda dan bersenang-senanglah. Anda dapat membawanya ke tingkat yang baru sekarang. Dengan kombinasi kedua tutorial tersebut, kami memiliki kekuatan untuk mengontrol perangkat keras apa pun dari ponsel pintar kami di mana saja dari dunia dan juga mendapatkan input / hasil dari Raspberry Pi kami dalam bentuk pesan, Audio, Gambar, dan bahkan sebagai dokumen. Jika Anda mengganti LED dengan Relay dan peralatan AC, maka itu bisa menjadi Otomasi Rumah yang dikendalikan Ponsel Cerdas. Jadi, gunakan kreativitas Anda dan bangun proyek keren Anda sendiriā¦
Semoga Anda menyukai proyek ini dan menikmati membangun sesuatu yang serupa. Beri tahu saya jika Anda memiliki masalah melalui bagian komentar dan saya akan dengan senang hati membantu Anda. Juga bagikan ide keren Anda dengan saya dan mari kita lihat apa yang bisa kita bangun.