Introducción a RAK831 LoRa Gateway y RPi3
Este proyecto lo lleva a través de todos los pasos necesarios para poner en funcionamiento su módulo RAK831 LoRa Gateway con WiFi como backhaul.
Introducción
Esta guía paso a paso está dirigida a los desarrolladores que desean desarrollar su propia puerta de enlace lora utilizando el increíble módulo frontal de radio RAK831 Lora de RAK Wireless. La guía asume conocimientos básicos del ecosistema Raspberry pi, el hardware y el SO Debian asociado. La guía también asume conocimientos básicos del GPIO y los periféricos presentes en la Raspberry Pi. Así que comencemos.
¿Qué es LoRA?
LoRa Tecnología Alliance ™. LoRaWAN ™ es una especificación de red de área amplia de bajo consumo (LPWAN) destinada a dispositivos inalámbricos que funcionan con baterías en una red regional, nacional o global. LoRaWAN se centra en los requisitos clave de Internet de las cosas, como la comunicación bidireccional segura, la movilidad y los servicios de localización.
El diagrama anterior muestra las distintas partes de la arquitectura inalámbrica LoRa. Algunas de las partes importantes se explican brevemente a continuación:
Características clave de la tecnología LoRa y el protocolo LoRaWAN
· GEOLOCALIZACIÓN:permite aplicaciones de seguimiento de baja potencia sin GPS
· LOW COST:reduce los costos de tres maneras:inversión en infraestructura, gastos operativos y sensores de nodo final
· ESTANDARIZADO:La interoperabilidad global mejorada acelera la adopción y el despliegue de aplicaciones IoT y redes basadas en LoRaWAN
· BAJA POTENCIA:Protocolo diseñado específicamente para un bajo consumo de energía que extiende la vida útil de la batería hasta 20 años
· LARGO ALCANCE:la estación base única proporciona una penetración profunda en regiones urbanas / interiores densas, además conecta áreas rurales hasta 30 millas de distancia
· SEGURO:cifrado AES128 de extremo a extremo integrado
· ALTA CAPACIDAD:Admite millones de mensajes por estación base, ideal para operadores de redes públicas que atienden a muchos clientes
El RAK 831 es una interfaz de radio LorA; es decir, actúa como un receptor de paquetes de datos lora entrantes y los reenvía a un host de software / hardware de gestión de agregador. También puede transmitir paquetes de datos LoRA según la solicitud de la placa principal. En nuestro caso, una raspberry pi 3 es la placa de host que controla la interfaz de RAK 831.
Elección del backhaul
¿Qué es un backhaul? Backhaul se refiere a cómo se conectará la Raspberry Pi a Internet. Esta guía se centra en el uso de Wifi como backhaul, pero también puede usar Ethernet o 3G / 4G. Si tiene Ethernet disponible cerca de la puerta de enlace, entonces prefiéralo a WiFi o 3G / 4G. Esto se debe a que tener una señal de radio adicional dentro del gabinete causará ruido. El software puede manejar el entorno ruidoso, por lo que no es un gran problema, pero cuanto menos ruidoso, mejor. Puede combinar esta opción con Power-over-Ethernet para minimizar el cableado que llega hasta la puerta de enlace.
Por otro lado, si elige WiFi en lugar de Ethernet, intente usar un dongle con antena externa y mueva la antena fuera del gabinete para tener menos ruido dentro de la caja.
Configura el hardware:
Antes de conectar cualquier cosa y encender, hagamos las siguientes configuraciones en la raspberry pi y el módulo RAK 831:
FRAMBUESA PI
1) Obtenga la placa raspberry pi 3 y prepare una tarjeta micro sd de 8 gb con el software raspbian. Incluso puede comprar una tarjeta sd noobs con el software precargado. Sobre cómo actualizar el sistema operativo en la tarjeta SD, siga las instrucciones aquí:https://www.raspberrypi.org/learning/hardware-guide/
2) Conecte la frambuesa pi a la fuente de alimentación de 5 v 2 amperios. ESTO ES MUY IMPORTANTE. El módulo lora puede generar un pico de 700 mA durante las transacciones inalámbricas activas y, por lo tanto, tiene un buen bloque de alimentación para alimentar el raspberry pi
RAK 831:
1) Antes incluso de encender la placa, obtenga las antenas que vienen en su kit y conéctelas al terminal de tornillo de la antena. ESTO ES ESENCIAL.
Detalles de la conexión:
Aquí hay una tabla que muestra cómo conectar el módulo rak831 con la raspberry pi:
Para comprender el diseño de los pines de Raspberry Pi, diríjase a:https://www.raspberrypi.org/documentation/usage/gpio/ para obtener más detalles
Notas:
- El pin de reinicio se puede conectar a cualquiera de los GPIO en el raspberry pi 3.
- Es esencial asegurarse de conectar los pines de la fuente de alimentación correctamente para evitar daños en la placa RAK 831.
Habilitar SPI:
El periférico SPI no está encendido de forma predeterminada. Para habilitarlo, haga lo siguiente.
- Ejecute
sudo raspi-config
. - Use la flecha hacia abajo para seleccionar
9 Opciones avanzadas
- Flecha hacia abajo hasta
A6 SPI
. - Seleccione
sí
cuando te pide que habilites SPI , - También seleccione
yes
cuando pregunta acerca de la carga automática del módulo del kernel. - Utilice la flecha hacia la derecha para seleccionar
- Seleccione
sí
cuando pide reiniciar.
El sistema se reiniciará. Cuando vuelva, inicie sesión e ingrese el siguiente comando
> ls / dev / * spi *
El Pi debería responder con
/dev/spidev0.0 /dev/spidev0.1
Estos representan dispositivos SPI en los pines 0 y 1 de habilitación de chip, respectivamente. Estos pines están cableados dentro del Pi. Por lo general, esto significa que la interfaz admite como máximo dos periféricos, pero hay casos en los que se pueden conectar en cadena varios dispositivos, compartiendo una única señal de habilitación de chip.
Suministra energía a la placa:
Al igual que con cualquier proyecto inalámbrico, tienden a requerir más energía de la que la placa principal puede proporcionar a través de los pines de suministro. Los dos esquemas siguientes enumeran cómo puede alimentar el RAK 831 y el raspberry pi 3.
1) Encienda el riel de 5v desde Raspberry Pi
2) Encienda el riel de 5v en Raspberry Pi y RAK831 por separado
Instalación del software:
En la Raspberry pi, hagamos los siguientes pasos para instalar el software esencial:
- Habilite SPI:
Utilice la utilidad raspi-config para habilitar SPI ([5] Opciones de interfaz -> P4 SPI) y también expanda el sistema de archivos ([7] Opciones avanzadas -> A1 Expandir sistema de archivos):
$ sudo raspi-config
- Asegúrate de que git esté instalado
Sudo apt-get updateSudo apt-get upgradeSudo apt-get install git
- Administre su conexión wifi en el raspberry pi
- Configure las credenciales de wifi (marque aquí para obtener detalles adicionales)
$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Y agregue el siguiente bloque al final del archivo, reemplazando el SSID y la contraseña para que coincidan con su red:
network ={ssid ="The_SSID_of_your_wifi" psk ="Your_wifi_password"}
- Clone el instalador e inicie la instalación
$ git clone -b spi https://github.com/ttn-zh/ic880a-gateway.git ~ / ic880a-gateway $ cd ~ / ic880a-gateway $ sudo ./install.sh spi
- El paso de instalación le preguntará si desea habilitar la configuración remota. Escriba "y" o "sí" y continúe con la instalación. Al comienzo de la instalación de la línea de comandos, el script le mostrará la puerta de enlace EUI, que es importante para los siguientes pasos. ¡TENGA EN CUENTA!
- Si desea utilizar la opción de configuración remota, asegúrese de haber creado un archivo JSON llamado como su puerta de enlace EUI (por ejemplo, B827EBFFFE7B80CD.json) en el repositorio de Gateway Remote Config aquí:https://github.com/ttn -zh / gateway-remote-config. Bifurque el repositorio, agregue su archivo
.json con la configuración adecuada y luego confirme el repositorio bifurcado. Una vez hecho esto, envíe una solicitud de extracción al repositorio principal y el archivo debería aparecer en el repositorio al día siguiente. A continuación, se muestra un ejemplo de json:
{"gateway_conf":{"gateway_ID":"la identificación como anotó en la salida de la consola install.sh", "servers":[{"server_address" :"el enrutador al que desea conectarse", "serv_port_up":1700, "serv_port_down":1700, "serv_enabled":true}], "ref_latitude":la latitud de la puerta de enlace rak 831, "ref_longitude":la largo de la puerta de enlace rak 831, "ref_altitude":40, "contact_email":"correo electrónico de contacto del propietario de la puerta de enlace", "descripción":"una breve descripción"}}
Nota:
Para obtener una lista de enrutadores válidos, consulte el enlace aquí:https://www.thethingsnetwork.org/wiki/Backend/Connect/Gateway
- De forma predeterminada, el instalador cambia el nombre de host de su Raspeberry Pi a ttn-gateway (para evitar colisiones con otras Raspberry Pis en su red). Puede anular esto en el modo de configuración no remota.
- HURRAY tu puerta de enlace ahora debería funcionar. Asegúrese de reiniciar la puerta de enlace al día siguiente para que su archivo json se descargue correctamente en el RPi3.
- Tenga en cuenta que global_config.json en debe ajustarse según:
https://github.com/TheThingsNetwork/gateway-conf/blob/master/US-global_conf.json
para aquellos que buscan usar el mp_pkt_fwd en lugar del antiguo reenviador de paquetes de polietileno que se escucha aquí e instalar el mismo con las instrucciones provistas:
https://github.com/kersing/packet_forwarder/tree/master/mp_pkt_fwd. Nuevamente, puede ver el archivo global_conf..json en la raíz del proyecto, solo asegúrese de editar el archivo (las secciones de imp que se describen a continuación) y copiar el mismo en la carpeta bin después de la compilación.
Algunas entidades configurables en global_conf.json:
El archivo global_conf.json se puede encontrar en ./bin/global_conf.json desde la base del directorio de su proyecto después de que se haya ejecutado el script de instalación. Aquí hay una lista de algunas entidades que quizás desee editar en el archivo global_conf.json para su configuración de puerta de enlace particular:
1) Configuración “radio_0” o “radio_1”, especialmente el parámetro de Frecuencia y los parámetros de barrido de frecuencia mínima y máxima.
2) sección "gateway_conf"., Especialmente el ID de la puerta de enlace o el EUI de su puerta de enlace.
3) puerto hacia arriba y hacia abajo del servidor en el mismo objeto gateway_conf junto con la dirección de su servidor TTN de la dirección de su propio servidor de aplicaciones, si está disponible.
Fuente:Introducción a RAK831 LoRa Gateway y RPi3
Proceso de manufactura
- Monitoreo de la temperatura ambiente con una Raspberry Pi y Nagios
- Monitoreo de la temperatura ambiente con Moteino's y Raspberry Pi
- La integración de los datos del sensor con el microprocesador Raspberry Pi
- 433MHz Smart Home Controller con Sensorflare y RaspberryPi
- Rastreo de rostro con movimiento horizontal / vertical con raspberry pi
- Aeroponía con Raspberry Pi y sensor de humedad
- Uso del sensor de radar pulsado A111 con una Raspberry Pi
- Introducción a TJBot
- $ 35 NanoPi K1 Plus es una computadora similar a una Raspberry Pi con el doble de RAM (y una CPU diferente)
- LoRa - Raspberry Pi - Gateway de un solo canal - ¡Barato!
- Introducción a RAK 831 Lora Gateway y RPi3