El Internet of Things está muy de moda para crear aplicaciones o robots que se comunican entre ellos. Aunque parezca que el IOT es muy reciente, en verdad lleva mucho tiempo funcionando, pero es ahora cuando existen recursos abiertos y hardware asequible para elaborar todos estos aspectos y desarrollar proyecto muy extendidos en el nivel de Internet.
El problema que nos encontramos muchas veces es … ¿Cómo puedo aprovechar todas las opciones que me ofrece el IOT para desarrollar proyectos?
Los proyectos IOT son un modelo de proyectos diseñados para pensar a lo grande... Es decir, que tenemos la libertad de controlar un robot desde la otra punta del mundo, o quizás podemos recopilar millones de datos de un dispositivo para mejorar su comportamiento o automatizar elementos con una intervención humana practicamente nula.
Se acabo eso de diseñar un robot que enciende un LED, o que mueve unas ruedas en respuesta a unos sensores… Ahora hay que pensar en aplicaciones como un todo… como un acceso a todo lo que puede existir en Internet para realizar un objetivo concreto.
Por poner una serie de ejemplos, vamos a categorizar las acciones que vamos a aprender a desarrollar con el Internet de las cosas.
- Controlar un robot desde internet.
- Recopilación de datos de un robot y almacenarlos en una base de datos.
- Visualización de datos de un robot.
- Automatizar avisos cuando un robot o dispositivo detecta un evento o realiza una acción determinada.
- Comunicar robots con otros robots dentro de una misma red.
- Omnired. Un dispositivo controla al resto de dispositivos de una red local.
Estos ejercicios prácticos siempre requieren de dos partes. La conexión de un cliente y la gestión de un servidor.
Un cliente es siempre el elemento que accede a un servidor para obtener un servicio. Por ejemplo, cada vez que nos conectamos a una página obtenemos información que ya ha sido creada, y desde nuestro navegador accedemos a este privilegio que en cualquier momento puede desaparecer,ya que no depende de nosotros.
Es decir, el usuario tradicional es siempre el cliente, mientras que el servidor es el que proporciona un servicio y es el que gestiona los permisos y tiene el control de todo lo que acontece sobre su apliación.
Es por ello que necesitamos conocimientos de Arduino como cliente y servidor para programar nuestra placa en ambos sentidos.
Por otra parte, requeriremos conocimientos de servidor para crear aplicaciones remotas, para no depender solamente de nuestros robots, sino de otras máquinas que ofrecen un servicio más extendido.
Conocimientos y recursos requeridos
- Hardware
- Raspberry
- Arduino
- NodeMCU
- ESP8266
- Sensores
- Software
- Servidor apache php
- Conexion a bases de datos MySQL (otras bases de datos en su defecto)
- Javascript
- JSON
- JQuery
- Arduino
Temario del curso
- Introduccion al IOT
- Tipos de proyectos IOT
- Instalación NodeMCU y librerías
- Conexión Arduino WiFi
- Creación de un servidor Web Arduino
- SPIFSS
- Comunicaciónes a bases de datos
- GET
- POST
- Arduino JSON
- Consultas desde Arduino a bases de datos
- Visualización de datos web
- Redes
- MQTT – Introducción e instalación
- Arduino MQTT Client
- MQTT to DB
- OTA