Taula de continguts:
- Subministraments
- Pas 1: Introducció a MQTT
- Pas 2: Introducció a la plataforma IoT
- Pas 3: prepareu l'editor MQTT
- Pas 4: Nota al peu
- Pas 5: crèdits i assistència
Vídeo: Conceptes bàsics de l'IoT: connectar el vostre IoT al núvol mitjançant el sistema operatiu Mongoose: 5 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:13
Si sou una persona que es dedica a la manipulació i l’electrònica, sovint us trobareu amb el terme Internet de les coses, normalment abreujat com a IoT, i que fa referència a un conjunt de dispositius que es poden connectar a Internet. En ser jo mateixa, em va fascinar quan vaig saber que dispositius tan fantàstics eren fàcilment accessibles per a mi. La simple idea de poder connectar els meus projectes a Internet mitjançant un petit maquinari i només pensar en les innombrables portes que obriria per a les meves idees de projecte m’hauria fet créixer.
Però dir a l'IoT que es connecti a Internet no és tan senzill com comprar-lo a la plataforma i engegar-lo. I, a part d’aconseguir que el dispositiu es connecti a Internet, també hem de publicar algunes dades útils a Internet. Aquest manual instructiu tracta del procediment per assolir l'objectiu esmentat anteriorment i està pensat per a lectors de qualsevol nivell d'experiència, des de principiants fins a veterans que són nous a l'IoT.
En aquest instructiu, a tall d’exemple, demostraré com dibuixar el gràfic de les lectures del sensor de temperatura intern de la placa de desenvolupament ESP32 que hauria de donar als lectors una bona idea del procés.
Tot i que aquest Instructable utilitza ESP32 i Mongoose OS, el procediment es pot estendre a tots els IoT i firmware que hi hagi.
Subministraments
Per poder implementar aquest instructable vosaltres mateixos, només necessitareu una quantitat mínima de maquinari i són:
- Un Internet of Thing (IoT): he utilitzat un clon econòmic de la placa de desenvolupament ESP32. Si teniu previst comprar una nova placa de desenvolupament ESP32, heu de consultar la placa ESP32 de DFRobot.
- Un cable de dades: utilitzeu un cable que el vostre IoT requereix per parpellejar, etc.
- Una bateria (opcional): compreu-la només si teniu intenció d’engegar el vostre IoT durant períodes llargs.
- Una mini taula de pa (opcional)
Suggereixo al lector que faci servir un IoT diferent de l’ESP32 perquè pugui entendre realment el que s’està fent aquí, en lloc d’imitar-me simplement. Confieu en mi, us agradarà implementar aquest procés amb la vostra pròpia ment en algun altre IoT, per exemple, ESP8266 seria una bona opció.
Pas 1: Introducció a MQTT
Què és MQTT?
"MQTT és un protocol de missatgeria senzill, dissenyat per a dispositius restringits amb un ample de banda baix. Per tant, és la solució perfecta per a aplicacions d'Internet de les coses. MQTT us permet enviar ordres per controlar les sortides, llegir i publicar dades dels nodes del sensor i molt més. " (De RandomNerdTutorials)
Com funciona MQTT?
Abans de començar a treballar tècnicament, pensem primer en el nostre món real. Suposem que us interessa una col·lecció de targetes propietat de l’amic del vostre amic, per exemple, Laurel, que personalment no coneixeu. Com que sou molt particular d’aquesta col·lecció de targetes, demaneu al vostre amic, suposem que Tom, que us demani si Laurel està disposat a vendre-la o no. En fer-ho, demanareu a Tom que compri ell mateix la col·lecció de targetes si Laurel està disposat a vendre, ja que no voleu que cap altra persona posi les mans en la col·lecció que desitgeu. Amb el pas del temps, Tom i Laurel interactuen i, de mutu acord, Laurel lliura la seva col·lecció de targetes a Tom a canvi de diners. Després d’aquest intercanvi, Tom guarda les cartes amb ell mateix fins que et retroba, que és quan finalment et dóna la col·lecció de cartes. Així es produeix un intercanvi normal en la nostra vida quotidiana.
A MQTT, els elements bàsics que intervenen en l’intercanvi són l’editor (Laurel), un subscriptor (Tu) i l’intermediari (Tom). El seu flux de treball també és similar a l'exemple del món real esmentat anteriorment, tret d'una enorme diferència. A MQTT, l’intercanvi l’inicia l’intercanvi, és a dir, Laurel seria el primer a arribar a Tom per dir-li que vol vendre la seva col·lecció de targetes. Si comparem el funcionament de MQTT amb el nostre exemple del món real, seria el següent:
- Laurel li diu a Tom que vol vendre la seva col·lecció de targetes (dades o càrrega útil) i li dóna les cartes.
- Tom agafa aquestes cartes i està obert a les ofertes per a la recollida de cartes. Quan Tom i tu es troben i esbrina que us interessen les targetes (subscriu-vos a un tema). Llavors Tom et dóna les cartes.
Com que tot el procés es basa en el corredor i no hi ha interacció directa entre el subscriptor i l'editor, MQTT elimina la molèstia de sincronitzar tant l'editor com el subscriptor. La presència d’un agent intermediari és una ajuda per a dispositius amb recursos limitats, com ara IoTs i microprocessadors, ja que la seva potència de processament és insuficient per dur a terme la transferència de dades de manera normal, la qual cosa comportaria despeses generals addicionals com autenticació, xifratge, etc. MQTT té moltes altres funcions, com ara la distribució lleugera, un a molts, etc., que el fan ideal per a xarxes i clients restringits
Pas 2: Introducció a la plataforma IoT
Què és una plataforma IoT?
"A un nivell alt, la plataforma Internet of Things (IoT) és el programari d'assistència que connecta maquinari de punta, punts d'accés i xarxes de dades a altres parts de la cadena de valor (que generalment són les aplicacions de l'usuari final). Normalment, les plataformes IoT gestionar tasques de gestió en curs i visualització de dades, que permeten als usuaris automatitzar el seu entorn ". (De Link-Labs)
En resum, una plataforma IoT actua com a mitjà entre l'usuari i els agents de recollida de dades que s'encarrega de representar les dades recollides.
En aquest instructiu, estem planejant posar en línia les lectures de temperatura del nostre ESP32. El nostre ESP32 actuarà com a editor de MQTT i l’agent de MQTT serà la plataforma IoT de la nostra elecció. Tingueu en compte que al nostre projecte no hi ha cap rol d’un subscriptor MQTT, ja que les dades estan sent representades per la mateixa plataforma de primera mà. La plataforma IoT serà l’encarregada d’emmagatzemar les nostres dades publicades i de representar-les de manera agradable, aquí, com a gràfic lineal. Utilitzaré Losant com a plataforma IoT aquí, ja que és d’ús gratuït i ofereix algunes bones maneres de representar les dades. Alguns altres exemples de plataformes IoT són Google Cloud, Amazon AWS i Adafruit, Microsoft Azure, etc.
Configuració de Losant:
- Inicieu la sessió a Losant
- Crear un dispositiu (tipus autònom)
- Afegiu uns quants tipus de dades al dispositiu1. Nom: temperatura, tipus de dades: número2. Nom: compensació, tipus de dades: número 3. Nom: unitat, tipus de dades: cadena
- Genereu una clau d'accés i anoteu l'identificador del dispositiu i la clau d'accés
- Creeu un gràfic1. Creeu un tauler de control. Afegiu-hi el bloc "Gràfic de sèries temporals" mitjançant la variable de temperatura i el dispositiu creat.
L '"identificador de dispositiu" serveix per actuar com a empremta digital única per a un dispositiu. Les "claus d'accés", com el seu nom indica, permet a l'IoT publicar a Losant sota la identitat del dispositiu.
Pas 3: prepareu l'editor MQTT
Ara que hem preparat la plataforma IoT per rebre i representar les dades, hem de preparar un editor MQTT que s’encarregarà de recollir i enviar les dades a la plataforma.
El resum de la preparació de l'editor MQTT és el següent:
- Escriviu el codi: per indicar a l’editor (IoT) com recopilar dades, processar-les i enviar-les a la plataforma IoT. Les instruccions s’escriuen en llenguatges de programació d’alt nivell que es poden llegir i que normalment es coneix com a codi.
- Flash del microprogramari: l'IoT no entendrà fàcilment aquestes instruccions, ja que inicialment no coneix cap idioma. Per superar aquesta barrera del llenguatge entre l’ésser humà i la màquina, el codi es compila en un conjunt d’instruccions crues, bàsicament conjunts de valors hexadecimals o binaris específics de les ubicacions de memòria dins de l’IoT, conegut com el microprogramari que es trasllada a l’IoT.
En aquest instructiu, ja que estic fent servir el meu pràctic ESP32, hi faré passar el firmware del sistema operatiu Mongoose, que accepta els dos programes escrits en C i JavaScript. A part de la compatibilitat de JS, Mongoose OS encara té molt a oferir, com ara actualitzacions en directe, per ajustar el vostre programa en línia i un tauler de control dedicat per a dispositius (mDash), etc.
He desenvolupat una aplicació de codi obert per al sistema operatiu Mongoose per a aquesta instrucció. És una aplicació senzilla anomenada losant-temp-sensor, que utilitza MQTT per enviar les lectures aproximades de temperatura ambient, basades en les lectures de temperatura interna de l’ESP32, a Losant (una plataforma IoT d’ús gratuït). Es recomana revisar el codi de l'aplicació per a una millor comprensió. Farem servir aquesta aplicació per a aquesta instrucció.
Si sou d’aquest tipus aventurer, podeu provar d’assolir el mateix objectiu amb el firmware Arduino-ESP32 que permet utilitzar l’ESP32 com a Arduino (amb capacitat WiFi).
Un resum ràpid de l'aplicació intermitent amb Mongoose OS:
- Instal·leu l'eina mos per al vostre sistema operatiu.
-
Obriu l'eina i executeu les ordres següents:
- mos clon
- cd losant-temp-sensor
- mos build --platform esp32
- mos flash
- mos wifi "el teu wifi ssid" "la teva contrasenya wifi" per exemple. mos wifi "Home" "home @ 123"
-
mos config-set temperature.basis =
temperature.unit ="
"per exemple, mos config-set temperature.basis = 33 / temperature.unit =" celsius"
-
mos config-set device.id =
mqtt.client_id = mqtt.user = mqtt.pass =
Després de parpellejar amb èxit, permeteu que el dispositiu es reiniciï i executeu les ordres següents:
Després d’acabar tots aquests passos correctament, acabareu amb un ESP32 que envia les lectures de temperatura periòdicament a Losant, després de cada 10 minuts. La publicació correcta s’indica amb el LED blau, tal com es mostra al vídeo anterior.
Pas 4: Nota al peu
Si podeu reproduir correctament els passos anteriors, ara tindreu un projecte de treball amb l’ajut del qual podreu observar les tendències de temperatura a l’habitació o allà on vulgueu col·locar el projecte. Com que he mantingut aquesta instrucció tan general com podria fer-ho, per tant, podeu utilitzar el vostre IoT per recopilar dades de tota mena i provar de concloure alguna cosa útil, o bé podeu fer-ho només per jugar. He entès correctament aquesta instrucció.
Per a mi, la millor part de l'IoT és el fet que ens permet recopilar grans quantitats de dades, poc concloents si es prenen sols i convertir-les en quelcom concloent. Això afecta realment l’esperit de la ciència. Per a mi, va ser molt satisfactori i aclaridor notar la caiguda de temperatura dins de la meva habitació durant les hores de pluja a través del meu gràfic.
L’aplicació Losant-temp-sensor-app s’ha optimitzat per al consum d’energia, ja que utilitza la funció de son profund de l’ESP32, per tant, podeu utilitzar-la durant llargs períodes de temps sense preocupar-vos de la bateria. Podeu ampliar encara més l’eficiència energètica traient el LED de la placa de desenvolupament. El dibuix actual de tota la configuració s’ha mostrat més amunt.
L’objectiu d’aquest instructiu, des del principi, era només donar-vos una introducció al món de l’IdT. En acabar aquest instructiu, tindreu un bon control dels conceptes bàsics que podeu reforçar encara més mitjançant altres recursos en línia.
Tot i que en aquesta etapa no podreu fer projectes complexos, tot i així, sempre s’ha de tenir en compte que, si teniu un maó prou resistent i una manera de combinar-los, podeu fer qualsevol estructura imaginable, des de simples a complex. De la mateixa manera, tenir una bona comprensió dels conceptes bàsics i saber aplicar-los correctament us permetrà fer multitud d’articles. Per tant, doneu-vos un copet a l’esquena per fer el primer pas.
Pas 5: crèdits i assistència
Aquest instructable consta d’il·lustracions, p. la que explica l'intercanvi MQTT, que he fet personalment. Aquestes il·lustracions només han estat possibles gràcies als següents paquets SVG d’ús gratuït:
- Vector infogràfic creat per freepik - www.freepik.com
- Vector infogràfic creat per starline - www.freepik.com
- Vector de persones creat per pikisuperstar - www.freepik.com
- Vector abstracte creat per macrovector - www.freepik.com
- Vector abstracte creat per macrovector - www.freepik.com
- Vector infogràfic creat per pikisuperstar - www.freepik.com
Aquest instructable ha estat patrocinat per DFRobot. DFRobot té una fantàstica col·lecció d’electrònica, així que no oblideu consultar-la.
Si creieu que us ha agradat aquest instructable i voleu obtenir-ne més, podeu ajudar-me a Patreon. Si no podeu arribar tan lluny, podeu seguir-me aquí a Instructables.
Recomanat:
Com connectar Raspberry Pi al núvol mitjançant Node.js: 7 passos
Com connectar Raspberry Pi al núvol mitjançant Node.js: aquest tutorial és útil per a qualsevol persona que vulgui connectar un Raspberry Pi al núvol, especialment a la plataforma IoS AskSensors, mitjançant Node.js. No teniu un Raspberry Pi? Si actualment no teniu un Raspberry Pi, us recomanaré que obtingueu un Raspberry
Com connectar l'ESP8266 NodeMCU al núvol IoT: 5 passos
Com connectar l’ESP8266 NodeMCU al núvol IoT: aquest instructiu us mostra una demostració senzilla d’Internet de les coses mitjançant l’ESP8266 NodeMCU i un servei IoT en línia anomenat AskSensors. Us demostrem com obtenir ràpidament dades del client ESP8266 HTTPS i traçar-les al gràfic a AskSensors Io
Com connectar un ESP32 al núvol IoT: 8 passos
Com connectar un ESP32 al núvol IoT: aquest instructiu apareix en una sèrie d'articles sobre la connexió de maquinari com Arduino i ESP8266 al núvol. Us explicaré com fer que el vostre xip ESP32 estigui connectat al núvol amb el servei IoS AskSensors. Per què ESP32? Després del gran èxit
Com connectar Raspberry Pi a la pantalla de l'ordinador portàtil (sistema operatiu Windows): 6 passos
Com connectar Raspberry Pi a la pantalla de l'ordinador portàtil (sistema operatiu Windows): en aquest manual, aprendrem a utilitzar una pantalla de portàtil com a pantalla per al vostre model Raspberry Pi 2 Model B. Les pantalles de Raspberry Pi estan àmpliament disponibles al mercat, però són molt boniques car. Així que, en lloc de comprar un monitor independent, podríeu utilitzar
Com connectar el sensor d’humitat del sòl i l’ESP8266 al núvol IoT AskSensors: 10 passos
Com connectar el sensor d’humitat del sòl i l’ESP8266 al núvol IoT AskSensors: aquest instructiu us mostra com connectar el sensor d’humitat del sòl i l’ESP8266 al núvol IoT. Per a aquest projecte utilitzarem un mòdul WiFi MC8 ESP8266 de node i un sensor d’humitat del sòl. que mesura el contingut volumètric de l'aigua a l'interior del