Cuprins:

[IoT] Telegram Bot Cu Arduino MKR WiFi 1010: 5 pași
[IoT] Telegram Bot Cu Arduino MKR WiFi 1010: 5 pași

Video: [IoT] Telegram Bot Cu Arduino MKR WiFi 1010: 5 pași

Video: [IoT] Telegram Bot Cu Arduino MKR WiFi 1010: 5 pași
Video: Testing Stable Diffusion inpainting on video footage #shorts 2024, Noiembrie
Anonim
Image
Image
De ce ai nevoie
De ce ai nevoie

Acest proiect demonstrează modul de interfață Arduino cu API-urile Telegram Bot. Proiectul este construit în jurul noii plăci MKR WiFi 1010 echipate cu un modul ESP32 de către U-BLOX.

În această etapă, proiectul nu este altceva decât o dovadă a conceptului, doar pentru a vă arăta cu ce ați putea face, așa că pentru aceasta aveți nevoie doar de placa Arduino.

Dar ce este un bot Telegram? Ei bine, roboții sunt pur și simplu conturi Telegram operate de software - nu oameni - și vor avea deseori caracteristici AI. Ei pot face orice - să învețe, să se joace, să caute, să difuzeze, să reamintească, să se conecteze, să se integreze cu alte servicii sau chiar să transmită comenzi către Internetul obiectelor. (credite de Telegram:

În cazul nostru, vom transmite comenzi către Arduino construind un dispozitiv IoT simplu. Va răspunde la comenzi simple și va porni / opri Ledul încorporat. Îți voi lăsa imaginația să facă mai mult cu asta … (imaginează-te să conectezi unul sau mai multe relee la pinii I / O și să pornești / oprești un încălzitor sau sistemul de aer condiționat cu smartphone-ul tău, de exemplu).

Pasul 1: De ce aveți nevoie

De ce ai nevoie
De ce ai nevoie

Pentru acest proiect aveți nevoie de:

  • Arduino MKR WiFi 1010 din magazinul Arduino:
  • Arduino IDE 1.8.5 sau o versiune ulterioară:
  • Un cablu micro-usb pentru a conecta Arduino la computer
  • O conexiune la internet, necesită SSID și parolă. Mai bine dacă utilizați propriul router de acasă pentru a vă asigura că nu este blocat.
  • Aplicația Telegram instalată pe smartphone-ul dvs., indiferent de marcă. Verificați aici și versiunile pentru PC și Web!

Pasul 2: Instalarea IDE

Instalarea IDE
Instalarea IDE
Instalarea IDE
Instalarea IDE
Instalarea IDE
Instalarea IDE

Da, știu, știu … majoritatea dintre voi au deja instalat Arduino IDE pe computer, dar acest Instructables este destinat și pentru începători. Deci, mai întâi de toate, descărcați Arduino IDE 1.8.5 la alegere (fișier zip pentru „non-administratori” sau fișier exe)

Este recomandată versiunea 1.8.5, nu am testat versiunile vechi și noua placă utilizată în proiect nu a putut fi suportată deloc.

Acum trebuie să instalați noile plăci cu driverele lor:

  1. porniți IDE-ul
  2. Din meniul Instrumente alegeți Placi, apoi, în partea de sus a listei de procesoare, alegeți Placi manager.
  3. Derulați fereastra nouă (vedeți imaginea) până când găsiți plăcile SAMD Arduino care includ noul MKR WiFi 1010.
  4. Faceți clic pe acea filă sau faceți clic pe Mai multe informații din fila, alegeți cea mai recentă versiune și instalați.
  5. Așteptați instalarea finalizată. Se va ocupa și de instalarea driverelor
  6. De asemenea, aveți nevoie de o nouă bibliotecă WiFi pentru această placă: alegeți Schiță, Includeți biblioteca și Gestionați bibliotecile. Căutați Wifinina și instalați așa cum ați făcut cu procesorul de mai sus.

Acum conectați noua placă Arduino și așteptați ca Windows să finalizeze instalarea driverului.

Din meniul Instrumente-> Placă veți găsi noile plăci, alegeți MKR WiFi 1010.

O altă bibliotecă specială este necesară pentru acest proiect, este biblioteca ESP8266TelegramBot de Giancarlo Bacchio. Biblioteca a fost ușor modificată pentru a funcționa cu această placă, deci este inclusă în dosarul schiței.

Alegeți portul de comunicare corect și testați placa cu comanda Get Board Info.

Felicitări, ai terminat cu IDE!

Pasul 3: Crearea botului Telegram

Crearea botului Telegram
Crearea botului Telegram
Crearea botului Telegram
Crearea botului Telegram
Crearea botului Telegram
Crearea botului Telegram

Crearea unui nou Telegram Bot este destul de simplă.

Deschideți aplicația Telegram și, în bara de căutare, tastați @BotFather și începeți un chat cu el (imagine1). BotFather este … fabrica de bot. Vă va ajuta să creați un bot nou și să modificați setările acestuia.

După comanda / start veți vedea lista de ajutor (imagine2).

  • Tastați / newbot (imagine3) Tastați acum numele botului dvs. Numele este afișat în detaliile de contact și în altă parte.
  • BotFather vă va cere un nume de utilizator. Numele de utilizator este un nume scurt, pentru a fi utilizat în mențiuni și linkuri telegram.me. Numele de utilizator au 5-32 de caractere și nu sunt sensibile la majuscule, dar pot include numai caractere latine, numere și caractere de subliniere. Numele de utilizator al botului dvs. trebuie să se termine cu „bot”, de ex. „Tetris_bot” sau „TetrisBot”.
  • Dacă atât numele, cât și numele de utilizator sunt valide, veți primi un șir lung de caractere numit TOKEN. Aceasta este „cheia” dvs. personală utilizată pentru a comunica cu serverele Telegram. Copiați și lipiți-o într-un fișier text de pe computer pentru moment. Îl vom folosi mai târziu în codul Arduino. Dacă îl pierdeți, nu vă faceți griji, redeschideți chatul și tastați / token-ul pentru a genera unul nou.

Toți pașii sunt descriși aici:

Avansat (opțional)

Deschideți chatul și tastați / ajutați

Faceți clic pe (sau tastați) / setuserpic pentru a încărca o imagine pentru botul dvs. Faceți clic pe (sau tastați) / setabouttext pentru a seta secțiunea Despre pentru botul dvs.: Oamenii vor vedea acest text în pagina de profil a botului și va fi trimis împreună cu un link către robotul dvs. atunci când îl partajează cuiva.

Faceți clic pe (sau tastați) / setdescription pentru a seta o secțiune de descriere pentru botul dvs. Oamenii vor vedea această descriere atunci când deschid un chat cu botul dvs., într-un bloc intitulat „Ce poate face acest bot?”.

Pasul 4: Modificați, încărcați și testați schița

Modificați, încărcați și testați schița
Modificați, încărcați și testați schița
Modificați, încărcați și testați schița
Modificați, încărcați și testați schița
Modificați, încărcați și testați schița
Modificați, încărcați și testați schița

Este timpul să încărcați software-ul pe placa Arduino MKR WiFi 1010.

Descărcați fișierele atașate, din anumite motive nu pot încărca un cod ZIP, așa că creați un folder numit schiță și copiați toate cele 4 fișiere din interior, vă rugăm să nu schimbați numele decât dacă știți ce faceți.

Modifica

Deschideți schița, trebuie să completăm câteva informații (imaginea 1): completați arduino_secrets.h cu datele dvs. de conectare wifi și telegramă.

  • Găsiți informațiile despre rețeaua WiFi și introduceți numele rețelei (SSID) și parola.
  • Găsiți informațiile despre telegrama Bot și introduceți numele, numele de utilizator și simbolul furnizat de @BotFather

Încărcați

Asigurați-vă că placa este corectă (imagine2) în ide și conectată, apoi încercați să compilați codul. Dacă compilația merge bine, încărcați-o pe tablă, va dura doar câteva secunde.

În caz de probleme, verificați dacă ați scris o greșeală de greșeală și încercați din nou.

Test

[IMPORTANT!] Schița trimite jurnale către IDE. Procesorul are un port USB nativ (cum ar fi plăcile Leonardo). Odată pornit, codul va aștepta până când rulează monitorul serial. Deci, lăsați-l conectat la computer și deschideți monitorul serial. Arduino se va conecta mai întâi la internet, apoi va începe să sondeze serverul Telegram pentru mesaje noi (imagine3).

Acum deschideți Telegram pe dispozitivul preferat și, în caseta de căutare, tastați numele botului dvs. (nu numele de utilizator care se termină cu „bot”). Deschideți un chat cu acesta.

Prima comandă pentru a porni un chat cu un bot este / start, Arduino-ul nostru va răspunde cu un mesaj de bun venit.

Ați terminat testul, dacă ceva nu funcționează, verificați informațiile introduse în schiță (nume, nume de utilizator, simbol …)

Certificate Dacă întâmpinați erori la conectarea la serverul de telegramă (jurnal: Botul nu este conectat):

  • Deschideți Instrumente-> Actualizator Wifi101 / wifinina
  • Asigurați-vă că placa dvs. este conectată, verificați porturile din stânga instrumentului de actualizare, placa trebuie să fie acolo
  • Faceți clic pe Deschidere schiță de actualizare și încărcați-o pe tablă
  • După încărcare, în actualizator alegeți cel mai recent firmware pentru placa dvs. și faceți clic pe Actualizare firmware
  • După actualizare, în actualizator, secțiunea Certificate SSL, faceți clic pe Adăugare domeniu, în dialog scrieți telegram.org:443 apoi apăsați OK.
  • Faceți clic pe Încărcare certificate în modulul wifi
  • Încărcați această schiță pe tablă

Pasul 5: Îmbunătățiri

Îmbunătățiri
Îmbunătățiri

Privind codul, este foarte simplu să implementați noi comenzi și să răspundeți utilizatorului.

Comenzi noi: Puteți scrie un sub pentru fiecare comandă nouă. Fiecare sub se va ocupa de finalizarea comenzii și (în cele din urmă) va returna utilizatorului o informație de stare.

Limitarea utilizatorilor: Desigur, acest proiect este doar o demonstrație. Orice utilizator Telegram se poate conecta la casa ta și poate trimite comenzi nedorite. Nu vrei asta !.

Ei bine, uitați-vă la imaginea1, arată 2 utilizatori conectați. După cum puteți vedea, fiecare utilizator are propriul său ID de utilizator. Cu un pic de lucru pe partea de cod, puteți filtra (sau crea o listă) numai pentru utilizatorii autorizați. Studiați codul și încercați să interceptați numărul ID-ului utilizatorului. Apoi executați comenzi numai de la utilizatori cunoscuți.

Hardware: Pe partea hardware, o mulțime de senzori și relee pot fi conectate la pinii I / O ai Arduino.

Aveți grijă: placa utilizată în acest proiect este tolerantă la 3,3V !!! Utilizați un schimbător de nivel de tensiune acolo unde este necesar! Pentru mai multe informații și sfaturi despre această placă, vă rugăm să citiți aici:

Atât, bucură-te!

Recomandat: