Raspberry PI + Flight Radar 24 + Panel solar

Hola otra vez. Muchas gracias de nuevo a César por permitirme escribir en su blog. En esta ocasión me gustaría hablaros del proyecto Flight Radar 24 (FR24). Utilizando dispositivos USB con el hardware RTL2832U es posible sintonizar cualquier banda de frecuencias por software RTL-SDR.

El proyecto FR24 utiliza estos dispositivos para recibir en la banda de frecuencias de 1090 Mhz las informaciones transmitidas por los aviones. Casi todos los aviones de las compañías aéreas utilizan la norma ADS-B (Automatic Dependent Surveillance – Broadcast). Los aviones, equipados de un GPS, reciben datos de posición y velocidad que retransmiten en la banda de 1090 Mhz.

¿Qué quiere decir todo esto? Que disponemos de un hardware barato (Raspberry Pi + USB RTL2832U) capaz de recibir señales de radio procedentes de los aviones que pasan cerca de él. No ha habido que esperar mucho tiempo para encontrar un proyecto open source capaz de captar estas señales y representar los aviones en un mapa, el proyecto se llama dump1090.

El proyecto FR24 utiliza como base el software de dump1090 para escanear la banda de frecuencias y enviar los datos recibidos a sus servidores. De esta forma cualquiera puede participar en el proyecto y convertirse en un mini-radar. Cuanta más gente participe mejor será la cobertura. Existen todavía muchas zonas blancas como los océanos y las zonas próximas a los aeropuertos. Para solucionar la cobertura en los océanos han fletado un robot oceánico autónomo, y para las zonas de difícil acceso el proyecto FR24 regala los receptores.

¿Qué ganas si participas en el proyecto? Una cuenta FR24 premium. Pero antes de participar, hay algunos detalles que conviene saber para hacer las cosas bien.

Lo primero es que las señales de radio a 1090 MHz no atraviesan muy bien los materiales, por esto se recomienda colocar la antena en el exterior. Lo ideal es en el tejado para obtener una visión de 360º libre de obstáculos.

La segunda tiene que ver con los aviones que no utilizan la norma ADS-B, es decir los aviones equipados con transponders Mode-A, C o S. Estas antenas de radio responden a las señales de las estaciones base con informaciones limitadas que no incluyen la posición ni la velocidad del aparato.

Existe una forma de obtener la posición de estos vuelos utilizando una especie de triangulación con 4 o más radares, que se conoce con el nombre de MLAT o Multilateration.

Si queréis participar en el proyecto con la opción de MLAT activada, es necesario disponer de un GPS para sincronizar exactamente vuestro reloj del sistema. Las informaciones transmitidas por un ordenador con un reloj desfasado de 1 milisegundo pueden posicionar un avión con un error de hasta 10 kilómetros, por lo que se aconseja una sincronización del orden de microsegundos y esto sólo es posible con un oscilador de precisión que transmita señales PPS (Pulse Per Second).

Con estos requisitos, y teniendo en cuenta que no tengo acceso al tejado de mi inmueble, he decidido utilizar dos Raspberry Pi una de cada lado de la casa para obtener la máxima cobertura posible. La primera de ellas dispone de un módulo GPS, como podéis ver en esta imagen :

La segunda Raspberry Pi se encuentra en la terraza, como no hay corriente he decidido utilizar una Raspberry Pi Zero Wifi con un panel solar:

Como no hay mucho sol, utilizo un módulo Witty Pi 2 para programar el encendido y el apagado y también para obtener un reloj del sistema persistente:

Witty Pi 2

La Rasberry Pi Zero Wifi consume alrededor de 400 mah, de los que 300 mah provienen de la utilización del USB. Con una batería de 2000 mah y un panel solar de 5v - 1.1 a, en los días de sol puede funcionar durante 4 horas sin problemas. El módulo Lipo Rider Pro permite conectar la batería al panel solar y dispone de una salida USB. La salida de este módulo se alimenta continuamente de la batería, y el panel solar la recarga.

Un pequeño detalle de la Raspberry Pi Zero es que no dispone de los pins GPIO soldados, como yo no soy un experto en soldaduras, que no veo muy bien y que los pins de las Raspberry son pequeñitos, para instalar el pHAT, en vez de soldar, he optado por comprar unos pins que se conectan sin soldaduras dando unos sencillos martillazos.

La Raspberry Pi de la terraza envía los datos a la primera, y ésta los envia agregados al proyecto FR24. También podéis usar el sofware dump1090 para construir vuestro propio sistema de radares, sin pasar por FR24. El software permite recibir datos de una antena o de otro dump1090 instalado en otro equipo, y con un simple sistema de pipes es muy sencillo construir un entorno master - slave donde todos los radares envían sus datos al master que se encarga de dibujar el mapa global. Incluso existe un proyecto sur GitHub que permite almacenar todos los datos recibidos en una base de datos MySQL.

Espero que este artículo os haya abierto el apetito sobre la aviación comercial, los sistemas basados en Software Defined Radio (SDR) y sobre las posibilidades de los diferentes modelos de Raspberry Pi. Os aconsejo en especial la Raspberry Pi Zero Wifi para vuestros proyectos IoT, su bajo consumo es impresionante. Si no utilizáis el puerto USB, apenas depasa los 100 mah.

Me despido con unos vídeos de entrenamientos de aterrizaje y despegue con viento cruzado (crosswinding). Parecen pajaritos pero pesan toneladas :)