Pour tout curieux souhaitant débuter dans le milieu de la SDR, recevoir des images satellites en fabriquant sa propre antenne est un excellent point de départ pour acquérir des bases en radiofréquence. On va pousser ce projet un peu plus loin en faisant en sorte que ces images satellites se récupèrent automatiquement.
Compréhension du projet
Qui sont les NOAA ?
Les satellites NOAA sont des satellites météorologiques américains situés à une altitude d’environ 850km
. Pour comparer, l’ISS est à environ 400km
.
À ce jour, il y en a 3 qui vont nous intéresser :
Leur fréquence étant publique, n’importe qui avec le matériel adéquat peut recevoir leurs images. Ils ne sont plus en période d’exploitation mais tant que la NASA considère qu’ils ne sont pas un danger, ils continuent de les laisser tourner.
Orbite héliosynchrone
Ces satellites ont une orbite circulaire qui les font passer d’un pôle à l’autre de la Terre. Ce sont des orbites dites polaire et plus précisément héliosynchrone. Mais pour plus d’infos sur les différents types d’orbites, tu peux cliquer ici.
Ils se présentent toute l’année sous le même angle par rapport au Soleil :
Ainsi, comme la Terre tourne sur elle même, le satellite peut balayer toute sa surface. Grâce à des logiciels ou sites web, on peut calculer ses orbites et prévoir le passage de chacun par rapport à des coordonnées géographiques. Ils passent à peu près 2 fois par jour au-dessus d’une même zone.
Par exemple, voici une liste de prédictions au dessus de la ville où est installée mon antenne:
Transmission APT
Les NOAA ne prennent pas directement des photos de la Terre. Ils utilisent un radiomère à balayage qui effectue un scan comme le ferait un scanner papier à une vitesse de 2 lignes par seconde, donc c’est lent.
Pour cela ils vont utiliser le mode APT (Automatic Picture Transmission). Il date de 1960 et seules ces 3 satellites l’utilisent encore. La qualité n’est que de 4km
pour 1 pixel.
Voici un exemple d’image transmise que j’ai reçu avec ce système :
La transmission est composée de deux canaux d’images, des informations télémétriques et des données de synchronisation.
- Le premier canal (image de gauche) d’image est pris avec un capteur dans les longueurs d’onde visibles. (Un autre capteur peut être utilisé en fonction de la quantité de nuages).
- Le second canal (image à droite) utilise un capteur infrarouge.
- La bande à gauche de chaque image sont des données de synchronisation. Comme les ondes peuvent faire des rebonds dans l’atmosphère ou sur d’autres obstacles, elles peuvent ne pas arriver dans le bon ordre jusqu’à l’antenne, donc ces bits de données sont là pour les remettre dans le bon ordre et être sûr qu’on reçoive le scan correctement.
- Les 2 bandes à droite de chaque image sont des données télémétriques. Il s’agit d’informations envoyés concerant le satellite ainsi que des données pour la météo (c’est à ça qui sert après tout).
Toutes ces données vont être envoyées ligne par ligne à l’horizontal.
Avant d’être diffusées, les images recoivent des corrections géométriques permettant ainsi d’être exempt de la distorsion causée par la courbure de la Terre (car oui, la Terre n’est pas plate).
Ainsi, avec ces deux images capturées, on peut obtenir d’autres types d’image. Par exemple, voici une image thermique générée par les deux images précédentes :
C’est grâce à ce genre d’image que les personnes dans la météorologie seront à même de prédire le temps qu’il va faire ⛈️.
Fonctionnement d’une antenne et SDR
Pour récupérer leur images, il va nous falloir une antenne ainsi qu’un récepteur SDR.
Ainsi, je vous recommande de lire les 2 articles que j’ai fais, le premier pour comprendre comment on choisit une antenne en fonction de la fréquence qu’on veut écouter.
Le second qui explique ce qu’est la SDR (Software Defined Radio).
Mise en place du projet
Partie matérielle
Fabrication de l’anntenne
Pour ce projet, j’ai décidé de partir sur une antenne V-dipôle qui sera placée horizontalement. De fait, son diagramme de rayonnement sera dirigé vers le ciel. Ça permet aussi de grandement réduire les interférences en provenance des signaux terrestres polarisés veriticalement.
Malgré tout ça, ce n’est pas l’antenne optimale pour ce projet (à cause de sa polarisation) mais ça reste la plus simple à construire donc on va partir là dessus pour débuter. Si non, on pourrait directement partir sur une antenne QFH.
Les signaux APT sont très résistants donc au final, même avec une antenne non parfaite, on recevra quand même des trucs, le plus important, c’est surtout d’avoir un ciel dégagé avec l’antenne placée le plus haut possible.
Comme vu sur les cours des antennes, pour qu’elle soit résonnante à la fréquence de 137MHz, on peut faire le calcul suivant : λ=300/137≈2.18m
.
On va faire une antenne demi-onde donc elle devra faire une longueur de 2.18/2
soit 1.09m
.
De plus, comme on fait un dipôle, on va devoir diviser à nouveau par 2 pour avoir la longueur de chaque pôle. Donc 1.09/2≈0.54
. On sait à présent que chaque pôle devra faire 54cm pour être efficace au 137MHz.
Afin d’avoir une impédance de 50Ω, l’angle formé par les 2 pôles doit être de 120°.
Le raccordement entre les pôles et le câble se fait avec un domino. On relie la tige centrale du câble à l’un, et la tresse autour du câble à l’autre. On peut analyser ses performances avec un testeur d’antenne.
Le deux valeurs à prendre en compte sont
- L’impédance -> R (Ω) qui est de 58Ω donc pas les 50Ω idéales mais relativement proche donc c’est cool.
- Le rapport d’onde stationnaire -> VSWR qui doit être au plus proche de 1. Et là, 2.8, c’est pas terrible.
Les premiers résultats n’étant pas très convaincant, je décide d’enlever le domino et de plutôt venir souder les parties entre elles pour que le contact se fassent au mieux. Je récupère à la déchetterie une vieille antenne TV pour caravane qui me permet de facilement régler l’orientation des pôles pour ajuster l’impédance de l’antenne. Et voici le résultat final :
- Le VSWR est très proche de 1 ce qui est vraiment pas mal pour le coup.
- L’impédance de 42Ω n’est pas parfaite mais reste tout à fait correct.
Placement et Orientation
Une antenne dipôle n’est pas omnidirectionelles et il va falloir la placer correctement. Les NOAA avec leur orbite polaire arrive soit par le nord soit par le sud. Par conséquant, on doit orienter l’antenne dans l’une de ses directions, n’importe laquelle. Si on la place vers le nord alors que le satellite arrivait par le sud, on aura juste à retourner l’image. :)
Voilà le rendu final de l’antenne sur le toit orienté plein sud dans mon cas :
Évidemment, la parabole et l’antenne râteau n’ont rien à voir pour ce projet.
Raspberry
Pour ce projet, j’utilise un Raspberry 4 model B qui tourne sur Raspbian lite OS en 64-bits. Il n’aura pas d’interface graphique afin d’éviter toutes fréquences parasites provoquées par la consommation du CPU et de la RAM à cause des composants graphiques.
Ce dernier sera placé dans les combles dans un tupperware pour le protéger de la poussière. Pour le récepteur SDR, j’utilise la clé RTL-SDR V4. Elle sera reliée à l’antenne par 5m de câble coaxial TV de récup, mais c’est mieux de prendre un bon câble style du RG58.
Filtre
Bien que la clé SDR a pour rôle d’enregistrer dans la fréquence qu’on lui demande, elle n’est pas parfaite et il y aura toujours des signaux parasites autour. Pour régler ce problème, on peut être tenté par utiliser un LNA (Low Noise Amplicator). Il va nous permettre de filtrer et amplifier les signaux dans une gamme de fréquence bien spécifique. Par exemple, pour ce projet, il faudrait un LNA 137MHz comme celui-ci.
Il est important de le placer au plus prêt de l’antenne, afin d’amplifier le signal dès que possible. Ainsi, on est sur que le signal ne se perde pas durant le trajet.
⚠️ Mais attention, l’efficacité d’un filtre dépendra de pleins de facteurs compelxes. Car même si le signal du NOAA sera amplifié, le bruit parasite le sera aussi. Et dans mon cas, pour l’avoir testé, ça ne change vraiment rien d’avoir un filtre donc je ne recommande pas d’investir dedans.
Partie logicielle
Afin de tester toute notre chaîne matérielle, on peut d’abord brancher notre récepteur SDR à un ordinateur avec un logiciel comme SatDump et tenter de récupérer un signal manuellement. J’en ai fais un guide juste ici.
Si tout fonctionne, en théorie on pourrait s’arrêter là pour le projet, mais pour aller plus loin, on va faire en sorte d’automatiser tout ça pour avoir un site qui contiendra toutes nos images récupérées 🖼️.
Github
Pour ce projet, j’ai décidé d’utiliser ce dépôt Git qui va grandement nous être utile.
Pour l’installer, on le git clone
sur le Raspberry, puis on édite le fichier config/settings.yml
pour y mettre nos coordonnées géographiques ainsi que d’autres paramètres selon nos besoins.
Voici quelques exemples de paramètres que j’ai changé :
On a plus qu’à lancer l’installation en exécutant le script ./install_and_upgrade.sh
(ça prend du temps) et nous voilà avec un site web affichant tous les passages prévus des satellites, un enregistrement qui se lance automatiquement et une page Capture avec l’ensemble des images récupérées. Super pratique !
Accès à distance
Après l’installation, un serveur web nginx est créé en localhost
sur le Raspberry accessible donc que depuis le réseau local.
Si vous avez un nom de domaine et que vous souhaitez accéder à votre site depuis n’importe où, vous pouvez associer votre site à l’adresse IP de votre box internet. Grâce au tool GitHub, on a la possibilité de générer des certificats HTTPS très facilement pour améliorer la sécurité du site. Vous pouvez consulter ce guide pour en savoir plus. Dans mon cas, ma station est accessible depuis ici.
Prédiction
Pour prédire le passage des satellites, on a un cronjob qui va se lancer chaque jour à 00h00. Il va s’occuper d’aller chercher les TLE (Two Lines Elements) des satellites en ligne. Il s’agit d’une représentation standardisée des paramètres orbitaux des objets en orbite terrestre. C’est grâce à ces paramètres que l’on va pouvoir prédire à quelle heure un satellite va passer au dessus d’un point donné.
Une fois récupérée, on a une base de données à jour contenant la position des satellites qui nous intéressent.
Ainsi, on peut faire appel à l’outil predict
qui va prédire le passage des satellites en sa basant sur les TLE, et sur la position géographique du fichier setting.yml
. Ce dernier va nous donner un intervalle durant laquelle le satellite va passer en nous indiquant l’élévation maximale du passage.
Un exemple de la commande lancée manuellement :
Ici, on demande les prédictions du satellite NOAA 15 en précisant un fichier TLE à jour. L’élévation est indiqué par la 5ème colonne.
On voit que le prochain passage aura lieu entre 19:02 (première ligne) et 19:17 (dernière ligne) et que l’élévation maximale aura lieu à 19:09 (6ème ligne) et sera de 64°.
Traitement du signal
Mais au final, qu’est ce qu’on enregistre, des images ? Et bien non. En réalité, l’enregistrement consiste en la récupération d’un fichier audio !
La commande principale ressemble à ça :
On va pas rentrer dans les détails de chacun des arguments mais cette commande permet d’enregistrer le signal et de le traiter en même temps afin de convertir le signal audio en une image. Vous trouverez des infos sur les arguments ici et ici.
Récupération des images
Une fois tout le traitement terminé, satdump va appliquer un traitement sur l’image reçue selon ce que l’on a mis comme paramètres dans le fichier settings.yml
. Ainsi, il va pouvoir en générer plusieurs, comme des images en couleurs ou en vision thermique. Ces dernières étant disponible depuis la section captures
de votre site.
Voici un exemple de la même image de NOAA 19 reçue mais avec un traitement différent :
Comme vous pouvez le voir, il y a pas mal de bandes en plein milieu, ce sont des interférences dues à mon antenne qui n’est pas parfaite. J’y travaille afin d’avoir une image parfaitement nette.
Les images que je récupère sont disponibles sur ma station juste ici.
Suite et Améliorations
METEOR
Si vous avez tout correctement configuré, vous avez dû voir qu’il y a 2 autres satellites appelés METEOR qui sont récupérés. Ce sont aussi des satellites météos qui émettent sur les 137MHz
. C’est pour cela qu’avec le même matériel que pour les NOAA, vous pouvez les recevoir. Plus d’infos sur ces satellites russes ici.
HRPT
En réalité, ces satellites peuvent envoyer de plus belles images que ça. On l’a dit, mais le protocole APT date de 1960 alors que ces satellites ont été envoyés dans les années 2000. En fait, c’est juste pour une question de rétro-compatibilité avec de vieux équipements. Mais sinon, les météorologues vont utiliser un protocole plus récent, le HRPT ( High-Resolution Picture Transmissions). Les NOAA envoient avec ce mode sur des fréquences plus hautes, 1700MHz. Leur réception demande plus de connaissance et surtout une antenne tout autre. Il s’agit de la suite logique de ce projet afin d’avoir des images toujours plus belles car là où l’APT nous donnait du 4km/pixel, l’HRPT nous donne du 1km/pixel. C’est comme passé d’un écran FULL HD à de la 4K :)