Lors du crash de l’Airbus A320 de Germanwings (24 mars 2015), de nombreuses personnes ont découvert l’existence de FlightRadar24.
FlightRadar24 regroupe les données ADS-B (Automatic Dependent Surveillance-Broadcast) fournies par plusieurs milliers de récepteurs répartis à la surface du globe. Ces récepteurs sont mis en œuvre par des personnes qui participent ainsi au fonctionnement de ce système international. D’ailleurs FlightRadar24 fournit des systèmes de réception à ceux qui en font la demande et qui sont éligibles du fait de leur position géographique dans une zone encore mal couverte.
Au sommaire :
- 1 Un Raspberry Pi pour suivre les avions sur FlightRadar24
- 2 Pygmalion vous explique comment configurer le Raspberry Pi
- 3 Conclusion
- 4 Mes tests de réception au Creusot
- 5 Sources
Un Raspberry Pi pour suivre les avions sur FlightRadar24
Comment ça marche, l’ADS-B ?
La technologie que FlightRadar24 utilise pour recevoir des informations de vol est appelée ADS-B. Cette technologie est illustrée sur l’image ci-dessus.
- L’avion récupère sa localisation à partir d’un récepteur GPS
- Le transpondeur ADS-B installé sur l’avion transmet un signal à 1090 MHz contenant cette information de position ainsi que d’autres données (N° du vol et indicatif, altitude, vitesse, vitesse ascensionnelle…)
- Le signal du transpondeur ADS-B est capté par un récepteur au sol, connecté aux serveurs de FlightRadar24
- Le récepteur envoie les données reçues à Flightradar24
- Les données s’affichent sur www.flightradar24.com et les applications FlightRadar24
ADS-B est une technologie relativement nouvelle et toujours en cours de développement ce qui signifie qu’actuellement elle est rarement utilisé pour le contrôle de la circulation aérienne. FlightRadar24 estime que près de 65% des avions commerciaux transportant des passagers (75% en Europe, 35% aux États-Unis) sont équipés d’un transpondeur ADS-B. Pour l’aviation en général ce nombre est probablement inférieur à 20%. Mais ce pourcentage est en constante augmentation et l’ADS-B deviendra obligatoire mondialement pour la plupart des avions en 2020. Lorsqu’il sera obligatoire, l’ADS-B remplacera les radars primaires comme méthode de surveillance aérienne utilisé par l’ATC.
FlightRadar24 (basée à Stockholm) dispose d’un réseau de plus de 6000 récepteurs ADS-B répartis dans le monde qui reçoivent les informations de vol des avions équipés de transpondeur ADS-B et renvoie ces informations à ses serveurs. En raison de la haute fréquence utilisée (1 090 MHz) la couverture de chaque récepteur est limitée à environ 250 à 400 km autour de l’antenne en fonction de l’endroit où elle est implantée. Plus un avion vole loin du récepteur plus il doit voler haut pour être dans la zone couverte par le récepteur. La portée maximale fait qu’il est très difficile d’obtenir une couverture ADS-B au-dessus des océans.
Environ 99% de l’Europe est couverte de récepteurs ADS-B. Il ya aussi une bonne couverture ADS-B aux Etats-Unis, Canada, Mexique, Caraïbes, Brésil, Russie, Moyen-Orient, Inde, Japon, Thaïlande, Malaisie, Indonésie, Australie et Nouvelle-Zélande. Dans les autres parties du monde, la couverture ADS-B est très variable.
Les transpondeurs et antennes sur avion
Il existe de nombreux modèles de transpondeurs pour avion, comme ceux qui figurent plus haut dans l’article.
Celui-ci est en deux partie, avec un élément de commande qui peut se monter sur le tableau de bord, et un bloc électronique déporté.
Cet ensemble (qui intègre un transpondeur présenté plus haut) est équipé d’un afficheur qui permet au pilote de voir les appareils équipés d’un ADS-B sur une carte. Ceci améliore la sécurité des vols.
Les antennes peuvent également revêtir des apparences différentes, mais le plus souvent c’est ce type d’antenne qui est utilisé.
Les récepteurs
FR24
Côté réception beaucoup de possibilités existent. en dehors des matériels professionnels ci-dessus.
FlightRadar24 offre ce modèle pour équiper les stations situées dans des zones qui sont intéressantes pour le service (zones mal ou peu couvertes).
Caractéristiques
- Processeur embarqué – opérationnel sans ordinateur
- Formats reçus : 1090 MHz Mode S, ADS-B et Mode-AC
- Plage de réception : plus de 225 Km (en fonction de la qualité de l’antenne et de son emplacement)
- Vitesse de traitement : plus de 1600 trames Mode-S par seconde (dans les zones à fort trafic)
- Horodatage en mode 12Mhz ou haute résolution en mode GPS
- IP automatiquement attribué par DHCP
- Fonctionne derrière un NAT
- Consommation d’énergie : moins de 5W
- Consommation bande passante : 200 à 800 Mo / mois en fonction de la couverture
Contenu du kit de réception fourni par FlightRadar24
- Le récepteur FR24 ADS-B
- L’antenne GPS avec 5 m de câble
- Une alimentation continue (entrée 110V-230V ~)
- 5 m de câble Ethernet
- Une antenne mode S de 38 cm de long avec système de montage (0 dBd de gain, 55 cm de long, étanche)
- Un câble coaxial de 5 ou 10 mètres de long pour antenne mode-S, avec connecteur. Câble de type H155 de 6 mm de diamètre à faible perte. Câble équipé avec connecteur SMA mâle et connecteur de type N
Le stick FlightRadar24
Sur la boutique la boutique jetvision vous trouverez les solutions de récepteur DVB-T (Digital Video Broadcast – Terrestrial) préconisées par FlightRadar24. Il existe une version avec la petite antenne représentée ci-dessus (23€) mais vous pouvez choisir une antenne extérieure de meilleure qualité (78€).
La solution d’Erik
Sur blogwifi.fr, Erick d’Infracom a publié un article sur la réception de l’ADS-B avec un récepteur USB DVB-T et un Raspberry Pi. La framboise est utilisée pour décoder les signaux, les afficher et envoyer les trames à FlightRadar24. Il a aussi réalisé une antenne colinéaire pour améliorer la réception
Le projet
Une grande partie des avions est équipée d’un transpondeur, chargé de diffuser des informations destinées à assurer la sécurité aérienne, mais accessibles à ceux qui souhaitent les écouter. On y retrouve l’altitude, la vitesse, le cap, etc. L’avion va donc se faire « voir » des autres avions et du contrôle au sol, mais également de la station au sol réalisée par Erik pour recevoir les données, via un RaspberryPi, pour ensuite les diffuser sur le site FlightRadar24.
L’idée est de contribuer au site, en apportant une nouvelle zone de couverture sur la région de St Nazaire, région peu couverte lorsque les avions sont à basse altitude, comme le montre le suivi de la navette Airbus St Nazaire / Toulouse un matin :
On ne voit rien du décollage de St-Nazaire, la trace ne débute que lorsque l’avion dépasse les 5000 pieds (1,5 Km) environ, et encore. Depuis Crossac, il devrait être possible de pouvoir améliorer cette couverture qui semble un peu faible, et ainsi suivre les Beluga qui se posent à St-Nazaire, suivre les avions en exercice, les avions de tourisme qui découvrent la côte et les marais de Brière, etc.
Comme tout ce qui tourne autour de la radio, tout commence par l’antenne ! Il y a un proverbe radioamateur qui dit « Ce que vaut l’antenne, vaut la station »… Et qui dit bonne antenne, dit antenne maison 😉 : une colinéaire, taillée pour fonctionner sur 1090 MHz, la fréquence de l’ADS-B !
L’antenne
Je vous entends déjà : oulaaa, compliqué, impossible, marchera jamais !! Allez, courage, un peu de câble 75 Ohm pour satellite, et prenez bien un câble avec une âme pleine (avec une âme PLEINE, pas multi-brins), et un p’tit tuto sur Youtube :
Pas compliqué non ? Ce que le tuto oublie de dire : ajoutez deux brins à la fois, il faut, au final, avoir un nombre PAIR de brins, très important…
Venons maintenant rajouter un connecteur en bricolant un peu :
Par rapport à la vidéo, Erik a utilisé de la gaine thermo-rétractable pour solidifier, pas du scotch. Le câble qui va de l’antenne au récepteur USB DVB-T est lui en H155, faibles pertes, utilisable jusqu’à 5 GHz environ, donc parfaitement adapté pour une simple réception. Erik a ensuite réalisé un petit pigtail (petit bout de câble servant d’adaptateur) MCX / N femelle pour venir sur le module USB, avec du RG316. C’est par contre un petit peu moins accessible au bricoleur lambda, sauf si vous disposez des outils pour réaliser le sertissage.
Avec un petit peu plus de matériel, l’antenne a pris forme, elle a surtout bénéficié d’un habillage de protection, de façon à résister à un usage extérieur :
La voici par exemple avant sa finalisation, ouverte. Les matériaux sont simples : un tube PVC diam. 30 coupé à la bonne dimension, des embouts pour le fermer et un vague coup de bombe de peinture blanche pour ne pas effrayer des voisins un peu bizarres
Un peu de colle PVC et hop, voici une antenne prête à être installée au bout d’un mât :
Un câble H155 de 4 m vient s’y raccorder, en connectique N mâle. Sur la clé de réception, Erik a assemblé un adaptateur MCX / N femelle tout simple, en attendant de recevoir un adaptateur coaxial pour réduire encore un brin les pertes en ligne.
Une fois montée, l’antenne a fière allure :
Direction l’iMac et surprise… surprise quant à la couverture désormais atteinte, je vous laisse juger par vous même le résultat d’une capture effectuée un matin :
Oui c’est dingue, les avions sont reçus pratiquement jusqu’à Paris ! Certes, ils sont en niveau de vol, pas à 200 m du sol, mais quand même, c’est dingue, considérant que l’antenne n’est qu’à 4 m du sol, et encore, avec des obstacles proches.
Rapide mesure en voyant un appareil au Havre et calcul de la distance qui le sépare du récepteur :
285 km, soit environ 154 Nm, plutôt pas mal non? Encourageant en tout cas pour aller fixer l’antenne tout en haut, sur le toit. Reste désormais à trouver LA bonne solution pour un montage extérieur durable :
- antenne et raspberry sur le toit, avec une alimentation PoE
- antenne seule sur le toit, avec un minimum de câble très faibles pertes (Aircom)
Pour obtenir une solution cohérente et sans trop de pertes radio, on peut envisager de placer le Raspberry dans un boîtier étanche, le munir d’un POE (vous trouverez un exemple de timelapse qui fonctionne sans interruption depuis 2014 sur https://blogwifi.fr/?p=12741), et limiter les liaisons coaxiales vers l’antenne au strict minimum, par exemple en fixant une embase N Femelle sur le boîtier étanche. Le Raspberry Pi et le récepteur DVB-T sont placés le plus près possible de l’antenne et un simple câble Ethernet blindé suffira à venir alimenter le tout et récupérer le réseau.
D’autres antennes ?
La solution d’Erik est excellente pour la réception, mais pour démarrer et faire vos essais vous pouvez commencer par des antennes simples :
Nota : Quelle que soit l’antenne utilisée, elle devra respecter la polarisation verticale du signal pour une réception optimale. L’antenne sera donc disposée verticalement.
La plus simple !
Une antenne réduite à sa plus simple expression : dénudez le câble coaxial pour satellite (75Ω) torsadez la tresse, donnez la forme d’un dipôle (voir photo) et coupez (de façon symétrique) pour que la longueur totale soit de 13,7 cm… à peu près.
Si vous trouvez plus simple, dites moi…
Avec un bouchon…
En trois images c’est clair, pas besoin de beaucoup d’explications… Et ici, en Bourgogne, des bouchons ça va, on en récupère pas mal 😉
Un peu plus compliqué…
Cette antenne est un peu plus complexe mais offre une bonne adaptation…
Longueur totale du fil : 150 + 69 +8 + 69 + 150 = 446 mm
Antenne active 1090 MHz de F5ANN
Pour améliorer les performances de l’antenne 1090 MHz, la solution la plus simple est d’ajouter un préamplificateur juste derrière l’antenne. Cependant compte tenu de la technologie de l’antenne sur circuit imprimé, il est possible de transformer cette antenne en antenne active en ajoutant sur le même circuit imprimé un amplificateur faible bruit avec un gain de 20 à 30 dB, et pour s’affranchir des problèmes d’interférences avec les fréquences GSM, d’intégrer un filtre 1090 MHz de type SAW avec une bande passante de 30 MHz, ou moins. On arrive ainsi à avoir une antenne de faible dimensions – 160 mm de longueur – avec un gain important et permettant d’avoir un facteur de bruit de la chaine réception très faible – inférieur à 1 dB-(d’après F5ANN un site incontournable pour l’ADS-B)Si vous aimez bricoler les antennes cherchez donc avec les mots clés suivants : ads-b antenna diy |
Un préampli à faible bruit (LNA)
Si vous avez une expérience de la soudure, si vous tremblez en même temps que le circuit que vous soudez, si le mot CMS (Composant Monté en Surface) ne vous effraye pas… 😉 vous trouverez chez jetvision un kit de préampli pour une cinquantaine d’euros…
Une fois monté le préampli est inséré dans son boîtier qui assure la protection contre les interférences :
Le préampli est placé au plus près de l’antenne (ici une ground-plane montée directement sur une prise N) :
Le récepteur
Le récepteur doit être basé sur le chipset Realtek RTL2832U. Les numéros de type sont E4000 et R820T. Ils peuvent facilement être trouvés sur eBay ou Amazon. Ils sont généralement livrés avec une antenne intérieure simple, qui donne de très bons résultats. Je peux recevoir des avions qui sont à plus de 140 km du côté où j’ai une vue dégagée sur le ciel. Pour des résultats encore meilleurs vous pouvez construire votre propre dipôle.
La conclusion d’Erik
« Le Pi tourne sans discontinuer, c’est vraiment stable. Il va falloir que je pense à installer l’antenne un peu mieux que sur un trépied pour améliorer la couverture vers Nantes et la Vendée, trop faible pour le moment.«
Pygmalion vous explique comment configurer le Raspberry Pi
Le récepteur fonctionne sur un Raspberry Pi. Dans son article Erik indique qu’il a configuré le RasPi en suivant le tutoriel de Pygmalion. Celui-ci étant en anglais, je vous en propose la traduction.
Et le Raspberry Pi là dedans ?
Bin oui, jusque là c’était un peu l’arlésienne… Mais le voici : Erik a utilisé un tutoriel de Pygmalion dont je vous propose ici la traduction.
Introduction
Un dongle USB DVB-T peut être utilisé pour recevoir les signaux ADS-B, qui peuvent être décodés avec le logiciel approprié.
Installez les outils de construction du logiciel et la librairie requise
Si vous n’avez pas installé les outils de construction utilisez la commande suivante. Vous devez également libusb-1.0-0-dev.
sudo apt-get -fym install git cmake build-essential libusb-1.0-0-dev
Installation de rtl-sdr
Le pack logiciel contient la bibliothèque chargée de communiquer avec le dongle DVB-T (Digital Video Braodcasting-Terrestrial) et un certain nombre d’outils pour l’utiliser comme SDR (Sofware Defined Radio).
mkdir git cd git git clone git://git.osmocom.org/rtl-sdr.git cd rtl-sdr mkdir build cd build cmake .. -DINSTALL_UDEV_RULES=ON sudo make install sudo ldconfig sudo cp ../rtl-sdr.rules /etc/udev/rules.d/
Comme nous ne voulons pas regarder la télévision le pilote DVB-T par défaut doit être supprimé dans la liste noire. Créez le fichier suivant:
/etc/modprobe.d/rtlsdr.conf
Ajoutez lui la ligne suivante :
blacklist dvb_usb_rtl28xxu
Vérifiez si le module est chargé :
lsmod | grep dvb_usb_rtl28xxu
S’il est chargé, supprimez le en exécutant cette commande :
sudo modprobe -r dvb_usb_rtl28xxu
Installer et exécuter Dump1090
Ce logiciel est utilisé pour recevoir et décoder le signa ADS-B. Il permet également de représenter les données que vous aurez collectées sur une page web.
cd ~/git git clone git://github.com/MalcolmRobb/dump1090.git cd dump1090 make ./dump1090 --quiet --net --enable-agc &
Maintenant ouvrez une page web à l’adresse de votre Raspberry Pi sur le port 8080 et vous devriez voir une carte avec les données de tous les avions à portée. Vous pourriez avoir envie de présenter ceci dans votre propre page web :
<!DOCTYPE html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>Flight Radar Kranenburg-Nütterden</title> <meta name="description" content="Flight Radar (ADS-B Receiver) Kranenburg-Nütterden"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="css/main.css"> </head> <body> <h4>Flight Radar (ADS-B Receiver) Kranenburg-Nütterden</h4> <iframe src="http://nitri.ddns.net:8080" name="flight-radar" width="95%" height="90%" align="center" scrolling="no" marginheight="0" marginwidth="0" frameborder="0"></iframe> </body> </html>
Personnaliser Dump1090
Le script config.js se trouve dans le répertoire public_html de Dump1090. Recherchez cette section dans script.js si vous voulez modifier la carte.
// Define the Google Map var mapOptions = { center: new google.maps.LatLng(CenterLat, CenterLon), zoom: ZoomLvl, mapTypeId: google.maps.MapTypeId.TERRAIN, mapTypeControl: true, streetViewControl: false, mapTypeControlOptions: { mapTypeIds: mapTypeIds, position: google.maps.ControlPosition.TOP_LEFT, style: google.maps.MapTypeControlStyle.DROPDOWN_MENU }
A mon avis la carte normale donne de bons résultats mais si vous voulez utiliser la carte OpenStreetMap :
mapTypeId: "OSM"
Personnalisez l’apparence de la couche données dans config.js. L’exemple ci-dessous devrait vous aider :
// -------------------------------------------------------- // // This file is to configure the configurable settings. // Load this file before script.js file at gmap.html. // // -------------------------------------------------------- // -- Output Settings ------------------------------------- // Show metric values Metric = true; // true or false // -- Map settings ---------------------------------------- // The Latitude and Longitude in decimal format CONST_CENTERLAT = 51.785982; CONST_CENTERLON = 6.059338; // The google maps zoom level, 0 - 16, lower is further out CONST_ZOOMLVL = 10; // -- Marker settings ------------------------------------- // The default marker color MarkerColor = "rgb(127, 127, 127)"; SelectedColor = "rgb(225, 225, 225)"; StaleColor = "rgb(190, 190, 190)"; // -- Site Settings --------------------------------------- SiteShow = true; // true or false // The Latitude and Longitude in decimal format SiteLat = 51.785982; SiteLon = 6.059338; SiteCircles = true; // true or false (Only shown if SiteShow is true) // In nautical miles or km (depending settings value 'Metric') SiteCirclesDistances = new Array(40,80);
Partagez vos données avec FlightRadar24
Pour partager vos données avec FlightRadar24, vous devez fournir un flux compatible TCP30003 :
./dump1090 --quiet --net --net-sbs-port 30003 --enable-agc &
Installez le logiciel :
mkdir fr24 cd fr24/ wget https://dl.dropboxusercontent.com/u/66906/fr24feed_arm-rpi_242.tgz tar zxvf fr24feed_arm-rpi_242.tgz
Inscrivez vous pour obtenir une clé :
./fr24feed_arm-rpi_242 --signup
Remplissez le questionnaire. Vous aurez besoin des coordonnées décimales de votre récepteur. Une fois que vous aurez obtenu la clé, vous pouvez partager vos données.
./fr24feed_arm-rpi_242 --fr24key=<key> --bs-ip=127.0.0.1 --bs-port=30003
Lancer le logiciel au démarrage du Raspberry Pi
Plusieurs approches sont possibles. J’ai créé plusieurs scripts pour démarrer le système de réception ADS-B/
/home/pi/start_flight_radar.sh
#!/bin/sh cd /home/pi/git/dump1090/ ./dump1090 --quiet --net --net-sbs-port 30003 --enable-agc& pkill -f fr24feed /home/pi/fr24/fr24feed_arm-rpi_242 --fr24key=<key> --bs-ip=127.0.0.1 --bs-port=30003
/etc/init.d/flightradar
#!/bin/bash # /etc/init.d/flightradar ### BEGIN INIT INFO # Provides: flightradar # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Flight Radar # Description: Flight Radar (ADS-B Receiver) ### END INIT INFO case "$1" in start) echo "Starting flightradar" /home/pi/start_flight_radar.sh & ;; stop) echo "Stopping flightradar" killall dump1090 ;; *) echo "Usage: /etc/init.d/flightradar start|stop" exit 1 ;; esac exit 0
N’oubliez pas de rendre le script exécutable et de configurer update-rc.d
sudo chmod +x /etc/init.d/flightradar sudo update-rc.d flightradar defaults
Conclusion
Désolé si cet article vous a semblé un peu long avant d’arriver à la partie qui vous concerne si vous êtes uniquement RasPinaute… Il m’a semblé intéressant de présenter un peu plus en détails la réception ADS-B qui est réalisable avec des moyens réduits.
Avec un dongle DVB-T à une dizaine d’euros et son antenne de m… très simple, il est déjà possible de recevoir quelques trames lorsque les avions passent au dessus de chez vous… Alors imaginez en installant une antenne un peu plus évoluée 😉
Et un jour où la propagation est favorable, vous aurez peut-être la surprise, comme Erik (le point rouge sur la carte), de découvrir que vous pouvez suivre une multitude d’avions situés à grande distance…
Si le sujet vous intéresse, rejoignez le forum de framboise314 : Un tutoriel de Mmega vous y attend, ainsi qu’une intéressante discussion sur l’ADS-B…
Mes tests de réception au Creusot
C’est du vite fait pour vérifier la faisabilité :
- 1 Raspberry Pi 2
- 1 carte SD 16Go Samsung
- 1 clé DVB-T modèle SPC-0155
- 1 antenne livrée avec la clé USB
C’est pas l’installation rêvée puisque j’ai posé l’antenne sur le rebord de fenêtre (métallique) d’un bâtiment industriel le toit est en plus entouré d’un bardage métallique de 3m de haut…
Le récepteur est quand à lui connecté directement sur le câble d’origine qui fait au moins… 1 mètre de long 😉 ainsi que sur le Raspberry Pi :
L’antenne est la prise en haut à droite de l’image. LE RasPi est connecté au réseau, ce qui m’a permis d’observer sur la carte mes premiers avions (yep !)
J’ai tracé un cercle de 110 Km de rayon autour du Creusot et on voit que même avec des moyens très limités (pour ne pas dire primitifs!) il est possible de recevoir les trames ADS-B d’avions situés à plus de 100Km… Imaginez si l’antenne est une colinéaire placée en haut d’un mât avec un préampli 😉
Personnalisation de l’affichage de Dump1090
Il est possible de personnaliser votre affichage comme indiqué plus haut. Pour ma part, /home/pi/git/dump1090/public_html/config.js est modifié comme suit :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
// -------------------------------------------------------- // // Ce fichier permet de modifier l'affichage sous Dump1090. // Chargez ce fichier avant script.js dans gmap.html. // // -------------------------------------------------------- // -- Valeurs de sortie ------------------------------------- // Affichage métrique : true pour afficher en km Metric = true; // true ou false // -- Configuration de la carte ----------------------------- // Latitude et Longitude en format décimal // Indique le centre de la carte qui sera affichée // J'ai choisi de centrer sur mon antenne ADS-B CONST_CENTERLAT = 46.799107; CONST_CENTERLON = 4.418899; // Niveau de zoom google map de 0 à 16, 0 est le plus éloigné CONST_ZOOMLVL = 5; // -- Paramètres des marqueurs ------------------------------- // Couleur par défaut des marqueurs MarkerColor = "rgb(127, 127, 127)"; SelectedColor = "rgb(225, 225, 225)"; StaleColor = "rgb(190, 190, 190)"; // -- Configuration du site de réception --------------------- // true affiche une cible aux coordonnées indiquées // Pour moi : les coordonnées de l'antenne SiteShow = true; // true ou false // Latitude et Longitude en format décimal SiteLat = 46.799107; SiteLon = 4.418899; // -- Dessin des cercles donnant la distance des avions ------ // Les cercles ne sont affichés que si SiteShaw est sur true SiteCircles = true; // true ou false // In miles nautiques ou en km (selon la valeur de 'Metric') // J'ai choisi d'afficher des cercles à 50km, 100km, 150km et 200km SiteCirclesDistances = new Array(50,100,150,200); |
Le résultat
Un dimanche après midi d’avril à 15 heures… L’antenne est la petite antenne d’origine livrée avec la clé USB/TNT posée sur un appui de fenêtre. Les cercles permettent d’estimer rapidement la distance de l’avion. J’attends avec impatience de pouvoir tester une « vraie » antenne et un préampli 1090MHz qui est en chemin depuis le Japon.
Vous pouvez voir le résultat sur RaspiBlog, un serveur hébergé par … un Raspberry Pi 😉 qui comporte une page dédiée pour l’affichage des avions aux alentours de LE CREUSOT (71)
L’affichage sur la console du Raspberry Pi
Dump1090 possède de nombreuses options accessibles par la commande
./dump1090 --help
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
----------------------------------------------------------------------------- | dump1090 ModeS Receiver Ver : 1.10.3010.14 | ----------------------------------------------------------------------------- --device-index <index> Select RTL device (default: 0) --gain <db> Set gain (default: max gain. Use -10 for auto-gain) --enable-agc Enable the Automatic Gain Control (default: off) --freq <hz> Set frequency (default: 1090 Mhz) --ifile <filename> Read data from file (use '-' for stdin) --interactive Interactive mode refreshing data on screen --interactive-rows <num> Max number of rows in interactive mode (default: 15) --interactive-ttl <sec> Remove from list if idle for <sec> (default: 60) --interactive-rtl1090 Display flight table in RTL1090 format --raw Show only messages hex values --net Enable networking --modeac Enable decoding of SSR Modes 3/A & 3/C --net-beast TCP raw output in Beast binary format --net-only Enable just networking, no RTL device or file used --net-bind-address <ip> IP address to bind to (default: Any; Use 127.0.0.1 for private) --net-http-port <port> HTTP server port (default: 8080) --net-ri-port <port> TCP raw input listen port (default: 30001) --net-ro-port <port> TCP raw output listen port (default: 30002) --net-sbs-port <port> TCP BaseStation output listen port (default: 30003) --net-bi-port <port> TCP Beast input listen port (default: 30004) --net-bo-port <port> TCP Beast output listen port (default: 30005) --net-ro-size <size> TCP raw output minimum size (default: 0) --net-ro-rate <rate> TCP raw output memory flush rate (default: 0) --net-heartbeat <rate> TCP heartbeat rate in seconds (default: 60 sec; 0 to disable) --net-buffer <n> TCP buffer size 64Kb * (2^n) (default: n=0, 64Kb) --lat <latitude> Reference/receiver latitude for surface posn (opt) --lon <longitude> Reference/receiver longitude for surface posn (opt) --fix Enable single-bits error correction using CRC --no-fix Disable single-bits error correction using CRC --no-crc-check Disable messages with broken CRC (discouraged) --phase-enhance Enable phase enhancement --aggressive More CPU for more messages (two bits fixes, ...) --mlat display raw messages in Beast ascii mode --stats With --ifile print stats at exit. No other output --stats-every <seconds> Show and reset stats every <seconds> seconds --onlyaddr Show only ICAO addresses (testing purposes) --metric Use metric units (meters, km/h, ...) --snip <level> Strip IQ file removing samples < level --debug <flags> Debug mode (verbose), see README for details --quiet Disable output to stdout. Use for daemon applications --ppm <error> Set receiver error in parts per million (default 0) --help Show this help Debug mode flags: d = Log frames decoded with errors D = Log frames decoded with zero errors c = Log frames with bad CRC C = Log frames with good CRC p = Log frames with bad preamble n = Log network debugging info j = Log frames to frames.js, loadable by debug.html |
Si vous souhaitez afficher un tableau plus lisible que le défilé rapide des messages envoyé par dump1090 vers la console du Raspberry Pi, ajoutez – – interactive à la ligne de commande, vous pourrez lire ce tableau, identique à celui qui apparait sur la page web :
Sources
- http://blogwifi.fr/?p=13353
- http://blogwifi.fr/?p=13343
- http://pygmalion.nitri.de/flight-radar-with-raspberry-pi-and-an-sdr-dongle-637.html
- http://www.flightradar24.com
- http://antirez.com/news/46
- http://www.capital.fr/bourse/actualites/flightradar24-ce-site-stupefiant-que-le-grand-public-a-decouvert-avec-le-crash-de-l-a320-1026205
- http://www.balarad.net/
- http://f5ann.pagesperso-orange.fr/
- http://www.rtl-sdr.com/homemade-ads-b-filter/
- http://forum.flightradar24.com/archive/index.php/t-3831.html
- http://antirez.com/news/46
- http://forums.framboise314.fr/viewtopic.php?f=36&t=65&p=6619#p1844
Bonjour,
Très bon article.
Juste pour vous signaler que FlightRadar24 reprend aussi les données de RadarVirtuel http://www.radarvirtuel.com/ . Des liens comme celui-ci (http://www.radarvirtuel.com/LFRR/) permet de zoomer sur une région. Un groupe de discussion est dispo sur Facebook : https://www.facebook.com/groups/216443117131/
Bon décodage ! 😉
Un Raspi en altitude genre le pic du midi ça devrait bien donner 😉
c’est sur !
reste à trouver le sponsor 😉
Je ne suis pas sur que les points hauts soient si intéressants que ça… Il y a déjà une foule d’occupants : antenne radio/radar de l’ATC, des militaires, etc. La multiplication des sites semble être la meilleure option au final.
http://www.radarvirtuel.com/LFBO/
menu – recepteur – LFBO-PIC
Merci de partager le savoir. Bonne traduction !
merci Serge ! 😉
http://pygmalion.nitri.de
Très bon article très détaillé pour ceux qui voudraient mettre en place cette solution !
Je l’ai moi même déjà mise en place depuis plusieurs mois, il ne me manque plus qu’une seule chose : avoir plus d’informations sur une page web local (départ, arrivée, photos de l’avion etc). Si quelqu’un a une solution je suis preneur !
merci Antoine
Pour la page web vous devriez poser la question sur le forum…
Cordialement
François
La solution en mode locale s’appelle Virtualradarserver
http://www.virtualradarserver.co.uk/
Bonne soirée
Laurent
Antoine,
Si tu veux plus d’infos sur les avions que tu captes, il te faut installer PlanePlotter; ce logiciel, qui coûte une trentaine d’€* , récupère les données de RTL1090 installé sur PC (!!!), les affiche sur une carte, et te permet d’avoir des renseignements supplémentaires, Aéroports de départ et d’arrivée, photo de l’appareil si elle se trouve dans la base de données de PP, ou photo cherchée sur le net.
Il y a aussi Virtual Radar qui fait serveur, et te permet de voir ta réception sur ton ordinateur (aussi sur un Rpi) ou à distance, avec un navigateur.
* une fois pour toutes pour plusieurs ordinateurs
Roland
Fondateur de la liste « PlanePlotter-ModeS »
Merci Roland, mais ces solutions ne me conviennent pas, je recherche une solution qui tourne entièrement sur Raspberry PI. On en parle sur le forum si tu veux : http://forums.framboise314.fr/viewtopic.php?f=36&t=65&p=6619#p6619
Moi qui chercher quoi mettre en lieu et place de mon antenne satellite, je suis gâté !
bon, mais il y a moins de chaînes, quand même… 😉
Bonsoir à tous.
Tout d’abord, un grand merci à François pour ce site qui est pour moi une Bible de la Framboise ( ou un Coran, une Thora, ce que vous voulez).
Pour en revenir au sujet, j’ai mis en place deux stations a base de RPi qui alimentent FR24, Virtual Radar, PlanePlotter, FlightAware (avec plus ou moins de réussite sur certains sites.. mais ça vient de moi).
Le matériel est basé sur des dongle RTL820 et des antennes colinéaires 8 éléments comme celles décrites dans le tuto (merci à François F5ANN)
Concernant l’antenne, un petit mieux à prévoir est de la mettre dans une tube fibre de verre (ça se trouve dans les boutiques de cerf-volant), le PVC assourdit considérablement la réception.
Pour Antoine et une page web local, le mieux est de passer par VirtualRadarServer
http://www.virtualradarserver.co.uk/Download.aspx
Après, il faut se créer une base du type basestation.sqb, un dossier des flags, des images d’avions etc… mais tout ça peut se discuter ailleurs je pense pour ne pas encombrer le forum.
Merci à tous pour vos conseils et contributions.
73’s
Cordialement
Bernard
J’ai effectivement testé VirtualRadarServer mais cela ne me convient pas, on en parle sur sur le forum, si tu as d’autres suggestions nous sommes preneurs 😀 (brandt71)
http://forums.framboise314.fr/viewtopic.php?f=36&t=65&p=6619#p6616
Ping : Blog WiFi / Wimax / 3G / 4G / Vidéo sans fil – Antenne ADB-S maison ou pro ? comparons…
Bon résumé de l’usage d’une raspberrypi avec Dump1090
Si vous souhaitez compléter certaines zones en France sur des cartes dédiées de votre secteur contacté moi laurent@radarvirtuel.com
exemple sur le secteur de La Rochelle http://www.radarvirtuel.com/LFBH/
Bonne soirée
Ping : Poursuite radar : ADS-B & Pi (MAJ Avril 2015)Chakram Airlines
Salut à tous
Très intéressant tout cela mais peut on se servir d’un raspberry pour recevoir la TNT (dvb t).
Si quelqu’un sait merci de m’éclaircir la lanterne
Amitié à tous
Didier
Bonjour Didier
je pense que cette question obtiendrait des réponses sur le forum… 😉
cordialement
François
bonjour, bel article.
Il existe la même chose pour les planeur. Les planeur utilisent un système anti-collision FLARM qui communique aux autres appareils à proximité sa position GPS sur 868Mhz. Récement un reseau de récepteur au sol a été déployé par des bénévole pour écouter les messages envoyés par le FLARM pour les reporter sur un système de suivi. Les position son d’ailleur transmisent à FR24 qui les affiche aussi.
Le tout fonctionnant bien sur grâce à des RPi.
Le site du projet: http://www.glidernet.org
le site de tracking: http://www.live.glidernet.org
le site de couverture du système: http://www.ognrange.onglide.com
notez que la puissance d’émission est limitée à 10mW et que les planeurs ne volent pas aussi haut que la avions de ligne donc la porté est bien moindre qu’en ADS-B, 3à à 60km max.
Romaric
Bonjour, bon article expliquant bien les bases du système et l’utilisation de Dump1090.
Il est cependant dommage que ne soit mentionnés ni le site de Flightstats, ni celui de FlightAware.
Surtout qu’ils apparaissent en haut de la fenêtre de l’interface web quand on clique sur un avion de la liste (ils sont juste à coté de FR24). FlightAware est particulièrement intéressant car ce site web regroupe de nombreuse sources de données et pas seulement les positions ADS-B.
Pour les possesseurs de RaspberryPI, il existe en plus, une solution tout en un avec leur logiciel PiAware qui s’installe à coté de Dump1090. Celui-ci récupère les données traduites par Dump1090 et les envoi de manière sécurisé vers leur serveur (où vous aurez un compte perso). Sur le web, on a alors accès a des statistiques perso, des données sur l’avion, l’historique des vols, les plans de vols, etc… Bref un truc vraiment complet.
Il y a juste a installer Dump1090 et PiAware sur le Raspberry, et c’est tout !
Cela fonctionne très bien. Si en plus les données sont transmises sur le site http://www.flightradar24.com, l’accès premium au site est gratuit. Ce qui permet d’avoir plus d’information et d’avoir l’appli gratuite sur Android.
Merci pour ce tutorial vraiment complet, testé et approuvé !!!!
merci 😉
Excellentes instructions, ca a marche du 1er coup, grand merci!
Ping : J’ai testé pour vous : Un boîtier de Raspberry Pi 2 chez Selectronic | Framboise 314, le Raspberry Pi à la sauce française….
Ping : Arduino et Raspberry Pi dans Hackable Magazine | Framboise 314, le Raspberry Pi à la sauce française….
Bonsoir,
En lisant ces lignes j’avoue être anthousiasmé par la qualité des présentations qui y sont faites. Je viens d’acquerir un Pi, que j’ai acheté dans le but de l’utiliser comme serveur pour écouter les avions près de chez moi. Seulement voilà, je ne suis pas un expert en informatique et malgré une première séance de reglage prometteuse je ne sais pas comment faire pour installer les différents programmes nécessaires à la réception avec DSR#. Je viens de lire l’article pour la réception de l’ADS-B. Le d’ongle étant le même, je me dis que l’installe doit être presque identique. Mais je ne suis pas certain. Pourriez vous m’aider à finaliser ce projet, peut être une présentation sur ce sujet.
Cordialement
Bonjour
si je comprends bien, vous souhaitez réaliser un récepteur pour recevoir les conversations entre les avions et le sol ?
c’est différent de ce projet qui reçoit des infos numériques.
Mais ça doit pouvoir se faire également…
je n’ai pas de projet en ce sens en ce moment et pas trop le temps de me lancer dessus
regardez du côté de http://www.adafruit.com/products/1497 qui présente un scanner… et il doit y avoir d’autres ressources sur le web : http://florentsegouin.me/articles/utiliser-sa-raspberry-comme-recepteur-radio/ 😉
cordialement
François
Ping : Ecoutez la radio avec votre Raspberry Pi | Framboise 314, le Raspberry Pi à la sauce française….
bonjour j’utilise depuis 4 mois, un raspi + dump 1090 + piaware (ce qui me permet d’envoyer les info vers flightaware, mais je cherche à rajouter flaightradar 24 dessus mais impossible
auriez vous une image pour la carte SD
d’avance merci
Bonjour, je me permet de vous répondre car je viens de plancher ce matin pour faire fonctionner mon installation pour fournir en données ces deux sites.
Voici donc comment j’ai procédé: 1) installation de rasbian (jessie) depuis l’image officielle. 2) installation des « pilotes » RTL-SDR depuis les sources. 3) installation du package de FlightAware. 4) installation du package FlightRadar24 « par dessus », là il détecte qu’il y a déjà une instance de dump1090, répondre yes et miracle, le PI envoye les données (avec MLAT) aux deux sites.
Bonne chance, n’hésitez pas à prendre des note durant l’installation pour éventuellement recommencer.
Salutations
pour ma part j’ai suivi le tutorial dispo ici :
https://www.dropbox.com/s/ycpbyh1eqzz6fw9/fr24pppi.odt?dl=0
Ping : Rasberry - teoteam | Pearltrees
Ping : Réalisez un analyseur de spectre avec le Raspberry Pi 2 | Framboise 314, le Raspberry Pi à la sauce française….
Bonjour,
Nous sommes une association de lutte contre les nuisances aériennes. notre zone, Aix-les-Milles est peu couverte par Flightradat24. En pratique comment participer à la couverture Flightradar24 avec ADS-B ?
Merci
Bonjour
jetez déjà un coup d’œil ici
https://www.framboise314.fr/un-raspberry-pi-pour-suivre-les-avions-sur-flightradar24-2/
si vous avez des questions j y répondrai avec plaisir
cordialement
François
Ping : Réalisez un analyseur de spectre avec le Raspberry Pi 2 – Radioamateur France
Bonjour,
bravo pour ce tuto très accessible 🙂
La visualisation sur la carte GoogleMap ne marche plus car (cf debugger Javascript à l’affichage de la carte ds le navigateur): il faut maintenant fournir une clé (paramètre « key=… ») à placer en ligne 8 du fichier dump1090\public_html\gmap.html:
(…)maps.googleapis.com/maps/api/js?sensor=false&libraries=geometry&key=VOTRE_CLE »
La clé doit être générée avec un compte développeur Google, puis activée (toujours depuis le compte dev) au service Jvascript GoogleMaps.
Infos ici: https://developers.google.com/maps/documentation/javascript/error-messages#missing-key-map-error
Bon courage.
Laurent.
merci pour l’info Laurent 🙂
Bonjour,
super tuto, très accessible pour un débutant sur linux comme moi.
J’ai suivi ce tuto à la lettre, sur une vielle machine en attendant mon raspberry, ça marche pour la partie dump1090 !
Un seul soucis lors de le compilation de dump1090, il me manquait pkg-config.
Je n’ai par contre pas eu le problème énoncé par Laurent pour la visualisation sur la map google, ça a marché tout de suite.
Un grand merci pour ce tuto !
Merci Brice
un retour comme celui-ci fait plaisir 🙂
cordialement
François
Bonjours a tous
Je suis a la recherche de personnes qui serait intéressées pas l’envoie de leurs datas vers http://www.radarvirtuel.com afin d’agrandir et de combler les blanc de la carte.
Bon amusement en ADSB
Bonjour
je viens d’aller sur la page radarvirtuel.com et il n’y a que la carte… aucun avion 🙁
normal ?
cordialement
François
Bonjour à tous,
Bonjour François pour cet article et aussi pour votre livre permettant au débutant de commencer à explorer le monde du Raspberry…
Je n’arrive pas à avoir accès à la carte myip:8080. Mais j’ai bien des infos du style :
« ModeS: 4407CC Callsign: N/A
Lat: N/A
Long: N/A
Alt: 23800ft
SQW: 1037 »
Par où chercher? Merci pour vos conseils.
Bonjour
merci pour ce retour 🙂
j’ai trouvé ça https://forum.flightradar24.com/threads/9563-Lat-Lon-showing-as-N-A
mais pas sur que ça ait un rapport avec votre problème
je n’ai pas eu de souci pour accéder aux cartes sur mes diverses installations
si LAT et Long ne sont pas valables, les avions ne peuvent pas s’afficher sur la carte (pas de coordonnées valables)
quand vous dites je n’arrive pas à avoir accès à la carte : dans quelles conditions ? sur un PC avec Chrome par exemple, entrez l’adresse IP du raspi suivie de :8080 => qu’est ce qui apparait ? quel message ?
Eventuellement il y a un article plus récent avec PiAware
https://www.framboise314.fr/suivre-les-avions-avec-piaware-et-votre-raspberry-pi/
tenez moi au courant
cordialement
François
Bonsoir François,
Merci pour la réactivité de la réponse.
Sur un PC (sous Ubuntu), sur Chrome avec adresse IP de Raspberry :8080, j’ai le message suivant :
« Ce site est inaccessible
xxx.xxx.xxx.xxx n’autorise pas la connexion. »
Sur le même IP mais port 8754, j’ai accès à cela:
« Flightradar24 Feeder/Decoder
Linux/generic/armv7l/1.0.18-7
Updated: 19:50:05 GMT+0200 (CEST)
FR24 Link: Disconnected ()
FR24 Radar Code: T-LFQQ30
Aircraft Tracked (ModeS & ADS-B): 4
Aircraft Uploaded: N/A
Receiver: dvbt, Connected
MLAT running: N/A »
avec un ssh sur le raspberry : # service fr24feed status
● fr24feed.service – LSB: Flightradar24 Decoder & Feeder
Loaded: loaded (/etc/init.d/fr24feed)
Active: active (running) since jeu. 2017-04-20 23:48:46 CEST; 19h ago
Process: 3817 ExecStop=/etc/init.d/fr24feed stop (code=exited, status=0/SUCCESS)
Process: 3990 ExecStart=/etc/init.d/fr24feed start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/fr24feed.service
├─4006 /usr/bin/fr24feed — –monitor-file=/dev/shm/fr24feed.txt -…
└─5116 /usr/lib/fr24/dump1090 –raw
Merci pour votre aide et lumière 🙂
Bonjour Jules
l’hypothèse la plus probable est que cet article date de 2015 et est réalisé sous Wheezy
avec Jessie il est fort possible que les commandes ne fonctionnent plus (on est passé sous systemd)
je n’ai pas le temps de tester actuellement mais explorez cette voie
j’y reviendrai quand je serai un peu plus dispo avec un nouvel article
cordialement
François
En réalité, un des ports de la box bloqué le contact vers internet.
Donc sans firewall… ca passe nickel!
Bonsoir, merci pour cette intéressante présentation.
Je voudrais signaler un fork de dump1090 que j’utilise avec succès.
https://www.rtl-sdr.com/a-modified-dump1090-with-ads-b-heatmap-and-range-alititude-view/
Celui-ci permet de créer une heatmap des avions captés par la station de réception.
Seul souci, il semble qu’il n’ait pas été mise à jour après le changement des règles d’utilisation google maps. Quelqu’un saurait comment utiliser OpenStreetMap avec cette version ?
Cordialement.
Bonjour, cet article est très intéressant cependant je me demande s’il est possible de raccorder cela avec les systèmes AIS liés à la VHF marine, qui sont l’équivalent de l’ADS-B mais pour les bateaux..
Je ne comprends pas très bien le rôle de la clé USB récepteur TNT SPC-0155, est-il uniquement présent pour faire le lien entre analogique et numérique ?
Merci d’avance pour votre réponse
Bonjour Flavien
oui on peut recevoir l’AIS avec un Raspberry Pi
il faut une carte adaptée aux fréquences VHF de l’AIS
https://www.tindie.com/products/astuder/daisy-hat-ais-receiver-for-raspberry-pi/
par exemple
la clé TNT est le récepteur car les avions émettent sur 1090MHz et la clé recoit les burst numériques qu’elle numérise avant de les envoyer au Raspberry Pi. Un logiciel décode les infos et les affiche
cordialement
François
Merci de la qualité et de la rapidité de votre réponse ! Pensez-vous qu’il est possible de réaliser cette carte avec un RaspberryPi classique ? Même s’il y a pas mal de norme et qu’il y a une certaine modulation des signaux envoyés.
Le raspberry pi seul pourra juste décoder et afficher les signaux
il faut dans les 2 cas AIS et ADS-B un récepteur pour recevoir les ondes et les convertir en données compréhensibles par un programme…
Dans les 2 cas : une carte ou un dongle TNT + un Raspberry Pi
D’accord très bien merci !
Cordialement,
Flavien
Bonjour, merci pour toutes les infos. Pour rassurer ma femme : pouvez vous me confirmer que le récepteur ADS-B n’émet pas d’ondes nocives ? Je souhaite en installer un…..
Merci.
Bonjour,
Merci pour toutes les infos. Pour rassurer ma femme, pouvez vous me confirmer qu’un récepteur ADS-B n’émet pas d’ondes nocives ?
Merci.
Bonjour Michael
désolé pour le délai, mais les premiers commentaires sont toujours validés manuellement
et en période de fêtes je ne suis pas en permanence sur le PC 🙂
Alors pour le SDR c’est un récepteur ! ça veut dire qu’il reçoit les ondes émises par les avions mais lui n’émet rien
c’est un simple poste de radio comme celui de la voiture
aucun danger de ce côté !!
bonne année à vous et à votre épouse
cordialement
François
Merci infiniment pour votre réponse. J’avais besoin d’une tierce personne pour le confirmer. Excellente année à vous !
J’avais une antenne « bouchon » dans le garage : je portait à 20nm environ, et encore, seulement les avions en haute altitude.
Là j’ai profité d’un peu de temps pour bricoler une antenne colinéaire : 8 modules de 11cm, que j’ai mise sur le toit (je dois être à 5m de hauteur environ).
Résultat, vers le Nord c’est Clermont-Ferrand, vers le sud c’est des avions qui sont en Espagne et qui n’ont pas encore traversé les Pyrénées, donc à peu près 10x plus loin.
Bonjour,
J’avais déja en tête de le faire depuis un moment … clé SDR acheté mi 2019, la période actuelle m’a donnée un peu de temps.
– avec dump1090 sur le git://github.com/MalcolmRobb/dump1090.git .. l’interface web n’est plus :
au démarrage le message est clair :
git://github.com/MalcolmRobb/dump1090.git
– j’ai essayé VirtualRadar avec mono, mais bof bof
– la solution a été flightware (cf la page https://flightaware.com/adsb/piaware/install ) , c’est très bien, cela marche du premier coup. le résultat est impressionnant même si le nombre d’avions en vol est drastiquement faible.
– Matériel utilisé : un raspberry pi 4 + la clé Clé USB RTL-SDR avec R820T2 + l’antenne (https://www.passion-radio.com/sdr-antennas/mcx-telescopic-325.html)
effectivement un raspberry de génération n-1 pourrait être utilisé.
Phil
merci Phil
bonne réception 🙂
Ping : Un Raspberry Pi pour suivre les avions sur FlightRadar24 – Passion SWL