Taula de continguts:

[IoT] Telegram Bot amb Arduino MKR WiFi 1010: 5 passos
[IoT] Telegram Bot amb Arduino MKR WiFi 1010: 5 passos

Vídeo: [IoT] Telegram Bot amb Arduino MKR WiFi 1010: 5 passos

Vídeo: [IoT] Telegram Bot amb Arduino MKR WiFi 1010: 5 passos
Vídeo: കൊല്ലം, താന്നിബീച്ചിൽ കപ്പലിൽ നിന്നു നിധി കിട്ടി 2024, Desembre
Anonim
Image
Image
Què necessites
Què necessites

Aquest projecte demostra com interactuar Arduino amb les API Telegram Bot. El projecte es basa en la nova placa MKR WiFi 1010 equipada amb un mòdul ESP32 per U-BLOX.

En aquesta etapa, el projecte no és més que una prova de concepte, només per mostrar-vos amb què podeu fer, de manera que només necessiteu la placa Arduino.

Però, què és un bot de Telegram? Bé, els robots són simplement comptes de Telegram operats per programes, no per persones, i sovint tenen funcions d’intel·ligència artificial. Poden fer qualsevol cosa: ensenyar, jugar, cercar, emetre, recordar, connectar-se, integrar-se amb altres serveis o fins i tot passar ordres a Internet de les coses. (crèdits de Telegram:

En el nostre cas, passarem ordres a Arduino per construir un dispositiu IoT senzill. Respondrà a ordres simples i també activarà / desactivarà el led incorporat. Deixaré que la vostra imaginació en faci més … (imagineu-vos connectar un o més relés als pins d'E / S i encendre / apagar un escalfador o el sistema d'aire condicionat amb el vostre telèfon intel·ligent, per exemple).

Pas 1: el que necessiteu

Què necessites
Què necessites

Per a aquest projecte necessiteu:

  • Arduino MKR WiFi 1010 de la botiga Arduino:
  • Arduino IDE 1.8.5 o superior:
  • Un cable micro-usb per connectar Arduino al vostre PC
  • Una connexió a Internet, requereix el SSID i la contrasenya. Millor si utilitzeu el vostre propi enrutador casolà per assegurar-vos que no està bloquejat.
  • L’aplicació Telegram instal·lada al vostre telèfon intel·ligent, independentment de la marca. Consulteu aquí també les versions per a PC i Web.

Pas 2: Instal·lació de l'IDE

Instal·lació de l’IDE
Instal·lació de l’IDE
Instal·lació de l’IDE
Instal·lació de l’IDE
Instal·lació de l’IDE
Instal·lació de l’IDE

Sí, ho sé, ho sé … la majoria de vosaltres ja teniu el Arduino IDE instal·lat al PC, però aquest Instructables està pensat també per a principiants. Per tant, primer, descarregueu el Arduino IDE 1.8.5 que vulgueu (fitxer zip per fitxer "no administradors" o exe)

Es recomana la versió 1.8.5, no he provat versions antigues i la nova placa utilitzada en el projecte no s'ha pogut suportar.

Ara cal instal·lar les noves plaques amb els seus controladors:

  1. iniciar l'IDE
  2. Al menú Eines, trieu Taulers i, a la part superior de la llista de processadors, trieu Gestor de taulers.
  3. Desplaceu-vos per la finestra nova (vegeu la imatge) fins que trobeu les taules SAMD Arduino que inclouen el nou MKR WiFi 1010.
  4. Feu clic a aquesta pestanya o feu clic a Més informació dins de la pestanya, trieu la versió més recent i instal·leu-la.
  5. Espereu fins que finalitzi la instal·lació. També s’encarregarà de la instal·lació dels controladors
  6. També necessiteu una nova biblioteca WiFi per a aquest tauler: trieu Esbós, Inclou biblioteca i Gestiona biblioteques. Cerqueu Wifinina i instal·leu-ho com heu fet amb el processador anterior.

Ara connecteu la vostra nova placa Arduino i espereu que Windows completi la instal·lació del controlador.

Al menú Eines-> Tauler trobareu les noves taules, trieu el MKR WiFi 1010.

Es necessita una altra biblioteca especial per a aquest projecte, és la biblioteca ESP8266TelegramBot de Giancarlo Bacchio. La biblioteca ha estat lleugerament modificada perquè funcioni amb aquest tauler, de manera que s’inclou a la carpeta de l’esbós.

Trieu el port de com correcte i proveu el tauler amb l'ordre Obtenir informació del tauler.

Enhorabona, ja heu acabat amb l'IDE.

Pas 3: creació del bot de Telegram

Creació del Telegram Bot
Creació del Telegram Bot
Creació del Telegram Bot
Creació del Telegram Bot
Creació del Telegram Bot
Creació del Telegram Bot

Crear un nou bot de Telegram és molt senzill.

Obriu l'aplicació Telegram i, a la barra de cerca, escriviu @BotFather i inicieu un xat amb ell (imatge1). BotFather és la … fàbrica de bot. Us ajudarà a crear un bot nou i a canviar-ne la configuració.

Després de l'ordre / start veureu la llista d'ajuda (imatge2).

  • Escriviu / newbot (imatge3) Escriviu ara el nom del bot. El nom es mostra a les dades de contacte i en altres llocs.
  • BotFather us demanarà un nom d'usuari. El nom d'usuari és un nom curt, que s'utilitzarà en mencions i enllaços telegram.me. Els noms d’usuari tenen entre 5 i 32 caràcters i distingeixen entre majúscules i minúscules, però només poden incloure caràcters llatins, números i subratllats. El nom d’usuari del vostre bot ha d’acabar en ‘bot’, per exemple. "Tetris_bot" o "TetrisBot".
  • Si tant el nom com el nom d'usuari són vàlids, rebreu una llarga cadena de caràcters anomenada TOKEN. Aquesta és la vostra "clau" personal que s'utilitza per comunicar-vos amb els servidors de Telegram. Copieu-la i enganxeu-la en un fitxer de text al vostre PC per ara. L’utilitzarem més endavant al codi Arduino. Si el perdeu, no us preocupeu, només cal que torneu a obrir el xat i escriviu / token per generar-ne un de nou.

Tots els passos es descriuen aquí:

Avançat (opcional)

Torneu a obrir el xat i escriviu / ajudeu

Feu clic a (o escriviu) / setuserpic per carregar una imatge per al bot. Feu clic a (o escriviu) / setabouttext per configurar la secció Quant al bot: la gent veurà aquest text a la pàgina de perfil del bot i s’enviarà juntament amb un enllaç al vostre bot quan el comparteix amb algú.

Feu clic a (o escriviu) / setdescription per establir una secció de descripció per al vostre bot. La gent veurà aquesta descripció quan obri un xat amb el bot, en un bloc titulat "Què pot fer aquest bot?".

Pas 4: Modifiqueu, pengeu i proveu l'esbós

Modifiqueu, pengeu i proveu l'esbós
Modifiqueu, pengeu i proveu l'esbós
Modifiqueu, pengeu i proveu l'esbós
Modifiqueu, pengeu i proveu l'esbós
Modifiqueu, pengeu i proveu l'esbós
Modifiqueu, pengeu i proveu l'esbós

És hora de penjar el programari a la placa Arduino MKR WiFi 1010.

Descarregueu els fitxers adjunts, per alguna raó no puc carregar un codi postal, així que creeu una carpeta anomenada esbós i copieu els 4 fitxers que hi ha al seu interior. Si us plau, no canvieu els noms tret que sàpiga el que esteu fent.

Modificar

Obriu l’esbós, hem d’omplir informació (imatge1): ompliu arduino_secrets.h amb la vostra credencial de wifi i telegrama.

  • Localitzeu la informació de la xarxa WiFi i escriviu el nom i la contrasenya de la vostra xarxa.
  • Cerqueu la informació del bot de telegrama i escriviu el nom, el nom d’usuari i el testimoni proporcionats per @BotFather

Pujar

Assegureu-vos que el tauler sigui correcte (imatge2) a l'ide i que estigui connectat i proveu de compilar el codi. Si la compilació funciona bé, carregueu-la al tauler, només trigaran uns segons.

En cas de problemes, comproveu si hi ha un error tipogràfic i torneu-ho a provar.

Prova

[IMPORTANT!] L'esbós envia registres a l'IDE. El processador té un port USB natiu (com les plaques Leonardo). Un cop engegat, el codi esperarà fins que s'executi el monitor sèrie. Per tant, deixeu-lo connectat al PC i obriu el monitor sèrie. Arduino primer es connectarà a Internet i, a continuació, començarà a interrogar el servidor Telegram per obtenir missatges nous (imatge3).

Ara obriu Telegram al vostre dispositiu preferit i, al quadre de cerca, escriviu el nom del bot (no el nom d’usuari que acabi amb “bot”). Obriu un xat amb ell.

La primera ordre per iniciar un xat amb un bot és / start, el nostre Arduino us respondrà amb un missatge de benvinguda.

Ja heu acabat la prova, si alguna cosa no funciona, comproveu les informacions introduïdes a l'esbós (nom, nom d'usuari, testimoni …)

