-
Écouter les communcations aéronautiques avec la SDR
Si vous vous rendez sur FlightRadar, il y a des chances qu’un avion se situe pas loin de vous. Peut-être même que vous êtes à moins d’une dizaine de kilomètres d’un aéroport. Dans ces cas, avec un simple récepteur SDR et une antenne, vous allez pouvoir écouter toutes les communications 🥷🏽.
Comment les pilotes communiquent ?
Modulation
Les communications aéronautiques utilisent la modulation d’amplitude bien que la majorité des communications radio d’aujourd’hui utilisent la modulation de fréquence.
En effet, bien que la FM possède une meilleure qualité de signal, elle est plus complexe à mettre en oeuvre, le matériel nécessaire est de fait plus énergivore et plus lourd ce qui représente une contrainte dans l’aviation 🛩️.
De plus, l’AM est bien plus robuste que la FM, ce qui permet au signal d’être plus résistant face aux obstacles comme les conditions méteos, les montagnes, les gros bâtiments et j’en passe. Le signal peut alors porter sur de plus grandes distances.
Polarisation
Les communications aéronautiques utilisent une polarisation verticale, il s’agit de la direction du champ électrique de notre onde électromagnétique. Ce site explique très bien les différents types de polarisation.
Comprenez juste qu’une onde polarisée verticalement devra être reçue par une antenne placée veritcalement. Autrement, on risque de perdre une bonne partie du signal .
Quelles Fréquences ?
Avez-vous déjà vu le spectre de répartition des fréquences de l’ANFR ?
Ouais, dur d’y voir sans l’ouvrir en grand, mais zoomons sur la partie qui nous intéresse, la bande allouée aux communications en aéronatique qui se situe dans les VHF.
On les retrouve entre 108 et 137MHz. Maintenant, il va falloir savoir quelles fréquences entre 108 et 137MHz sont utilisées autour de nous afin de les écouter.
Récupérer les bonnes informations
Il existe un super site permettant de nous afficher les fréquences utilisées pour l’aéronautique, le tout avec même une carte, il s’agit de Openaip. On peut accéder à la map en cliquant ici.
On va s’intéresser a l’aéroport de Bordeaux-Merignac BOD pour l’exemple.
On peut voir sur le côté tout un tas de fréquences utilisées par l’aéroport dont nottament celle de la tour de contrôle indiqué par TWR .
Passons à l’écoute
Dans mon cas, je vais utiliser SDR++ car j’aime bien ce logiciel mais ça fonctionnera pareil avec n’importe lequel. On sélectionne son récepteur SDR relié à notre antenne. On choisit un niveau de gain qui nous convient, on change le type de modulation avec AM et aussi la bande passante qu’on met à 15000.
Une fois ceci fait, on peut sélectionner manuellement une fréquence trouvée sur Openaip mais on peut aussi profiter du fait d’avoir un spectrogramme et observer si des pics apparaissent.
Voici un morceau de ce que j’ai pu écouter par exemple :
Les communications ne sont pas en continues donc patienter jusqu’à trouver un pic, placez-vous dessus, et bonne écoute :)
À noter que l’on peut aussi mettre du squelch pour définir un certain niveau à partir duquel le signal devienne audible. Ça permet d’éviter d’avoir le bruit de fond en continu et écouter uniquement quand une communication a lieu.
-
La distribution Linux SDR : DragonOS
La distribution DragonOS est un fork de Lubuntu mais spécialisé pour la SDR. Elle possède déjà un grand nombre d’outils installés bien pratiques comme par exemple GNURadio. C’est super cool pour gagner du temps car nombre de ces tools en radio sont vieux et peuvent être compliqués à mettre en place.
Installation
Pour récupérer l’iso, on se rend juste ici. Ensuite, il nous faut un hyperviseur comme VirtualBox ou VMWare, peu importe. Dans mon cas, comme je suis sur Windows, je vais rester au plus simple avec VirtualBox que l’on peut télécharger directement ici. Pour les Mac ARM, il faudra utiliser VMWare :)
On peut lancer VirtualBox et cliquer sur le bouton New afin d’y importer notre iso.
On clique sur Next pour allouer nos ressources matérielles. Pour la mémoire vive, 4Go devrait faire l’affaire. Dans le doute, comme il y a des logiciels qui peuvent être très gourmands, je mets 8Go (8192Mb). Pour le CPU, pareil, ça dépend de votre configuration, je le monte à 6 mais 2 ou 4 devraient suffire.
Puis, on reclique sur Next pour allouer l’espace disque. Il faut le mettre à 30Go minimum puisque vous rencontrerez plus tard une étape pour laquelle les 30Go minimum seront nécessaires.
Et re Next puis Finish.
Premier lancement
A présent, on double clique pour lancer DragonOS. Il est possible que vous ayez une page comme ça :
Vous pouvez faire entrer et après quelques instants, on arrive sur le bureau qui se présente ainsi :
L’installation n’est pas encore finie, on remarque sur le bureau le Install DragonOS FocalX. Il faut l’installer car sinon, à chaque fois que l’on va éteindre la VM, tout ce qu’on aura fait dessus sera perdu.
Du coup, on double clique, et on suit l’installation. Pour ce qu’il faut cocher, on peut laisser par défaut, c’est très bien.
Après un long moment, ça nous propose de redémarrer la VM et on sera fin prêts à s’en servir !
Découverte
Sur DragonOS, on va retrouver une multitude de logiciels préinstallés donc on va pas tous les voir. Je vous laisserai les découvrir par vous même en fonction de vos usages, mais sachez qu’il y en a pour tous les goûts niveau radios.
Bref, testons tout ça et sortons notre récepteur SDR. Dans mon cas, j’utilise la clé RTL-SDR V4 et un logiciel comme par exemple le super SDR++.
Avant de continuer, il va falloir dire à Virtual Box de prendre en compte notre clé SDR branchée sur le port USB de notre hôte. Pour ça, en haut, on fait Devices -> USB et on clique sur notre récepteur SDR.
À présent, on est prêts à écouter. Sur SDR++, dans Source, on sélectionne RTL-SDR et juste en dessous on choisit notre récepteur, on clique sur le bouton Play en haut et tout fonctionne nickel !
Dossier partagé
Lorsque vous voudrez travailler avec des fichiers de la machine hôte sur votre VM, vous aurez besoin d’un moyen de les faire passer. Une manière simple de le faire est de mettre en place un dossier partagé.
Pour cela, dans un premier temps, il faut que les Additions Invité soient installées. C’est des pilotes qui permettent une meilleure interaction entre la VM et l’hôte.
Donc, depuis la VM, en haut, on va dans Devices -> Insert Guest Additions CD Image…. Puis, on Execute le fichier autorun.sh.
Ensuite, on peut éteindre la VM, on clique sur Settings (l’engrenage jaune) puis Shared Folders. Clic droit et Add Shared Folder.
Enfin, on choisit quel dossier de notre machine hôte on veut partager et on coche Auto-Mount.
À présent, depuis la VM, dans l’explorateur de fichiers, on peut y voir notre dossier partagé sous le nom sf_Downloads.
Si jamais vous avez une erreur comme quoi vous n’avez pas les permissions, ouvrez un terminal et tapez sudo adduser [your-user] vboxsf puis redémarrez la VM et ça devrait être bon.
Et voilà, DragonOS est prêt à être utilisé !
-
Les notions de phase et de déphasage d'un signal
Les signaux ne se comportent pas tous de la même manière dans le temps entre eux. On va voir dans ce cours, la notion de phase et comment le déphasage peut modifier l’alignement des ondes.
La phase
La phase d’un signal est une mesure qui permet de représenter la forme d’une onde sinusoïdale à un instant donné. On la note en degrés (de 0° à 360°) ou bien en radians (de 0 à 2π).
Mais alors, qu’est-ce que le nombre π à avoir avec nos ondes radio ? Replongeons dans la trigonométrie pour comprendre avec ce schéma :
Peu importe la fréquence d’un signal, la période de ce dernier (donc son cycle) correspondra à une rotation complète sur un cercle soit 360° ou 2π.
Deux signaux sont en phase lorsque leurs amplitudes coincident, les signaux oscillent ensemble. On parle de déphasage nul.
Le déphasage
Un déphasage, c’est une différence dans le temps ou dans la position d’une onde. En gros, si on a deux ondes qui commencent à des moments différents ou atteignent leur maximum à des moments différents, on dira qu’elles sont déphasées.
Par exemple, si le déphasage est à 180° donc qu’un signal est en avance de π radians par rapport à l’autre, on dit que les signaux sont en opposition de phase. Ça donne que les amplitudes max d’un signal correspondent aux amplitudes min de l’autre signal, les signaux oscillent en opposition.
Ou si le déphasage est à 90° donc qu’un signal est en avance de π/2 radians par rapport à l’autre, on dit que les signaux sont en quadrature de phase. C’est à dire que les amplitudes d’un signal coïncident avec les passages par zéro de l’autre signal.
Et voilà pour ce mini cours sur les notions de phase sans trop rentrer dans les détails. Ça permettra de mieux comprendre les notions de polarité d’une onde que l’on verra plus tard.
-
Comment choisir son antenne pour la SDR ?
Une antenne n’est rien de plus qu’un morceau de métal. Son but est de transformer une énergie électrique en une onde électromagnétique pour transmettre un signal radio et inversement pour en recevoir. Nous allons dans ce cours voir les différentes notions importantes à comprendre afin de bien choisir son antenne, que ça soit pour un projet SDR ou n’importe.
Fréquence
Pour choisir son antenne, il va d’abord falloir savoir sur quelle fréquence on veut travailler. Mais d’abord, c’est quoi la fréquence ?
Quand on branche une prise de courant dans une maison, le courant qui y circule est dit alternatif, cela signifie qu’il change de sens à intervalle régulier (Le courant va du + vers le - et vice-versa). Le changement ne se fait pas en mode brutal, mais progressivement, formant une jolie sinusoïde.
En France par exemple, cet intervalle oscille à 50Hz, ça signifie qu’il change de sens 100 fois par seconde. C’est ce qu’on appelle la fréquence avec comme unité le Hertz.
Une radio, c’est aussi un oscillateur, on parle de VFO (Variable Frequency Oscillator), terme barbare pour dire qu’on peut changer la fréquence.
Par exemple, en voiture, on peut tourner la roulette pour mettre une fréquence de 102.4MHz (NRJ). Cela signifie qu’on a 102,4 millions d’oscillations par seconde !
Longueur d’onde
Le facteur le plus important d’une antenne est sa longueur que l’on choisira en fonction de la fréquence qui nous intéresse. On dira que notre antenne est résonante à une fréquence spécifique. Ce qui signifie qu’elle transformera efficacement l’énergie électrique en onde radio et inversement.
Pour que notre antenne soit en résonance avec une fréquence, elle devra correspondre à une proportion spécifique de la longueur d’onde du signal.
La longueur d’onde se calcule ainsi, sachant qu’on a une version simplifiée comme on connaît la vitesse de la lumière et que l’on travaille surtout avec des fréquences en MHz :
Quand on a calculé la longueur d’onde du signal qu’on souhaite exploiter, on va pouvoir choisir une fraction de cette valeur pour dimensionner l’antenne, généralement une demi-onde (λ/2) ou une quart d’onde (λ/4).
Par exemple, supposons qu’on veut une antenne pour travailler sur la fréquence 433MHz, on calcule sa longueur d’onde : 300/433≈0.70cm. Si on part sur une antenne demi-onde, sa longueur devra donc être égale à la moitié de la longueur d’onde soit 34.5cm.
Une fois qu’on connaît la taille de notre antenne, il va falloir déterminer quelle forme elle va prendre. Mais avant ça, il va falloir faire une parenthèse sur la notion d’impédance.
Impédance
Alors, on va faire simple. Pour que notre signal radio soit efficacement transféré entre l’antenne et le récepteur/émetteur, il faut que les deux soient bien adaptés l’un à l’autre. Cette adaptation est déterminée par une propriété appelée impédance.
Il faut la voir comme la résistance d’un circuit électrique mais adaptée aux courants alternatifs. En radiofréquence, on voudra que l’impédance de l’antenne match avec celle de notre appareil de réception/émission. Une valeur est utilisée presque partout de manière général, c’est 50Ω. C’est par exemple l’impédance des récepteurs SDR. Bref, ça signifie qu’on cherchera toujours à avoir une antenne au plus proche de ce 50Ω.
Types d’antenne
Ils existent tout un tas de type d’antenne donc on va pas toutes les présenter, mais jetons un coup d’œil à 3 d’entre elles importantes à connaître.
Dipôle (Doublet)
L’antenne la plus basique que l’on puisse faire est une antenne doublet. Elle existe en mode replié (qu’on appelle trombone) et en mode classique qu’on appelle dipôle. C’est sur cette dernière qu’on va s’intéresser bien que la trombone suit le même principe.
Dans sa version basique, il s’agira d’une antenne demi-onde (λ/2), avec chacun des pôles qui aura une longueur de λ/4. Cette dernière est alimenté en son milieu et se place de manière isolée dans l’espace et loin du sol.
L’angle entre les 2 pôles peut être ajuster afin de régler l’impédance de notre antenne. Dans le cas où ils sont droits comme sur le schéma, on aura une impédance de 75Ω. En mettant un angle de 120°, on aura nos 50Ω comme sur ce projet.
De plus, une dipôle peut être placé horizontalement ou verticalement selon la polarisation des ondes que l’on souhaite exploiter.
Enfin, ce type d’antenne concentre son énergie dans deux directions, la rendant très efficace lorsque l’on connaît la direction du signal que l’on souhaite recevoir.
Ground plane
Pour l’antenne ground plane, on va avoir un conducteur vertical d’une longueur d’un quart d’onde (λ/4) qui va être monté au-dessus d’un plan de masse que l’on appelle ground plane, d’où le nom. Ce plan de masse agit comme un miroir qui vient “compléter” l’antenne en réflétant les ondes devenant ainsi l’équivalent d’un dipôle.
Pour former ce plan de masse, on peut utiliser des tiges métalliques qu’on appelle des radiants réparties uniformement autour de la base donnant à notre antenne une apparence d’araignée 🕷️. Pareil que pour le dipôle, si on veut une antenne à 50Ω, il faudra un angle de 120° entre les brins.
Autrement, on peut utiliser la terre, la mer, un toit de voiture, n’importe tant que c’est conducteur.
Yagi
Les antennes Yagi utilisables des ondes HF aux ondes UHF, sont des antennes directives. On les appelle aussi antennes râteaux, c’est celles que l’on a en général sur nos toits pour la télévision terrestre.
L’idée est de partir sur un doublet demi-onde (λ/2), et d’ajouter des éléments parasites non alimentés afin de concentrer l’énergie dans une direction. On aura des élements directeurs, plus courts que le doublet, placés devant lui et des éléments réflecteurs qui eux, seront plus long à l’arrière.
En augmentant le nombre d’éléments, l’impédance diminue et le gain augmente ↗️. Ces antennes sont très pratiques dans le cas où l’on souhaite travailler avec un signal qui vient d’une direction bien précise, afin de concentrer toute son énergie vers lui.
Conclusion
Vous devriez déjà mieux comprendre comment choisir votre antenne et ajuster sa longueur en fonction de ce que vous voulez recevoir.
Il existe une infinité de possibilités, n’hésitez pas à me contacter sur Instagram si vous avez des questions :)
-
La modulation d'amplitude (AM)
Les signaux bruts qu’on veut émettre sont souvent faibles et peuvent grandement s’atténuer sur de longues distances. En modulant notre signal, on va pouvoir porter l’information sur une onde beaucoup plus puissante 💪🏽.
Bien que les sources d’émission se mettent plus ou moins d’accord pour utiliser des fréquences différentes, la modulation permet d’éviter les interférences en évitant que les signaux se mélangent.
La modulation
Imaginons qu’on ait un signal à transporter, du son par exemple. On l’appellera signal modulant. Ce type de signal a une fréquence basse et est très faible.
Pour le transporter, il nous faut un autre signal qu’on apellera onde porteuse qui sera une onde avec une fréquence élevée et donc puissante. C’est elle qui transportera notre signal faible.
Avec nos deux signaux réunis, on va venir les superposer (c’est des maths derrière), et on obtient notre signal modulé. Il existe plusieurs manières de faire tout ça, et en guise d’exemple, on va voir le type de modulation le plus simple à appréhender, la modulation d’amplitude.
L’amplitude
L’amplitude d’un signal représente sa hauteur maximale par rapport à sa position au repos. C’est en quelque sorte la puissance du signal radio.
Cette valeur est importante pour déterminer la qualité du signal modulé. Plus l’amplitude du signal modulé est élevée, meilleure en théorie sera la qualité de la réception, car cela permet de mieux différencier le signal utile du bruit ambiant.
En modulation d’amplitude noté AM, on va venir faire varier l’amplitude de l’onde porteuse en fonction de l’amplitude du signal modulant.
Pour mieux comprendre, on va utiliser un très célèbre logiciel nommé GNURadio. Ce n’est pas très grave de ne pas savoir comme il fonctionne. Mais dans l’idée, ça permet de manipuler des signaux radio en utilisant des blocs qu’on vient relier entre eux.
Donc là, on place 2 blocs Signal Source qui permettent de générer un signal, un pour notre Signal Modulant qui a une fréquence de 20Hz et un autre qui sera notre onde porteuse avec une fréquence de 1000Hz donc bien plus élevée que le signal modulant.
Le bloc Throttle, on s’en fiche pour ce cours mais sachez qu’il est là pour éviter de faire crash le PC en réduisant la cadence à laquelle le CPU voudrait éxecuter le programme. Un seul placé quelque part suffit, c’est pour ça que y en a juste un. Bref, revenons à ce qui nous intéresse.
Le bloc QT GUI TIME SINK va nous permettre de visualiser nos deux signaux dans le temps.
Voilà ce qu’on obtient lorsque l’on lance notre programme :
On voit nos 2 jolies sinusoides, la rouge qui est notre porteuse et la bleu notre signal modulant.
Modulation d’amplitude
À présent, superposant nos deux signaux en les multipliant. (Les fameuses maths qui se cachent derrière).
Donc ici, on a juste rajouté le bloc Multiply et on renvoie le signal modulé dans notre QT GUI Time Sink. J’ai aussi laissé les 2 autres signaux reliés au QT GUI Time Sink pour qu’on puisse mieux comprendre. Et pareil, le bloc Throttle, vous pouvez l’ignorer.
Lançons le programme et laissons apparraître uniquement le signal modulé pour voir à quoi il ressemble.
On peut voir cette forme caractéristique d’un signal modulé en amplitude.
Et maintenant, affichons nos 3 signaux (modulant, porteuse et modulé)
On comprend déjà mieux, lorsque que l’amplitude de notre signal modulant diminue, ça diminue en conséquence l’amplitude de la porteuse.
C’est tout pour ce cours simplifié sur la modulation d’amplitude. Il existe bien d’autres types de modulation (FM, PM, …) qu’on choisit en fonction de ce que l’on veut transmettre, de notre bande passante, du bruit environnant, etc, … mais on garde ça pour une prochaine fois :)
-
Les bases de la SDR (Software-defined radio)
Dans le monde des ondes radio, on utilise traditionnellement des composants qui peuvent faire peur comme des résistances, des condensateurs, des bobines afin de réaliser des systèmes permettant de traiter du signal.
L’inconvéniant, pour nous qui voulions juste découvrir la radio, c’est que chaque composant est une entité physique, qui peut être coûteuse, encombrante, et modifier ses caractéristiques demande des compétences techniques en électronique 🔧.
Heuresement pour nous, grâce au numérique, on va pouvoir simplifier tout ça et avoir la possibilité de plonger dans le monde des radiofréquences pour trois fois rien 🎉.
Récepteur numérique
L’idée va être de numériser le signal le plus tôt possible pour l’envoyer à un CPU (processeur) où l’on pourra commencer notre traitement du signal. L’avantage est que l’on pourra utiliser des algorithmes beaucoup plus complexes, notamment à l’aide des nombres complexes qui sont très difficiles à mettre en place avec des résistances ou autres.
Et oui, ces fameux nombres qu’on pensait inutiles au lycée ont une réelle utilité pour numériser les signaux.
La partie réelle du nombre sert à représenter l’amplitude (sa hauteur en quelque sorte) du signal.
La partie imaginaire, pour représenter sa phase (sa position dans le temps).
Ainsi, on va pouvoir simplifier des opérations mathématiques.
Pas convaincu ? Prenons par exemple la multiplication de deux signaux (inutile de comprendre ce que ça signifie).
Sans nombres complexes, il faudrait utiliser des calculs trigonométriques assez tordus.
Alors qu’avec les nombres complexes, il “suffirait” de multiplier les amplitudes et ajouter leur phase, ce qui se fait simplement avec des opérations algébriques sur les nombres complexes (si si 😄).
De plus, le numérique se met simplement à jour, ce qui est pratique, notamment pour les logiciels ou autres algorithmes.
Un autre gros avantage du numérique est de visualiser le spectre de fréquence ainsi qu’un spectrogramme (qu’on appelle cascade ou waterfall en anglais) ce qui est très pratique pour comprendre ce qui se passe.
C’est comme utiliser WireShark pour analyser les paquets sur un réseau🦈.
Fréquence d’échantillonnage
Les signaux radios sont dit analogiques et comportent une infinité de valeurs, et ça nos CPU n’aiment pas, donc on vient capturer plusieurs points sur le signal à intervalle régulier afin de le transformer en un nombre fini. En fait, c’est plus précis de dire qu’on vient mesurer l’amplitude du signal à intervalle régulier puis qu’on vient stocker tout ça sous forme de nombres. C’est ça qu’on appelle la fréquence d’échantillonnage !
Elle est rendue possible grâce à un convertisseur analogique-numérique (CAN).
Plus on prendra d’échantillons, plus on aura un signal numérique fidèle à la réalité mais plus il sera lourd et long à traiter.
Il existe d’ailleurs un théorème, celui de Nyquist–Shannon qui dit que pour reconstruire à l’identique un signal analogique, il doit être échantillonné à une fréquence au moins deux fois supérieure à sa fréquence maximale. En prenant une valeur 2 fois supérieure, on s’assure de reconstruire un signal analogique très précis.
Récepteurs SDR
Numériser le signal et le traiter par logiciel a un nom, c’est la SDR (Software Defined Radio). Elle est rendue possible par des récepteurs comme par exemple celui-ci :
Ces récepteurs bon marché (lien vers un super kit pour débuter), se branchent en USB à un ordinateur équipé d’un logiciel SDR (il en existe plusieurs). On retrouve un port MCX (Micro Coaxial eXtended), c’est un connecteur coaxial plus petit que l’on relie à notre antenne. Ce dernier ne permet que la réception des signaux mais pas la transmission. Pour bénéficier des deux, il faudrait par exemple utiliser un HackRF.
Logiciels SDR
Une fois en possession d’un récepteur SDR, on n’a plus qu’à s’équiper d’un logiciel SDR. À titre personnel, mon favori est SDR++ pour tout ce qui va être “écoute”.
SatDump qui est une copie de SDR++ mais spécialisée pour l’écoute et le décodage des signaux satellites.
Et mention honorable aussi pour SDRAngel bien pratique avec ses plugins permettant par exemple d’afficher des cartes interactives comme dans le cas de réception ADS-B.
À noter qu’il existe une distribution Linux du nom de DragonOS qui permet d’avoir tous ces logiciels directement installés et configurés tout seul :)
Touch background to close