Isi kandungan:

[IoT] Telegram Bot Dengan Arduino MKR WiFi 1010: 5 Langkah
[IoT] Telegram Bot Dengan Arduino MKR WiFi 1010: 5 Langkah

Video: [IoT] Telegram Bot Dengan Arduino MKR WiFi 1010: 5 Langkah

Video: [IoT] Telegram Bot Dengan Arduino MKR WiFi 1010: 5 Langkah
Video: Control ESP32 Mobile Robot Using Android Telegram App | IOT 2024, Julai
Anonim
Image
Image
Apa yang kamu perlu
Apa yang kamu perlu

Projek ini menunjukkan cara menghubungkan Arduino dengan Telegram Bot API. Projek ini dibina di sekitar papan MKR WiFi 1010 baru yang dilengkapi dengan modul ESP32 oleh U-BLOX.

Pada tahap ini, projek ini tidak lebih dari sekadar bukti konsep, hanya untuk menunjukkan kepada anda apa yang dapat anda lakukan, jadi untuk ini anda hanya memerlukan papan Arduino.

Tetapi apa itu Telegram Bot? Nah, Bot hanyalah akaun Telegram yang dikendalikan oleh perisian - bukan orang - dan mereka sering mempunyai ciri AI. Mereka boleh melakukan apa sahaja - mengajar, bermain, mencari, menyiarkan, mengingatkan, berhubung, berintegrasi dengan perkhidmatan lain, atau bahkan menyampaikan arahan ke Internet of Things. (kredit oleh Telegram:

Dalam kes kami, kami akan menyampaikan arahan ke Arduino yang membina peranti IoT yang mudah. Ia akan menjawab perintah mudah dan juga menghidupkan / mematikan Led yang sudah dibina. Saya akan membiarkan imaginasi anda berbuat lebih banyak dengannya … (bayangkan untuk menghubungkan satu atau lebih geganti ke pin I / O dan hidupkan / matikan pemanas atau sistem penyaman udara dengan telefon pintar anda, misalnya).

Langkah 1: Apa yang Anda Perlu

Apa yang kamu perlu
Apa yang kamu perlu

Untuk projek ini, anda memerlukan:

  • Arduino MKR WiFi 1010 dari kedai Arduino:
  • Arduino IDE 1.8.5 atau lebih tinggi:
  • Kabel micro-usb untuk menyambungkan Arduino ke PC anda
  • Sambungan internet, memerlukan SSID dan kata laluan. Lebih baik jika anda menggunakan penghala rumah anda sendiri untuk memastikan ia tidak disekat.
  • Aplikasi Telegram dipasang pada telefon pintar anda, tidak kira jenama. Periksa di sini untuk versi PC dan Web juga!

Langkah 2: Memasang IDE

Memasang IDE
Memasang IDE
Memasang IDE
Memasang IDE
Memasang IDE
Memasang IDE

Ya, saya tahu, saya tahu … kebanyakan anda sudah mempunyai Arduino IDE yang dipasang di PC, tetapi Instructables ini ditujukan juga untuk pemula. Oleh itu, pertama sekali, muat turun Arduino IDE 1.8.5 pilihan anda (fail zip untuk 'bukan pentadbir' atau fail exe)

Versi 1.8.5 disyorkan, saya tidak menguji versi lama dan papan baru yang digunakan dalam projek tidak dapat disokong sama sekali.

Sekarang anda perlu memasang papan baru dengan pemacu mereka:

  1. mulakan IDE
  2. Dari menu Alat pilih Papan kemudian, di bahagian atas senarai pemproses, pilih pengurus Papan.
  3. Tatal tetingkap baru (lihat gambar) sehingga anda dapat melihat papan SAMD Arduino yang merangkumi MKR WiFi 1010 yang baru.
  4. Klik pada tab itu atau klik Maklumat lanjut di dalam tab, pilih versi terkini dan pasang.
  5. Tunggu pemasangan selesai. Ia juga akan menjaga pemasangan pemandu
  6. Anda juga memerlukan perpustakaan WiFi baru untuk papan ini: pilih Sketsa, Sertakan Perpustakaan dan Urus Perpustakaan. Cari Wifinina dan pasang seperti yang anda lakukan dengan pemproses di atas.

Sekarang sambungkan papan Arduino baru anda dan tunggu Windows menyelesaikan pemasangan pemacu.

Dari menu Tools-> Board anda akan menemui papan baru, pilih MKR WiFi 1010.

Perpustakaan khas lain diperlukan untuk projek ini, ia adalah perpustakaan TelegramBot ESP8266 oleh Giancarlo Bacchio. Perpustakaan ini telah sedikit diubahsuai untuk berfungsi dengan papan ini sehingga ia termasuk dalam folder lakaran.

Pilih port com yang betul dan uji papan dengan arahan Get Board Info.

Tahniah, anda sudah selesai dengan IDE!

Langkah 3: Membuat Bot Telegram

Membuat Bot Telegram
Membuat Bot Telegram
Membuat Bot Telegram
Membuat Bot Telegram
Membuat Bot Telegram
Membuat Bot Telegram

Membuat Bot Telegram baru agak mudah.

Buka aplikasi Telegram dan, di bar carian, ketik @BotFather dan mulakan sembang dengannya (gambar1). BotFather adalah kilang Bot. Ini akan membantu anda membuat bot baru dan mengubah tetapannya.

Selepas arahan / mula anda akan melihat senarai bantuan (gambar2).

  • Taip / newbot (gambar3) Sekarang taipkan nama bot anda. Nama itu tertera dalam maklumat hubungan dan tempat lain.
  • BotFather akan meminta anda Nama Pengguna. Nama Pengguna adalah nama pendek, yang akan digunakan dalam sebutan dan pautan telegram.me. Nama pengguna panjangnya 5-32 aksara dan tidak peka huruf besar kecil, tetapi hanya boleh merangkumi aksara Latin, angka, dan garis bawah. Nama pengguna bot anda mesti diakhiri dengan ‘bot’, mis. ‘Tetris_bot’ atau ‘TetrisBot’.
  • Sekiranya kedua-dua nama dan nama pengguna itu sah, anda akan menerima rentetan panjang yang disebut TOKEN. Ini adalah 'kunci' peribadi anda yang digunakan untuk berkomunikasi dengan pelayan Telegram. Salin dan tampalkannya dalam fail teks pada PC anda buat masa ini. Kami akan menggunakannya kemudian ke dalam kod Arduino. Sekiranya anda hilang, jangan risau, buka semula sembang dan taip / token untuk menghasilkan yang baru.

Semua langkah dijelaskan di sini:

Lanjutan (pilihan)

Buka semula sembang dan taip / bantu

Klik (atau taip) / setuserpic untuk memuat naik gambar untuk bot anda. Klik (atau taip) / setabouttext untuk menetapkan bahagian Tentang Bot anda: Orang akan melihat teks ini di halaman profil bot dan ia akan dihantar bersama dengan pautan ke bot anda semasa mereka membagikannya dengan seseorang.

Klik (atau taip) / setdescription untuk menetapkan bahagian penerangan untuk bot anda. Orang akan melihat keterangan ini ketika mereka membuka sembang dengan bot anda, di blok bertajuk 'Apa yang dapat dilakukan bot ini?'.

Langkah 4: Ubah suai, Muat Naik dan Uji Lakaran

Ubah suai, Muat Naik dan Uji Lakaran
Ubah suai, Muat Naik dan Uji Lakaran
Ubah suai, Muat Naik dan Uji Lakaran
Ubah suai, Muat Naik dan Uji Lakaran
Ubah suai, Muat Naik dan Uji Lakaran
Ubah suai, Muat Naik dan Uji Lakaran

Sudah tiba masanya untuk memuat naik perisian ke papan Arduino MKR WiFi 1010.

Muat turun fail yang dilampirkan, kerana sebab tertentu saya tidak dapat memuat naik ZIP, jadi buat folder bernama sketsa dan salin semua 4 fail di dalamnya, jangan ganti nama kecuali anda tahu apa yang anda lakukan.

Ubah suai

Buka lakaran, kita perlu mengisi beberapa maklumat (gambar1): isi arduino_secrets.h dengan kelayakan wifi dan telegram anda.

  • Cari maklumat rangkaian WiFi dan taipkan nama rangkaian anda (SSID) dan kata laluan.
  • Cari maklumat telegram Bot dan taipkan nama, nama pengguna dan token yang diberikan oleh @BotFather

Muat naik

Pastikan papan betul (gambar2) dalam idea dan disambungkan kemudian cuba menyusun kodnya. Sekiranya penyusunan berjalan lancar, muat naik ke papan tulis, hanya memerlukan beberapa saat.

Sekiranya terdapat masalah, periksa kesalahan ketik dan cuba lagi.

Uji

[PENTING!] Lakaran menghantar log ke IDE. Pemproses mempunyai port USB asli (seperti papan Leonardo). Setelah dihidupkan, kod akan menunggu sehingga monitor bersiri berjalan. Oleh itu, biarkan ia bersambung ke PC dan buka monitor bersiri. Arduino pertama kali akan menyambung ke internet, kemudian akan mula mengundi pelayan Telegram untuk mesej baru (gambar3).

Sekarang buka Telegram pada peranti pilihan anda dan, di kotak carian, taipkan nama bot anda (bukan nama pengguna yang diakhiri dengan 'bot'). Buka sembang dengannya.

Perintah pertama untuk memulakan sembang dengan bot adalah / mulakan, Arduino kami akan menjawab dengan mesej selamat datang. Sekarang ketik bantuan (tanpa garis miring), ia akan menjawab dengan senarai arahan yang disokong, anda boleh mencuba semuanya (gambar4).

Anda sudah selesai dengan ujian, jika ada yang tidak berfungsi, periksa maklumat yang dimasukkan dalam lakaran (nama, nama pengguna, token…)

Sekiranya anda mengalami kesilapan dengan sambungan ke pelayan telegram (log: Bot tidak disambungkan):

  • Buka Alat-> Wifi101 / wifinina updater
  • Pastikan papan anda disambungkan, periksa port di sebelah kiri alat pengemas kini, papan mesti ada
  • Klik Buka lakaran updater dan muat naik ke papan
  • Selepas memuat naik, di updater pilih firmware terkini untuk papan anda dan klik kemas kini firmware
  • Selepas kemas kini, di bahagian pengemas kini, bahagian sijil SSL, klik Tambah domain, dalam dialog tulis telegram.org:443 kemudian tekan OK.
  • Klik Muat naik sijil ke modul wifi
  • Muat naik lakaran ini ke papan

Langkah 5: Penambahbaikan

Penambahbaikan
Penambahbaikan

Melihat kodnya, sangat mudah untuk melaksanakan perintah dan jawapan baru kepada pengguna.

Perintah baru: Anda boleh menulis sub untuk setiap arahan baru. Setiap sub akan menyelesaikan perintah dan (akhirnya) mengembalikan maklumat status kepada pengguna.

Mengehadkan pengguna: Sudah tentu projek ini hanya demo. Mana-mana pengguna Telegram boleh menyambung ke rumah anda dan menghantar arahan yang tidak diingini. Anda tidak mahu ini !.

Nah, lihat gambar1, ia menunjukkan 2 pengguna terhubung. Seperti yang anda lihat setiap pengguna mempunyai ID pengguna sendiri. Dengan sedikit kerja di sisi kod, anda boleh menapis (atau membina senarai) untuk pengguna yang sah sahaja. Cukup kaji kodnya dan cuba memintas nombor ID pengguna. Kemudian jalankan arahan hanya dari pengguna terkenal.

Perkakasan: Di bahagian perkakasan, banyak sensor dan relay boleh disambungkan ke pin I / O Arduino.

Hati-hati: papan yang digunakan dalam projek ini bertoleransi 3.3V !!! Gunakan pemindah tahap voltan jika perlu! Untuk maklumat dan petua lebih lanjut mengenai papan ini, sila baca di sini:

Itu sahaja, selamat menikmati!

Disyorkan: