Archivo de la etiqueta: IoT

¿Qué es IoT?

Internet de las cosas (en inglés Internet of things, abreviado IoT) es un concepto que se refiere a la interconexión digital de objetos cotidianos con Internet. En el caso que queramos interconectar los elementos de una empresa o una Industria es lo que se denomina IIOT (Industrial Internet of Things) o Industria 4.0

Definición de wikipedia:

¿Qués Internet de las Cosas?: http://www.ticbeat.com/tecnologias/que-es-el-internet-de-las-cosas/

Arduino y Raspberry Pi son dos elementos muy populares y abiertos que nos permiten de forma sencilla y económica conectar cualquier cosa a Internet. Con un Arduino y un sencillo módulo ethernet o wifi podemos conectar a Internet sensores para informar, controlar motores o bombillas desde cualquier parte del mundo o mandar un SMS o email cada vez que se abra la puerta de casa. Con una Raspberry Pi disponemos de un ordenador de bolsillo fácilmente conectable a Internet y que puede ejecutar tareas automatizadas, almacenar datos, mostrar información o hacer de pasarela para conectarnos a otras ubicaciones o dispositivos remotos.

Arduino y Raspberry Pi se ha convertido una figura destacada e incluso unos de los impulsores del IoT y no por casualidad, sino que  por sus características son HW con gran capacidad para usar en proyectos de IoT.

Características de Arduino y Raspberry Pi para IoT

  • Barato y rápido prototipado.
  • HW libre y por lo tanto es modificable para que consuma menos y para hacer un HW final de características industriales.
  • Disponibilidad de HW de comunicaciones de todo tipo para conectar con Arduino. Nuevas tecnologías de comunicación llegan antes que para elementos comerciales
  • Librerías y SW público para su reutilización o adaptación.
  • Flexibilidad en la programación.
  • Apoyo de la comunidad.

Intersante web con publicaciones sobre IoT: https://iot-analytics.com/ 

Como afecta IoT a nuestro dia a dia: http://socialgeek.co/tecnologia/8-formas-que-the-internet-of-things-impactara-dia-dia

IoT en 5 minutos con Arduino: http://hackaday.com/2016/01/08/internet-of-things-in-five-minutes/ 

Aplicaciones de IoT: https://temboo.com/iot-applications 

7 Leccciones sobre IoT: https://www.greenbiz.com/article/7-essential-lessons-about-internet-things 

Temboo es una plataforma de IoT que nos permite conectar fácilmente mediante una API un Arduino o una Raspberry Pi para interactuar con ellos desde un navegador web e interconectar con servicios de terceros como correo, visualización de datos o machine learning: https://temboo.com/platform, combinando tecnologías para asumir cualquier reto de ingeniería.

Una visión del IoT aplicado a la industria es lo denominado como Industria 4.0 o Industria conectada o IIoT que deriva del concepto de M2M (machine to machine) que se refiere al intercambio de información o comunicación en formato de datos entre dos máquinas remotas sin necesidad de conexión a Internet sino que puede ser en una red privada y crear una industria inteligente donde todos los elementos están interconectados y comparten los datos.

Definiciones de wikipedia:

Diferencias entre IoT y M2M: https://www.pubnub.com/blog/2015-01-02-iot-vs-m2m-understanding-difference/

El coche autónomo, en el que trabajan grupos como Google, BMW, Volvo o Tesla, es toda una proeza de la robótica.La conducción autónoma se basa en las comunicaciones máquina a máquina (M2M), por las que los vehículos pueden intercomunicarse con las señales, los semáforos y los otros automóviles. Todo esto también tiene mucho que ver con las smart cities. 

Interesantes artículos de Basic IoT:

Reflexiones de David Cuartielles sobre IoT en base a un paper de IBM: https://vimeo.com/299112221 

Empresas en el Mercado IoT

El artículo de Matt Turck hace un buen desglose de IoT https://mattturck.com/iot2018/, que resume en esta imagen:

Imagen completa: link

Listado de compañías IoT: http://dfkoz.com/iot-landscape/

Divide los mercados o aplicaciones verticales en:

  • Personal
  • Home
  • Vehículos
  • Empresa
  • Industria

Divide las Plataformas Horizontales en:

  • Software
  • Seguridad
  • Conectividad
  • Analítica
  • Desarrollo
  • Pagos
  • Interfaces
  • 3D

Y los Building Blocks de IoT los divide en:

  • Hardware
  • Infraestructura
  • Conectividad
  • Partners

Más información: https://mattturck.com/iot2018/

Mercados Verticales IoT

La Internet de los objetos está unificada por un principio común (extracción y análisis de datos digitales del mundo físico), así como por características comunes (combinación de hardware y software), oportunidades (personalización e inteligencia, servicios en tiempo real) y retos (conectividad, seguridad, etc.).  Más allá de estas, sin embargo, áreas tan diversas como la domótica, los aviones no tripulados comerciales, la maquinaria industrial o los coches autónomos están sujetos a dinámicas industriales muy diferentes.

En este curso vamos a ver IoT desde un punto general para poder ser aplicable en cualquier sector, pero cuando se va a acometer un proyecto IoT suele ser adecuado hacer un enfoque vertical en función del sector en el que se vaya a aplicar puesto que cada sector tienen unas características concretas.

Conceptos como Industria 4.0, Smart Cities, Agricultura 2.0, Smart Home, Smart factory, etc… al final son etiquetas y en lugar de especializarse en áreas tecnológicas como sensores, comunicaciones, protocolos, sistemas, etc… pensamos como especialistas de sectores porque un mismo concepto como el de IoT se puede aplicar a muchos sectores de de una forma distinta.

El vino y el IoT http://www.elmundo.es/economia/2016/11/03/5819d37346163f9c528b45c9.html

Visión horizontal IoT

Algunos mercados verticales IoT:

  • Sanidad/Salud
  • Retail
  • Construcción
  • Gobierno/Servicios Públicos
  • Smart Cities
  • Defensa
  • Manufactura y Cadena de Suministro
  • Fabricación
  • Industria
  • Robótica Industrial
  • Automoción/Coche Conectado/Coche Autónomo
  • Movilidad Urbana (BIcis/Patinetes)
  • UAV (Vehículos Aéreos no Tripulados)
  • Logística/Transporte/Almacenes
  • Agricultura/Medio ambiente/Agricultura Vertical
  • Energía/Smart Metering y Eficiencia Energética
  • Hogar Inteligente/Domótica/Inmótica y Robótica Doméstica.
  • Hoteles/Turismo
  • eHealth/Deporte
  • Smart Cities
  • Smart Grid
  • Alimentación
  • Seguridad (Alarmas)
  • Wearables
  • Fitness/Sports
  • Educación/Juguetes
  • Asistentes de voz/Plataformas de voz

Más verticales en el artículo de Matt Turck: https://mattturck.com/iot2018/

Encuesta: https://www.forbes.com/sites/louiscolumbus/2016/11/27/roundup-of-internet-of-things-forecasts-and-market-estimates-2016/#28e2ea4d292d 

¿Que Dispositivos podemos conectar a Internet?

La respuesta es: Cualquier cosa que podamos imaginar.

IoT en su amplio concepto es conectar a Internet cualquier cosa, teniendo sentido o sin tenerlo. Por ejemplo, podríamos conectar a internet un sofá con un Arduino y unos pocos sensores, este sofá podría tuitear que nos acabamos de sentar a ver nuestra serie favorita, simplemente detectando el peso de la persona y conectándose a una API de un servidor de streaming como netflix y comprobando que acabo de poner un capítulo de westworld.

Puede parecer una idea sin sentido, pero esta idea para Netflix podría ser muy interesante, monitorizar a la gente que ve su canal, cuántas veces se levanta el espectador o si se queda dormido.

Un ejemplo más serio de IoT es aplicar las nuevas tecnologías a elementos cotidianos que no imaginarías que tuviera sentido conectar a Internet, pero que pensándolo puede ser muy útil. Por ejemplo, pensemos en conectar a Internet un cortacésped. Con un Arduino podríamos conectar diversos sensores de temperatura del motor, temperatura externa, revoluciones del motor, consumo eléctrico (cortacésped eléctricos), gps, logs, etc… que podrían ser mandados a una plataforma del fabricante y le permitiría analizar esos datos para mejorar sus futuros productos o detectar avería de forma precoz. Podría mandar una desconexión remota en caso que en una determinada partida de fabricación se haya detectado un fallo que podría provocar daños al usuario o actualizar on-line el firmware si se detecta un fallo sin necesidad de llevar al servicio técnico.

Ejemplos de cortacesped conectados:

También podemos conectar a Internet un bastón o una botas de seguridad:

Otra aplicación de IoT usando Arduino o Raspberry Pi como herramienta, es la de obtener información externa disponible mediante APIs del open data. Un ejemplo es el de un sistema de riego automático que podemos tener en una ciudad. En los inicios de la automatización se usaron programadores conectados a una electroválvula donde indicamos las horas entre las que deseamos regar. El siguiente paso fue poner detectores de lluvia para no regar si estaba lloviendo. Otro paso fue poner sensores de temperatura y humedad ambientales y sensores de humedad de suelo que nos indican cuándo debemos regar y en qué áreas de la ciudad.

El paso más avanzado que ofrece el IoT es poder conectar todo este sistema, ya de por sí muy eficiente, a los opendata meteorológicos disponibles en Internet como el de la aemet http://www.aemet.es/es/datos_abiertos/AEMET_OpenData y que nuestro sistema obtenga datos de prediciones meteorológicas y decida no regar si la predicción de lluvia es mayor del 80% en los próximos dos días o simplemente ajustar el algoritmo de riego en función los valores de los sensores + es de los datos meteorológicos. También puede recibir alertas de tormenta o pedrisco y tomar determinadas acciones o simplemente mandar un email o SMS al propietario del huerto. ¿Podríamos hacer esto con un sistema comercial?

Esto podría extenderse a explotaciones agrícolas usando un servicio como el sistema de información agroclimática de La Rioja:

Un ejemplo práctico de esto es el proyecto Aggrofox: 

Aggrofox: IoT sensing, notifications and analytics platform for urban and large-scale agriculture with automated irrigation, using Sigfox technology: https://www.hackster.io/107329/aggrofox-large-scale-and-urban-agriculture-iot-solution-8155fe 

IoT no es que un coche se pueda conectar a Internet para ver videos de youtube, sino que este coche esté conectado a Internet para que pueda actualizar su firmware automáticamente para dotar de nuevas funcionalidades sin necesidad de ir al concesionario, pueda ser inmovilizado en caso de robo o pueda mandar datos de los parámetros internos del coche para que sean analizados y poder detectar alertas precoces de fallo y actualizar automáticamente ese fallo sin que el usuario tenga que hacer nada o avisar al usuario para que lleve el coche a reparar y parar el coche si el usuario no ha llevado a revisión al cabo de unos kms para evitar males mayores.

Interesantes reflexiones sobre IoT: 

Ejemplo de Aplicaciones IoT

El conectar dispositivos a Internet puede tener muchos usos y aplicaciones que hasta ahora no hubiéramos imaginado.

Aplicaciones de IoT: https://temboo.com/iot-applications 

Algunos ejemplos

  • Monitorización en Tiempo real
  • Avisos precoces
  • Control remoto de instalaciones
  • Eficiencia energética
  • Automatización de procesos
  • Automatización de informes/Cuadros de mando
  • Mantenimientos Predictivos
  • PRL (Prevención de Riesgos Laborales)
  • análisis de datos (data mining, etc…)
  • Monitorización y notificación
  • Business intelligence (detectar problemas comunes, medir cuellos de botella, etc…) y ayudar en el mantenimiento predictivo.
  • Integrar con el software corporativo. ERP, CRM, GMAO (Gestión del Mantenimiento Asistido por Ordenador), CMMS
  • Recoger datos y tenerlos en tiempo real por ejemplo datos para sanidad en cámaras frigoríficas.
  • Automatizar todo el papeleo siendo recogidos los datos y guardados y generados los informes.

Ejemplos de uso:

  • Estación meteorológica: medidas de temperatura y humedad exterior (tiempo real)
    • Posible caso de uso 1:controlar la temperatura interior (encender/apagar el aire acondicionado, los radiadores, etc.)
    • Posible caso de uso 2: jardinería (urbanizaciones, comerciales o incluso smart cities que gestionan grandes jardines comunitarios) el riego fácil gracias a las previsiones.
  • Sistema de alarma: basado en la detección de personas, la seguridad del edificio puede ser más fácil.
    • Posible caso de uso 1: despliegue de varias aplicaciones de alarma, sensores de personas o de llama/calor en combinación con aplicaciones para smartphones, para estar siempre conectados a edificios públicos o locales comerciales.
  • Previsión del tráfico: a partir de medidas de tráfico regulares, se pueden construir ciudades inteligentes.
    • Posible caso de uso 1: escenarios para comunicarse con la gente que está en la calle -> tráfico potencial en la carretera con sugerencias directas de alternativas -> muy útil para los servicios de entrega de alimentos en las grandes ciudades.
  • Servicios de entrega (por ejemplo, servicio de pizza): seguimiento de los vehículos de entrega, búsqueda de las rutas más rápidas y posterior análisis de marketing (basado en datos históricos) para centrar las futuras actividades de marketing en las “zonas calientes”.

Interesante web donde sacar más información de IoT: https://www.insight.tech/ 

Ejemplo real de uso empresa riojana: https://www.encore-lab.com/es/proyectos/humecfol

Buen artículo de Luis del Valle sobre Proyectos IoT: https://programarfacil.com/podcast/proyectos-iot-con-arduino/

Presentación del Curso

Título: “Desarrollo Soluciones IoT con Herramientas Libres”

Información e inscripciones: https://www.larioja.org/thinktic/es/cursos-jornadas/proximos-cursos-jornadas/curso-desarrollo-soluciones-iot-herramientas-libres

Motivación

Dentro del itinerario de formación para IoT/Industria 4.0, este curso es una introducción práctica para conocer qué es el IoT/Industria 4.0/digitalización. Se tratarán muchos temas y tecnologías de forma práctica sin profundizar en ellas, para que luego quien esté interesado pueda profundizar en ellas y puedan aparecer nuevos cursos de especialización que sirvan para el itinerario de formación.

Este curso surge de diversas conversaciones con gente de empresas, alumnos de los cursos de Arduino y especialmente personal del Think TIC en los últimos años donde se ha habla de la necesidad de que las pequeñas y medianas empresas puedan acceder a las ventajas de soluciones IoT o Industria 4.0 que solo pueden acceder las grandes corporaciones.

En anteriores cursos he introducido qué es IoT con el uso de tecnologías libres y en el Arduino Day 2017 se hizo una presentación de IoT con Arduino y un taller:

Además en 2018 se hizo la primera versión del curso de IoT: https://www.aprendiendoarduino.com/cursos/curso-iot-open-source-2018/

En este curso voy a hablar de soluciones libres/open source para que cualquiera pueda hacer una solución sencilla o una prueba de concepto de IoT.

Gracias a la herramientas libres/Open Source es posible democratizar el IoT y la industria 4.0. Antes se necesitaba muchísimo dinero no solo en HW y licencias de SW, sino en consultores que hacen un diseño a medida y realizan la integración de los sistemas, ahora no solo el SW libre y el HW libre y barato, sino que la comunidad da soporte a las dudas, hace documentación y tutoriales, así como librerías para facilitar el trabajo.

Muchas empresas no dan el salto de digitalización porque la inversión inicial puede ser muy alta al necesitar contratar a una empresa externa o herramientas profesionales, pero quién mejor que el personal de la propia empresa que es quien mejor conoce los procesos internos, gracias a la tecnología abiertas, es posible con una pequeña inversión económica y una formación centrada en la digitalización de los procesos.

Propuesta Formativa

Este curso está diseñado para que cualquier trabajador cualificado de una empresa pueda hacer una prueba de concepto de IoT aplicado al sector en que trabaje, usando tecnologías libres y pueda ver resultados rápidos y con una inversión económica mínima.

El curso se basa en hacer una aplicación práctica de IoT en al Aula donde se seguirá un itinerario que explicara cada día varios conceptos y se pondrán en práctica en una aplicación basada en una simulación de varias smart cities.

Este curso está enfocado a profesionales cualificados de diversos sectores que deseen hacer una aplicación de IoT en sus empresas y pueda montar un piloto de IoT en sus instalaciones.

No se trata de un curso de Arduino, Raspberry Pi, etc… sino un curso práctico de puesta en marcha de un ecosistema de IoT donde usaremos esas tecnologías de hardware libres y muchas otras herramientas de software libre y aplicaciones cloud.

Este curso también pretende ser la base para que los alumnos detecten las necesidades de formación que demandan para aplicar en sus sectores como: Docker, comunicaciones inalámbricas, electrónica, APIs, aprendizaje automático, etc…

En resumen, quiero plasmar en este curso mi experiencia de uso de IoT en un entorno profesional, especialmente en el inicio donde partiendo de varias pruebas de concepto nos dimos cuenta del valor que podemos aportar con la digitalización de procesos en la empresa con una pequeña inversión económica.

Objetivo

El objetivo de este curso es conocer algunas de las tecnologías necesarias para el desarrollar soluciones IoT/Industria 4.0 y valiéndose para ello de herramientas, tecnologías, protocolos y software libres/open source que hay a nuestra disposición, de forma que cualquier empresa por pequeña que sea pueda hacer una prueba de concepto de IoT/Industria 4.0 con una inversión mínima.

Con los conocimientos adquiridos, los alumnos conocerán las tecnologías necesarias para hacer una solución IoT y profundizar posteriormente en aquellas que más necesiten y puedan desarrollar sus propias soluciones IoT/Industria 4.0.

Al finalizar el curso el alumno será capaz de desarrollar una solución IoT/Industria 4.0 sencilla que puede implantarse como prueba piloto en cualquier empresa que desee digitalizar algún proceso.

Requisitos

Para la realización de este curso es necesario tener conocimientos básicos o experiencia en algunas de estas áreas: programación, redes TCP/IP, redes inalámbricas, protocolos de comunicación, bases de datos, uso de sistemas linux, microcontroladores, autómatas, electrónica, uso de sensores, actuadores, motores, etc… 

Es recomendable un conocimiento medio de Inglés puesto que gran parte de la documentación está en Inglés.

Metodología

El curso se compone de una combinación de teoría y práctica donde se profundiza en el conocimiento de algunas de las tecnologías usadas para usar en un proyecto de IoT, con una duración total de 30 horas. Durante el curso se instalará una solución IoT completa donde visualizaremos datos, interactuaremos con dispositivos, etc…

Los recursos utilizados para la realización de este curso son:

Además están disponibles otros recursos para ampliar información:

Es posible interactuar en el curso mediante:

Para realizar las prácticas de este curso se usará el material disponible en el Think TIC que veremos a fondo en un apartado posterior.

Toda la documentación será on-line con el objetivo de mantenerla actualizada y no con un documento físico que se queda obsoleto rápidamente. Después de finalizar el curso toda la documentación on-line seguirá estando disponible de forma pública.

Todo el material entregado es en préstamo y debe cuidarse al máximo, a la hora del montaje de las prácticas se seguirán las instrucciones para evitar dañar los componentes.

Toda la documentación está liberada con licencia Creative Commons.

Reconocimiento – NoComercial – CompartirIgual (by-nc-sa): No se permite un uso comercial de la obra original ni de las posibles obras derivadas, la distribución de las cuales se debe hacer con una licencia igual a la que regula la obra original.

Aprendiendo Arduino by Enrique Crespo is licensed under a Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional License.

Organización del curso

El curso tiene una duración total de 30 horas. El curso se celebra del 21 al 30 de octubre de 2019 de Lunes a Viernes en horario de 17.30 a 21.15. Se hará un descanso de 10-15 minutos aproximadamente a mitad de la sesión.

Cada día de curso de compone de 3 partes diferenciadas:

Contenido del Curso

Toda la documentación del curso y el código usado es libre y accesible desde https://www.aprendiendoarduino.com/cursos/curso-iot-open-source-2019/

Temario Simplificado

  • Fundamentos IoT
  • Hardware IoT
  • Comunicaciones IoT
  • Protocolos IoT
  • Plataformas IoT
  • Servicios IoT

Temario Extendido

Ver https://www.aprendiendoarduino.com/cursos/curso-iot-open-source-2019/

Tecnologías Usadas

  • Arduino
  • Raspberry Pi
  • API REST
  • MQTT
  • Node Red
  • LoRa
  • XBee
  • WiFi
  • Ethernet
  • Sigfox
  • Bases de Datos
  • Análisis de Datos
  • Dashboards
  • Smart Metering

Presentaciones

  • ¿Qué es para ti IoT/Industria 4.0?
  • ¿Sector de aplicación?
  • ¿Experiencia y formación?
  • ¿Proyectos con IoT?
  • ¿Qué te gustaría aprender en este curso?

Contacto

Para cualquier consulta durante el curso y en cualquier otro momento mediante email: aprendiendoarduino@gmail.com

Twitter @jecrespo: https://twitter.com/jecrespom

Y más información sobre el curso y el autor: http://www.aprendiendoarduino.com/acerca-de/

Saber más de IoT 2019…

Slack: https://aprendiendoarduino.slack.com, enlace de invitación: link invitación


 

Día 1: “Presentación del Curso”

Sistema inteligente para ahorrar energía en edificios: https://www.eldia.com/nota/2019-10-10-3-24-26-crean-un-sistema-inteligente-para-ahorrar-energia-electrica-en-edificios-informacion-general

Slack: https://aprendiendoarduino.slack.com, enlace de invitación: link invitación

Saber más…: https://aprendiendoarduino.wordpress.com/2019/10/03/saber-mas-de-iot-2019/

Capítulos vistos día 1:

Día 2: “Raspberry Pi en IoT”

Preparación de todas las herramientas que necesitamos para IoT, hay que hacerlo pero SOLO UNA VEZ:

  • Cuenta de Blynk
  • Cuenta de Thingspeak
  • Instalación IDE Arduino
  • Instalación driver
  • Instalación soporte para ESP8266
  • Instalación librerías

Preparación para Raspberry Pi:

Capítulos vistos día 2:

Día 3: “Software Raspberry Pi y Arduino”

Numerar puestos y firmar hoja de material.

Repaso del día anterior:

  • Funcionamiento de la práctica de “IoT en 90 minutos”
  • ThingHTTP y React
  • Instalación Raspbian

¿Como añadir en “IoT en 90 minutos” un contador en thingspeak y en Blynk para ver el estado la puerta y un contador de cuantas veces se ha abierto la puerta?

Ejemplo PoC con toroidales y luego wibeee

Plataforma Energía (Vertical):

Capítulos vistos día 3:

Día 4: “Software Raspberry Pi y Comunicaciones”

Nuevo Arduino MKR WAN 1310: https://blog.arduino.cc/2019/10/10/new-mkr-wan-1310-for-lora-connectivity-comes-with-2mbyte-flash-and-extended-battery-life/

Monitorizar temperatura de un refrigerador: https://blog.arduino.cc/2019/09/25/logging-refrigerator-temperature-with-arduino/

Sistema de monitorización de temperatura: https://blog.temboo.com/temperature-monitoring-system/

Y esto es lo que se puede hacer con los datos recogidos por los Arduinos: https://aprendiendoarduino.grafana.net/

Empresas que usan estos sistemas: https://www.linkedin.com/posts/siceanz_itswc19-activity-6593044471758327808-omvU

Talleres específicos: emonCMS

Resumen del día 3:

Capítulos vistos día 4:

Día 5: “MQTT”

Nuevo IDE Arduino (Beta): https://blog.arduino.cc/2019/10/18/arduino-pro-ide-alpha-preview-with-advanced-features/

Glucómetro IoT:

Image Courtesy of Wall Street Journal, Published on line, Friday, Sept. 26, 2014

Capítulos vistos día 5:

Día 6: “Node-Red”

Limite de conexiones de mosquitto: 1015 en raspberry Pi

Clonar imágenes Raspberry Pi:

Cambiar memoria swap Raspberry Pi: https://raspberrypi.stackexchange.com/questions/70/how-to-set-up-swap-space

AEMET Open Data: https://opendata.aemet.es/centrodedescargas/inicio

Ejemplo de uso de mailgun conectando una máquina dispensadora de snacks:

Capítulos vistos día 6:

Día 7: “HTTP y API REST”

Ritmo del curso.

Fiware: https://www.fiware.org/

Curso Fiware: https://www.larioja.org/thinktic/es/cursos-jornadas/proximos-cursos-jornadas/curso-fundamentos-tecnologia-fiware-introduccion-fiware

