Archivo de la categoría: Gateway
Gateways IoT
Un Gateway IoT es un dispositivo físico o un programa de software que sirve como punto de conexión entre la nube y los controladores, sensores y dispositivos inteligentes. Todos los datos que se mueven a la nube, o viceversa, pasan por el gateway, que puede ser un dispositivo de hardware dedicado o un programa de software. Un gateway IoT también puede denominarse pasarela inteligente o nivel de control.
Algunos sensores generan decenas de miles de puntos de datos por segundo. Una pasarela proporciona un lugar para preprocesar esos datos localmente en el borde antes de enviarlos a la nube. Cuando los datos se agregan, se resumen y se analizan tácticamente en el borde, se minimiza el volumen de datos que deben ser enviados a la nube, lo que puede tener un gran impacto en los tiempos de respuesta y en los costes de transmisión de la red.
Otra ventaja de una pasarela de IoT es que puede proporcionar seguridad adicional para la red de IoT y los datos que transporta. Dado que el gateway gestiona información que se mueve en ambas direcciones, puede proteger los datos que se mueven hacia la nube de fugas y dispositivos de IoT de ser comprometidos por ataques externos maliciosos con características tales como detección de manipulaciones, cifrado, generadores de números aleatorios de hardware y motores de cifrado.
La pasarela IoT desempeña un papel importante en la gestión de los dispositivos. Cada dispositivo (sensor/actuador) tiene un caso de uso diferente y emite mensajes a través de diferentes canales como Wifi, BLE, Zigbee, Ethernet, RF, LPWAN, LTE, etc. y el gateway realiza varias funciones como conectividad de dispositivos, traducción de protocolos, agregación, filtrado, correlación, seguridad, actualizaciones, administración y más. Se sitúa entre los dispositivos y la plataforma de nube.
Además un Gateway puede hacer conexión VPN segura entre localizaciones diferentes, permitiendo unir de forma segura diferentes puntos a través de Internet.
Routers y Gateways industriales inteligentes https://ewon.biz/es
Hace no tantos años la conexión remota era por módem o por GSM con conexiones pto a pto. En la actualidad usamos internet para el telecontrol, pero es un problema el tema de la seguridad. Ya existen dispositivos como el router industrial eWON Flexy https://ewon.biz/es/productos/flexy modular que es servidor OPC UA y cliente openvpn, es muy potente para conectar y dar funcionalidades adicionales a unos autómatas.
eWON monta la VPN y al ser servidor modbus TCP y OPC UA, es posible acceder remotamente y de forma segura a los datos del autómata e integrarlo con datos de otras localizaciones.
Ejemplo Gateway LoRa:
Y el código: https://github.com/jecrespo/aprendiendoarduino-lora/blob/master/Demo_LoRa/rf95_server/rf95_server.ino
Programación de los Gateways IoT:
Dispositivos Hardware IoT
En este curso vamos a usar Arduino u otras placas compatible como HW de sensorización y actuación en IoT, pero existen otros microcontroladores o PLCs que haría la misma funcionalidad.
Dispositivos Hardware, son los dispositivos que van a medir y los que van a interactuar con el exterior. El elemento HW programable capaz de interactuar con estos dispositivos es el microcontrolador o el microprocesador.
Hay tres clases de dispositivos IoT:
- Los dispositivos más pequeños son los controladores embedded de 8 bits System-On-Chip (SOC). Un buen ejemplo de este Open Source hardware es Arduino. Por ejemplo: Arduino Uno platform, este tipo de HW no suelen llevar sistema operativo (SO).
- El siguiente nivel son los dispositivos con una arquitectura de 32 bits como los chips de Atheros y ARM. Normalmente estos dispositivos se basan en plataformas de Linux embedded, cómo OpenWRT u otros sistemas operativos embedded (Muchas veces incluyen pequeños routers domésticos y derivados de estos). En algunos casos, no corren ningún SO. Por ejemplo: Arduino Zero o Arduino Yun.
- Las plataformas IoT con más capacidad son los sistemas completos de 32 y 64 bits, también se les denomina Single-Board-Computer (SBC). Estos sistemas, como Raspberry Pi o BeagleBone, pueden correr varios SO como Linux o Android. En muchos casos, estos son Smartphone o algún tipo de dispositivo basado en tecnologías móviles. Estos dispositivos pueden comportarse como Gateways o puentes para dispositivos más pequeños. Por ejemplo: un wearable que se conecta vía Bluetooth a un Smartphone o a una Raspberry Pi, es típicamente un puente para conectarse a Internet.
Además a esta lista de dispositivos podemos añadir los Microcontroladores Industriales o PLCs, softPLCs o cualquier dispositivo que pueda conectar a internet y del que pueda obtener datos como un power meter como http://circutor.com/en/products/metering o un dispositivo con interfaz SNMP.
Otro tipo de HW IoT son los Gateway. Un Gateway IoT es un dispositivo físico o un programa de software que sirve como punto de conexión entre la nube y los controladores, sensores y dispositivos inteligentes. Todos los datos que se mueven a la nube, o viceversa, pasan por el gateway, que puede ser un dispositivo de hardware dedicado o un programa de software. Un gateway IoT también puede denominarse pasarela inteligente o nivel de control.
A estos dispositivos o nos nodos sensores se les lama también motes (short for remote) https://en.wikipedia.org/wiki/Sensor_node
Este es el primer elemento, es que está más cerca de las “cosas” es el HW que se encarga de medir e interactuar con las “cosas” y procesar esos datos. Este dispositivo puede tener conectado otros hardware como:
- Sensores: https://aprendiendoarduino.wordpress.com/2018/04/14/sensores-arduino-3/
- Actuadores: https://aprendiendoarduino.wordpress.com/2016/07/02/actuadores-y-perifericos-de-salida-2/
- Periféricos: https://aprendiendoarduino.wordpress.com/2016/07/02/actuadores-y-perifericos-de-salida-2/
- Transceivers: https://es.wikipedia.org/wiki/Transceptor
Programación de los dispositivos IoT
Un sistema operativo IoT es un sistema operativo diseñado para funcionar dentro de las restricciones propias de los dispositivos de Internet of Things, incluidas las restricciones de memoria, tamaño, potencia y capacidad de procesamiento. Los sistemas operativos de IO son un tipo de sistema operativo integrado, pero por definición están diseñados para permitir la transferencia de datos a través de Internet.
ARM Mbed es una plataforma y un sistema operativo para dispositivos conectados a Internet basado en microcontroladores ARM Cortex-M de 32 bits. Estos dispositivos también se conocen como dispositivos de Internet of Things. El proyecto es desarrollado en colaboración por Arm y sus socios tecnológicos.
- https://www.mbed.com/en/
- Mbed OS: https://www.mbed.com/en/platform/mbed-os/
- Hardware Mbed OS: https://os.mbed.com/platforms/
RTOS sistemas operativos en Tiempo real para sistemas embebidos, generalmente basados en linux.
Buen resumen de lo necesario para saber sobre sistemas embebidos para IoT a nivel de HW http://so-unlam.com.ar/wiki/index.php/PUBLICO:Sistemas_embebidos_e_Internet_de_las_Cosas
Guia para elegir el mejor HW IoT: https://www.ibm.com/developerworks/library/iot-lp101-best-hardware-devices-iot-project/index.html
Hardware IoT
El HW libre por excelencia es Arduino como microcontrolador y Raspberry Pi como microprocesador, con menor potencia física pero mayor potencia de cálculo.
Dentro del HW libre no solo debemos quedarnos con Arduino, sino que existen otros dispositivos, incluso algunos son compatibles y se programan igual que Arduino:
- Arduino: https://store.arduino.cc/
- Arduino familia MKR para IoT: https://store.arduino.cc/arduino-genuino/arduino-genuino-mkr-family y https://store.arduino.cc/arduino-iot-mkr1000-bundle
- ESP8266, HW low cost con wifi: https://www.espressif.com/en/products/hardware/esp8266ex/overview
- ESP32: https://www.espressif.com/en/products/hardware/esp-wroom-02/overview
- NodeMCU: http://nodemcu.com/index_en.html
- Wemos D1 Mini: https://wiki.wemos.cc/products:d1:d1_mini
- Moteino: https://lowpowerlab.com/guide/moteino/
- Artik de Samsung: https://www.artik.io/
- Waspmote: http://www.libelium.com/products/waspmote/ de Libellium
- Particle: https://www.particle.io/
- HW: https://store.particle.io/
- IDE online: https://build.particle.io/signup
- Plataforma online: https://dashboard.particle.io/login
- Más información: https://computerhoy.com/noticias/hardware/electron-kit-desarrollo-arduino-conexiones-gsm-40181
- Geothings: http://geothings.io/
- Un HW muy interesante que tiene su propia plataforma cloud es https://onion.io/
- El software de onion que vale para otro HW es el https://onion.io/cloud
- IoT de Texas Instrument
- RIoTboard: https://www.element14.com/community/community/designcenter/single-board-computers/riotboard
- Goblin 2 https://verse-technology.com/goblin2/
- Gemalto, conectividad IoT:
- http://www.bolsamania.com/nota-de-prensa/mercados/gemalto-acelera-la-innovacion-de-la-iot-con-una-nueva-herramienta-de-prototipado-rapido–2549084.html
- http://www.gemalto.com/brochures-site/download-site/Documents/m2m-connect-shield.pdf
- http://www.gemalto.com/m2m/development/cinterion-connect-shield
- http://www.gemalto.com/iot/iot-connectivity
- http://www.gemalto.com/iot/consumer-electronics
- https://developer.gemalto.com/
- Renexa RX111 MCUs http://am.renesas.com/products/tools/introductory_evaluation_tools/renesas_promo_board/yrpbrx111/index.jsp
- Flutter:
- WavIoT: https://waviot.com/
- Tessel placa IoT con node.js: https://tessel.io/
- Enocean (Ultra low power y power harvesting): https://www.enocean.com/en/
- Empresa navarra que desarrolla HW IoT: http://www.embeblue.com/
- Wisen: https://wisen.com.au/store/talk2/
- Samsung Smartthings http://www.smartthings.com/
Más HW IoT:
- Mejor HW IoT del 2016: https://blog.hackster.io/maker-madness-the-best-iot-boards-of-2016-cfc2382daf64#.zevo0bb27
- IoT Hardware Guide: https://www.postscapes.com/internet-of-things-hardware/
- Hardware IoT companies: https://www.postscapes.com/companies/iot-hardware-companies/
¿Conoces alguna más?
En el caso de HW libre, el siguiente paso es una personalización del HW mediante el diseño de HW como Eagle o Kicad
HW IoT Industrial
En el mundo industrial se está incorporando el IoT con la denominación IIoT (Industrial Internet of Things) ya sea con dispositivos basados en HW libre o los fabricantes de Autómatas están incorporando comunicaciones más abiertas a sus dispositivos.
PLC basado en Arduino: https://www.industrialshields.com/
Artículo de Industrial Shields sobre Arduino como aplicación de PLC: http://blog.industrialshields.com/es/iot-in-industry-improves-reliability-equipment/
PLCs basados en Arduino: https://industruino.com/
PLC basado en Arduino: http://www.winkhel.com/
Carcasa para Arduino y Raspberry Pi en la industria: Arduibox: http://www.hwhardsoft.de/english/webshop/raspibox/#cc-m-product-10145780397
SIMATIC IOT2020: gateway de Siemens basado en Arduino para futuras aplicaciones industriales: http://es.rs-online.com/web/p/kit-de-desarrollo-de-iot/1244037/ y aplicaciones https://www.rs-online.com/designspark/simatic-iot2020.
Simatic IoT 2040: https://w3.siemens.com/mcms/pc-based-automation/en/industrial-iot/Documents/simatic-ioc2040-flyer-en.pdf
Los otros PLCs SBC (Single Board Computer): http://www.infoplc.net/blogs-automatizacion/item/102505-plc-single-board-computer
OpenPLC Project: http://www.openplcproject.com/
Autómatas con MQTT: http://www.unitronics.com/ y modelo nistream https://unitronicsplc.com/unistream-series-unistream5/
ABB PM556, automata de ABB abierto: http://new.abb.com/drives/es/noticias-y-casos-de-exito/impulsa-el-internet-de-las-cosas-los-servicios-y-las-personas
Arduino y LoRaWAN
Arduino MKR WAN 1300
MKR WAN 1300 es una placa potente que combina la funcionalidad de la conectividad MKR Zero y LoRa. Es la solución ideal para los fabricantes que desean diseñar proyectos de IoT con una mínima experiencia previa en redes que tengan un dispositivo de baja potencia.
La placa MKR WAN 1300 tiene comunicación inalámbrica unido a un diseño de la placa MKR Zero Board, es decir, que tendremos soporte para aplicaciones de 32 bits. La placa cuenta con 256KB de Memoria flash y 32KB SRAM. Puede funcionar con la energía de dos pilas de 1,5V y todo en un tamaño de 67,64 x 25mm. Al tener comunicación inalámbrica, el dispositivo al que se conecte tendrá opción de comunicarse a Internet.
El MKR WAN 1300 usar el módulo Murata CMWX1ZZABZ Lo-Ra module que lleva el transceiver Semtech SX1276:
- https://www.murata.com/products/lpwa/lora
- https://wireless.murata.com/eng/products/rf-modules-1/lpwa/type-abz.html
- Datasheet: https://wireless.murata.com/datasheet?/RFM/data/type_abz.pdf
Más información: https://store.arduino.cc/mkr-wan-1300
Buen artículo para sobre el MKR 1300: http://tinkerman.cat/arduino-mkr-wan-1300/
Moteino
Moteino es una plataforma de desarrollo compatible con Arduino inalámbrica de baja potencia basada en el popular chip ATmega328p utilizado en el Arduino-UNO, lo que lo hace 100% compatible con el IDE de Arduino (entorno de programación).
Para la programación, necesitará un adaptador FTDI externo para cargar los sketchs, con las ventajas de un menor costo y un tamaño más pequeño. La variante MoteinoUSB incluye el convertidor de serie USB.
Los Moteinos son compatibles y se pueden comunicar con cualquier otra plataforma Arduino o de desarrollo que utilice los populares transceptores HopeRF RFM69 o LoRa. Moteino también viene con un chip de memoria flash SPI opcional para programación inalámbrica o registro de datos.
Web Moteino: https://lowpowerlab.com/guide/moteino/
Moteino fue diseñado para ser una plataforma de desarrollo compacta, altamente personalizable y asequible, adecuada para IoT, domótica y proyectos inalámbricos de largo alcance. Estas son algunas de las características que distinguen a Moteino:
- diseño modular pequeño y ligero que se adapta a recintos minúsculos
- las configuraciones flexibles permiten el uso de varios transceptores inalámbricos
- potencia realmente ultra baja: con tan solo ~ 2uA alcanzables en el modo de suspensión profunda, los Moteinos permiten que los proyectos con batería, como los sensores inalámbricos de movimiento/entorno, funcionen durante años. El modo de suspensión de Watchdog está en ~ 6uA (activación periódica). El nuevo 8Mhz Moteino permite el modo de sueño 100nA más bajo posible
- Las radios sub-Ghz y LoRa producen un rango mucho más largo que las bandas de 2.4Ghz
- programable de forma inalámbrica: puede volver a flashearlo sin cables, cuando se implementa en ubicaciones difíciles (solo con radios RFM69)
- fácil de usar desde el familiar IDE Arduino, muchos ejemplos de código brindados para ayudarlo a comenzar
Pinout:
Los transceiver soportados por Moteino son:
Transceiver Datasheets
- http://www.hoperf.com/upload/rf/RFM69W-V1.3.pdf
- http://www.hoperf.com/upload/rf/RFM69HW-V1.3.pdf
- http://www.hoperf.com/upload/rf/RFM95_96_97_98W.pdf
- http://www.hoperf.com/upload/rf/rfm12b.pdf
Muy buena explicación de los módulos de Adafruit: https://learn.adafruit.com/adafruit-rfm69hcw-and-rfm96-rfm95-rfm98-lora-packet-padio-breakouts/overview
Librería para los módulos RFM69: https://github.com/LowPowerLab/RFM69
IMPORTANTE: Los módulos RFM69 no son LoRa y no son compatibles con los módulos RFM95/RFM96. Además los módulos RFM95/RFM96 necesitan de una librería de terceros.
Más información RFM69:
- https://www.sparkfun.com/products/12775
- https://lowpowerlab.com/2015/11/11/rfm69_atc-automatic-transmission-control/
- https://es.rs-online.com/web/p/modulos-rf-de-baja-potencia/7931995/
- https://www.digitalsmarties.net/products/rfm-board
- https://www.digitalsmarties.net/products/rfm69cw-868-mhz
Uso con Lora: https://lowpowerlab.com/guide/moteino/lora-support/
Librería para los módulos LoRa RFM95 (868-915mhz) and RFM96 (433mhz).: http://www.airspayce.com/mikem/arduino/RadioHead/index.html
Getting started para instalar el soporte y las librerías: https://lowpowerlab.com/guide/moteino/programming-libraries/
Github: https://github.com/LowPowerLab y Librería: https://github.com/LowPowerLab/Moteino
Comprar Moteino:https://lowpowerlab.com/shop/
Moteino weather shield: https://lowpowerlab.com/2016/09/09/weathershield-r2-released/ with a BME280 which includes all Temperature/Humidity/Pressure readings all in 1 sensor.
Moteino PowerShield: https://lowpowerlab.com/guide/powershield/
Gateway LoRa con Moteino + Raspberry Pi:
Dragino
En Dragino http://www.dragino.com/ podemos encontrar Hardware para LoRa: http://www.dragino.com/products/products-list.html
Wiki: http://wiki.dragino.com/index.php?title=Main_Page
La librería recomendada es: https://github.com/matthijskooijman/arduino-lmic, pero puede usarse la librería Radiohead: http://www.airspayce.com/mikem/arduino/RadioHead/
LoRa Shield:
- Shield de LoRa para Arduino: http://www.dragino.com/products/lora/item/102-lora-shield.html
- Manual: http://wiki.dragino.com/index.php?title=Lora_Shield
Otro HW LoRa compatible con Arduino
Existen más HW de desarrollo compatible con Arduino con módulos LoRa diferentes:
- M5Stack: http://m5stack.com/
- ESP32 LoRa: https://es.aliexpress.com/item/868-MHz-915-MHz-SX1276-ESP32-LoRa-0-96-Pulgadas-de-Pantalla-OLED-Azul-Kit-32/32836591865.html?spm=a219c.12010108.1000023.13.7fdcecc0EA9d6W
- ESP8266 + LoRa: https://www.tindie.com/products/electronictrik/esp8266-rfm95-lorawan-node-pcb-with-battery/
- Módulo Industrial: https://www.kickstarter.com/projects/1322607643/4zerobox-the-industrial-toolkit-for-iot-solution-p
- LoPy: https://pycom.io/product/lopy/
Gateways LoRa
En las redes LoRaWan un gateway es un dispositivo dentro de la arquitectura de red que recibe los datos transmitidos por un dispositivo de nodo final y que reenvían los paquetes de datos a un servidor de red centralizado. Los datos de un nodo final LoRa pueden ser recibidos por múltiples puertas de enlace (gateway),
Los gateways o puertas de enlace son un puente transparente entre los dispositivos finales y el servidor de red central. Uno o más dispositivos finales se conectan a una o más puertas de enlace, mediante una conexión inalámbrica de un solo salto, usando tecnología RF LoRa™ o FSK, formando así una red en estrella.
Una o más puertas de enlace se conectan al servidor de red central por medio de conexiones IP estándar, formando así una red en estrella. Las comunicaciones entre los dispositivos y el servidor de red, son generalmente unidireccionales o bidireccionales, pero el estándar también soporta multidifusión, permitiendo la actualización de software en forma inalámbrica, u otras formas de distribución de mensajes en masa.
Los gateways son enrutadores equipados con un concentrador LoRa, lo que les permite recibir paquetes LoRa. Por lo general, puede encontrar dos tipos de puertas de enlace:
- Las pasarelas se ejecutan con un firmware mínimo, por lo que son de bajo costo y fáciles de usar (por ejemplo, The Things Gateway) y solo ejecutan el software de reenvío de paquetes.
- Gateways que ejecutan un sistema operativo, para el cual el software de reenvío de paquetes se ejecuta como un programa de fondo (por ejemplo, Kerlink IoT Station, Multitech Conduit). Esto le da más libertad al administrador del gateway para administrar su puerta de enlace e instalar su propio software.
Una forma de montar un gateway LoRa barato es con una Raspberry Pi y un hat de Moteino con un módulo LoRa:
Un gateway simple con LoPy: https://www.hackster.io/bucknalla/lopy-lorawan-nano-gateway-using-micropython-and-ttn-a9fb19
Construir un gateway LoRa barato: http://cpham.perso.univ-pau.fr/LORA/RPIgateway.html
Módulos LoRa para conectar un ordenador y haga de gateway: https://www.cooking-hacks.com/waspmote-gateway-sx1272-lora-sma-4-5-dbi-868-mhz y tutorial LoRa gateway Libelium: http://www.libelium.com/development/waspmote/documentation/lora-gateway-tutorial/
Lista de gateways de loriot: https://www.loriot.io/lora-gateways.html
The things gateway: https://www.thethingsnetwork.org/docs/gateways/gateway/
The Things Gateway permite que dispositivos como sensores y computadoras integradas se conecten a internet. Con un proceso fácil de conectar, está creando el aspecto más sustancial de su red de datos IoT. Active la puerta de enlace en solo 5 minutos y cree su propia red local. Con la capacidad de servir a miles de nodos, la puerta de enlace es el componente principal de su red conectada. Esta versión funciona a 868MHz para uso en la UE y 915Mhz para uso en los EE.UU.
Lista de gateways de thethingsnetwork:
- https://www.thethingsnetwork.org/docs/gateways/start/list.html
- https://github.com/TheThingsNetwork/docs/blob/master/_content/gateways/start/list.md
Gateway draguino (open wrt): http://www.dragino.com/products/lora/item/119-lg01-s.html
Ejemplo con Dragino para usarlo como gateway (Lora Shield + Arduino Yun Shield):
- Lora GPS tracker: http://www.instructables.com/id/Dragino-LoRa-GPS-Tracker-1/
- LoRa Shield como módulo RFM: https://www.seeedstudio.com/Dragino-LoRa-Shield-support-433M-frenquency-p-2672.html
Más información:
- https://www.thethingsnetwork.org/docs/gateways/
- Tutorial Libelium: http://www.libelium.com/development/waspmote/documentation/lora-gateway-tutorial/
- https://www.semtech.com/products/wireless-rf/lora-gateways
- https://docs.mbed.com/docs/lora-with-mbed/en/latest/intro-to-lora/
- https://www.youtube.com/watch?v=ZFVA6cQyheY
Librería RadioHead LoRa
Una de las librerías más usadas para módulos LoRa con Arduino es RadioHead: http://www.airspayce.com/mikem/arduino/RadioHead/index.html
Proporciona una biblioteca completa orientada a objetos para enviar y recibir mensajes paquetizados a través de una variedad de radios de datos comunes y otros transportes para microprocesadores integrados.
RadioHead consta de 2 grupos principales de clases: driversy managers.
- Los drivers proporcionan acceso de bajo nivel a un rango de diferentes radios y otros transportes de mensajes paquetizados.
- Los managers brindan servicios de envío y recepción de mensajes de alto nivel para una variedad de requisitos diferentes.
Cada programa de RadioHead tendrá una instancia de un driver para proporcionar acceso a la radio o transporte de datos, y generalmente un manager que usa ese driver para enviar y recibir mensajes para la aplicación. El programador debe instanciar un driver y un manager e inicializar el manager. A partir de entonces, las funciones del manager se pueden usar para enviar y recibir mensajes.
También es posible usar un driver por sí mismo, sin un manager, aunque esto solo permite un transporte no confiable y sin dirección a través de las funciones del driver.
Se admite una amplia gama de plataformas de microprocesadores.
Unos ejemplos de drivers:
- RH_RF69 Works with Hope-RF RF69B based radio modules, such as the RFM69 module
- RH_NRF24 Works with Nordic nRF24 based 2.4GHz radio modules, such as nRF24L01 and others.
- RH_RF95 Works with Semtech SX1276/77/78/79, Modtronix inAir4 and inAir9, and HopeRF RFM95/96/97/98 and other similar LoRa capable radios. Supports Long Range (LoRa) with spread spectrum frequency hopping, large payloads etc.
- RH_Serial Works with RS232, RS422, RS485, RS488 and other point-to-point and multidropped serial connections, or with TTL serial UARTs such as those on Arduino and many other processors, or with data radios with a serial port interface. RH_Serial provides packetization and error detection over any hardware or virtual serial connection. Also builds and runs on Linux and OSX.
- RHEncryptedDriver Adds encryption and decryption to any RadioHead transport driver, using any encrpytion cipher supported by ArduinoLibs Cryptogrphic Library http://rweather.github.io/arduinolibs/crypto.html
Managers, cualquier manager puede usarse con cualquier driver:
- RHDatagram Addressed, unreliable variable length messages, with optional broadcast facilities.
- RHReliableDatagram Addressed, reliable, retransmitted, acknowledged variable length messages.
- RHRouter Multi-hop delivery of RHReliableDatagrams from source node to destination node via 0 or more intermediate nodes, with manual routing.
- RHMesh Multi-hop delivery of RHReliableDatagrams with automatic route discovery and rediscovery.
Esta librería es compatible entre otros con:
- Arduino and the Arduino IDE
- Moteino http://lowpowerlab.com/moteino/
- ESP8266 on Arduino IDE and Boards Manager per https://github.com/esp8266/Arduino
- ChipKIT Core with Arduino IDE
- Particle Photon https://store.particle.io/collections/photon
- ESP32 built using Arduino IDE 1.8.1 or later
- Raspberry Pi Uses BCM2835 library for GPIO http://www.airspayce.com/mikem/bcm2835/ Currently works only with RH_NRF24 driver or other drivers that do not require interrupt support.
- Linux and OSX Using the RHutil/HardwareSerial class, the RH_Serial driver and any manager will build and run on Linux and OSX.
Para los módulos con moteino que se ha usado en la demo, son necesarios los drivers: http://www.airspayce.com/mikem/arduino/RadioHead/classRH__RF95.html
Si se quiere añadir una capa de seguridad debe usarse la clase: http://www.airspayce.com/mikem/arduino/RadioHead/classRHEncryptedDriver.html
Si se quiere usar direccionamiento debe usarse la clase: http://www.airspayce.com/mikem/arduino/RadioHead/classRHDatagram.html
IMPORTANTE PARA MODULOS LORA, la librería está configurada por defecto a 434: Check if you have set the right frequency:After putting the library in the right place, you have to also modify the frequency to the frequency you want to use, the position of this issetFrequency() in the file: arduino-xxx\libraries\RadioHead\RH_RF95.cpp;
Para los módulos RFM95 de moteino debe ponerse: setFrequency(868.0);
He hecho un fork de la librería con la modificación para módulos LoRa: https://github.com/jecrespo/RadioHead
Proyecto LoRa con Moteino
A la hora de afrontar un proyecto con LoRa para monitorizar un entorno donde no tenemos acceso a una red ethernet/wifi ni toma eléctrica, podemos planteamos usar Moteino como una solución basada en Arduino de bajo consumo y con módulos LoRa integrados.
La primera duda es que módulo de radio o transceiver usar el RFM69 o RFM95:
- RFM69 no es LoRa usa modulación FSK en lugar de la modulación LoRa
- RFM95 es LoRa estándar.
RFM69 y RFM95 son módulos de radio para comunicación a larga distancia, donde la velocidad de transmisión no es crítica (no se hace streaming de vídeo). Al usar modulación diferente no son compatibles entre ellos.
Estos módulos de radio vienen en cuatro variantes (dos tipos de modulación y dos frecuencias). Los RFM69 son los más fáciles de usar, y son bien conocidos y entendidos. Las radios LoRa son más potentes, pero también más caros.
Comparativa y explicación de los módulos: https://learn.adafruit.com/adafruit-rfm69hcw-and-rfm96-rfm95-rfm98-lora-packet-padio-breakouts
Transceiver Moteino: https://lowpowerlab.com/guide/moteino/transceivers/
RFM69
Módulo basado en SX1231 con interfaz SPI
- +13 a +20 dBm hasta 100 mW Capacidad de salida de potencia (salida de potencia seleccionable en software)
- Drenaje de corriente de 50 mA (+13 dBm) a 150 mA (+20 dBm) para transmisiones, ~ 30 mA durante la escucha de radio activa.
- Las radios RFM69 tienen un alcance de aprox. Línea de visión de 500 metros con antenas unidireccionales sintonizadas. Dependiendo de las obstrucciones, la frecuencia, la antena y la potencia de salida, obtendrá rangos más bajos, especialmente si no tiene línea de visión.
- Crear redes multipunto con direcciones de nodo individuales
- Motor de paquete cifrado con AES-128
Guía completa del módulo de radio RFM69: https://learn.sparkfun.com/tutorials/rfm69hcw-hookup-guide
Librería Arduino RFM69: https://github.com/LowPowerLab/RFM69
Completa información RFM69: http://www.hoperf.com/upload/rf/RFM69W-V1.3.pdf
Explicación de librería RFM69 https://lowpowerlab.com/2013/06/20/rfm69-library/
RFM95
Módulo basado en LoRa® SX1276 con interfaz SPI
- Capacidad de salida de potencia de +5 a +20 dBm hasta 100 mW (salida de potencia seleccionable en software)
- ~ 100mA de pico durante la transmisión de + 20dBm, ~ 30mA durante la escucha activa de la radio.
- Las radios RFM9x tienen un rango de aprox. Línea de visión de 2 km con antenas unidireccionales sintonizadas. Dependiendo de las obstrucciones, la frecuencia, la antena y la potencia de salida, obtendrá rangos más bajos, especialmente si no tiene línea de visión.
Estos son radios de paquete LoRa de +20 dBm que tienen una modulación de radio especial que no es compatible con los RFM69 pero que puede ir mucho más lejos. Pueden ir fácilmente a la línea de vista de 2 km utilizando antenas de cable simples, o hasta 20 km con antenas direccionales y ajustes.
Completa información RFM95: http://www.hoperf.com/upload/rf/RFM95_96_97_98W.pdf
Librería: http://www.airspayce.com/mikem/arduino/RadioHead/
SX127x Datasheet – The RFM9X LoRa radio chip itself
Librería: http://www.airspayce.com/mikem/arduino/RadioHead/
Módulos Moteino Usados
Optamos LoRa porque da entre un 50% y 100% más de alcance.
LoRa support for Moteino: https://lowpowerlab.com/guide/moteino/lora-support/
Todo sobre moteino y como programarlo: https://lowpowerlab.com/guide/moteino/
Los moteino a usar con LoRa son los moteinoLR y mejor moteinoUSB-LoRa que ya tiene el interfaz USB:
- Moteino: https://lowpowerlab.com/shop/product/99
- Moteino USB: https://lowpowerlab.com/shop/product/100
- Transceiver RFM95: https://lowpowerlab.com/shop/product/143
Para wireless programming necesitas las flash extra: https://lowpowerlab.com/guide/moteino/wireless-programming/
Gateway
Si queremos conectar a Internet los sensores, necesitamos un gateway.
Gateway con Raspberry Pi:
- https://lowpowerlab.com/guide/gateway/
- https://github.com/LowPowerLab/RaspberryPi-Gateway
- Hat: https://lowpowerlab.com/guide/mightyhat/
Otra opción de gateway es usar un shield LoRa de dragino:
- http://www.dragino.com/products/lora/item/102-lora-shield.html
- http://wiki.dragino.com/index.php?title=Lora_Shield
- Comprar: https://www.seeedstudio.com/Dragino-LoRa-Shield-support-868M-frequency-p-2651.html
Productos de dragino: http://www.dragino.com/products/products-list.html
- LoRa gateway: http://www.dragino.com/products/lora/item/119-lg01-s.html
- Comprar: https://www.seeedstudio.com/Dragino-LoRa-Shield-support-868M-frequency-p-2651.html
Cloud
Ya tenemos el nodo y el gateway, nos falta el cloud que podemos hacerlo con muchas plataformas IoT.
Thingspeak: https://thingspeak.com/
Redes LPWAN
Una red de área amplia de baja potencia (LPWAN – Low-Power Wide-Area Network) o red de baja potencia (LPWA – Low-Power Wide-Area) o red de baja potencia (LPN – Low-Power Network) es un tipo de red de área amplia de telecomunicaciones inalámbricas diseñada para permitir comunicaciones de largo alcance a una velocidad de bits baja entre objetos conectados, como sensores operados con una batería. La baja potencia, la baja velocidad de bits y el uso previsto distinguen este tipo de red de una WAN inalámbrica en que la WAN está diseñada para conectar usuarios o empresas, y transportar más datos, utilizando más potencia. La tasa de datos LPWAN varía de 0,3 kbit/s a 50 kbit/s por canal.
Las redes LPWAN trabajan en la banda ISM libres sin necesidad de licencia.
Redes LPWAN: https://en.wikipedia.org/wiki/LPWAN
Banda ISM
ISM (Industrial, Scientific and Medical) son bandas reservadas internacionalmente para uso no comercial de radiofrecuencia electromagnética en áreas industrial, científica y médica. En la actualidad estas bandas han sido popularizadas por su uso en comunicaciones WLAN (e.g. Wi-Fi) o WPAN (e.g. Bluetooth).
El uso de estas bandas de frecuencia está abierto a todo el mundo sin necesidad de licencia, respetando las regulaciones que limitan los niveles de potencia transmitida. Este hecho fuerza a que este tipo de comunicaciones tengan cierta tolerancia frente a errores y que utilicen mecanismos de protección contra interferencias, como técnicas de ensanchado de espectro
Espectro electromagnético:
Más información:
Bandas ISM:
Frecuencias de LoRa:
- 868 MHz en europa – region 1 https://en.wikipedia.org/wiki/ITU_Region
- 915 MHz en USA – region 2 https://en.wikipedia.org/wiki/ITU_Region
En Europa, la banda de 863 a 870 MHz ha sido asignada para operación sin licencia usando FHSS, DSSS o modulación analógica con un ciclo de transmisión de 0.1%, 1% o 10% dependiendo de la banda, o Listen Before Talk (LBT) con Adaptive Frequency Agility (AFA). Aunque esta banda pertenece al rango de dispositivos de corto alcance, se está utilizando en redes de telecomunicaciones inalámbricas de red de área extensa de baja potencia (LPWAN), diseñadas para permitir comunicaciones de largo alcance a una velocidad de bits baja entre objetos (objetos conectados).
Dentro de las bandas libres existen varias posibilidades:
- Banda 2,4 GHz usando WiFi, Bluetooth o Zigbee.
- Banda 5 GHz usado WiFi
- Banda de 868 MHz con opción de usar Zigbee, LoRa o Sigfox
- Banda de 434 MHz.
- Frecuencias RFID (13,56 MHz, 125 kHz, etc).
El standard de 868 MHz porque ofrece unas características superiores en cuanto al alcance (es 2 o 3 veces mayor que los standards mencionados anteriormente en la banda de 2,4 GHz). El coste de la implementación es relativamente bajo. El consumo de energía es bajo.
La versión de 868 MHz no está disponible en todo el mundo. En los EEUU se requiere una banda de 915 MHz. El hardware para ambos standards es idéntico sin embargo requieren versiones de software distintas.
La banda de 433 MHz es ligeramente mejor respecto al alcance pero no garantiza una transmisión segura de los datos. Debido a que muchos dispositivos trabajan en esta banda, especialmente controles remotos, es frecuente que se produzcan perturbaciones en la transmisión.
868 vs 433: http://www.hkvstar.com/technology-news/433mhz-or-868mhz-wireless-alarm-system-what-s-the-difference.html
Las frecuencias RFID no sirven para medidas de temperatura ya que presentan un alcance muy reducido. Estas frecuencias se suelen utilizar en etiquetas pasivas donde el alcance está limitado a menos de un metro.
LoRa es una modulación patentada dentro de la banda ISM de 868 MHz.
La radio sub-GHz no está diseñada para transmitir audio o video. Se usa mejor para pequeños paquetes de datos. La velocidad de datos es ajustable, pero es común mantener alrededor de 19.2 Kbps. Las velocidades de datos más bajas tendrán más éxito en sus transmisiones.
LPWAN
Una red de área amplia de baja potencia (LPWAN – Low-Power Wide-Area Network) o red de baja potencia (LPWA – Low-Power Wide-Area) o red de baja potencia (LPN – Low-Power Network) es un tipo de red de área amplia de telecomunicaciones inalámbricas diseñada para permitir comunicaciones de largo alcance a una velocidad de bits baja entre objetos conectados, como sensores operados con una batería. La baja potencia, la baja velocidad de bits y el uso previsto distinguen este tipo de red de una WAN inalámbrica en que la WAN está diseñada para conectar usuarios o empresas, y transportar más datos, utilizando más potencia. La tasa de datos LPWAN varía de 0,3 kbit/s a 50 kbit/s por canal.
Una LPWAN se puede usar para crear una red privada de sensores inalámbricos, pero también puede ser un servicio o infraestructura ofrecida por un tercero, lo que permite a los propietarios de sensores implementarlos en el campo sin invertir en tecnología ni infraestructura.
Redes LPWAN: https://en.wikipedia.org/wiki/LPWAN
Hay una serie de estándares y proveedores que compiten en el espacio LPWAN, el más destacado de los cuales incluye:
- LoRa: LoRa es una tecnología patentada de modulación de radio de espectro expandido (CSS) para LPWAN utilizada por LoRaWAN, Haystack Technologies y Symphony Link.
- LoRaWan: LoRaWAN es un protocolo de capa de control de acceso a medios para gestionar la comunicación entre las pasarelas LPWAN y los dispositivos de nodo final, mantenidos por LoRa Alliance.
- Ultra Narrow Band (UNB): UNB, Ultra Narrow Band, tecnología de modulación utilizada por LPWAN por varias compañías entre ellas Sigfox
- Otros: DASH7, MySensors, NarrowBand IoT (NB-IoT), etc…
Comparativa LPWAN:
Mercado LPWAN:
El ecosistema LPWAN comprende proveedores como Semtech Corporation (EE. UU.), LORIOT (Suiza), NWave Technologies (Reino Unido), SIGFOX (Francia), WAVIoT (Texas, EE. UU.), Actility (Francia), Ingenu (San Diego, EE. UU.) , Link Labs (Maryland, EE. UU.), Weightless SIG, y Senet, Inc. (Portsmouth, Reino Unido), ResIOT (Italia) y otros como proveedores de servicios y empresas. Otras partes interesadas en el mercado de redes LPWAN incluyen operadores de telecomunicaciones como Vodafone (U.K.) y Orange (Francia), entre otros, que integran estos dispositivos inteligentes y los venden a los usuarios finales para satisfacer sus requisitos comerciales únicos.
Más información LPWAN (área extensa de baja energía):
- https://m2m.telefonica.com/blog/la-nueva-tecnologia-lpwa-revoluciona-el-iot
- http://www.eejournal.com/archives/articles/20150907-lpwa/
- http://waviot.com/waviot-lpwan-technology
LoRaWAN
LoRaWAN es una especificación para redes de baja potencia y área amplia, LPWAN (en inglés, Low Power Wide Area Network) propuesta por la LoRa Alliance, diseñada específicamente para dispositivos de bajo consumo de alimentación, que operan en redes de alcance local, regional, nacionales o globales. La especificación cubre las capas PHY y MAC de la red, dejando a las aplicaciones el resto de capas. En la banda ISM de 868MHz (915 MHz en otras regiones), con un bitrate de hasta decenas de kbps (de 0.3 kbps hasta 50 kbps).
El estándar de red LoRaWAN apunta a requerimientos característicos de Internet de las Cosas, tales como conexiones bidireccionales seguras, bajo consumo de energía, largo alcance de comunicación, bajas velocidades de datos, baja frecuencia de transmisión, movilidad y servicios de localización. Permite la interconexión entre objetos inteligentes sin la necesidad de instalaciones locales complejas, y además otorga amplia libertad de uso al usuario final, al desarrollador y a las empresas que quieran instalar su propia red para Internet de las Cosas.
La red LoRaWAN (Long Range) es interesante por:
- Consume tan poco que permite que los dispositivos puedan funcionar años con batería. Para conseguir esto se activa de forma periódica.
- Tiene un gran alcance que permite llegar a los equipos de difícil acceso (garajes, sótanos, montañas)
- Ser una red bidireccional
- Velocidades de datos desde 0.3 kbps a 50 kbps
- LoRa es una tecnología de comunicación muy interesante en el ámbito IoT.
Elementos en una red LoRa:
- Dispositivo LoRa
- Gateway o Pasarela
- Red IP pública – Cloud
- Servicios
La arquitectura de red típica, es una red de Redes en Estrella, de forma que la primera estrella está formada por los dispositivos finales y las puertas de enlace, y la segunda estrella está formada por las puertas de enlace y un servidor de red central. En este caso las puertas de enlaces son un puente transparente entre los dispositivos finales y el servidor de red central. Uno o más dispositivos finales se conectan a una o más puertas de enlace, mediante una conexión inalámbrica de un solo salto, usando tecnología RF LoRa™ o FSK, formando así una red en estrella.
Una o más puertas de enlace se conectan al servidor de red central por medio de conexiones IP estándar, formando así una red en estrella. Las comunicaciones entre los dispositivos y el servidor de red, son generalmente unidireccionales o bidireccionales, pero el estándar también soporta multidifusión, permitiendo la actualización de software en forma inalámbrica, u otras formas de distribución de mensajes en masa.
La comunicación entre dispositivos finales y las puertas de enlace se hacen en diferentes canales de frecuencias y a distintas velocidades de datos. La selección de la velocidad de datos es un compromiso entre la distancia de alcance, y la duración y consumo de energía del mensaje.
Las velocidades de datos se encuentran en el rango de 0.3 kbps a 50 kbps. Para maximizar en forma conjunta la duración de la batería de los dispositivos finales y la capacidad de la red, el servidor central LoRaWAN maneja la velocidad de datos para cada dispositivo en forma individual, por medio de un esquema adaptativo de velocidad de datos (o ADR, adaptive data rate en inglés).
Más información: https://es.wikipedia.org/wiki/LoRaWAN
LoRaWAN es un protocolo de capa de control de acceso a medios para gestionar la comunicación entre las pasarelas LPWAN y los dispositivos de nodo final, mantenidos por LoRa Alliance.
LoRaWAN define el protocolo de comunicación y la arquitectura del sistema para la red, mientras que la capa física LoRa habilita el enlace de comunicación de largo alcance. LoRaWAN también es responsable de gestionar las frecuencias de comunicación, velocidad de datos y potencia para todos los dispositivos. Los dispositivos en la red son asincrónicos y transmiten cuando tienen datos disponibles para enviar. Los datos transmitidos por un dispositivo de nodo final son recibidos por múltiples puertas de enlace (gateway), que reenvían los paquetes de datos a un servidor de red centralizado. El servidor de red filtra paquetes duplicados, realiza comprobaciones de seguridad y administra la red. Los datos se envían a los servidores de aplicaciones.
Las principales características de LoRaWAN son:
- Topología estrella
- Alcance de 10 a 15km en línea de vista
- Encriptación AES 128
- Soporte para 3 clases de nodos
- Administración de dispositivos
- Redes públicas y privadas
- Bajo consumo y largo alcance
- Baja transferencia de datos (hasta 242 bytes)
Algunas plataformas basadas en LoRaWAN incluyen:
- Globalsat, both a public LoRaWAN and private LoRa Nodes solution provider for WW, include Europe, US, Asia region and Japan market
- ThingsConnected, a free platform provided by the UK Digital Catapult
- iFrogLab, public LoRaWAN and LoRa provider for North America and Taiwan
- IoT-X, platform from Stream Technologies for public and private networks
- ResIOT.io, platform for private, public networks and IoT projects
- OpenChirp, open management layer on top of LoRaWAN, developed at Carnegie Mellon University, for data context, storage, visualization, and access control.The primary objective is to simplify the experience of adding and operating new devices in the network, as well as improving performance for communities that share bandwidth and locality.
- The Things Network, a free and open-source LoRaWAN network provider developed and supported by a worldwide community. https://www.thethingsnetwork.org/
- Everynet, provides a platform and gateways for Lora use in the Americas, Europe, China.
- ThingPark Wireless, platform from Actility based on LoRaWAN
- Senet, public LoRaWAN provider in North America
- Un operador de LoRaWAN que ofrece gateways y un plataforma cloud es LORIOT: https://www.loriot.io/
Redes LoRaWan en Korea y Holanda: https://www.rcrwireless.com/20160704/carriers/operators-korea-netherlands-deploy-lora-networks-iot-tag23
Lora Alliance:
- https://www.lora-alliance.org/
- https://www.lora-alliance.org/lorawan-for-developers
- https://www.lora-alliance.org/What-Is-LoRa/Technology
The things network (TTN)
The Things Network está construyendo una red para el Internet de las cosas mediante la creación de abundante conectividad de datos. La tecnología utilizada es LoRaWAN y permite que las cosas hablen a Internet sin 3G o WiFi. No hay códigos WiFi ni suscripciones a dispositivos móviles. Presenta bajo consumo de batería, largo alcance y bajo ancho de banda. Perfecto para Internet de las cosas.
The Things Network (TTN) es una iniciativa basada en la comunidad para establecer una red global de IoT. La iniciativa fue lanzada por Wienke Giezeman en 2015 y actualmente cubre más de 3.000 pasarelas LoRaWAN instaladas en más de 90 países. Los voluntarios se encargan de la construcción, el cuidado y el pago de los portales.
En Amsterdam, ha sido posible cubrir gran parte del área urbana en solo unas pocas semanas. Los Países Bajos ya están ampliamente abastecidos con TTN. Lo mismo se aplica a Zurich, Berna y Berlín. En Berlín, se necesitaron solo nueve meses para brindar acceso a LoRaWAN a aproximadamente 3,500,000 personas.
Más de 30,000 voluntarios de todo el mundo participan ahora en la creación del «Internet de las cosas» (IoT) en red más grande del mundo.
Más información:
- Mapa: https://www.thethingsnetwork.org/map
- Documentación: https://www.thethingsnetwork.org/docs/
- Tienda: https://shop.thethingsnetwork.com/
Interesante artículo sobre el uso de TTN con MQTT: https://sandervandevelde.wordpress.com/2016/07/09/access-the-things-network-telemetry-using-c-m2mqtt/
Web: https://www.thethingsnetwork.org/
The things gateway: https://www.thethingsnetwork.org/docs/gateways/gateway/
Lista de gateways de thethingsnetwork:
- https://www.thethingsnetwork.org/docs/gateways/start/list.html
- https://github.com/TheThingsNetwork/docs/blob/master/_content/gateways/start/list.md
Productos de the things network: https://www.element14.com/community/docs/DOC-83471
Wiki: https://www.thethingsnetwork.org/wiki/Hardware/Gateways/Home
Más información:
- Mapa: https://www.thethingsnetwork.org/map
- Documentación: https://www.thethingsnetwork.org/docs/
- Tienda: https://shop.thethingsnetwork.com/
LoRa
LoRa es un nuevo esquema de modulación para radios de baja potencia. Está patentado, por lo que hay algo de información disponible. Pero también es propietario, lo que significa que necesita una licencia para producir un chip de radio que use la codificación. LoRa se comercializa como una red de área amplia para Internet de las cosas.
LoRa es una tecnología patentada (EP2763321 de 2013 y US7791415 de 2008) desarrollada por Cycleo (Grenoble, Francia) y adquirida por Semtech en 2012. LoRa utiliza bandas de frecuencia de radio subgigahertz sin licencia como 169 MHz, 433 MHz, 868 MHz (Europa) y 915 MHz (América del Norte).
El formato de modulación de LoRa puede ser generado por piezas Semtech LoRa, incluidos los chips transceptores SX1272 y SX1276. Es una forma económica y eficiente de obtener ganancia de procesamiento en un pequeño transceptor a escala de chip. Funciona con una familia de chips de estación base altamente integrados (SX1301 y SX1257) con alta capacidad, por lo que puede usarla para construir redes punto a multipunto bastante sofisticadas. Más información en https://www.link-labs.com/blog/what-is-lora
La tecnología LoRa de Semtech ofrece características excepcionales como alta sensibilidad de recepción y modulación de espectro ensanchado que permite a estas radios aumentar drásticamente el rango a bajas tasas de bits, mientras sigue funcionando con una potencia de salida de batería (20dBm / 100mW) y modo de reposo de potencia ultrabaja. Estas radios también son compatibles con las modulaciones FSK, pero están destinadas a ser utilizadas con la tecnología de modulación LoRa (Long Range).
Transceivers de LoRa: https://www.semtech.com/products/wireless-rf/lora-transceivers
LoRa es el tipo de modulación en radiofrecuencia patentado por Semtech y que entre sus principales ventajas se encuentra:
- Alta tolerancia a las interferencias
- Alta sensibilidad para recibir datos (-168dB)
- Basado en modulación chirp
- Bajo Consumo (hasta 10 años con una batería*)
- Largo alcance 10 a 20km
- Baja transferencia de datos (hasta 255 bytes)
- Conexión punto a punto
- Frecuencias de trabajo: 915Mhz América, 868 Europa, 433 Asia
LoRa quizá sea más adecuada para usar en aplicaciones discretas como edificios inteligentes o campus donde uno es necesaria una red celular. LoRaWAN se refiere a redes públicas amplias basadas en LoRa.
Moteino son una placas basadas en Arduino pensadas para bajo consumo con LoRa: https://lowpowerlab.com/guide/moteino/lora-support/
LoRa vs Zigbee: http://www.rfwireless-world.com/Terminology/LoRa-vs-Zigbee.html
- Ventajas y desventajas de LoRa: http://www.rfwireless-world.com/Terminology/Advantages-and-Disadvantages-of-Lora-or-LoRaWAN.html
- Ventajas y desventajas de Zigbee: http://www.rfwireless-world.com/Terminology/Advantages-and-Disadvantages-of-zigbee.html
LoRaWan vs Sigfox
Lora pros:
- De uso gratuito, puede configurar su propia red
- Envía tantos mensajes como quieras, a buenas velocidades de hasta 50 Kb/s
- Alcance muy largo (algunos kilómetros en ciudades, hasta 40 km en áreas rurales con antenas direccionales)
- Bastante poca potencia, dependiendo de la amplificación de su radio, no tan baja como BTLE pero mucho mejor que la celular
- Coger y elegir la frecuencia que legalmente está permitido usar
Lora contras:
- Debe administrar su propia red y gateways
- Chips solo disponibles de SemTech, y bajo patente
Sigfox pros:
- Red de backend incluida
- Alcance muy largo (algunos kilómetros en ciudades, hasta 40 km en áreas rurales con antenas direccionales)
- Muy poca potencia
Sigfox contras
- Servicio pago por suscripción
- Ultra lento: 100 bytes / seg
- No disponible en todas partes, comprobar cobertura https://www.sigfox.com/en/coverage
- Limite mensajes de subida de 140 x 12 bytes y mensajes de descarga de 4 x 8 bytes al día.
- Frecuencia fija por ubicación
Buena explicación de Adafruit para LoRa y Sigfox: https://learn.adafruit.com/alltheiot-transports/lora-sigfox
Más información de sigfox y lora https://www.linkedin.com/pulse/iot-how-connect-devices-vasco-barreiros
Interesante: https://austinstartups.com/carriers-aim-to-crush-lora-sigfox-and-others-4d38adc8cc32
Transceivers LoRa
Existen muchos módulos LoRa disponibles en el mercado que podemos usar con Arduino usando las librerías que nos proporcionan.
Semtech
Semtech fabrica diversos módulos LoRa. Los módulos Lora de Semtech son: https://www.semtech.com/products/wireless-rf/lora-transceivers y los gateways: https://www.semtech.com/products/wireless-rf/lora-gateways
El SX1272 es un módulo de Semtech LoRa https://www.semtech.com/products/wireless-rf/lora-transceivers/SX1272
Datasheet: https://www.semtech.com/uploads/documents/sx1272.pdf
Otros módulos de Semtech: https://www.semtech.com/products/wireless-rf
Microchip
Microchip fabrica diversos módulos LoRa RN2903 y RN2483. Ver https://www.microchip.com/design-centers/wireless-connectivity/low-power-wide-area-networks/lora-sup-reg-sup-technology
Módulo LoRa de Microchip:
Datasheet:
- http://ww1.microchip.com/downloads/en/DeviceDoc/50002390E.pdf
- http://ww1.microchip.com/downloads/en/DeviceDoc/50002346C.pdf
Es un excelente módulo que implementa completamente la pila LoRaWAN. El microcontrolador se comunica con él a través de USART con una estructura de comando simple para configurarlo y enviar / recibir mensajes. El módulo también tiene varios pines GPIO disponibles. Este es el módulo preferido en The Things Network, y hay muchos excelentes proyectos de ejemplo y códigos en Internet para ayudarlo a comenzar.
Hoperf
Hoperf fabrica diversos módulos Lora:http://www.hoperf.com/rf_transceiver/lora/
Los módulos de RFM son pequeños y baratos, lo cual es ideal para proyectos de IoT. Sin embargo, tienen una limitación si desea usarlos con LoRaWAN: la pila no está implementada en el módulo, dejando esa carga al microcontrolador. La pila LoRaWAN requiere bastante espacio de código y es difícil de implementar en algunos microcontroladores de 8 bits.
RFM95W: http://www.hoperf.com/rf_transceiver/lora/RFM95W.html
RFM96W: http://www.hoperf.com/rf_transceiver/lora/RFM96W.html
RFM98W: http://www.hoperf.com/rf_transceiver/lora/RFM98W.html
Datasheet módulos LoRa: http://www.hoperf.com/upload/rf/RFM95_96_97_98W.pdf
Estos son los módulos usados por Moteino: https://lowpowerlab.com/guide/moteino/
Hoperf fabrica otros módulos Sub-GHz como el RFM69 que no usanLora: http://www.hoperf.com/rf_transceiver/
Placa con RFM95/96(W):
- http://syncchannel.blogspot.com.es/2016/02/lora-featherwing-development-breakout.html
- Adafruit: https://www.adafruit.com/product/3078
LoRa Shield como módulo RFM: https://www.seeedstudio.com/Dragino-LoRa-Shield-support-433M-frenquency-p-2672.html
Otros
Existen otros fabricante de módulos Lora como:
- Appcon: http://www.appcon.com.cn/en/product.php?cid=6
- Dorji: http://www.dorji.com/products.php?CateId=22
- RakWireless: http://www.rakwireless.com/en/module/lora/RAK811
- Y más…