Vous êtes sur la page 1sur 7
oo INITIATION A LA RADIO LOGICIELLE : RECEPTION DES EMISSIONS ADS-B DES VOLS COMMERCIAUX En tant qu'informaticien, bidouilleur, administrateur ou encore développeur, la communication et la maitrise des technologies associées représentent une grande part de votre temps. Je ne parle, bien entendu, pas nécessairement de communication avec d'autres étres vivants mais plutot de celle entre et avec des systémes informatisés, des PC généralement. Mais avez-vous déja pensé communiquer avec des systémes d'un tout autre genre, comme par exemple, ceux embarqués dans les aéronefs, utilisant des ondes électromagnétiques ? f] ExPERIMENTATIONS [] par Dents Boor a Rassurez-vous cela est bien moins cotiteux et complexe qu'il n’y parait. désigne un ensemble récepteur et/ouémettour prin ipalement composé d éléments logiciels. La radio. communication ou téiécommunication au moyen d'ondes dlectromagnétiques nest pas une invention récente, bien au contraire. De nos jours énormément de systémes communi: {quent par ce bias, la “radio” bien entendu, mais également Ia télévision, la téléphonie mobile, les télécommandes “a fré- quence’, les systémes en orbite, les bateaux et méme votre passeport ou votre carte bancaire (NFC). Notez au passage ‘que histoire a reconnu pendant un tempsla paternité de la radio" & un certain Guglielmo Marconi avec moultes éloges. avant de corriger son erreur et attribuer enfin, a juste ttre, ‘ces honneurs & monsieur Nikola Tesla, veritable inventeur ‘du systéme de communication et de la transmission déner- ‘pie sans fil. Malhoureusement, dans esprit de la plupart des gens, le nom de Marconi reste encore aujourd'hui atta- ché 4 Finvention et non la simple promotion commerciale de “la radio’ L: SDR (Software Defined Radio) ou ratio logiciele, Quoi quill en soit, la communication par ondes électro: _magnétiques est un vaste domaine oit bien des disciplines entrent en jeu. Avec un systeme radio classique, 'émission et la réception de signaux sont assurées intégralement par des composants matgriels dédiés & cet usage. Un excellent ‘exemple peut étre celui du simple récepteur radio FM que Ton trouve sous diverses formes. Le principal probléme qui se pose avec ces matéries side dans leur manque do polyva lence. Un récepteur radio FM ne saurait, sans modifications importantes, étre adapté a la réception de signaux satellites ude communication routiere de type CB (Citizen Band. Voila précisément ce que corrige la SDR, déléguant la ma. Jorité du traitement a une partie logicielle quill est possible de plus faclement modifier et adapter. Industriellement et bien au dela des expeérimentations qui nous intéressent ici la SDR permet de personnaliser les systémes facilement en fonction des besoins, On la retrouve, par exemple dans les, BTS (base station) des réseaux GSM, UMTS, etc... Cependant la partie intéressante pour l'utilisateur curleux réside sur tout dans lexploration du domaine de la radiocommunica tion rendu possible par ladaptabilité de la SDR. ‘Une SDR rest, bien entenda, pas ntégralement logicelle puisquil est nécessaire de disposer d'un outil de récey {un tuner) et un moyen de convert le signal analogique en données manipulables par un circuit dédié (ASIO, un composant programmable (FPGA) ou tout simplement. un ordinateur. Jusqu'a récemment le matériel en question état relativement onéreux mais est arrivé le FUNcube Dongle {FCD pour les intimes). Il sagit d'un matériel permettant Ja récoption sur des fréquences entre 64 MH et 1,7 GH, naeenise ADS BUsvabommerian I) RADIO _— se connectant & un port USB et étant une composante du projet FUNcube satelite. Jouer avec cette bestioe vous en coatera quelques 140 euros ce qui est généralement au dela des budgets d'un “explorateur’ défrichant un nouveau terrain de jeu. a Découvrir la SDR pour 20 euros existe cependant une solution plus économique, En ef fet, cest en février dernier que le développeur noyau Antt! Palosaari a fait une découverte interessante en travaillant avec un adaptateur DVB (récepteur TNT) : le matériel en question semblait tout simplement envoyer les données is sues du convertisseur analogique/numérique (ADC) direc: tement & Tordinateur sans autre forme de traitement. En dautres termes, il numérisalt les informations recues et retournait tout cela au PC laissant a un programme Windows le soin de décoder image et son. Le message initial sur la liste de diffusion se terminait par “I smell very cheap poor man’s software radio here }". Btc’était exactement le cas | Lerécepteur DVB-T en question reposait surla puce Realick RTL2832U fournissant des échantillons 8 bits avec un débit pouvant atteindre théoriquement 3,2 M/s (2,8 M/S en pra: tique) et ce avec une plage de fréquences identiques a celle du FUNeube dongle. Il savéra rapidement que plusieurs mo. doles utlisatent cette puce Realtek et que les périphériques les plus intéressants en termes de plage de fréquences utili- alent un tuner Elonics E4000, Pati les constructeurs on trouve ainsi Terratec, Dexatek ou encore Compro avec une variété de modeles dont les prix talent entre 20 et 40 eu- ros. Le modele utilisé pour les expériences de cet article est vendu par le site DealExtreme sous le nom “EZCAP Hybrid ATSC Digital + QAM USB 2.0 HDTW/TY'Tuner/Receiver" ven du $28 et utilisant le tuner E4000, Précisons au passage que ce genr riapporte aucune garantie en terme de constance dans la fabrication. I! est ainsi parfaitement possible que le produit vvendu sous les mémes désignations et références soit finale- ment d'une fabrication différente et rintegre pas les memes composants. Cst la magie/loterie chinoi de matériel, disons-le clairement, bas de gamme, Tout aspect logiciel/pilote pour ces adaptateurs USB est actuellement maintenue par l'équipe du projet OsmoSDR. Lobjectif de ce projet est de fournir une solution économique entiérement open source (logiciel et matériel) sous la forme Dune carte & base de SoC Atmel Samu, d'un tuner E4000 et d'un FPGA, an firmware spécifique ainsi que le code pour le FPGA, ds pilotes pour les principaux OS, ct un support du materiel pour GNU radio, Cette carte est actuellement en vente en version déve loppeur uniquement (preview edition) au prix de 180 euros. dans a boutique en ligne du projet (shop sysmocom.de). Cest, {galemont la quion peut trouver un adaptateur RTL2832U/ F4000, le Newsky TV28T, pour moins de 20 euros en ver- sion bulk (pas de manuel, de télécommande, de cable, de CD, dantenne, etc). Un premier pas simple pour découvrir la SDR Comme Yont magnifiquement illustré Jean-Michel Friedt et Gwenhaél Goavec- Mérou dans un article parut dans GNU/Linux Magazine 153, une utlisation possible sans doute la plus fréquente} de ces adaptateurs DVB-T va de paire avec. Te logiclel GNU Radio, fleuron du logiciel libre dans le domaine de la SDR, 11 est ainsi possible, de manigre entierement log) cielle de gérer, manipuler et décoder toutes sortesde signaux, {que le périphérique est en mesure de recevoir. Cependant, le domaine du traitement de signal et tout aussi vaste que complexe. Il peut ainsi étre relativement difficile pour un debutant 'obtenir un résultatsatisfaisant et surtout immé- dlat avec ce type de logiciel, Selon les caractéristiques de 'adaptateur et donc la plage de fréquences, Il est possible dobenir toutes sortes de ré sultats, Sila méthode générique pour débuter consiste ge néralement en la réception de la radio FM (bande 87.5 & 108 MHz) etent"écoute des émissions comme vous pourriez le faire avec un simple poste redio, nous allons iei adopter tune démarche a la fois plus simple et plus exotique. En effet, plutdt que dtiliser GNU Radio et la bende FM, nous allons mettre en ceavre un logiciel dédie a la réception ADS-B. LADS-B pour Automatic Dependent Surveillance: Broadcast est un systeme coopératif de surveillance du trafic aérien. Ce systeme équipe une vaste majorité des a¢ ronefs utilisés pour les vols commerciaux et est largement ‘utilisé en Europe. Il existe trois liaisons ADS-B: VDL. (VHF Data Link Mode 4, UAT (Universal Access Transponder) et 1OQDES (1090 MHz Extencied Squitten). Cest certe dern {que nous utiliserons pour diverses raisons Les transpondeurs installés dans les avions utilisent la fréquence de 1090 Mhz qui est accessible a la grande majorité des récepteurs DVB, TADS-B est non chiffré, importe qui disposant dun récepteur peut obtenir les informations émises par un aéronef, et surtout, existe une application simple & installer, ne nécessitant pas de connaissances particuliéres (autres quinformatique) permettant de décoder les informa: tions LOSES. Mais quatlons-nous recevoir exactement ? [ADS-B est né «un besoin croissant d'informations en termes de précision de positionnement des avions. En effet, le positionnement GPS (ou Galileo) permettant aux avions de connaitre leur position en temps réel est plus efficace que le positionnement radar effectué par le contr6le au sol, Les avions connalssent ainsi leur position de facon plus précise qulun radar au sol ne pourrait Testimer. ADS-B fonetionne en mode diffusion (broadcast) et Naéronef envoi régullérement, et de manidre omnidirectionnelle, sa position (longitude, latitude, altitude) ainsi que d'autres informations (numéra de vol, vitesse, cap. ete), Ce sont I toutes les informations & notre disposition que nous allons tenter de recevols, décoder et alficher de maniére aisément interprétable. Installation logicielle La prise en charge de Vadaptateur DVB RTL.2832U/ 4000 sous GNU/Linux, se fai directement dans espace uatiisateur van iBUSB vest donc pas cessaire dinstl Jerun plot sous la forme dun module neyau. En revanche, afin de facie fa mise en eave, il et important, avant toutes choses, de configurercorrectement les permlsso sure périphérique. Aprés connexion umaté visible va la commande Notre récepteur apparait ici sous Notez que sa désignation est fausse (comme cest généralement le cas avec tous les modeles), En effet, Realtek n'a jamais fabriqué de composant appelé RTL2838. La vrate désignation de cette puce est RTI2832U, Afin dautoriser certains utilisateurs & accéder directement au périphérique, et ainsi éviter lusage répété de sudo pour des exécutions en tant que super-ut lisateur, nous devons ajouter une régle Udev (généralement dans un fichier ayant une extension s placé dans ofa d/) Cette simple lig de lire et écrire & souhait sur le périphérique. Bien ‘entendu, vous pouvea adapter cette ligne en fonction de vos. besoins, de la distribution utilisé et des identifiants (Ven: dorlD/ProductID) de votre matériel permettra aux utilisateurs du groupe La seconde étape consistera a récupéres, compiler et ins taller rtl-sde, le support logiciel permettant dobtenir des EXPERIMENTATIONS données depuis le récepteur DVB-T. Un certain nombre de modes de périphériques est pris en charge (environ une vingtaine), identifié par leurs numéros USB vendeur/produit, Notez au passage que le nombre de périphériques effective. ment supportés est bien plus important, le circuit électro- nique pouvant @ire package sous blen des désignations et marques. Ces périphériques reposent sur le composant Realtek RTL2832U couplé a un tuner (Elonies F400, Rafael Micro R820T, Fitipawer FOOLS, Fitipower FCOOI2 ou FCI FC2580). Ril-sdr lukméme pred en charge le pllotage a la fois du composant Realtek et du tuner. On préférera un récepteur DVB-T équipé d'un tuner Elonics E4000 offrant la plus vaste gamme de fréquences :de'52 Mhz’ ~2200 MHz (avec quelques “trou’), Rise se compose de deux éléments Une bibliothiéque comprenant la majorité du code per mettant de traiter les données, et un ensemble diutiitaires de tests, d'évaluation et/ou destinés & faciliter la mise en ceuvre. La récupération du code source de rtl-sdr se fera via Git cn utilisant la commande ‘Vous devez obtenir ainsi un répertoire ir dans em- placement courant et pourrez alors vous y placer pour créer, Varborescence de construction avec Contrairement a la majorite des sources opensource Yon trouve, rtl-sdr n'utilise pas les AutoTools mais Cmake. 1 vous faucra done installer cet outil de configuration/construc lon sur votre distribution avant toutes choses, Vous pour rezalors utiliser ja Notez l'utilisation de Yoption -DCNAKE_INSTA permettant de désigner Jusr comme cibled'installationenliewet place du par défaut Attention, le fait de procéder ainsi facilite grandement les choses mats le systeme de gestion de paquetsde votre distri bution ne sera pas informé de installation puisque celle-ci est faite en dehors de son contréle, Ce n'est pas un point eri | tique mais tachez de garder ceci a lesprit | plus tard, vous rencontrez des problémes découlant d'un éventuel confit Compilez puis installer bibliothéques et binaire avec Comme l'indique cette sorte, tous les éléments logiciels sontlistés,ce qui vous permettra den garder une trace pour une éventuelle désinstallation. Vous pouvez également vous plier d'un sud pour tout supprimer dun coup. On remarque également qulun certain nombre doutils sont installés, parmi lesquels que nous pouvons utiliser dans la foulée pour tester la prise en charge effec | tive de Fadaprateur lion des emissions ADS-B des vols commerclaux Cetestconsiste. parcourir une vaste plage de fréquences afin de vérifier que le périphérique est ert mesure de se “caler sur chacune d'elles. Ic, le tuner £4000 est parfaitement dé tecté et la plage Savére aller de 52 Mhz a 2209 Mhz avec un trou de 1106 Mbz.a 1243 Mhz. Bien entendu, une antenne adaptée seranécessaire pour recevolr au mieux d’éventuelles ‘émissions. En effet, ce niest pas parce que le tuner peut se verrouiller sur une certaine fréquence que le reste du maté riel fantenne interne ou externe) est adapté a la réception. Unautre test simple peut étre effectué avec permet tant de décoder la radio FM. Il suffit alors de passer une fré- quence avec -f (ci 88, e6 signifiant 88°10°6, soit 82000000 et donc 88 Mhz), -W pour la démodulation WEEM (Wide Band FM), -s pour le taux échantillonnage du signal icl 200k/) et +r pour échantillonnage en sortir (48 Klvz, pour Taudio) En Fabsence de niom de fichier, les données démodulées/dé- ccodées sont envoyées sur la sortie standard (STDOUT) et an utilisera le pipe pour rediriger cette derniére vers entrée standard (STDIN) d'un lecteur audio comme aplay (lecteur livre avec les outils ALSA). Ce qui nous clone Normalement, en fonction de la fréquence choisie vous devez alors obtenir une diffusion du son via lesystéme audio de votre ordinateur, démontrant de maniére évidente le bon, fonctionnement de Yensemble. oo Un autre outll intéressant compilé et Installé en méme temps que rtl_fmest rtl_tep permettant destreamer les données 1Q obtenu du récepteur au travers d'un réseau. Il est possible avec cet outil de placer une machine équipé du récepteur DVB-T a un endroit du réseau pour faire transt ter les données vers une autre machine faisant fonctionner rrtl_tep en réception. Si, comme moi, vous vous trouvez en rez-de-chaussé, ceci peut savérer d'une grande utili installant le dispositif de réception sur le toit via un réseau Ethernet ou Wifi (non test, je laime pas le Wii. =a Mise en marche et premiers essais Entendre la radio FM est une chose mals ce niest pas tres exotique en dehors du fit que tout le travail de démodula tion est entiérement acheve parle processeur de votre ma chine, Levons donc les yeux vers cle et tachons dobtentr quelque chose de plus iméressant Pour ce faire nous allons utiliser dump1090, un logiciel developpé par Salvatore San: filippo (alias Antire2), reposant sur les bibliotheques four: nies par rt-sdr Si vous étes d'un naturel curienx, vous aurez sans doute remarqué la présence de Ioutil rtt_edsb fourni par rt-sdr. Isagit d'un décodeur ADS-B simpliste pouvant tre utilisé en premier lieu afin de tester la réception eta presence 'éven: twelles données décodables autour cle vous Lasérie de ligne en notation hexadécimale qui saffichent € Vécran sont les données ADS-B obtenues via le récepteur Ceci prouve la présence de tols informations mais cect est sans communes mesures avec les fonctionnalités offertes par dump1090. Les sources de ce logiciel sont hébergées par GitHub et récupérables trés implement via Antireza choisi dene pas utiliser d’outil de configuration des sources (AutoTools, Crmake, etc) et un simple make fera affaire (sl toutes les dépendances sont correctement insta kes, merci pkg-config) Ceci fait, vous trouverez dans le répertoire courant un binaire dunp1698 que vous pouvez directement lancer Les données obtenues et décodées siaffichent au fur et a mesure de leur réception sous une forme presque intelligible. On reconnait par exemple dans cet extrait, un message informant de la vélecité de l'aéronef ou encore, plus bas, de Faltitude d'un autre apparel Cette présentation est plus “digeste” cue les résultats affichées par rtl_adsb maisilest possible de faire encore mieuxavec ./dumpl99@ --interactive. Vous aurez ainsi drott a une sortie comme Vous pouvez. ajouter Toption --metric afin davoir une visualisation plus acceptable pour nous, utilisateurs du systéme métrique. Ce made de fonctionne- ment présente dentlfiant de chaque aéronef. son altitude, sa position ou encore sa vitesse, et ce, en temps réel ‘Mais nous avons gardé le meilleur pour la fin, car il existe une option magique s-net. Celle-ci permet de mettre en route le serveur Web (entre autres choses) intégré a dump1090 et il vous sulfira alors de pointer votre navigateur sur adresse 1270.0. (ou localhost port 8080 pour abtenir cect Non, vous ne révez pas. Ilsagitdune carte Google Map faisant apparaitre les avions a leur emplacement déclaré, Lantenne bas de gamme du récepteur es ict placée sur le bord d'une fendtre aurez-de-chaussé, au centre de Colmar Pourtant, on peut recevoir et décader des émissions provenant davions se trouvant au dessus de Bruyeres, soit a environ 50 km de distance. Je vous laisse Imaginer les résultats avec une antenne plus adaptée & la fréquence de 1090 Mhz, placée sur le toit d'un immeuble, Petite améliorations pratiques et cosmétiques Dump1090 est un adorable petit ou tilquion pourra, de plus, en compagnie dertl-sdr, compiler pour une plateforme ARM (comme la Raspberry Pi ou la Bea gleBoard Black) afin diobtenir un sys {me portable, basse consommation et pewencombrant de detection daéronel Cependant, est perfectibe,en particu ler sures aspects esthetiques de in terface Web, Lasignalistion des avions parun triangle jaune, par exemple. rest pasun cholx des plusefficaces lors d'un affichage Google Map avec relief ou en ‘mode satellite. Un petit coup dil aux sources de Vuuilitaire nous montre quAntirez & tres bien fait sor travail, En effet, les 6léments de interface Web ne sont pas {ntégré's aux sources mais présents sous Ja forme d'un simple fichier gmap. html. Colui-ci contient la page affichée ainsi quunensemble de fonctions JavaScript. ‘Nous pouvons ainsi en premier ie changerlacouleurdestrianglesafindopter pour un magenta flash bien plus visible Lafonction getYconForPLane(ptane) {ntegre une déclaration simple & modi fier fournissant les valeurs de rouge, de vertet de bleu pour cet élément ar = 26, 9 20, b= B55 (On pourra ensuite étendre cette fonction pour, par exemple dessiner de jolis petit avions plutét que des triangles (FORWARD_CLOSED_ARROW). Un autre-élé ment damélioration, moins casmetique, concerne les données mumériques afl ‘chées comme par exemple, la vitesse d'un avion sélectionné. Dans le domaine de aviation, Tunité de mesure d'une vitesse est le noeud (ou knot en anglais). Pour afficher des données en Km/h, cest a la fonction refreshSelectedinfo() que rhous nous intéresserons en ajoutant, par exemple var Anh = Math round p. speed 052); Nous pourrons alors utiliser la variable kh quelques lignes plus bas an += "Speeds “epepenth” faats ("se vh's Ten va de méme avec Valtitucea laquelle on ajoutera une valeur en metres en plus de celle en pieds a var elimetre = Mth romp. altituen 34875 tat a = "Altitude: “tp.altituter” feet (vaTtnetes” m) "4p Tight’ cla> (MTsatrader)

Vous aimerez peut-être aussi