NodeMCU: la plataforma de IOT de codi obert

ESP8266

NodeMCU és un mòdul per implementar una plataforma de IOT (Internet of Things), o de l'Internet de les coses, de codi obert. Utilitza un firmware executant-se sobre el SoC ESP8266 d'Espressif Systems que ja vam analitzar en aquest mateix bloc, i un maquinari basat en el mòdul ESP-12, amb 11 connexions GPIO, una d'elles analògica de 10 bits (1024 valors digitals possibles), com vas poder llegir en aquest mateix article a què faig referència .

El terme NodeMCU es refereix a el microprogramari i no als kits de desenvolupament, encara que últimament es fa servir com a sinònim de tota la plataforma completa. A més, has de saber que aquests mòduls usaven com a llenguatge Lua, en un inici, però com veuràs això ha evolucionat. De fet, es basaven en el projecte ELUA i en el SDK no operatiu d'Espressif per al ESP8266, i usant projectes de codi obert per compondre les peces que els falta com lua-cjson, spiffs, etc. Per si no ho saps, Lua és un llenguatge de programació imperatiu i estructurat bastant lleuger per a ser usat com a llenguatge interpretat amb semàntica extensible.

NodeMCU

nodem

S'ha popularitzat molt aquest mòdul dins dels que fan servir el ESP8266, ja que s'està emprant en gran mesura per a projectes IOT, tan de moda en l'actualitat. Després de començar a comercialitzar el ESP8266 de Espressif Systems el 2013, un any més tard, l'octubre de l'any 2014, es va començar a enviar els primers arxius de firmware de l'NodeMCU a GitHub. Dos mesos més tard, a finals d'aquest any, el projecte es va començar a expandir per incloure també una plataforma de maquinari obert.

A poc a poc es va anar desenvolupant i afegint més biblioteques a el projecte, Com la MQTT de Contiki perquè la plataforma suportés així el protocol Iot MQTT, usant per al seu accés Lua. El 2015 arribaria una altra actualització important, quan Devsaurus va portar la biblioteca u8glib per NodeMCU, permetent així controlar fàcilment pantalles de LCD, OLED i VGA. A poc a poc tots els desenvolupadors originals van ser abandonant el projecte a l'estiu de 2015 i van deixar pas a col·laboradors independents. En 2016, NodeMCU ja incloïa més de 40 mòduls diferents ...

També s'inclouria la ESP8266 Core for Arduino IDE, Per treballar amb la plataforma amb plaques de desenvolupament Arduino, el que va permetre a molts usuaris i makers crear els teus propis projectes usant aquesta plataforma.

Pintura

Pel que fa a l'Pinout, Ja es va analitzar en l'altre article sobre el ESP8266 de l'bloc, però els pins més destacats són:

  • Pin 0 *: GPIO 16 només per a lectura / escriptura de l'GPIO.
  • Pin 1: GPIO maig
  • Pin 2: GPIO maig
  • Pint 3: GPIO 0
  • Pin 4: GPIO maig
  • Pin 5: GPIO maig
  • Pin 6: GPIO maig
  • Pin 7: GPIO maig
  • Pin 8: GPIO maig
  • Pin 9: GPIO maig
  • Pin 10: GPIO maig
  • Pin 11: GPIO maig
  • Pin 12: GPIO maig
  • Altres estan reservats, o serveixen per a l'alimentació (GND, Vcc), i per altres senyals.

Els pins disponibles poden variar segons la versió o model, però aquests són els típics.

Altres característiques de l'NodeMCU

El NodeMCU té un preu similar a l'ESP-201, amb 7 € aprox. a Amazon, Amb tot el necessari inclòs en ell, de manera que l'ús no pot ser més senzill. Alguns mòduls superen els 10 €, però integren alguns elements addicionals, com panells de plasma, etc.

