Innholdsfortegnelse:
Video: Raspberry Pi NOAA og Meteor-M 2 mottaker: 6 trinn
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Denne instruksen vil hjelpe deg med å sette opp en mottaksstasjon for ikke bare APT fra NOAA-15, 18 og 19, men også Meteor-M 2.
Det er egentlig bare et lite oppfølgingsprosjekt til haslettjs flotte "Raspberry Pi NOAA Weather Satellite Receiver" -prosjekt.
Trinn 1: Start med Haslettj's Instructable
Vær oppmerksom på disse endringene før du følger haslettj's Instructable:
Den gamle adressen til wxtoimg er ikke lenger oppe. Du kan nå bruke denne adressen i stedet i wget -kommandoen:
www.wxtoimgrestored.xyz/beta/wxtoimg-linux-armhf-2.11.2-beta.tar.gz
Jeg måtte også gjøre en endring i "receiv_and_process_satellite.sh" -skriptet, fordi rtl_fm tilsynelatende ikke sender ut "wav" -formatlyd. Men det er ikke noe problem, sox kan takle det. Så jeg endret denne linjen:
sudo timeout $ 6 rtl_fm -f $ {2} M -s 60k -g 45 -p 55 -E wav -E deemp -F 9 -| sox -t wav - $ 3.wav rate 11025
Til dette (men husk å erstatte "-g 0" gain-innstillingen og "-p 68" PPM-frekvensfeilinnstillingen med noe som fungerer for maskinvaren din:
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 rate 11025
I det samme skriptet vil du kanskje også endre wxtoimg-argumentet "-e ZA" til "-e MSA" for å få fine fargebilder, slik som dette:
/usr/local/bin/wxtoimg -m $ {3} -map-p.webp
Gjør nå det instruerbare!
www.instructables.com/id/Raspberry-Pi-NOAA…
Trinn 2: Installer GnuRadio og blokker for RTL-SDR
Meteor-M 2-mottakeren bruker GnuRadio. Gjør følgende for å installere det du trenger:
sudo apt installer gnuradio
sudo apt install gr-osmosdr
Trinn 3: Last ned GnuRadio -skript
Hvis du ikke er kjent, inneholder GnuRadio et grafisk verktøy kalt GnuRadio-Companion som kan brukes til å bygge flytgrafer og kompilere dem til Python-kode som deretter utføres.
Jeg har gafflet "otti-soft" s "meteor-m2-lrpt" -mottaker ved å endre noen av parameterne for å forbedre ytelsen og bruke RTL-SDR i stedet for Airspy. Last den ned her:
github.com/NateDN10/meteor-m2-lrpt
. Grc -filene kan åpnes med GnuRadio -Companion, men de er ikke kjørbare skript - de er der for din referanse og å leke med. For å få det til å fungere, kopierer du filen "rtlsdr_m2_lrpt_rx.py" til katalogen/home/pi/weather/predict, og sørger for at den er kjørbar:
chmod +x rtlsdr_m2_lrpt_rx.py
Du vil også endre frekvensforskyvningen:
self.rtlsdr_source_0.set_freq_corr (69, 0)
Og få det som fungerer for oppsettet ditt:
self.rtlsdr_source_0.set_gain (4, 0)
Trinn 4: Last ned dekoderen
Last ned "artlav" s Meteor LRPT -dekoder herfra - du vil ha Linux ARM -versjonen:
orbides.org/page.php?id=1023
Du kan oppnå dette på Raspberry Pi ved å bruke disse kommandoene:
cd/home/pi/weather
wget https://orbides.org/etc/medet/medet_190825_arm.tar.gz mkdir medet; cd medet tar xvzf../medet_190825_arm.tar.gz
Du bør nå ha en katalog kalt "medet" i "vær" -katalogen, og inne i den bør være en "medet_arm" kjørbar.
Trinn 5: Last ned andre verktøy
For å fikse størrelsesforholdet til bildene skal vi bruke dbdexters "meteor_rectify" Python -verktøy fra Github.
Hvis du ikke allerede har git og ImageMagick installert:
sudo apt installere git
sudo apt installer imagemagick
Klon deretter depotet:
cd/home/pi/weather
git-klon
Du kan også trenge "pute" og "numpy" Python -biblioteker:
pip3 installer numpy
pip3 installere pute
Trinn 6: Oppdater skriptene
Legg først til følgende linje på slutten av "schedul_all.sh":
/home/pi/weather/predict/schedule_satellite.sh "METEOR-M 2" 137.1000
Deretter, i "schedule_satellite.sh", endrer du denne blokken:
hvis [$ MAXELEV -gt 19]; deretter
ekko $ {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 "| på `date --date =" TZ = / "UTC \" $ START_TIME " +"%H:%M%D "` fi
Til dette:
hvis [$ MAXELEV -gt 19]; deretter
ekko $ {1 // ""} $ {OUTDATE} $ MAXELEV hvis ["$ 1" == "METEOR-M 2"] deretter ekko "/home/pi/weather/predict/receive_and_process_meteor.sh \" $ {1} "$ 2/home/pi/weather/$ {1 //" "} $ {OUTDATE} /home/pi/weather/predict/weather.tle $ var1 $ TIMER" | på `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" | på `date --date =" TZ = / "UTC \" $ START_TIME " +"%H:%M%D "` fi fi
Til slutt oppretter du et nytt skript kalt "Receive_and_process_meteor.sh" med følgende innhold:
#! /bin/bash
# $ 1 = Satellittnavn # $ 2 = Frekvens # $ 3 = Filnavnbase # $ 4 = TLE -fil # $ 5 = EPOC -starttid # $ 6 = Tid for å fange cd/home/pi/vær -timeout $ 6 predict/rtlsdr_m2_lrpt_rx.py $ 1 $ 2 $ 3 # Winter # medet/medet_arm $ {3}.s $ 3 -r 68 -g 65 -b 64 -na -S # Sommermedet/medet_arm $ {3}.s $ 3 -r 66 -g 65 -b 64 -na -S rm $ {3}.s hvis [-f "$ {3} _0.bmp"]; deretter #rm $ {3}.s dte = `date +%H` #Winter #convert $ {3} _1.bmp $ {3} _1.bmp $ {3} _0.bmp -combine -set fargerom 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 fargerom sRGB $ {3}.bmp meteor_rectify/rectify.py $ {3}.bmp # Kun vinter # meteor_rectify/rectify.py $ { 3} _ir.bmp # Roter kveldsbilder 180 grader hvis [$ dte -lt 13]; konverter deretter $ {3} -rectified.png -normalize -quality 90 $ 3-j.webp
Gjør det kjørbart:
chmod +x mottak_og_prosess_meteor.sh
Og det er det! Neste gang din eksisterende cron-jobb kjører for å planlegge satellitter, blir Meteor-M 2 også planlagt. Dekoderen sender ut en.bmp med APID 66 for rødt, 65 for grønt og 64 for blått.
Standardutgangen fra skriptene, når de kjøres av planleggeren, legges til/var/mail/pi. For å lese den, bruk denne kommandoen:
mindre/var/mail/pi
Og for å slette gamle meldinger, gjør du dette:
/var/mail/pi