Table des matières:
Vidéo: Récepteur Raspberry Pi NOAA et Meteor-M 2: 6 étapes
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Cette instructable vous aidera à configurer une station de réception pour non seulement APT de NOAA-15, 18 et 19, mais aussi Meteor-M 2.
Il ne s'agit en fait que d'un petit projet de suivi du grand projet "Raspberry Pi NOAA Weather Satellite Receiver" de haslettj.
Étape 1: Commencez avec Instructable de Haslettj
Avant de suivre Instructable de haslettj, notez d'abord ces changements:
L'ancienne adresse de wxtoimg n'est plus en ligne. Vous pouvez maintenant utiliser cette adresse à la place dans la commande wget:
www.wxtoimgrestored.xyz/beta/wxtoimg-linux-armhf-2.11.2-beta.tar.gz
J'ai également dû modifier le script "receive_and_process_satellite.sh", car rtl_fm ne produit apparemment pas de son au format "wav". Mais ce n'est pas un problème, sox peut le gérer. J'ai donc modifié cette ligne:
sudo timeout $6 rtl_fm -f ${2}M -s 60k -g 45 -p 55 -E wav -E deemp -F 9 - | sox -t wav - taux de 3.wav 11025
Pour cela (mais n'oubliez pas de remplacer le paramètre de gain "-g 0" et le paramètre d'erreur de fréquence "-p 68" PPM par quelque chose qui fonctionne pour votre matériel):
sudo timeout $6 rtl_fm -f ${2}M -s 48k -g 0 -p 68 -E dc -A fast -F 9 - | sox -t raw -r 48000 -es -b16 -c1 -V1 - $3.wav taux 11025
Dans le même script, vous pouvez également changer l'argument wxtoimg "-e ZA" en "-e MSA" pour obtenir de belles images en couleurs, comme ceci:
/usr/local/bin/wxtoimg -m ${3}-map-p.webp
Allez maintenant faire l'Instructable !
www.instructables.com/id/Raspberry-Pi-NOAA…
Étape 2: Installez GnuRadio et Blocks pour RTL-SDR
Le récepteur Meteor-M 2 utilise GnuRadio. Pour installer ce dont vous avez besoin, procédez comme suit:
sudo apt installer gnuradio
sudo apt installer gr-osmosdr
Étape 3: Téléchargez les scripts GnuRadio
Si vous n'êtes pas familier, GnuRadio inclut un outil graphique appelé GnuRadio-Companion qui peut être utilisé pour créer des graphiques de flux et les compiler en code Python qui est ensuite exécuté.
J'ai forké le récepteur "meteor-m2-lrpt" de "otti-soft" en modifiant certains des paramètres pour améliorer les performances et en utilisant RTL-SDR au lieu d'Airspy. Téléchargez-le ici:
github.com/NateDN10/meteor-m2-lrpt
Les fichiers.grc peuvent être ouverts avec GnuRadio-Companion, mais ce ne sont pas des scripts exécutables - ils sont là pour votre référence et pour jouer avec. Pour le faire fonctionner, copiez le fichier "rtlsdr_m2_lrpt_rx.py" dans votre répertoire /home/pi/weather/predict et assurez-vous qu'il est exécutable:
chmod +x rtlsdr_m2_lrpt_rx.py
Vous voudrez également modifier le décalage de fréquence:
self.rtlsdr_source_0.set_freq_corr(69, 0)
Et profitez de tout ce qui fonctionne pour votre configuration:
self.rtlsdr_source_0.set_gain(4, 0)
Étape 4: Téléchargez le décodeur
Téléchargez le décodeur Meteor LRPT de "artlav" à partir d'ici - vous voulez la version Linux ARM:
orbides.org/page.php?id=1023
Vous pouvez accomplir cela sur le Raspberry Pi en utilisant ces commandes:
cd /accueil/pi/météo
wget https://orbides.org/etc/medet/medet_190825_arm.tar.gz mkdir medet; cd medet tar xvzf../medet_190825_arm.tar.gz
Vous devriez maintenant avoir un répertoire appelé "medet" dans votre répertoire "weather", et à l'intérieur il devrait y avoir un exécutable "medet_arm".
Étape 5: Télécharger d'autres outils
Pour corriger le rapport hauteur/largeur des images, nous allons utiliser l'outil Python "meteor_rectify" de dbdexter de Github.
Si vous n'avez pas déjà installé git et ImageMagick:
sudo apt installer git
sudo apt installer imagemagick
Clonez ensuite le dépôt:
cd /accueil/pi/météo
git clone
Vous aurez peut-être également besoin des bibliothèques Python "pillow" et "numpy":
pip3 installer numpy
pip3 installer oreiller
Étape 6: mettre à jour les scripts
Tout d'abord, ajoutez la ligne suivante à la fin de "schedule_all.sh":
/home/pi/weather/predict/schedule_satellite.sh "METEOR-M 2" 137.1000
Ensuite, dans "schedule_satellite.sh", modifiez ce bloc:
if [$MAXELEV -gt 19]; alors
echo ${1//" "}${OUTDATE} $MAXELEV echo "/home/pi/weather/predict/receive_and_process_satellite.sh \"${1}\" $2 /home/pi/weather/${1// " "}${OUTDATE} /home/pi/weather/predict/weather.tle $var1 $TIMER" | à `date --date="TZ=\"UTC\" $START_TIME" +"%H:%M %D"` fi
Pour ça:
if [$MAXELEV -gt 19]; alors
echo ${1//" "}${OUTDATE} $MAXELEV if ["$1" == "METEOR-M 2"] then echo "/home/pi/weather/predict/receive_and_process_meteor.sh \"${1} " $2 /home/pi/weather/${1//" "}${OUTDATE} /home/pi/weather/predict/weather.tle $var1 $TIMER" | à `date --date="TZ=\"UTC\" $START_TIME" +"%H:%M %D"` else echo "/home/pi/weather/predict/receive_and_process_satellite.sh \"${1} " $2 /home/pi/weather/${1//" "}${OUTDATE} /home/pi/weather/predict/weather.tle $var1 $TIMER" | à `date --date="TZ=\"UTC\" $START_TIME" +"%H:%M %D"` fi fi
Enfin, créez un nouveau script appelé "receive_and_process_meteor.sh" avec le contenu suivant:
# ! /bin/bash
# $1 = Nom du satellite # $2 = Fréquence # $3 = Base du nom de fichier # $4 = Fichier TLE # $5 = Heure de début EPOC # $6 = Heure de capture cd /home/pi/weather timeout $6 predict/rtlsdr_m2_lrpt_rx.py $1 $2 $3 # Hiver #medet/medet_arm ${3}.s $3 -r 68 -g 65 -b 64 -na -S # Été medet/medet_arm ${3}.s $3 -r 66 -g 65 -b 64 -na -S rm ${3}.s if [-f "${3}_0.bmp"]; then #rm ${3}.s dte=`date +%H` # Hiver #convert ${3}_1.bmp ${3}_1.bmp ${3}_0.bmp -combine -set colorspace sRGB ${ 3}.bmp #convert ${3}_2.bmp ${3}_2.bmp ${3}_2.bmp -combine -set colorspace sRGB -negate ${3}_ir.bmp # Summer convert ${3}_2.bmp ${3}_1.bmp ${3}_0.bmp -combine -set colorspace sRGB ${3}.bmp météore_rectify/rectify.py ${3}.bmp # Hiver uniquement #meteor_rectify/rectify.py ${ 3}_ir.bmp # Faire pivoter les images du soir de 180 degrés if [$dte -lt 13]; puis convertissez ${3}-rectified.png -normalize -quality 90 $3-j.webp
Rendez-le exécutable:
chmod +x receive_and_process_meteor.sh
Et c'est tout! La prochaine fois que votre tâche cron existante s'exécutera pour planifier des satellites, Meteor-M 2 sera également planifié. Le décodeur produira un fichier.bmp en utilisant APID 66 pour le rouge, 65 pour le vert et 64 pour le bleu.
La sortie standard des scripts, lorsqu'ils sont exécutés par le planificateur, est ajoutée à /var/mail/pi. Pour le lire, utilisez cette commande:
moins /var/mail/pi
Et pour effacer les anciens messages, procédez comme suit:
/var/mail/pi