Pots descarregar el firmware que ho controla des GitHub de forma gratuïta i es poden usar llenguatges com C ++, Python, BASIC, JavaScript, i altres com el mateix Lua. Recorda que és de codi obert, i per tant, permet aprendre d'aquest projecte o modificar-lo de forma lliure si necessites afegir característiques o canviar algun paràmetre.

Què inclou la placa de desenvolupament?

La placa de desenvolupament NodeMCU sol incloure en el kit té el seu port microUSB per programar-lo i alimentar-lo, i convertidor Sèrie-USB, els terminals que he citat en l'apartat de pinout, LED i botó de reset integrats a la placa. Per descomptat, a l'incloure el SoC ESP8266 per tenir connectivitat WiFi, també s'ha serigrafiat en la PCB una antena en forma de serpentí.

No obstant això, a l'haver diversos fabricants, versions i models, Cadascun d'ells té la seva pròpia filosofia i pot incloure els seus propis extres o tenir diferents criteris segons l'objectiu per al qual hagi estat pensada la placa. Per exemple, com veuràs més endavant, es pot substituir un xip ESP12 per un ESP12E en alguns models, o el CH340G en comptes del CP2102 per a la conversió sèrie, etc.

En general, els principals fabricants de plaques NodeMCU són Amica, FBlue, Lolin / Wemos, DOIT / SmartArduino, AZ-Delivery, etc. A més dels diferents proveïdors, també trobaràs diverses versions:

  • 1º Generacio: La devkit v0.9 és la versió original de l'NodeMCU amb ESP12 amb 4MB flash en l'ESP8266, però amb menys pins GPIO que la versió ESP12E en què es basen els actuals models. Ara ha quedat obsoleta i no la pueds comprar.
  • 2n Generació: És la versió v1.0 / v2.0, creada per Amica, una companyia de l'alemany Gerwin Janssen per millorar l'anterior v0.9. Va agradar tant que es va acabar transformant en la versió oficial de NodeMCU. Va començar a fer servir ESP12E i amb una filera addicional de pins per a les connexions. Altres fabricants van acabar també copiant aquesta versió, fent servir aquest model d'open-hardware com a base.
  • 3n Generació: La v1.0 / v3 va ser dissenyada per Lolin / Wemos quan es va decidir a crear un prototip millorat amb alguns canvis menors. El principal canvi era muntar un convertidor serial CH340G en comptes del CP2102, fent que el port USB sigui més robust. Actualment és el model més venut.

De moment, aquests són els desenvolupaments més importants que has de conèixer, encara que alguns ja hagin quedat més obsolets.

Què es pot fer amb NodeMCU?

El que pots fer amb una placa NodeMCU sobre Iot, pot variar en gran mesura, i el límit és la teva imaginació. Però aquí tens alguns exemples d'idees que pots implementar gràcies a les funcions per al control des d'Internet, comunicació, etc.

  • Crear la teva pròpia estació meteorològica amb sensors d'humitat, temperatura, etc., i poder rebre els resultats dels mesuraments des de qualsevol punt amb connexió a Internet. Per descomptat pot utilitzar qualsevol altre tipus de sensors o elements per crear projectes similars.
  • automatismes connectats, Fent que davant d'un impuls es desencadeni una acció, com el control de llums LED, commutació de relés, activació de qualsevol tipus d'actuador, etc.
  • crear un servidor NTP, I un altre tipus de serveis per als teus dispositius connectats.
  • Sistemes de posicionament per a interiors d'habitatges o edificis fent servir GPS.
  • Joguines de tota mena, domòtica de la casa, etc.

Més informació - tutorials Arduino

Ara saps les característiques més importants de les plaques NodeMCU i les pots començar a fer servir en els teus futurs projectes IOT juntament amb els teus plaques Arduino i similars ...


2 comentaris, deixa el teu

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   esteban va dir

    És del millor del millor, per un tècnic o enginyer que vulgui abastar de forma àmplia el tema de IOT ha de passar per ell.

  2.   Edgar Bosch G va dir

    Excel·lent informació tecnològica d'Iot, per entendre els pricipis