Switchbot:

Proyecto IoT: https://www.hackster.io/gatoninja236/smart-garden-system-with-arduino-nano-iot-791933

Capítulos vistos día 7:

Día 8: “Plataformas y Servicios. Grafana”

Arduino IoT Cloud: https://blog.arduino.cc/2019/10/28/arduino-iot-cloud-support-for-esp8266-and-other-third-party-boards/

Openweathermap Pricing: https://openweathermap.org/price

Agromonitoring: https://agromonitoring.com/

Librerías HTTP:

Cliente seguro para ESP8266:

Contraseña en el dashboard de Node-Red: https://nodered.org/docs/user-guide/runtime/securing-node-red

  • Configurar:  httpNodeAuth: {user:”user”,pass:”xxxxxxxxxxxxxxxxxxxxxxxxxxxx”},

Node-Red Dashboard Login: https://github.com/phyunsj/node-red-dashboard-login

Flow para poner un pin en Dashboard: https://flows.nodered.org/flow/7bcb0b049df4fa3c962294137ebaec19

Como exponer un Node-Red de forma segura en Internet: https://github.com/node-red/cookbook.nodered.org/wiki/How-to-safely-expose-Node-RED-to-the-Internet

Hardware para LoRa/TTN:

Plataforma Thinger.io: https://thinger.io/

¡¡¡Cerveza fin de curso!!!

Recoger todo el material

Capítulos vistos día 8:

Plataformas Cloud Públicas

Las plataformas de IoT son plataformas SW que reciben los datos datos recogidos por nuestros sensores y luego son enviados por los microcontroladores y que se alamacenan, además de dar otros servicios. Pueden ser plataformas de terceros o plataformas propias desarrolladas por nosotros.

Estas plataformas tienen un HW y el SW que pueden usar estas tecnologías:

  • Virtualización, las plataformas SW pueden estar virtualizadas generalmente por motivos de escaliabilidd.
  • Bases de Datos, principalmente nosql como Mongo DB, RavenDB, cassandra y otras muchas. Big Data.
  • Tratamiento de big data con Hadoop o spark
  • Plataformas propias como Amazon AWS que tiene para IoT https://aws.amazon.com/es/iot/
  • Google cloud platform: https://cloud.google.com/solutions/iot/
  • Google Weave, es una plataforma de comunicaciones para IoT
  • IBM blue Mix http://www.ibm.com/cloud-computing/bluemix/
  • Desarrollo con Microsoft Azure
  • Desarrollo de software de plataformas webs con .NET, php, javascript, python, django, node.js
  • Scadas industriales, scadas en la nube o scada as a service

Por el contrario se pueden instalar plataformas privadas en nuestras propias instalaciones sin acceso desde Internet, algunos ejemplos:

Plataformas IoT para makers: https://www.sparkfun.com/news/2413

Guía de plataformas IoT: https://www.ibm.com/developerworks/library/iot-lp101-why-use-iot-platform/index.html

Elegir plataforma IoT: https://ricveal.com/blog/plataformas-iot/

Arquitectura de una plataforma IoT:

Listado de algunas plataformas IoT:

Ecosistema IoT

¿Cómo Conectar a Internet una Tostadora?

Veamos un resumen de los elementos que necesitamos para conectar un dispositivo a Internet y hacer un proyecto de IoT completo.

Supongamos que quiero conectar mi tostadora a Internet y hacer un sistema que conecte mi coche con la tostadora y cuando me acerque a casa ponga en funcionamiento la tostadora y además me informe en el móvil que la tostadora se pone un funcionamiento y me indique la temperatura de la tostadora.

Lo primero que necesito es un sensor para medir la temperatura y un actuador que encienda la tostadora. Para poder leer el sensor y poder manejar el actuador necesitaré un microcontrolador con entradas (sensor) y salidas (actuador), por ejemplo, un Arduino.

Ahora ya puedo leer los datos de la tostadora y encenderla, el siguiente paso es conectarla a Internet.

Primero necesito acceso a Internet (conectividad), puedo usar ethernet, pero ¿Quien tiene una toma de red en la cocina?

Mejor usando comunicaciones inalámbricas como: wifi, bluetooth, redes móviles, XBee, etc…

Una vez tenemos conectividad, necesitamos un protocolo de comunicación para comunicar los datos y las órdenes entre los distintos dispositivos.

  • HTTP REST

  • MQTT

Supongamos tenemos nuestra tostadora con un Arduino integrado y un chip WiFi. Hay dos formas en la que pueden hablar entre el geolocalizador del coche y nuestra tostadora.

  • Tener uno de los dispositivos trabajando como servidor con una dirección IP, de forma que el otro dispositivo se pueda conectar en cualquier momento.
  • Tener un tercer servidor y tanto la tostadora como el coche se conecten al servidor y este mande mensajes a uno y otro.

La opción 1 es la más barata al no necesitar un elemento extra, pero al menos uno de los dispositivos necesita una IP pública conocida y fija, además hay que abrir puertos en el router de casa lo que supone una dificultad adicional y un punto más en la seguridad.

En la opción 2 el servidor maneja los mensajes, en el caso de MQTT se trata del broker. Es un elemento neutral al que las “cosas” se pueden conectar para enviar y recibir mensajes.

Adicionalmente podemos tener una plataforma que almacene datos y luego podamos visualizarlos, analizarlos, hacer cuadros de mando o interactuar con otras plataformas o servicios de terceros.

Elementos que Intervienen en el Ecosistema IoT

Explicación gráfica de los elementos necesarios en IoT: http://www.libelium.com/products/meshlium/wsn/

En resumen, al hacer un proyecto IoT debemos hacernos estas preguntas:

  • Qué quieres medir?
  • Cómo lo quieres conectar?
  • Qué quieres hacer con los datos?

Elementos en IoT:

  • Plataformas Software, para tratar los datos recogidos por nuestros sensores y almacenarlos. Pueden ser plataformas de terceros o plataformas propias desarrolladas por nosotros o simplemente guardar en BBDD propias. Por ejemplo: Carriots, Thingspeak, Temboo, Thinger, etc…
    Además todas estas plataformas SW que están en la nube, deben estar soportadas por un HW de servidores, unas BBDD de gran capacidad y una infraestructura segura que los hospede.
  • Servicios, son los servicios que ofrecen las plataformas como mostrar los datos recogidos, mandar avisos cuando se detecte un evento o la interconexión con otras plataformas o simplemente. Servicios ofrecidos por la plataforma carriots: https://www.carriots.com/que-es-carriots

Sensor — MCU — Comunicación — Protocolo — Plataforma — Servicios

Uno de los retos del IoT es mandar datos de cualquier sensor a través de cualquier protocolo a cualquier plataforma de forma inalámbrica y usando la menor energía posible para uso de baterías

Cadena de valor de IoT:

recoger datos — conectar — almacenar — analizar — mostrar — actuar — predecir

Mapa de IoT:

Mapa más complejo de IoT (imagen de la plataforma IoT de IBM):

Arduino IoT Manifesto: https://www.edn.com/electronics-blogs/eye-on-iot-/4441804/Arduino-s-IoT-Manifesto

“We believe that the best way to grow this environment is to develop open source platforms and protocols to propose as an alternative to the myriad of proprietary hardware and software platforms each one of the big players are developing.

We believe in creating tools that make these technologies understandable to the most diverse set of people as possible, this is the only way to make sure innovation benefits most of humanity.

We propose that connected devices should be: Open, Sustainable and Fair.”

“We foresee a world with billions of connected smart objects. These smart objects will be composed and orchestrated, thus making the Internet of Things a reality. The IoT will be the eyes, noses, arms, legs, hands of a new, extended, cyber body. The nervous system of such a body will be the Internet, allowing the interaction with a distributed intelligence made of hardware processors and human minds, behaviors, software procedures, and services, shared in the Cloud.”

Arduino cree que mediante la creación de nuevos productos conectados con software, hardware y protocolos de comunicación de código abierto podemos crear un entorno más innovador para fabricantes, empresarios y corporaciones. Al ofrecer a los usuarios la posibilidad de compartir su trabajo de forma más abierta, compartimos desafíos, resolvemos problemas y creamos juntos productos mejor conectados. Estamos seguros de que un enfoque abierto y compartido para el diseño de software, protocolos y hardware es la mejor solución.