Certificats Si teniu errors en la connexió al servidor de telegrama (registre: Bot no connectat):

  • Obriu Eines-> Actualitzador Wifi101 / wifinina
  • Assegureu-vos que la vostra placa estigui connectada, comproveu els ports a l'esquerra de l'eina d'actualització, ja que la placa ha d'estar allà
  • Feu clic a Obre l'esbós de l'actualitzador i pengeu-lo al tauler
  • Després de carregar-lo, a l’actualitzador trieu el firmware més recent per al tauler i feu clic a Actualitza el firmware
  • Després de l’actualització, a l’actualitzador, secció Certificats SSL, feu clic a Afegeix domini, al quadre de diàleg escriviu telegram.org:443 i premeu OK.
  • Feu clic a Penja certificats al mòdul wifi
  • Pengeu aquest esbós al tauler

Pas 5: Millores

Millores
Millores

Si mirem el codi, és molt senzill implementar noves ordres i respondre a l'usuari.

Noves ordres: podeu escriure un subordinat per a cada ordre nova. Tots els subordinats s’encarregaran de completar l’ordre i (eventualment) retornaran a l’usuari una informació d’estat.

Limitar els usuaris: per descomptat, aquest projecte només és una demostració. Qualsevol usuari de Telegram es pot connectar a casa i enviar ordres no desitjades. No ho voleu !.

Bé, mireu la imatge1, mostra 2 usuaris connectats. Com podeu veure, cada usuari té el seu propi identificador d'usuari. Amb una mica de treball al costat del codi, podeu filtrar (o crear una llista) només per a usuaris autoritzats. Només cal estudiar el codi i provar d’interceptar el número d’identificació d’usuari. A continuació, executeu ordres només d’usuaris coneguts.

Maquinari: pel que fa al maquinari, es poden connectar molts sensors i relés als pins d'E / S d'Arduino.

Vés amb compte: el tauler utilitzat en aquest projecte és tolerant a 3,3 V !!! Utilitzeu un canvi de nivell de voltatge quan sigui necessari. Per obtenir més informació i consells sobre aquest tauler, llegiu aquí:

Això és tot, gaudiu-ne!

Recomanat: