Daftar Isi:
- Langkah 1: Yang Anda Butuhkan
- Langkah 2: Menginstal IDE
- Langkah 3: Membuat Bot Telegram
- Langkah 4: Ubah, Unggah, dan Uji Sketsa
- Langkah 5: Peningkatan
Video: [IoT] Telegram Bot Dengan Arduino MKR WiFi 1010: 5 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:54
Proyek ini mendemonstrasikan cara menghubungkan Arduino dengan API Bot Telegram. Proyek ini dibangun di sekitar papan MKR WiFi 1010 baru yang dilengkapi dengan modul ESP32 oleh U-BLOX.
Pada tahap ini, proyek tidak lebih dari bukti konsep, hanya untuk menunjukkan kepada Anda apa yang dapat Anda lakukan, jadi untuk ini Anda hanya memerlukan papan Arduino.
Tapi apa itu Bot Telegram? Yah, Bot hanyalah akun Telegram yang dioperasikan oleh perangkat lunak – bukan orang – dan mereka sering kali memiliki fitur AI. Mereka dapat melakukan apa saja – mengajar, memutar, mencari, menyiarkan, mengingatkan, menghubungkan, mengintegrasikan dengan layanan lain, atau bahkan meneruskan perintah ke Internet of Things. (kredit oleh Telegram:
Dalam kasus kami, kami akan meneruskan perintah ke Arduino yang membangun perangkat IoT sederhana. Ini akan menjawab perintah sederhana dan juga menghidupkan/mematikan Led bawaan. Saya akan membiarkan imajinasi Anda berbuat lebih banyak dengannya… (bayangkan untuk menghubungkan satu atau lebih relai ke pin I/O dan menghidupkan/mematikan pemanas atau sistem AC dengan ponsel cerdas Anda, misalnya).
Langkah 1: Yang Anda Butuhkan
Untuk proyek ini Anda perlu:
- Arduino MKR WiFi 1010 dari toko Arduino:
- Arduino IDE 1.8.5 atau lebih tinggi:
- Kabel micro-usb untuk menghubungkan Arduino ke PC Anda
- Koneksi internet, membutuhkan SSID dan kata sandi. Lebih baik jika Anda menggunakan router rumah Anda sendiri untuk memastikannya tidak diblokir.
- Aplikasi Telegram terinstal di ponsel cerdas Anda, apa pun mereknya. Periksa di sini untuk versi PC dan Web juga!
Langkah 2: Menginstal IDE
Ya, saya tahu, saya tahu… sebagian besar dari Anda sudah menginstal Arduino IDE di PC, tetapi Instruksi ini juga ditujukan untuk pemula. Jadi, pertama-tama, unduh Arduino IDE 1.8.5 pilihan Anda (file zip untuk 'non administrator' atau file exe)
Versi 1.8.5 direkomendasikan, saya tidak menguji versi lama dan papan baru yang digunakan dalam proyek tidak dapat didukung sama sekali.
Sekarang Anda perlu menginstal papan baru dengan drivernya:
- mulai IDE-nya
- Dari menu Alat pilih Papan lalu, di bagian atas daftar prosesor, pilih Manajer papan.
- Gulir jendela baru (lihat gambar) hingga Anda menemukan papan Arduino SAMD yang menyertakan MKR WiFi 1010 baru.
- Klik pada tab itu atau klik Info lebih lanjut di dalam tab, pilih versi terbaru dan instal.
- Tunggu hingga penginstalan selesai. Ini akan mengurus juga instalasi driver
- Anda juga memerlukan perpustakaan WiFi baru untuk papan ini: pilih Sketsa, Sertakan Perpustakaan dan Kelola Perpustakaan. Cari Wifinina dan instal seperti yang Anda lakukan dengan prosesor di atas.
Sekarang sambungkan papan Arduino baru Anda dan tunggu Windows menyelesaikan instalasi driver.
Dari menu Tools->Board Anda akan menemukan papan baru, pilih MKR WiFi 1010.
Pustaka khusus lainnya diperlukan untuk proyek ini, yaitu pustaka ESP8266TelegramBot oleh Giancarlo Bacchio. Pustaka telah sedikit dimodifikasi untuk bekerja dengan papan ini sehingga disertakan dalam folder sketsa.
Pilih port com yang benar dan uji papan dengan perintah Dapatkan Info Papan.
Selamat, Anda sudah selesai dengan IDE!
Langkah 3: Membuat Bot Telegram
Membuat Bot Telegram baru cukup sederhana.
Buka aplikasi Telegram dan, di bilah pencarian, ketik @BotFather dan mulailah mengobrol dengannya (gambar1). BotFather adalah… Pabrik bot. Ini akan membantu Anda membuat bot baru dan mengubah pengaturannya.
Setelah perintah /start Anda akan melihat daftar bantuan (image2).
- Ketik /newbot (image3)Sekarang ketik nama bot Anda. Nama ditampilkan dalam detail kontak dan di tempat lain.
- BotFather akan meminta Anda untuk Nama Pengguna. Nama Pengguna adalah nama pendek, untuk digunakan dalam penyebutan dan tautan telegram.me. Nama pengguna panjangnya 5-32 karakter dan tidak peka huruf besar/kecil, tetapi hanya boleh menyertakan karakter Latin, angka, dan garis bawah. Nama pengguna bot Anda harus diakhiri dengan 'bot', mis. 'tetris_bot' atau 'TetrisBot'.
- Jika nama dan nama pengguna valid, Anda akan menerima string panjang karakter yang disebut TOKEN. Ini adalah 'kunci' pribadi Anda yang digunakan untuk berkomunikasi dengan server Telegram. Salin dan tempelkan dalam file teks di PC Anda untuk saat ini. Kami akan menggunakannya nanti ke dalam kode Arduino. Jika Anda kehilangannya jangan khawatir, buka kembali obrolan dan ketik /token untuk menghasilkan yang baru.
Semua langkah dijelaskan di sini:https://core.telegram.org/bots#6-botfather
Lanjutan (opsional)
Buka kembali obrolan dan ketik /help
Klik (atau ketik) /setuserpic untuk mengunggah gambar bot Anda. Klik (atau ketik) /setabouttext untuk mengatur bagian Tentang Bot Anda: Orang akan melihat teks ini di halaman profil bot dan akan dikirim bersama tautan ke bot Anda saat mereka membagikannya dengan seseorang.
Klik (atau ketik) /setdescription untuk mengatur bagian deskripsi bot Anda. Orang-orang akan melihat deskripsi ini ketika mereka membuka obrolan dengan bot Anda, di blok berjudul 'What can this bot do?'.
Langkah 4: Ubah, Unggah, dan Uji Sketsa
Saatnya mengupload software ke board Arduino MKR WiFi 1010.
Unduh file terlampir, untuk beberapa alasan saya tidak dapat mengunggah ZIP, jadi buat folder bernama sketsa dan salin semua 4 file di dalamnya, tolong jangan ganti nama kecuali Anda tahu apa yang Anda lakukan.
Memodifikasi
Buka sketsa, kita perlu mengisi beberapa informasi (image1): isi arduino_secrets.h dengan kredensial wifi dan telegram Anda.
- Temukan informasi jaringan WiFi dan ketik nama jaringan (SSID) dan kata sandi Anda.
- Temukan informasi Bot telegram dan ketik nama, nama pengguna, dan token yang disediakan oleh @BotFather
Mengunggah
Pastikan board sudah benar (image2) di ide dan terhubung kemudian coba kompilasi kodenya. Jika kompilasi berjalan dengan baik, unggah ke papan, itu hanya akan memakan waktu beberapa detik.
Jika ada masalah, periksa kesalahan ketik dan coba lagi.
Tes
[PENTING!] Sketsa mengirimkan log ke IDE. Prosesor memiliki port USB asli (seperti papan Leonardo). Setelah dinyalakan, kode akan menunggu hingga monitor serial berjalan. Jadi, biarkan terhubung ke PC dan buka monitor serial. Arduino pertama-tama akan terhubung ke internet, kemudian akan mulai polling server Telegram untuk pesan baru (gambar3).
Sekarang buka Telegram di perangkat pilihan Anda dan, di kotak pencarian, ketik nama bot Anda (bukan nama pengguna yang diakhiri dengan 'bot'). Buka obrolan dengannya.
Perintah pertama untuk memulai obrolan dengan bot adalah /start, Arduino kami akan menjawab dengan pesan selamat datang. Sekarang ketik bantuan (tanpa garis miring), itu akan menjawab dengan daftar perintah yang didukung, Anda dapat mencoba semuanya (gambar4).
Anda selesai dengan tes, jika ada yang tidak berfungsi, periksa informasi yang dimasukkan dalam sketsa (nama, nama pengguna, token …)
SertifikatJika Anda mengalami kesalahan dengan koneksi ke server telegram (log: Bot tidak terhubung):
- Buka Alat-> Pembaruan Wifi101/wifinina
- Pastikan papan Anda terhubung, periksa port di sebelah kiri alat pembaruan, papan harus ada
- Klik Buka sketsa pembaru dan unggah ke papan
- Setelah mengunggah, di pembaru pilih firmware terbaru untuk papan Anda dan klik perbarui firmware
- Setelah update, di updater, bagian SSL certificates, klik Add domain, di dialog tulis telegram.org:443 lalu tekan OK.
- Klik Unggah sertifikat ke modul wifi
- Unggah sketsa ini ke papan
Langkah 5: Peningkatan
Melihat kodenya, sangat mudah untuk mengimplementasikan perintah dan jawaban baru kepada pengguna.
Perintah baru: Anda dapat menulis sub untuk setiap perintah baru. Setiap sub akan menyelesaikan perintah dan (akhirnya) mengembalikan informasi status kepada pengguna.
Membatasi pengguna:Tentu saja proyek ini hanya demo. Setiap pengguna Telegram dapat terhubung ke rumah Anda dan mengirim perintah yang tidak diinginkan. Anda tidak menginginkan ini!.
Nah, lihat gambar1, itu menunjukkan 2 pengguna terhubung. Seperti yang Anda lihat, setiap pengguna memiliki ID pengguna sendiri. Dengan sedikit kerja di sisi kode, Anda dapat memfilter (atau membuat daftar) hanya untuk pengguna yang berwenang. Hanya mempelajari kode dan mencoba mencegat nomor ID pengguna. Kemudian jalankan perintah hanya dari pengguna terkenal.
Perangkat Keras: Di sisi perangkat keras, banyak sensor dan relai dapat dihubungkan ke pin I/O Arduino.
Hati-hati: papan yang digunakan dalam proyek ini toleran 3.3V!!! Gunakan pengatur level tegangan jika diperlukan! Untuk info dan tips lebih lanjut tentang papan ini, silakan baca di sini:
Itu saja, selamat menikmati!
Direkomendasikan:
Telegram Bot Dengan NodeMCU (ESP8266): 3 Langkah
Telegram Bot Dengan NodeMCU (ESP8266): Butuh bot untuk memberikan notifikasi dari sistem Anda? atau melakukan sesuatu hanya dengan mengirim pesan? Telegram Bot adalah solusi Anda! Dalam tutorial ini, saya akan menggunakan Telegram Web dan BotFather untuk membuat bot saya
Gunakan Perisai Arduino MKR Dengan Raspberry Pi: 8 Langkah
Gunakan Perisai Arduino MKR Dengan Raspberry Pi: PiMKRHAT kami adalah HAT adaptor untuk menggunakan papan dan perisai Arduino MKR bersama dengan Raspberry Pi. Arduino MKR Shields yang berbeda dapat digunakan melalui HAT kami sebagai ekstensi untuk Raspberry Pi. Saya ingin menunjukkan dalam proyek kecil ini bagaimana menggunakan Ardu
Penggunaan Sensor Gerak Dengan RaspberryPi dan Telegram Bot: 4 Langkah
Penggunaan Sensor Gerak Dengan Bot RaspberryPi dan Telegram
Mesin Pengumpan Hewan Peliharaan Dengan RasPi dan Bot Telegram: 4 Langkah (dengan Gambar)
Mesin Pengumpan Hewan Peliharaan Dengan RasPi dan Bot Telegram: Pertama-tama saya perlu mengklarifikasi bahwa ini bukan Tambang Ide asli, cukup perbarui dan sesuaikan skrip pemrograman untuk bekerja dengan telegram, saya menemukannya di Instruksi sebelumnya sehingga kreditnya benar-benar penulisnya. Anda bisa melihat bahasa Spanyol
Bot Telegram Rumah Pintar Dengan Nodemcu (esp8266, Relay, Ds18b20): 8 Langkah
Smart House Telegram Bot Dengan Nodemcu (esp8266, Relay, Ds18b20): Dalam tutorial ini saya akan menunjukkan cara membuat bot telegram dan mengontrol rumah menggunakannya. Tapi pertama-tama, berlangganan saluran Telegram saya, dan temukan proyek baru lebih cepat daripada yang lain. Ini motivasi bagi saya. Ayo