Sommario:

Ricevitore Raspberry Pi NOAA e Meteor-M 2: 6 passaggi
Ricevitore Raspberry Pi NOAA e Meteor-M 2: 6 passaggi

Video: Ricevitore Raspberry Pi NOAA e Meteor-M 2: 6 passaggi

Video: Ricevitore Raspberry Pi NOAA e Meteor-M 2: 6 passaggi
Video: How to receive NOAA APT weather satellite (Lawas Ground Station) 2024, Dicembre
Anonim
Ricevitore Raspberry Pi NOAA e Meteor-M 2
Ricevitore Raspberry Pi NOAA e Meteor-M 2
Ricevitore Raspberry Pi NOAA e Meteor-M 2
Ricevitore Raspberry Pi NOAA e Meteor-M 2
Ricevitore Raspberry Pi NOAA e Meteor-M 2
Ricevitore Raspberry Pi NOAA e Meteor-M 2
Ricevitore Raspberry Pi NOAA e Meteor-M 2
Ricevitore Raspberry Pi NOAA e Meteor-M 2

Questa istruzione ti aiuterà a configurare una stazione di ricezione non solo per APT da NOAA-15, 18 e 19, ma anche per Meteor-M 2.

È davvero solo un piccolo progetto successivo al grande progetto "Raspberry Pi NOAA Weather Satellite Receiver" di haslettj.

Passaggio 1: inizia con Instructable di Haslettj

Prima di seguire Instructable di haslettj, nota prima queste modifiche:

Il vecchio indirizzo per wxtoimg non è più attivo. Ora puoi usare questo indirizzo invece nel comando wget:

www.wxtoimgrestored.xyz/beta/wxtoimg-linux-armhf-2.11.2-beta.tar.gz

Ho anche dovuto apportare una modifica allo script "receive_and_process_satellite.sh", perché apparentemente rtl_fm non emette effettivamente audio in formato "wav". Ma non è un problema, sox può gestirlo. Quindi ho cambiato questa riga:

sudo timeout $6 rtl_fm -f ${2}M -s 60k -g 45 -p 55 -E wav -E deemp -F 9 - | sox -t wav - tariffa $3.wav 11025

