SAQUE EL MÁXIMO RENDIMIENTO A ESTE MANUAL CON EL
· Código ISBN de referencia: 9788426727190
· Disponible en www.marcombo.com
(se recomienda realizar la búsqueda con el código ISBN)
· Componentes del KIT Internet de las cosas con ESP8266:
1 diodo rectificador 1n4007 1000v 1a
1 resistencia de 470ohms
3 resistencias de 1k
Bornera 2 terminales
Bornera 3 terminales
ESP8266
Fuente de alimentación
Fusible 5A 5 x 20 mm
PCB
Pin header 4 x 2
Portafusible
Pushbutton
Regulador LM1117T-3.3
Relay 5v
Internet de las cosas con ESP8266
Una guía sencilla y completa para la experimentación con IoT
Internet de las cosas con ESP8266
Una guía sencilla y completa para la experimentación con IoT
GUILLERMO SAMPALLO
Internet de las cosas con ESP8266
Primera edición, 2020
© 2020 Guillermo Sampallo
© 2020 MARCOMBO, S.L.
www.marcombo.com
Diseño de cubierta y maquetación: Giancarlo Salinas Naiza
Correctora: Laura Seoane Sánchez-Majano
Revisión técnica: Pablo Martínez Izurzu
Directora de producción: Mª Rosa Castillo Hidalgo
Producción del ebook: booqlab
«Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta obra sólo puede ser realizada con la autorización de sus titulares, salvo excepción prevista por la ley. Diríjase a CEDRO(Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de esta obra».
ISBN: 978-84-267-2759-6
Quiero agradecer la colaboración de mi mamá, Susana Meza, por haber leído uno de los primeros borradores de este libro. También a mi amiga Daniela Ortiz por dedicar tiempo en la lectura y corrección del borrador, junto con su apoyo a lo largo de este proceso.
En especial mis agradecimientos a mi esposa Mariela, quien leyó cada una de las versiones de los borradores y tuvo la paciencia para soportarme durante estos meses de escritura. Sin duda este libro no hubiera sido posible sin ella.
Finalmente dedico este libro a mi papá, desde chico me presento a BASIC y me enseñó los primeros pasos en la programación.
Introducción
A quiénes va dirigido
Capítulo 1: IoT, internet de las cosas
Capítulo 2: Kit de trabajo: guía de componentes
Botón
Relay ó relé
Resistencia
Fotorresistencia
Fusible
Condensador eléctrico
Transistor
Diodo
Led
PCB o Placa de circuito impreso
Regulador de voltaje
Fuente para Protoboard
Fuente de alimentación
Otras fuentes de alimentación
Capítulo 3: ESP8266
Configurando Arduino IDE
Configurando Arduino IDE usando GIT
¿Cómo conectar ESP-01?
Conectar un ESP-01 usando un Arduino Uno
Cargar el programa al ESP-01 usando Arduino Uno
Conectar un ESP-01 usando un Convertidor Usb Ttl Serie
Conectar ESP-01 utilizando un adaptador USB
Capítulo 4: Experiencias con el ESP-01
Experiencia 8: Uso del GPIO0
Código de ejemplo: Button
Cargar el ejemplo al ESP-01
Circuito del botón y led
Código de ejemplo: Red Inalámbrica
Capítulo 5: Comunicación en IoT
MQTT - Transporte de telemetría de cola de mensajes
Eclipse Mosquitto
CloudMqtt
ThingStudi
HiveMQ
Capítulo 6: Experiencias con ESP8266 y MQTT
Android: IOT MQTT Dashboard
Capítulo 7: Plataformas IoT
ThingSpeak
Creación de un canal
My Devices Cayenne
Blynk
Capítulo 8: Aspectos a tener en cuenta en la elección de la plataforma
Consumo
Hardware
Software
Datos a reportar
Seguridad
Seguridad en la transmisión
Seguridad en el almacén
Capítulo 9: Ensamble del Kit IoT Relay
Gabinete del kit
Conexión del kit
Anexo
Circuito eléctrico de la placa IoT Relay
Repositorio
Soporte para pilas/baterías
Recursos web
Bibliografía
Este libro fue pensado por un programador para programadores; la idea es que aquellos desarrolladores que deseen iniciarse en el mundo de internet de las cosas puedan tener una noción sencilla sobre los circuitos electrónicos y como estos se integran con la programación de microcontroladores.
Comenzaremos describiendo cuál es el concepto de internet de las cosas y cuál es su rol actual.
Dedicaremos un capítulo a conocer los distintos componentes que se involucran en los circuitos de los dispositivos IoT, cuáles son sus funciones y características principales y su símbolo técnico. Se incluyen algunas experiencias básicas para probarlos y demostrar su uso. También conoceremos la Ley de Ohm y cómo aplicarla.
En el siguiente capítulo conoceremos el chip ESP8266, sobre el cual está basado el libro y que es el cerebro de tantos dispositivos IoT; veremos cuáles son sus características, cómo configurar el IDE de Arduino para programarlo, cómo conectarlo en la protoboard y qué cuidados tenemos que tener. Realizaremos una pequeña experiencia manipulando sus entradas y salidas digitales.
Posteriormente de haber utilizado el ESP8266, y realizado la sencilla experiencia, comenzaremos a realizar experiencias con redes inalámbricas y publicaremos un sitio web corriendo desde el dispositivo IoT.
También veremos cuál es el protocolo que se usa en la comunicación en IoT; conoceremos Mosquitto, un servicio opensource, y algunos proveedores de ese servicio.
Todo lo anterior nos permite tener el conocimiento para realizar experiencias con MQTT y el ESP8266, como transmitir datos desde el dispositivo IoT a la nube y a un smartphone, la comunicación entre dos dispositivos y la creación de un pequeño ecosistema IoT.
Habiendo experimentado con MQTT y ESP8266, conoceremos las plataformas IoT disponibles y realizaremos algunas experiencias con ellas.
Por último nombramos algunas consideraciones a tener en cuenta al construir dispositivos IoT.
El kit va dirigido a aquellas personas que quieran iniciarse en el mundo IoT, que no posean conocimientos de electrónica, o dichos conocimientos sean muy básicos y estén orientados más al desarrollo de software.
Se desarrolló el contenido pensando en que hubiera deseado tener disponible cuando comencé a trabajar con estos temas: ¿qué documentación? ¿qué ejemplos?; es por ello que se realizan pequeñas demostraciones de cómo utilizar los componentes, y de manera progresiva se va avanzando en el desarrollo del software que acompaña a cada uno de los circuitos, con vistas al objetivo final del tener el dispositivo funcionando.
IoT, Internet of Things por sus siglas en inglés o internet de las cosas en castellano, es uno de los términos más populares en los últimos años, y hace referencia a la conexión de cualquier dispositivo a Internet de manera quer permite comunicarse y enviar información pertinente o automatizar tareas. En otras palabras, traslada datos tomados del mundo físico al mundo virtual.
En el entorno laboral cada vez más dispositivos se suman a esta tendencia: hoy en día tenemos relojes de asistencias biométricos conectados a Internet reemplazando los viejos informes de asistencias; máquinas expendedoras de productos informando el stock o las ventas diarias; estaciones meteorológicas transmitiendo en tiempo real los datos a los cuales podemos acceder por una página web o incluso las alarmas de hogar se han vuelto más inteligentes sumando funcionalidad gracias a IoT.
A medida que disminuyen los costes de conexión a internet, y crece la cantidad de dispositivos capaces de capturar datos del entorno, IoT está cada vez más presente en el día a día, según un estudio de Ericsson, para el 2022 existirán más de 18 billones de dispositivos IoT que se comunicarán entre sí.
Podemos atribuir que gran parte de esta revolución se da porque los dispositivos IoT básicamente realizan solo dos tareas: medir y actuar. El procesamiento de la información se realiza en la nube, de manera que si tenemos por ejemplo una casa inteligente el termostato transmitirá la temperatura interna de la casa a un servidor (en ocasiones el servidor es una raspberry) que decidirá si debe pedirle al aire acondicionado que actúe para disminuir la temperatura para que sea más agradable.
Un paso más adelante se encuentran los asistentes personales: los más conocidos pueden ser Siri de Apple, Alexa de Amazon o el de Google, donde por medio de instrucciones verbales podemos solicitar que realicen alguna acción determinada, que hace unos años solo se realizaban en el plano virtual: programar alarmas y recordatorios o reproducir una canción. Ahora estos asistentes son capaces de interactuar con los dispositivos IoT de manera que trasladan las órdenes a una acción concreta: “Alexa enciende las luces”.
Con la llegada de chips como ESP8266 o las placas de desarrollo tales como las raspberry y otras se volvió cada vez más sencillo para los entusiastas (entre los cuales me incluyo) acercarse al mundo IoT y desarrollar productos que satisfacen una necesidad puntual.
También hay que tener en consideración la gran y activa comunidad que existe dedicada a estos dispositivos. Cada vez es más sencillo encontrar soluciones a un problema puntual, es seguro que alguna persona ya estuvo trabajando con ese tema.
Mediante las experiencias y los ejemplos nos introduciremos en el mundo IoT de la mano del chip ESP8266.
A continuación se presenta un breve resumen sobre cada uno de los componentes que contiene el kit, para ayudar al usuario a conocerlos.
Todos presionamos un botón en algún momento, sea una “tecla” del teclado del ordenador, el botón del ascensor o la llave para encender el foco de una habitación, vienen de diversas formas y tamaños, y cumplen con la misma tarea: es un dispositivo mecánico que interrumpe una corriente eléctrica, de ahí que se lo suele llamar también “interruptor”.
En la imagen anterior podemos ver a la izquierda una foto del botón que integra el kit, desde arriba y de perfil, mientras que a la derecha su representación gráfica en los esquemas de circuitos.
El botón cuenta con cuatro contactos metálicos: los contactos 1-2 se encuentran conectados entre sí, al igual que los contactos 3-4.
Es un dispositivo electromagnético que funciona como interruptor controlado por un circuito eléctrico, es decir, un interruptor accionado eléctricamente.
Existen de tres tipos:
• Relé mecánico, donde una corriente pasa por un electroimán para mover, de un contacto a otro, un conductor flexible que está sujeto a un resorte.
• Reed relay, en este caso consiste en un par de contactos ferrosos encerrados, al vacío, dentro de una cápsula de vidrio. Al acercarse a un campo magnético, los contactos se unen cerrando el circuito. El campo magnético puede estar generado por un imán permanente o una bobina.
• Relé de estado sólido, utiliza semiconductores como tiristores y transistores de potencia para cambiar de estado. Tiene la ventaja frente a los anteriores de la velocidad en la que puede cambiar de estado, normalmente entre 1 a 100ns.
La representación gráfica del relé mecánico puede variar de aplicativo en aplicativo e incluso entre la bibliografía, pero siempre se van a encontrar dos contactos para la bobina (el espiral de la imagen) y dependiendo del tipo uno o dos contactos para el circuito.
Es un componente diseñado para introducir una resistencia eléctrica entre dos puntos del circuito. Se utiliza para limitar el flujo de corriente o para establecer el nivel de voltaje dentro de un circuito.
Se usa un código de colores para indicar el valor de ohms ( Ω ).
A diferencia de las resistencias anteriores, las fotorresistencias dependen de la cantidad de luz que reciben; a mayor cantidad de luz menor resistencia.