Flightradar, de alguna manera, se ha convertido en un nombre familiar, de hecho, reemplaza la noción de
"un sitio donde puedes ver aviones en tiempo real" . Aunque, de hecho, hay varios sitios tan grandes y proyectos pequeños aún más, a menudo puede ver en los medios las noticias sobre el evento de aviación con la frase "según el sitio web de Flightradar" y una captura de pantalla de otro recurso.
Hay una serie de publicaciones sobre Habré sobre radarporting en las cuales o en comentarios a los que no solo se menciona Flightradar. En esta publicación, hablaré sobre el servicio chino para rastrear el tráfico aéreo y su receptor ADSB
chino , que envían gratis.
Radarspotting es una actividad lo suficientemente interesante como para cautivar a un número notable de personas. Varios artículos sobre Habré describen bastante bien la esencia de la lección:
El receptor recibe, transmitido por aviones, una señal a una frecuencia de 1090 MHz, descifra y transmite en algún formato. Por ejemplo, así:
{"updatetime":1537902225,"UTC Time":"2018-09-25 19:03:45","anum":"TCETM","fnum":"KKK6944","position":{"long":30.66455078125,"lat":39.351677},"height":10005.06,"speed":888.96,"angle":130},
Esta actividad no solo es interesante, sino que se ha convertido en la actividad de varias empresas:
Pocas personas piensan cómo se ganan la vida y cómo funcionan servicios como Flightradar. Un ejemplo de esto se puede ver en Wikipedia "
servicio web público que permite el monitoreo en tiempo real de la posición de la aeronave en el aire ". El artículo en sí y el titular dan una falsa impresión de Flightradar como una especie de servicio de entretenimiento.
De hecho, habiendo surgido como un pasatiempo a principios de la década de 2000, estas compañías alcanzaron rápidamente un período de recuperación y aumentaron sus ingresos cada año. Por ejemplo, Flightaware, fundada en 2005, se volvió rentable ya en 2006, ganando más de $ 1 millón en los primeros 18 meses y mostrando un crecimiento anual de 40-75%. Según algunos recursos, los ingresos anuales de Flightaware superan los $ 9 millones y los de Flightradar más de $ 2 millones.
Si en Europa hay Flightradar, en Estados Unidos, Flightaware, en China hay VariFlight. Del mismo modo, el servicio comercializa estados de vuelo, estadísticas y archivos de vuelo, realiza análisis y pronósticos para clientes, organizaciones y clientes individuales.
VariFlight propias palabras:
<meta name="description" content="VariFlight . , , . , , ."> <meta name="keywords" content=" , , , , , , , , , , , , , , "> <meta property="og:url" content="http://www.variflight.com/ru/">
Las empresas intercambian datos, tanto los suyos como los obtenidos, por ejemplo, de la Administración Federal de Aviación de EE. UU. Pero puede obtener la mayor ganancia de sus propios receptores, cuya operación no le cuesta nada a la compañía. son instalados por entusiastas de radarspotting, solo necesita gastar dinero en fabricación y envío. Por lo tanto, desde algún punto en adelante, las compañías comenzaron a vender y distribuir sus receptores de forma gratuita. Gratis para donde la compañía aún no tiene cobertura con su red de receptores y donde no hay datos.
El costo de los datos justifica la distribución "gratuita" de los receptores (preste atención al texto debajo de la tabla; el receptor sigue siendo propiedad de Flightaware, formalmente arrendado de forma gratuita).
Para 2015, la red Flightradar tenía más de 8,000 receptores activos, y Flightaware tenía alrededor de 4,500, pero Flightaware comenzó a distribuir los receptores dos años antes y Flightradar ya había estado construyendo su red durante casi diez años. Actualmente hay más de 15,000 receptores en la red de Flightaware. El software del receptor Flightaware se mejora constantemente y actualmente funciona con datos FMSDATA, FMSWX.
Mapa de ubicación de los receptores en marzo de 2017:
El naranja es para receptores Flightaware gratuitos, el blanco para receptores caseros, el rojo para
PlanePlotter pagado.
Esta es la cobertura de la red de receptores de Flightaware en diciembre de 2015:
Y en marzo de 2017, la red de receptores de Flightaware (
estado actual en el sitio externo ) proporcionó dicha cobertura:
No siempre es posible instalar receptores, por lo que en 2018 los datos de los receptores terrestres se complementan con los datos de los satélites Iridium NEXT:
"Por primera vez será posible monitorear continuamente aeronaves en cualquier parte del mundo" .
Color gris-azul: datos de los satélites Iridium NEXT. Verde y amarillo (el último es
MLAT ): datos de receptores terrestres.
El radio de la zona que cubre una estación está limitado por la curvatura de la superficie de la Tierra y los obstáculos que cubren el horizonte, y no es más de 450 km en el mejor de los casos. Y en el "caso habitual" de unos 150 km. Con un raro
paso troposférico para esta frecuencia de radio, es posible mirar más allá del horizonte. Un ejemplo de las zonas de máxima cobertura de las estaciones que transmiten en
Planeradar.ru:Los picos agudos en los diagramas de recepción son solo casos aislados de recepción a distancias muy grandes.
La animación a continuación muestra qué causa la necesidad de enviar receptores. Fuera de la UE / EE. UU., Este pasatiempo no es muy popular. Puede haber una razón para el costo de un pasatiempo, y este mapa indica indirectamente el nivel de bienestar, educación técnica y densidad de población en la región. Quizás el asunto sea de interés práctico: los usuarios que transmiten los datos de sus receptores reciben una
cuenta corporativa gratuita de
Flightaware , que cuesta $ 90 por mes.
Y así se describe la situación. El mercado para este servicio está creciendo, el mercado necesita más datos y VariFlight también comenzó a implementar su red. En abril de 2018, VariFlight anunció que estaba buscando voluntarios para alojar equipos gratuitos. Un ejemplo de tal publicación en una publicación de
Instagram .
Y en agosto, encontré esta oferta para ordenar el receptor de forma gratuita en
http://flightadsb.feeyo.com (el sitio se cerró en septiembre de 2019: el nuevo sitio
flightadsb.variflight.com y el enlace para ordenar el dispositivo
aquí ). Después de estudiar el sitio, noté que la compañía está buscando miembros voluntarios de la red en países cercanos a las fronteras de China. Y al completar el cuestionario, no esperaba particularmente que el Distrito Federal del Sur estuviera en la zona de interés de la compañía.
En la aplicación en sí, se requiere indicar en el mapa la ubicación de instalación (
Ubicación de instalación ), el piso de la instalación de la antena en el edificio (
Piso de instalación , por ejemplo 7/9 - 7 ° piso de un edificio de 9 pisos), el código del aeropuerto más cercano (
Código de aeropuerto - Indiqué el código IATA) y Descargue fotografías del horizonte desde el sitio de instalación. El resto es casi lo mismo que el pedido en Aliexpress, a excepción de los artículos Título, Nacionalidad, Ocupación, Compañía. Está en inglés con un nombre completo.
Después de revisar el correo un par de semanas más tarde, encontré dos
correos electrónicos de
ADSB 展示 系统 (Sistema de visualización de ADS-B) que la solicitud fue aprobada casi de inmediato y que el paquete me llegó por mucho tiempo, ya había pasado la aduana en ese momento.
En la segunda carta había un nombre de usuario, contraseña y número de seguimiento del paquete. Y también una instrucción que no noté y leí cuando ... tú mismo sabes cuándo suelen leer la instrucción.
El inicio de sesión correspondió al nombre completo en la aplicación, y la contraseña se envía claramente a todos. Por lo tanto, vaya y cambie la contraseña de inmediato (e inicie sesión si es necesario).
En general, la frase "Esto es una especie de tontería" del juego Golpe repentino aparece cada vez más en mi cabeza, si alguien recuerda con acento cómo los alemanes hablan ruso en el juego. A veces tranquilo, a veces ruidoso.
Por cierto, el perfil era la única página en inglés, luego todo estará en chino. En Habré
wtigga publicó un excelente artículo sobre Internet
chino "Internet y software chino: sobre doloroso" . Sentí todo el dolor justo ahora. Si no ha leído, es hora de prepararse.
El navegador Google Chrome con la función de traducción lo ayudará a trabajar en el sitio, pero muchas páginas resultaron no ser factibles para él.
Los lugares serán frases divertidas.
Y entonces inicie sesión con los datos del segundo correo electrónico.
Y vaya a
Información personal . Al final resultó que, Google Chrome no siempre puede traducir una página o no falla la primera vez, y en este caso, después de varios intentos de traducir automáticamente, tuvimos que copiar el texto a Google Translate. Por lo tanto, publico un consejo para aquellos que enfrentan el mismo problema.
Hay dos pestañas en la página, la activa de las cuales está marcada con una línea roja. En el primero no puedes tocar nada.
- Nombre completo
- Su numero de telefono
- Su correo electronico
- Código del aeropuerto
- El nombre de su receptor ADSB
El punto QQ es el
mensajero chino Tencent QQ .
En la segunda pestaña, cambie la contraseña
- Contraseña anterior
- Nueva contraseña
- Repetir nueva contraseña
Aparte de esto, la traducción automática casi siempre funciona. El diseño del mapa del sitio está muy cerca del sitio de Flightradar y las "características" de la traducción no impiden su uso.
Tras una inspección detallada, el servicio es diferente, por ejemplo, una
funcionalidad interesante que Flightaware no tiene: un
mapa de calor , traducido por Google Chrome como "análisis térmico".
Una característica interesante en algunos vuelos:
Probablemente no haya información sobre los aeropuertos de salida y aterrizaje para este vuelo.
Descripción general del paquete y el receptor
Según el número de seguimiento, el paquete se envió el 6 de septiembre y se recibió el 18 de septiembre. La caja tiene dimensiones sólidas que sorprendieron a los trabajadores postales. En el camino desde la oficina de correos, algo tembló, sonó y rodó.
La caja abierta quedó algo sorprendida por la falta de materiales de embalaje.
A modo de comparación, la caja en el receptor Flightaware.
Sorprendentemente, el contenido de la caja no pareció verse afectado. Solo en la antena hubo un rasguño: la película se arrancó.
El receptor en sí tiene las inscripciones de solo dos conectores: alimentación y HDMI. Además de dos, todos los conectores se muestran en un lado. LAN, 2 puertos USB, conector de cuatro pines (la suposición de que esta interfaz en serie se confirmó marcando a BCM 14 (TXD / transmisión de 8 pines),
BCM 15 (10 pines RXD / Recibir)), 5 voltios de potencia y conector SMA (hembra) para antena.
En el lado opuesto, detrás de dos agujeros en la caja, hay LED verde y rojo. Y al lado hay una pegatina con el "número de serie" del receptor, grabado a mano. El receptor también tiene HDMI y microUSB.
La cubierta del receptor tiene dos orejas para montaje en la pared, lo que la distingue positivamente de casi la misma carcasa del receptor Flightaware, a la que el fabricante proporcionó solo cuatro patas de silicona en la parte inferior.
Comprobando si estas dos orejas se pueden usar para montar el receptor:
Flightaware Flightfeeder al revés:
Para comparar los tamaños de receptor:
La pregunta natural es "¿qué hay dentro?" Habiendo quitado la cubierta fijada por 4 tornillos, vemos tal disposición.
Los conectores están ubicados en una placa receptora separada, hecha en forma de una tarjeta de expansión para el Raspberry Pi 3 Modelo B V1.2.
A modo de comparación, una fotografía de un Flightaware Flightfeeder (G6) sin tapa. Esta generación de receptores se envió hasta alrededor de 2017. Construido en RPi 2 Modelo B v.1.1 y
Mode-S Beast receptor-decodificador simplificado a un canal.
El reverso de este diseño oculta un elemento inesperado. Un radiador masivo ubicado en la parte inferior del tablero es una sorpresa. La necesidad de esto es incomprensible (una semana después creo que es un "rendimiento tropical". En mis condiciones, el radiador está ligeramente caliente).
Además, la placa de expansión está conectada al conector RPi de cuatro pines con tres cables soldados a los puntos de prueba PP27 (USB VCC), PP44 (USB D-),
PP45 (USB D +).
Es decir no se puede conectar nada al conector USB superior derecho. Por lo tanto, la foto de la caja que se encuentra arriba muestra que, de los dos conectores USB emparejados, la ranura en la caja es solo opuesta a la más cercana a la LAN.
Hicieron lo mismo en Flightaware, soldando el receptor a los contactos de uno de los conectores.
La mayor parte de la placa de expansión es una pantalla de metal. De las partes visibles, los conectores están en un lado, y en el opuesto hay dos indicadores y una cierta "bobina" con grifos. Recuerda derivación con resistencia variable. Quizás
1div0 , autor del artículo
"¿Por qué doblar las pistas?" sabe lo que es Durante el funcionamiento normal, el LED verde está encendido. En qué casos la luz roja está encendida, no lo sé. Hasta que vi su inclusión.
En el lado de los conectores hay conectores de alimentación y antena, y un conector de cuatro pines de propósito desconocido.
Todos los dispositivos electrónicos están ocultos debajo de una gran tapa de lata de la pantalla. Con Flightaware Flightfeeder, la placa del receptor no está protegida. En el foro de Flightaware, los desarrolladores respondieron a esta pregunta de que la carcasa metálica del receptor es suficiente para protegerlo de interferencias externas.
Un intento de mirar debajo de la pantalla fue un éxito desde el segundo enfoque. La tapa se cayó y resultó ...
... resultó que todo fue en vano: la marca con microchips se cortó cuidadosamente.
Mirando hacia el futuro, diré que resultó ser un receptor RTLSDR casi ordinario:
RTL2832U DVB-T (0bda: 2838), llamado "dongles", "silbatos", y que están dedicados a varios artículos sobre Habré que dan una idea de estos dispositivos y cómo simplificaron y abarataron la implementación de la recepción y el procesamiento de señales de radio en las computadoras. Por ejemplo:
El último describe bien los antecedentes del problema:
La publicación del chip RTL2832U para receptores de televisión digital en formato DVB-T no prometió ninguna sensación, porque Realtek ya se había retrasado un poco con su lanzamiento. En 2010, ya se introdujo un estándar DVB-T2 más progresivo con una codificación de información más eficiente, por lo que inicialmente la novedad no atrajo mucha atención. Durante dos años, se utilizaron sintonizadores USB baratos basados en él para su propósito previsto, hasta que a principios de 2012 se filtró información técnica sobre los modos de funcionamiento de este chip. Resultó que para recibir radio analógica (FM) y digital (DAB) en la banda VHF, este chip utiliza el principio de decodificación de software de una banda de frecuencia digitalizada previamente desde el éter. Es decir Hablando en términos generales, digitaliza una señal de alta frecuencia de la entrada de antena, y el filtro central de una portadora específica y su detección (extracción de información útil) del flujo digital recibido se deja al procesador central. Obviamente, esto se hizo por razones de economía, de la misma manera que en el momento de la puesta de sol Dial-UP, los "módems" extremadamente baratos, que también representaban solo un par avanzado de DAC y ADC, se generalizaron, y la CPU realizó todo el procesamiento de señales en hilo con la máxima prioridad.
A diferencia de los "sintonizadores normales" que tengo, esta instancia de usb id 0bda: 2832 tiene un número de serie de 17 dígitos.
Bus 001 Dispositivo 005: ID 0bda: 2832 Realtek Semiconductor Corp. RTL2832U DVB-TEncontrado el sintonizador Rafael Micro R820TEs decir análogo al "silbato azul" utilizado para crear receptores ADSB caseros. En la foto, el receptor está en OrangePI.
Ensamblando el receptor, instalé un radiador por si acaso. Comprado específicamente para completar enrutadores y otros equipos domésticos.
Fuente de alimentación 5V 2A. Se ve más sólido que la fuente de alimentación para Flightaware Flightfeeder. Pero con un enchufe chino ... Traté de recordar dónde tenía el adaptador por ahí.
En una caja de cartón blanco había una bonita bolsa de terciopelo.
"... en el pecho - una liebre, en una liebre - un pato, en un pato - un huevo, en un huevo - una aguja ..."
Dentro había un rompecabezas de tres adaptadores, que resolvió la pregunta "¿dónde está mi adaptador?"
En una caja de cartón marrón había un pararrayos "CA-23RP 2.5GHZ 400W Made in Japan". No conozco esta configuración de otros receptores ADS-B. Muy razonable para protección contra accidentes de baja potencia.
Es probable que la antena interior pruebe el receptor sin instalar una antena externa. No apto para uso práctico. Pero se vende en Aliexpress / Ebay como una "antena ADS-B", pero su propósito real viene dado por la inscripción en la suela magnética. Solía atrapar aviones en esta antena no más allá de un radio de 30-40 km.
Cerca del adaptador N (hembra) - SMA (macho). Quizás un regalo en caso de conectar un filtro o amplificador de bajo ruido.
Cable coaxial para una antena de 5 metros con conectores N y SMA, y un cable de par trenzado de 10 metros ("cobre 100% libre de oxígeno, blablabla").
Cable de antena marcado KOPA PLESS RG400-KF MIL-C-17.
Cable coaxial flexible con
doble trenza M17 / 128-RG400 RG-400 de Google con un color de cubierta diferente:
- Frecuencia máxima de funcionamiento 6 GHz
- A una frecuencia de 1.20 GHz, la atenuación máxima es 0.54 dB / m
Es muy dudoso que estas sean las características del cable chino. Por cierto, Flightaware incluía un cable de antena pésimo, aunque italiano. Acortar el cable de la antena a varias decenas de centímetros tres veces aumentó la cantidad de paquetes recibidos por el receptor Flightaware.
Antena exterior y su fijación al mástil.
La rareza de
FlightFeeder ADS-B VariFlight en Facebook:
La antena es ligeramente más pequeña en diámetro que Flightaware
Soporte de mástil Flightaware de duraluminio
Un regalo con el símbolo de VariFlight. A juzgar por las inscripciones en el reverso, esta etiqueta debe estar sujeta al equipaje en caso de pérdida en el aeropuerto, completando los datos de contacto del propietario.
Primera inclusión
Encender la alimentación no cambió fundamentalmente nada en la apariencia del dispositivo. Solo los indicadores LAN estaban encendidos, el enrutador tiene un nuevo nombre de host raspberrypi en la lista de direcciones IP dhcp emitidas. HDMI tenía la salida de arranque RPi habitual y la solicitud de inicio de sesión.
Y eso es todo. La interfaz web esperada para estos dispositivos en IP: 8080 no estaba disponible. Al escanear los puertos del dispositivo, solo se encontró el puerto 22. En un intento de iniciar sesión como usuario y contraseña predeterminados, fue enviado tanto en la consola como en ssh:
login as: pi pi@raspberrypi's password: Access denied
El receptor se encendió y apagó varias veces, permaneció encendido durante días asumiendo que podría estar descargando algo en ese momento o tratando de llegar a servidores en China. Ni el indicador rojo ni el verde se encienden.
En este momento, salí del sitio en busca de preguntas frecuentes, soporte técnico u otra cosa que pudiera decir que este dispositivo debería y no debería. Inicié sesión por primera vez, pero esto no cambió fundamentalmente nada: no hay formularios de contacto ni formularios de comentarios. Lo único que se encontró fue que el receptor estaba vinculado a una cuenta y tenía el estado fuera de línea. Noté el hecho de que el sistema lo vio por última vez en la red el 2 de septiembre a las 17.18 hora de Beijing, 4 días antes de que se enviara por correo. Es decir Fue verificado y conectado a la cuenta.
Después de pasar un par de días deambulando por los sitios de la "Internet china", a los que algunos enlaces se referían fuera del sitio o que estaban vinculados desde fuera, y cansados de su diseño original, me di cuenta de que este producto no tiene ningún soporte técnico. Y en ese momento recordé dos correos electrónicos de ADSB 展示 系统 (Sistema de visualización de ADS-B).
"Esto es una especie de tontería" - una vez más escuché una voz familiar con acento en mi cabeza. Mi correo electrónico a esta dirección fue devuelto por PostMaster feeyo.com
Y luego el ojo se fijó en el archivo adjunto a la segunda letra, que previamente había escapado de la mirada (debido al nuevo diseño inusual de GMail). Esto resultó ser una instrucción de instalación para VariFlight ADS-B. Es hora de descubrir cómo se suponía que debía funcionar.Conoce a 飞 常 准 ADS-B 设备 安装 说明
A continuación hay una traducción de las instrucciones en 6 páginas y dos idiomas, la mayoría de los cuales son ilustraciones.Instrucciones de instalación de VariFlight ADS-B
Breve descripción
VariFlight ADS-B es un equipo diseñado para entusiastas de la aviación civil para rastrear aeronaves. El kit consta de un receptor ADS-B, una fuente de alimentación, un cable de conexión (cable de conexión), una antena y un cable para ello.
Ubicación de la antena
, ; . ADS-B , .
, ADS-B , :
- .
- - ADS-B .
- .
, . IP , DHCP.
ADS-B
El primer método
En la configuración de su enrutador, busque la dirección IP del receptor ADS-B y abra http // XXX.XXX.XXX: 8080 en un navegador web, donde XXX.XXX.XXX es la dirección IP interna en su red local.
Método dos:
abra el enlace flightadsb.variflight.com en un navegador web, inicie sesión y haga clic en Aeropuerto
El tercer método, solo para voluntarios chinos
Para usuarios chinos, el uso de WeChat es posible.En esta instrucción terminó. De acuerdo con estas instrucciones, el dispositivo funciona parcialmente: recibe IP en la red local, pero no muestra una interfaz web en la que pueda reconocer dump1090 , un decodificador de Modo S diseñado para dongles RTLSDR y utilizado en dichos dispositivos.Sin trabajar dump1090, no llegarán datos al servidor. Es extraño que el dispositivo haya funcionado de alguna manera durante la verificación antes del envío. "Esto es una especie de tontería". Como los chinos no están interesados de ninguna manera en el destino del dispositivo, y no se encontraron signos de soporte técnico, entonces mi conciencia está completamente limpia si trato de repararlo yo mismo.Tomamos el control del dispositivo
Después de desmontar el receptor, inmediatamente después de recibirlo, hice la imagen microSD en el estado anterior al primer encendido y examiné un poco el contenido, sospechando inmediatamente que el receptor estaba enviando datos al servidor: había archivos y scripts con direcciones de servicio en / root /.Restablecer contraseña de usuario PI
Las instrucciones para cambiar la "contraseña olvidada" con imágenes se pueden encontrar en este enlace .Desmonto el receptor de nuevo. Para llegar a microSD necesita desenroscar todos los tornillos y quitar ambas placas. En el futuro, mientras trabajaba con el receptor, no lo ensamblé nuevamente en el edificio. Tuve que cambiar dos microSD con diferentes sistemas.Sacamos la microSD de Rpi, hacemos una copia de seguridad en la computadora, si aún no lo ha hecho, y editamos el archivo - cmdline.txt . dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
Al final de esta línea, agregue init=/bin/sh
Devolvemos la microSD a RPi, conectamos el monitor y el teclado. Conectamos el poder. Cuando las líneas dejen de ejecutarse en la pantalla, presione Entrar. Aparece un indicador de consola, en el que escribimos mount -rw -o remount / passwd pi sync exec /sbin/init
Las líneas se ejecutan una y otra vez, esperen a que dejen de funcionar y luego las apagan. Obtenemos microSD de RPi. En la computadora editamos o restauramos la copia de respaldo de cmdline.txt - elimine "init = / bin / sh".La última vez que devolvemos microSD a RPi. Encender Inicie sesión con éxito con una nueva contraseña. Habilitamos ssh ingresando raspi-config y seleccionando SSH en el menú.Luego, con el comando superior, quiero ver cómo vive el receptor y notar inesperadamente los procesos wget y ... dump-1090. Escena silenciosa Verifico en el navegador web http // XXX.XXX.XXX: 8080: hay una interfaz.Por no decir eso inesperadamente, pero definitivamente inusual. Compruebo el segundo método a partir de las instrucciones : todo está bien allí también: el icono del receptor se puso verde y debajo de la lista de aviones que escuchó.Sería posible terminar con esto, pero en primer lugar, usar RPi3 solo por esto sería imperdonable. Y en segundo lugar, si este dispositivo funciona de manera estable. Por ejemplo, desapareció de la lista de direcciones IP del enrutador DHCP, mientras estaba disponible al acceder a la IP recibida anteriormente, y al mismo tiempo no había imagen en HDMI. Pero lo más importante fue la inestabilidad de la transmisión. Según las estadísticas en la página del receptor, funcionó durante varias horas al día. A veces un día completo, a veces varias horas, a veces cero horas. Tomó varios días estudiar el sistema; no se instaló todo el software. Repositorios chinos ... La voz alemana finalmente convenció de que necesitamos hacer un receptor ADS-B para una persona sana, y para esto necesitamos rodar la imagen de PiAware en otra microSD. La microSD original aún era útil para descubrir cómo funciona.Como mínimo, guarde los archivos de / root. Haz una imagen deseable.PiAware
PiAware es un software de Linux para transferir datos de vuelo a FlightAware. Contiene fork dump1090-mutability. Según los desarrolladores, una de las diferencias es que no envía paquetes a los servidores FlightAware si no difieren del primero. Es decir
Si el avión no ha cambiado la velocidad, la altitud, entonces estos datos no necesitan ser procesados y, por lo tanto, reduce la carga en el servidor.Hace unos dos años, FlightAware comenzó a traducir textos del sitio al ruso. Y mucho para crear su propia estación PiAware se puede encontrar fuera del sitio . La esencia de crear una estación en RPi con RTLSDR es escribir en la microSD del PiAware terminado en la imagen de Raspbian Linux usando Etcher . A continuación, antes de insertar la tarjeta en el RPi y esperar la descarga, debe realizar algunos cambios. Para habilitar el acceso SSH, cree un archivo vacío sin la extensión con el nombre ssh en la partición de arranque (/ partición de arranque). Y en el archivo piaware-config.txt puede realizar las configuraciones necesariaspor ejemplo, especifique una IP estática o habilite WiFi y especifique un SSID / contraseña, siempre que esté conectado un adaptador WiFi USB compatible. La misma configuración se puede realizar desde la consola con el comando piaware-config Setting_name Possible_values .Si ya tiene una cuenta de Flightaware, luego de 5 minutos la estación se adjuntará a la cuenta , después de haber recibido un Identificador único. Y el receptor tendrá su propia página de estadísticas.De forma predeterminada, el usuario de PI tiene una contraseña de flightaware. Es una buena idea cambiar su contraseña de inmediato."Pruebas"
Las pruebas están entre comillas, solo impresiones. Tener dos dispositivos con casi el mismo software puede evaluar sus habilidades.Tengo un receptor Flightaware gratuito y lo primero que experimenté fue la antena VariFlight completa. Acabo de reemplazar la antena de Flightaware con ella. Y mientras estudiaba el receptor VariFlight, las estadísticas de FlightFeeder se recopilaron en la página de Flightaware. La conclusión es decepcionante. Aunque nada ha cambiado en el alcance máximo, como FlightFeeder, en la dirección de visibilidad directa, capturando algunos a una distancia de 400 km, pero las estadísticas de aviones por hora / día cayeron 2-3 veces. Seguramente acepta lados por más de 300 kilómetros, pero ve un poco menos de mensajes. No sé qué hay dentro del cuerpo de la antena, no es plegable.Una antena de Flightaware estaba conectada al receptor VariFlight y mostraba estadísticas del mismo orden. Y con una antena nativa aún más baja.Decodificaré las estadísticas. Estadísticas 10-05 a 10-07 es un receptor VariFlight con una antena Flightaware. El 10-08, se conectó la antena completa y del 10-09 al 10-11 las estadísticas del kit VariFlight. 10-12, el script send_message.py se ha cambiado para recopilar datos de Flightaware Flightfeeder. Después de eso, VariFlight envió datos de él y 10-13: estadísticas diarias basadas en datos de Flightaware Flightfeeder. Además, por ejemplo, para 10-18 - 396 vuelos, 814176 paquetes, para 10-19 - 471 vuelos, 860415 paquetes.Vamos a evaluar cuánto es susceptible el receptor VariFlight a la interferencia de radio. Para hacer esto, escanee el rango de 800 MHz-1200 MHz y genere un mapa de calor. sudo apt-get install python-imaging sudo wget https://raw.githubusercontent.com/keenerd/rtl-sdr-misc/master/heatmap/heatmap.py sudo chmod +x heatmap.py sudo systemctl stop dump1090-fa sudo rtl_power -f 800M:1200M:100k -i 30 -c 50% -e 30m -g 30 -F 9 >scan.csv
Después de media hora (-e 30m), el escaneo se detiene y se genera una imagen. ./heatmap.py scan.csv scan.png
Reiniciando el dispositivo para restaurar dump1090.Y copie la imagen resultante a una computadora usando (win) scp.Este es un fragmento de una exploración de mapa térmico a una frecuencia de 1090 MHz. Imagen completa disponible por clic.
Las rayas amarillas brillantes son una comunicación móvil. Nada inusual: no tiene prefiltros como Flightfeeder y las estaciones móviles lo interrumpen en gran medida. En esto, es absolutamente lo mismo que el simple "silbato azul" mencionado anteriormente. Quizás la fabricación en forma de una placa de expansión especial tenga algún sentido, por ejemplo, el papel de las "pistas dobladas" en esta placa no está claro. Al hacer una placa especializada, no sería difícil instalar un amplificador de bajo ruido y un filtro SAW a 1090 MHz. Solo mirando las secuencias de comandos en el dispositivo, tuve una idea de por qué se hizo esto: una secuencia de comandos llamada acars.py.
Cuánto mejoraría el amplificador y el filtro las características del receptor muestra un ejemplo del grupo mencionado en Facebook. En lugar de un receptor normal, uno de los usuarios de VariFlight Box conectó un dongle especializado de Flightaware, lo que lo llevó a la calificación máxima de aproximadamente mil usuarios (por supuesto, la ubicación de instalación y otra antena también se vieron afectadas).FlightAware lanza dos modelos de dongle: Pro Stick y Pro Stick Plus, que siguen siendo el mismo "silbato azul", pero tienen un amplificador de señal preliminar, y este último además tiene un filtro SAW que elimina señales innecesarias en áreas con mucha interferencia, por ejemplo en las ciudades, además de que estos modelos están equipados con un conector de antena SMA. Estos dongles se utilizan en los receptores Flightaware Flightfeeder Orange.El nombre del script "acars.py" sugiere que la ausencia de filtros no es un error y un ahorro. Dirección y sistema de informes de comunicaciones de aviaciónEl Sistema de información y direccionamiento de comunicaciones de aeronaves (ACARS) es un sistema de comunicación de radio digital utilizado en la aviación para transmitir mensajes cortos entre una aeronave y estaciones terrestres. La frecuencia de funcionamiento de ACARS en Europa es de 131.725 MHz. Por lo tanto, el dispositivo no puede tener un filtro solo para 1090 MHz, de lo contrario no podrá recibir una señal a 131 MHz. Lo que está dentro de la antena es desconocido, no lo voy a romper, pero es obvio que su "amplia cobertura" también está prevista por los creadores. De manera similar al método anterior, se generó un mapa de calor en el rango de 100 MHz-500 MHz. Un fragmento de un mapa térmico de escaneo a una frecuencia de 450 MHz. Imagen completa también disponible por clic.
En el mapa de calor puede ver los paneles de control, sensores de seguridad, timbres inalámbricos, sensores inalámbricos de estaciones meteorológicas, radioaficionados, estaciones de radio FM, y así sucesivamente.Por ejemplo, al configurar rtl_433 puede ver los datos de los sensores inalámbricos vecinos de las estaciones meteorológicas y, si lo desea, utilizarlos como autor de este artículo .Y ejecutando rtl_tcp puedes escuchar radioaficionados y radio FM.Curiosamente, no todos los jamones walkie-talkie mantienen precisamente la frecuencia. Fue divertido ver cómo los radioaficionados evaluaban cómo escuchaban al interlocutor, y la frecuencia de una de las estaciones de radio estaba en algún lugar al margen.Pero el receptor chino en el sistema nativo mostró precisión: 0 PPM. En el método de medición del PPM se puede encontrar en el artículo sobre Habré quwy «Una vez más sobre la recepción de HF en el SDR-RTL» . Es muy recomendable ajustar el PPM para una mejor recepción. Que es lo que hicieron los chinos. Hay un pequeño error en Piaware que puede y debe repararse especificando el valor PPM correcto con el comando sudo piaware-config rtlsdr-ppm <valor PPM>.Instrucciones de calibración RTLSDR con rtl_test y kalibrate-rtl rtl_test -p
Esperamos unos 10 minutos hasta que el valor se estabilice. Esta será la ppm deseada.Puede mejorar la precisión mediante las señales de las torres móviles utilizando la utilidad kalibrate-rtl. sudo apt-get install libtool autoconf automake libfftw3-dev git clone https://github.com/asdil12/kalibrate-rtl.git cd kalibrate-rtl git checkout arm_memory ./bootstrap ./configure make sudo make install kal -s GSM900
De la lista de canales, se necesita uno con el valor de "potencia".El número de canal resultante se utiliza en el comando kal -c <número de canal> -e <valor PPM aproximado, previamente determinado manualmente o por la utilidad rtl_test> -v.Como resultado, obtenemos un "error absoluto promedio". Y use este valor de ppm, redondeado al entero más cercano, en el comando sudo piaware-config rtlsdr-ppm <valor PPM> Como resultado, podemos decir que el receptor VariFlight para hierro es ligeramente mejor de lo que puede ensamblar usted mismo. Esta es una buena base para comenzar a practicar este pasatiempo (y mostró pruebas de hierro que se pueden usar para una amplia gama de otras tareas. Además, hay tres puertos USB libres).Un inconveniente definitivo como receptor ADSB es el software y la interfaz del sitio chino. Si no puede hacer nada con el sitio chino, puede modificar el software del receptor. La forma más fácil es instalar PiAware y configurar la distribución en VariFlight. Luego, puede configurar la distribución en Flightradar24 y obtener una cuenta con condiciones especiales allí también. Un ejemplo de uso de una cuenta con características especiales es el acceso a los datos del archivo de Flightaware (el accidente de An-148 Saratov Airlines).Damos datos a VariFlight
Volvemos al contenido del directorio raíz. Se puede encontrar en GitHub . Los nombres de archivo insinúan inequívocamente sus funciones. root@raspberrypi:/home/pi
Las últimas líneas de install.sh muestran que cron agrega dos trabajos: ejecute task.sh cada minuto y synctime.sh cada 6 días115.182.42.248 - BeiJing wanglianxuntong Telecom Technology Co., Ltd, Beijing, China.
observaciones: tenga en cuenta que CNNIC no es un ISP y no es
observaciones: facultado para investigar las denuncias de abuso de la red.
Observaciones: póngase en contacto con el técnico o administrador de la red.
El script task.sh, ejecutado cada minuto por cron, verifica y, si es necesario, reinicia dump1090, los scripts send_message.py y get_ip.py. pi@raspberrypi:~ $ ps -eaf | grep dump1090 | grep -v grep root 830 1 14 Oct12 ? 13:49:25 ./dump1090 --net --net-sbs-port 30003 pi@raspberrypi:~ $ ps -eaf | grep get_ip.py | grep -v grep pi@raspberrypi:~ $ ps -eaf | grep send_message.py | grep -v grep root 838 1 0 Oct12 ? 00:09:20 python -O /root/get_message/send_message.py
El directorio get_message contiene scripts de python, uno de los cuales, send_message.py, envía datos. root@raspberrypi:/home/pi
El script init.sh verifica si hay una actualización y establece un nuevo send_message.pyget_ip.py import socket import fcntl import struct import urllib2 import urllib import sys,os import ConfigParser import hashlib import json import uuid config = ConfigParser.ConfigParser() config.readfp(open(sys.path[0]+'/config.ini',"rb")) uuid_file=sys.path[0]+'/UUID' if os.path.exists(uuid_file) : file_object = open(uuid_file) mid = file_object.read() file_object.close() else : mid = uuid.uuid1().get_hex()[16:] file_object = open(uuid_file , 'w') file_object.write( mid ) file_object.close() def send_message(source_data): source_data=source_data.replace('\n','$$$') f=urllib2.urlopen( url = config.get("global","ipurl"), data = source_data, timeout = 60 ) tmp_return=f.read() request_json=json.loads(tmp_return) request_md5=request_json['md5'] del request_json['md5'] tmp_hash='' for i in request_json: if tmp_hash=='' : tmp_hash=tmp_hash+request_json[i] else : tmp_hash=tmp_hash+','+request_json[i] md5=hashlib.md5(tmp_hash.encode('utf-8')).hexdigest() if (md5 == request_md5): operate(request_json) else : print 'MD5 ERR' print "return: "+tmp_return; def get_ip_address(ifname): skt = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) pktString = fcntl.ioctl(skt.fileno(), 0x8915, struct.pack('256s', ifname[:15])) ipString = socket.inet_ntoa(pktString[20:24]) return ipString def operate(request_json): if request_json['type'] == 'reboot' : os.system('/sbin/reboot') elif request_json['type'] == 'code' : fileHandle = open ( urllib.unquote( request_json['path'] ) , 'w' ) fileHandle.write( urllib.unquote( request_json['content'] ) ) fileHandle.close() else : print 'OK' eth=get_ip_address('eth0') send_message(mid+'|'+eth+'|')
El significado del intercambio de red realizado por el script, no lo entiendo particularmente. Se genera un UUID único si falta uno. Y hay un cierto intercambio con las direcciones especificadas en el archivo config.ini. Probablemente este script en particular es responsable de vincular los datos transmitidos y la IP con la cuenta.La línea "if request_json ['type'] == 'reboot': os.system ('/ sbin / reboot')" es digna de mención. [global] name = NEW ipurl = http://receive.cdn35.com/ADS-B_IP.php sendurl = http://adsb.feeyo.com/adsb/ReceiveCompressADSB.php version = 1.0 passwd = 'null'
Y finalmente, el script que envía los datos.send_message.py import socket import urllib2 import urllib import sys import ConfigParser import zlib import base64 import os,uuid serverHost = 'localhost' serverPort = 30003 config = ConfigParser.ConfigParser() config.readfp(open(sys.path[0]+'/config.ini',"rb")) uuid_file=sys.path[0]+'/UUID' if os.path.exists(uuid_file) : file_object = open(uuid_file) mid = file_object.read() file_object.close() else : mid = uuid.uuid1().get_hex()[16:] file_object = open(uuid_file , 'w') file_object.write( mid ) file_object.close() sockobj = socket.socket(socket.AF_INET,socket.SOCK_STREAM) sockobj.connect((serverHost,serverPort)) def send_message(source_data): try: source_data=base64.b64encode(zlib.compress(source_data)) f=urllib2.urlopen(url = config.get("global","sendurl"),data = urllib.urlencode({'from':mid,'code':source_data}),timeout = 2) return True except Exception,e: print str(e) return True tmp_buf='' while 1: buf = sockobj.recv(1024) if not buf: break if len(buf) != 0: tmp_buf=tmp_buf+buf if buf[len(buf)-1] == '\n': if send_message(tmp_buf) : tmp_buf=''
Edité la línea serverHost = 'localhost' reemplazando 'localhost' por 'ff-1234', el nombre de red de mi Flightaware Flightfeeder y reiniciando el receptor VariFlight. Después de eso, los datos de Flightfeeder fueron a VariFlight.Los scripts restantes son la recepción de mensajes ACARS. Quizás los restos de alguna funcionalidad o una función que se implementará en el futuro. Los scripts funcionan con /root/acarsdec-3.0/acarsdec, que falta en esta ruta. ACARSDEC es un decodificador ACARS SDR que decodifica mensajes, por ejemplo, a una frecuencia de 131.725 MHz. Aparentemente, según la recepción de esta frecuencia, no hay filtros a 1090 MHz en la entrada del receptor.El Sistema de comunicaciones de aviación de direcciones e informes (ACARS) es un sistema de comunicaciones digitales utilizado en la aviación para transmitir mensajes cortos y relativamente simples entre una aeronave y estaciones terrestres, ya sea a través de comunicaciones de radio directas o sistemas satelitales.
Más sobre ACARS se puede ver, por ejemplo, aquí .El script acars.sh es similar a task.sh en su implementación: reinicia acarsdec y los scripts get_ip.py y acars.py si no detecta el proceso necesario.En el trabajo, se ve así: PID TTY STAT TIME COMMAND 20726 ? Ss 0:00 \_ sshd: pi [priv] 20732 ? S 0:00 \_ sshd: pi@pts/0 20734 pts/0 Ss 0:00 \_ -bash 20744 pts/0 R+ 0:00 \_ ps -afx 777 tty1 Ss+ 0:00 /sbin/agetty --noclear tty1 linux 907 ? Sl 737:23 ./dump1090 --net --net-sbs-port 30003 915 ? S 11:11 python -O /root/get_message/send_message.py
ps -afx completamente pi@raspberrypi:~ $ ps -afx PID TTY STAT TIME COMMAND 2 ? S 0:00 [kthreadd] 3 ? S 0:59 \_ [ksoftirqd/0] 5 ? S< 0:00 \_ [kworker/0:0H] 7 ? S 5:28 \_ [rcu_sched] 8 ? S 0:00 \_ [rcu_bh] 9 ? S 0:01 \_ [migration/0] 10 ? S 0:01 \_ [migration/1] 11 ? S 0:05 \_ [ksoftirqd/1] 13 ? S< 0:00 \_ [kworker/1:0H] 14 ? S 0:01 \_ [migration/2] 15 ? S 0:04 \_ [ksoftirqd/2] 17 ? S< 0:00 \_ [kworker/2:0H] 18 ? S 0:01 \_ [migration/3] 19 ? S 0:04 \_ [ksoftirqd/3] 21 ? S< 0:00 \_ [kworker/3:0H] 22 ? S 0:00 \_ [kdevtmpfs] 23 ? S< 0:00 \_ [netns] 24 ? S< 0:00 \_ [perf] 25 ? S 0:00 \_ [khungtaskd] 26 ? S< 0:00 \_ [writeback] 27 ? S< 0:00 \_ [crypto] 28 ? S< 0:00 \_ [bioset] 29 ? S< 0:00 \_ [kblockd] 31 ? S< 0:00 \_ [rpciod] 32 ? S 0:00 \_ [kswapd0] 33 ? S< 0:00 \_ [vmstat] 34 ? S 0:00 \_ [fsnotify_mark] 35 ? S< 0:00 \_ [nfsiod] 44 ? S< 0:00 \_ [kthrotld] 46 ? S< 0:00 \_ [bioset] 47 ? S< 0:00 \_ [bioset] 48 ? S< 0:00 \_ [bioset] 49 ? S< 0:00 \_ [bioset] 50 ? S< 0:00 \_ [bioset] 51 ? S< 0:00 \_ [bioset] 52 ? S< 0:00 \_ [bioset] 53 ? S< 0:00 \_ [bioset] 54 ? S< 0:00 \_ [bioset] 55 ? S< 0:00 \_ [bioset] 56 ? S< 0:00 \_ [bioset] 57 ? S< 0:00 \_ [bioset] 58 ? S< 0:00 \_ [bioset] 59 ? S< 0:00 \_ [bioset] 60 ? S< 0:00 \_ [bioset] 61 ? S< 0:00 \_ [bioset] 62 ? S< 0:00 \_ [bioset] 63 ? S< 0:00 \_ [bioset] 64 ? S< 0:00 \_ [bioset] 65 ? S< 0:00 \_ [bioset] 66 ? S< 0:00 \_ [bioset] 67 ? S< 0:00 \_ [bioset] 68 ? S< 0:00 \_ [bioset] 69 ? S< 0:00 \_ [bioset] 70 ? S< 0:00 \_ [VCHIQ-0] 71 ? S< 0:00 \_ [VCHIQr-0] 72 ? S< 0:00 \_ [VCHIQs-0] 73 ? S< 0:00 \_ [iscsi_eh] 74 ? S< 0:00 \_ [dwc_otg] 75 ? S< 0:00 \_ [DWC Notificatio] 77 ? S 0:00 \_ [irq/92-mmc1] 78 ? S 0:00 \_ [VCHIQka-0] 79 ? S< 0:00 \_ [SMIO] 80 ? S< 0:00 \_ [deferwq] 83 ? S< 0:00 \_ [bioset] 84 ? S 0:11 \_ [mmcqd/0] 87 ? S 0:04 \_ [jbd2/mmcblk0p2-] 88 ? S< 0:00 \_ [ext4-rsv-conver] 89 ? S< 0:00 \_ [ipv6_addrconf] 172 ? S 415:15 \_ [w1_bus_master1] 224 ? S< 0:00 \_ [cfg80211] 227 ? S< 0:00 \_ [brcmf_wq/mmc1:0] 229 ? S 0:00 \_ [brcmf_wdog/mmc1] 493 ? S< 0:00 \_ [kworker/1:1H] 550 ? S< 0:00 \_ [kworker/3:1H] 632 ? S< 0:00 \_ [kworker/u9:0] 633 ? S< 0:00 \_ [hci0] 634 ? S< 0:00 \_ [hci0] 638 ? S< 0:00 \_ [kworker/u9:2] 3856 ? S< 0:00 \_ [kworker/2:1H] 9346 ? S< 0:00 \_ [kworker/0:1H] 15564 ? S 0:00 \_ [kworker/1:0] 17556 ? S 0:00 \_ [kworker/u8:2] 17878 ? S 0:00 \_ [kworker/0:0] 17879 ? S 0:00 \_ [kworker/2:2] 19234 ? S 0:00 \_ [kworker/u8:4] 19566 ? S 0:00 \_ [kworker/3:1] 20143 ? S 0:00 \_ [kworker/2:1] 20259 ? S 0:00 \_ [kworker/3:2] 20352 ? S 0:00 \_ [kworker/0:2] 20416 ? S 0:00 \_ [kworker/1:2] 20600 ? S 0:00 \_ [kworker/3:0] 20601 ? S 0:00 \_ [kworker/2:0] 20605 ? S 0:00 \_ [kworker/u8:0] 20725 ? S 0:00 \_ [kworker/0:1] 1 ? Ss 0:10 /sbin/init 134 ? Ss 1:00 /lib/systemd/systemd-journald 136 ? Ss 0:08 /lib/systemd/systemd-udevd 416 ? Ss 0:09 /usr/sbin/cron -f 426 ? Ss 0:01 /lib/systemd/systemd-logind 429 ? Ss 0:00 avahi-daemon: running [raspberrypi.local] 458 ? S 0:00 \_ avahi-daemon: chroot helper 433 ? Ss 0:00 /usr/bin/dbus-daemon --system --address=systemd: --no 450 ? Ss 0:02 /usr/sbin/thd --daemon --triggers /etc/triggerhappy/t 496 ? Ss 0:03 /sbin/wpa_supplicant -s -B -P /run/wpa_supplicant.wla 498 ? Ssl 0:13 /usr/sbin/rsyslogd -n 636 ? S 0:00 /usr/bin/hciattach /dev/serial1 bcm43xx 921600 noflow 640 ? Ss 0:00 /usr/lib/bluetooth/bluetoothd 729 ? Ss 0:02 /sbin/dhcpcd -q -w 749 ? Ss 0:00 /usr/sbin/sshd -D 20726 ? Ss 0:00 \_ sshd: pi [priv] 20732 ? S 0:00 \_ sshd: pi@pts/0 20734 pts/0 Ss 0:00 \_ -bash 20744 pts/0 R+ 0:00 \_ ps -afx 777 tty1 Ss+ 0:00 /sbin/agetty --noclear tty1 linux 907 ? Sl 737:23 ./dump1090 --net --net-sbs-port 30003 915 ? S 11:11 python -O /root/get_message/send_message.py
Esto muestra que puede tomar datos de PiAware casi sin forzar, de hecho, solo transfiriendo scripts al nuevo sistema. Y si ya tiene una estación adsb existente: hecha en casa, Flightradar24, Flightaware, entonces el receptor existente puede usarse a su discreción para otros objetivos y tareas personales con una conciencia completamente limpia.Instalar VariFlight en PiAware
Transferimos los archivos necesarios al nuevo sistema desde el anterior. Es decir
contenido del directorio raíz: directorioget_message y archivos install.sh, synctime.sh, task.sh.En el directorio get_message:- acars.py
- acars.sh
- config.ini
- get_ip.py
- init.sh
- send_message.py
y el archivo UUID es su identificador en la red VariFlight.Si desea comenzar a compartir datos sin VariFlight Feeder, la primera vez que ejecute el script, se generará su UUID. Este archivo y el nombre del aeropuerto más cercano deben enviarse a chengyi (at) variflight.com para crear su cuenta en el servicio.Siguiente: pi@piaware:~ $ sudo apt-get install -y python ntpdate pi@piaware:~ $ su root@piaware:~
Edición de crontab en nano pegando * * * * * /root/task.sh >/dev/null 2>&1
Guarde el archivo presionando [Ctrl + O] y cierre [Ctrl + X]. root@piaware:~
Después del reinicio, verificamos la página con sus estadísticas flightadsb.feeyo.com/user/rankEn la cuarta columna debe haber una inscripción verde en línea. Y en la lista de Aeropuerto, los tableros aceptados (tercera columna: hace cuántos segundos se recibió una señal del avión).En este punto, mi borrador "colgó" indefinidamente, porque aquí quería escribir cómo ejecutar un script en el enrutador con openwrt y ModeSMixer para distribuir datos a los servicios y así apagar este receptor y aplicarlo para otros fines. Pero todavía no espero tiempo libre y decidí publicar tal cual. Tal vez alguien quiera pedir un receptor gratuito y este artículo será útil.ModeSMixer
Un receptor puede distribuir datos a varios servicios y el programa ModeSMixer se utiliza para esto.ModeSMixer es una aplicación de consola para combinar y retransmitir transmisiones con datos de Modo-S en varios formatos. Ejemplo de caso de uso:El programa está diseñado para combinar y transmitir diferentes formatos de flujos de datos ModeS. El programa no tiene configuraciones predeterminadas. Todo está configurado por parámetros.El parámetro --inConnect especifica las direcciones y los puertos desde los cuales se reciben los datos. Y el parámetro --outServer define el formato y el puerto para los datos transmitidos. Un ejemplo en la imagen se verá así: ./modesmixer2 --inConnect 192.168.0.105:30005 --inConnect 127.0.0.1:30005 --outServer sbs10001:10001 --outServer beast:31001 --globes 32000:tablename:home --location XX.XXXXX:YY.YYYYY --web 8765 &
El parámetro --location determina la latitud y longitud de la ubicación de instalación de la estación, y el parámetro --web determina el puerto en el que funcionará la interfaz web del programa. Lea más sobre el programa aquí .Después de configurar la distribución de varios servicios, el propietario de la estación recibe una membresía especial en cada servicio y acceso a información no pública y al archivo de vuelo durante un cierto período de tiempo.En el caso de usar PiAware, los datos ya se envían a FlightAware y todo lo que queda es recopilar estos datos utilizando modemixer2. Y en el caso de Variflight, necesita obtener datos de BaseStation en algún puerto libre, por ejemplo, 10001. El parámetro se verá así --outServer msg: 10001. Si es necesario, puede agregar el puerto 10002 para el programa VirtualRadar: --outServer beast: 10002 ./modesmixer2 --inConnect localhost:30005 --inConnect localhost:30105 --outServer msg:10001 --outServer beast:10002 --location <>:<> --web 8765 &
Para que esto se inicie y reinicie automáticamente, debe editar task.sh, agregando: ps -eaf | grep modesmixer2 | grep -v grep
Finalmente, edite el script get_message / send_message.py, especificando un nuevo puerto de datos: serverHost = 'localhost' serverPort = 10001
Mientras tanto
Mientras este artículo estaba en borrador, surgieron noticias de China con respecto a estos servicios. En noviembre de 2018, las autoridades chinas comenzaron a apagar los receptores ADSB de servicios extranjeros. Esto se puede ver en las estadísticas públicas de las estaciones de Flightaware en China:
la noticia es que los entusiastas de detección de radares chinos dijeron que fueron llamados por representantes de las autoridades chinas y fueron visitados por la policía, quienes "muy amables y educados" les pidieron que dejaran de enviar datos ADS-B al extranjero servicios que, aparentemente, "ponen en peligro la seguridad y soberanía nacional de China".Algunos afirmaron que recibieron una llamada, incluso si no recibieron un receptor de FlightRadar24 y FlightAware. Estos eventos causaron revuelo entre los entusiastas, y muchos de ellos dejaron de transmitir datos ADS-B. Se sabe que FlightRadar24 intentó anonimizar estaciones de usuarios en China. Todavía no está claro cuán espectacular es esto.Aviso a las autoridades chinas en inglés:"Pone en peligro la seguridad nacional y la soberanía de China", el hecho de que dichos servicios permiten la ubicación de aviones militares chinos (estadounidenses, europeos y que no sean países de la antigua URSS). Por ejemplo, la trayectoria semanal del UAV de reconocimiento estratégico estadounidense sobre aguas internacionales a una altitud de 16 km:
Hay dos sistemas de radar secundario en el mundo desde los EE. UU. Y la URSS. Por lo tanto, estos receptores y servicios no pueden mostrar el paradero de la mayoría de los aviones y helicópteros "soviéticos" a menos que estén equipados con un transpondedor de radar "estadounidense", que es necesario solo para vuelos en el aire, por ejemplo, los Estados Unidos o la UE. Por lo tanto, puede ver algo interesante en el territorio de la Federación Rusa en las áreas fronterizas, preferiblemente junto al mar. Por ejemplo, el oficial de inteligencia estadounidense mencionado anteriormente es notablemente visible desde Krasnodar. Debido a la ubicación costera del receptor, el servicio PlaneRadar mencionado anteriormente se introduce periódicamente en las noticias de los medios de comunicación rusos.PS VariFlight ADS-B lanza la versión en inglés - flightadsb.variflight.com