A questo (ma ricorda di sostituire l'impostazione del guadagno "-g 0" e l'impostazione dell'errore di frequenza PPM "-p 68" con qualcosa che funzioni per il tuo hardware):

sudo timeout $6 rtl_fm -f ${2}M -s 48k -g 0 -p 68 -E dc -A veloce -F 9 - | sox -t raw -r 48000 -es -b16 -c1 -V1 - $3.wav rate 11025

Nello stesso script, potresti anche voler cambiare l'argomento wxtoimg "-e ZA" in "-e MSA" per ottenere belle immagini a colori, come questa:

/usr/local/bin/wxtoimg -m ${3}-map-p.webp

Ora vai a fare l'Instructable!

www.instructables.com/id/Raspberry-Pi-NOAA…

Passaggio 2: installa GnuRadio e Blocks per RTL-SDR

Il ricevitore Meteor-M 2 utilizza GnuRadio. Per installare ciò di cui hai bisogno, fai questo:

sudo apt install gnuradio

sudo apt install gr-osmosdr

Passaggio 3: scarica gli script di GnuRadio

Se non hai familiarità, GnuRadio include uno strumento grafico chiamato GnuRadio-Companion che può essere utilizzato per creare grafici di flusso e compilarli in codice Python che viene poi eseguito.

Ho biforcato il ricevitore "meteor-m2-lrpt" di "otti-soft" modificando alcuni parametri per migliorare le prestazioni e utilizzando RTL-SDR invece di Airspy. Scaricalo da qui:

github.com/NateDN10/meteor-m2-lrpt

I file.grc possono essere aperti con GnuRadio-Companion, ma non sono script eseguibili: sono lì per riferimento e con cui giocare. Per farlo funzionare, copia il file "rtlsdr_m2_lrpt_rx.py" nella tua directory /home/pi/weather/predict e assicurati che sia eseguibile:

chmod +x rtlsdr_m2_lrpt_rx.py

Dovrai anche modificare l'offset di frequenza:

self.rtlsdr_source_0.set_freq_corr(69, 0)

E ottieni tutto ciò che funziona per la tua configurazione:

self.rtlsdr_source_0.set_gain(4, 0)

Passaggio 4: scarica il decoder

Scarica il decoder Meteor LRPT di "artlav" da qui - vuoi la versione Linux ARM:

orbides.org/page.php?id=1023

Puoi farlo sul Raspberry Pi usando questi comandi:

cd /home/pi/meteo

wget https://orbides.org/etc/medet/medet_190825_arm.tar.gz mkdir medet; cd medet tar xvzf../medet_190825_arm.tar.gz

Ora dovresti avere una directory chiamata "medet" all'interno della tua directory "meteo", e al suo interno dovrebbe esserci un eseguibile "medet_arm".

Passaggio 5: scarica altri strumenti

Per correggere le proporzioni delle immagini utilizzeremo lo strumento Python "meteor_rectify" di dbdexter da Github.

Se non hai già git e ImageMagick installati:

sudo apt install git

sudo apt install imagemagick

Quindi clonare il repository:

cd /home/pi/meteo

git clone

Potresti anche aver bisogno delle librerie Python "pillow" e "numpy":

pip3 installa numpy

pip3 installa il cuscino

Passaggio 6: aggiorna gli script

Innanzitutto, aggiungi la seguente riga alla fine di "schedule_all.sh":

/home/pi/meteo/predict/schedule_satellite.sh "METEOR-M 2" 137.1000

Quindi, in "schedule_satellite.sh", cambia questo blocco:

if [$MAXELEV -gt 19]; poi

echo ${1//" "}${OUTDATE} $MAXELEV echo "/home/pi/meteo/predict/receive_and_process_satellite.sh \"${1}\" $2 /home/pi/meteo/${1// " "}${OUTDATE} /home/pi/meteo/previsione/meteo.tle $var1 $TIMER" | at `date --date="TZ=\"UTC\" $START_TIME" +"%H:%M %D"` fi

A questa:

if [$MAXELEV -gt 19]; poi

echo ${1//" "}${OUTDATE} $MAXELEV if ["$1" == "METEOR-M 2"] then echo "/home/pi/weather/predict/receive_and_process_meteor.sh \"${1} " $2 /home/pi/meteo/${1//" "}${OUTDATE} /home/pi/meteo/previsione/meteo.tle $var1 $TIMER" | at `date --date="TZ=\"UTC\" $START_TIME" +"%H:%M %D"` else echo "/home/pi/weather/predict/receive_and_process_satellite.sh \"${1} " $2 /home/pi/meteo/${1//" "}${OUTDATE} /home/pi/meteo/previsione/meteo.tle $var1 $TIMER" | at `date --date="TZ=\"UTC\" $START_TIME" +"%H:%M %D"` fi fi

Infine, crea un nuovo script chiamato "receive_and_process_meteor.sh" con i seguenti contenuti:

#! /bin/bash

# $1 = Nome Satellite # $2 = Frequenza # $3 = Base NomeFile # $4 = File TLE # $5 = Ora inizio EPOC # $6 = Tempo per catturare cd /home/pi/timeout timeout $6 forecast/rtlsdr_m2_lrpt_rx.py $1 $2 $3 # Inverno #medet/medet_arm ${3}.s $3 -r 68 -g 65 -b 64 -na -S # Estate 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` # Inverno #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 meteor_rectify/rectify.py ${3}.bmp # Solo inverno #meteor_rectify/rectify.py ${ 3}_ir.bmp # Ruota le immagini della sera di 180 gradi if [$dte -lt 13]; quindi convert ${3}-rectified.png -normalize -quality 90 $3-j.webp

Rendilo eseguibile:

chmod +x ricezione_e_processo_meteor.sh

E questo è tutto! La prossima volta che il tuo cron job esistente verrà eseguito per programmare i satelliti, verrà programmato anche Meteor-M 2. Il decoder emetterà un.bmp utilizzando APID 66 per il rosso, 65 per il verde e 64 per il blu.

L'output standard degli script, quando vengono eseguiti dallo scheduler, viene aggiunto a /var/mail/pi. Per leggerlo, usa questo comando:

less /var/mail/pi

E per cancellare i vecchi messaggi, fai questo:

/var/mail/pi

Consigliato: