MOOC: Internet de las cosas Introducción a las plataformas de hardware y software para IoT El desarrollo de aplicaciones de Internet de las Cosas requiere una serie de tecnologías y soluciones. El software libre juega un papel muy importante, proporcionando tanto una arquitectura hardware y software de código abierto, como entornos de desarrollo que permiten la creación de aplicaciones para Internet de las Cosas. A continuación se presentan algunas de las principales tecnologías de código abierto en este ámbito [1]. Arduino Arduino es una plataforma de electrónica abierta para la creación de prototipos basada en software y hardware flexibles y fáciles de usar. Arduino puede tomar información del entorno a través de sus pines de entrada de toda una gama de sensores y puede afectar aquello que le rodea controlando luces, motores y otros actuadores. Cuenta con un micro controlador en su placa que se programa mediante el lenguaje de programación Arduino (basado en Wiring) y el entorno de desarrollo Arduino (basado en Processing). Arduino permite la conexión de sus placas con teléfonos móviles. Google lanzó un ADK (Android Open Accesory Development Kit), una interfaz que permite comunicar el sistema operativo Android con dispositivos de hardware Arduino. Los proyectos desarrollados con Arduino pueden ejecutarse sin necesidad de conectar a una computadora. Algunos ejemplos de aplicación son: sistemas de alcoholímetros, sistemas de automatización del hogar, sistemas de semáforos, impresoras 3D, sistemas para detectar terremotos, etc. Waspmote Waspmote es una plataforma modular de código abierto para construir redes de sensores inalámbricas de bajo consumo. Creada por la empresa Libelium1. La plataforma comprende: a) la placa Waspmote con microcontrolador, memoria, batería, acelerómetro y sockets para añadir módulos, b) una API y compilador de código abierto, c) diferentes radios de comunicación inalámbrica con el protocolo de comunicación 1 Libelium. http://www.libelium.com/ 1 MOOC: Internet de las cosas ZigBee con alcances de hasta 40 km y d) diversos módulos opcionales para añadir comunicación Bluetooth, GPRS y GPS, así como una gran variedad de placas de sensores para medir gases, eventos físicos y parámetros necesarios en el smart metering. Waspmote es un dispositivo de sensores especialmente orientado a desarrolladores. Actualmente cuenta con más de 50 sensores disponibles y utiliza el mismo IDE (compilador y librerías principales) que Arduino (el mismo código es compatible en ambas plataformas. Rasberry PI Rasberry PI es una computadora de una sola placa cuyo tamaño es similar al de una tarjeta de crédito. Se puede conectar a una pantalla o a un teclado. La placa de Rasberry incluye un procesador central (CPU) ARM, un procesador gráfico (GPU) y memoria RAM. No cuenta con medio de almacenamiento, para ello utiliza tarjetas SD. La placa cuenta con puertos USD, Ethernet y HDMI. Es posible instalar sistemas operativos a través de una tarjeta SD, incluyendo Android. Nanode Nanode es un microcontrolador de código abierto con conectividad a internet a través de un navegador o una API. Es compatible con arduino. Es un bloque de construcción que permite experimentar con el Internet de las Cosas, ya que permite interactuar con aplicaciones basadas en la nube y eventos del entorno. A través de una página web simple permite al usuario interactuar con su hardware mediante una interfaz. Se puede utilizar para la detección de datos ambientales como la temperatura, el clima o la calidad del aire añadiendo sensores. LLRP Toolkit Project LLRP Toolkit Project se refiere a un conjunto de herramientas de software que permite utilizar el protocolo de bajo nivel de EPCglobal LLRP para comunicarse con lectores RFID. Alberga el desarrollo de librerías de código abierto en diferentes lenguajes para permitir analizar los mensajes LLRP. El kit está registrado bajo la licencia Apache 2.0. 2 MOOC: Internet de las cosas Mango Mango es un software para la comunicación Máquina a Máquina (M2M) también conocido como software de control industrial o SCADA. Corresponde a una aplicación web desarrollada en Ajax, que permite a los usuarios acceder y controlar sensores electrónicos, dispositivos y máquinas a través de múltiples protocolos simultáneamente. Mango ofrece una interfaz con la que se pueden crear y configurar diversas fuentes de datos, al mismo tiempo que permite la gestión del acceso de usuarios, alertas, registro de datos y automatización. Contiki Contiki es un sistema operativo de código abierto para el internet de las cosas que permite a sistemas pequeños que funcionan con baterías de baja potencia comunicarse con internet. Se utiliza en sistemas tales como la monitorización de niveles del ruido de la ciudad, alumbrado de la calle, medidores de energía eléctrica, sistemas de alarma y control remoto de viviendas. Cuenta con una amplia comunidad de desarrolladores, por ejemplo: Cisco, Atmel, Redwire, SAP, ETH, Thingsquare. ThingSpeak ThingSpeak es una plataforma abierta diseñada para permitir conexiones entre personas y objetos. Cuenta con una API para almacenar y recuperar datos de los objetos utilizando HTTP sobre internet o por medio de una Red de Área Local. Con ThingSpeak se pueden crear aplicaciones con sensores, aplicaciones de seguimiento de localización y una red social de las cosas con actualizaciones de estado. Plataforma FIWARE FIWARE es una plataforma tecnológica pública y abierta que brinda un ecosistema sostenible para el aprovechamiento de las oportunidades de la nueva ola de digitalización causado por la integración de las recientes tecnologías de Internet (Internet de las Cosas, Big Data y Cómputo en la nube). Cuenta con componentes (llamados Generic Enablers) estándares, genéricos, reutilizables y completamente adaptables, que permiten el desarrollo de soluciones (productos y servicios) inteligentes. Dentro de los componentes disponibles se encuentran los habilitadores 3 MOOC: Internet de las cosas de servicios de Internet de las Cosas que brindan las interfaces entre el software y los dispositivos de IoT (sensores y actuadores). Referencias 1. Trejo, A. (2012). Open Smart Cities: Tecnologías de fuentes abiertas para ciudades inteligentes. CENATIC. Retrieved from http://www.cenatic.es/publicaciones/onsfa?download=140%3Aopensmart-cities-tecnologias-de-fuentes-abiertas-para-ciudades-inteligentes 4