Índice:

Receptor Raspberry Pi NOAA e Meteor-M 2: 6 etapas
Receptor Raspberry Pi NOAA e Meteor-M 2: 6 etapas
Anonim
Receptor Raspberry Pi NOAA e Meteor-M 2
Receptor Raspberry Pi NOAA e Meteor-M 2
Receptor Raspberry Pi NOAA e Meteor-M 2
Receptor Raspberry Pi NOAA e Meteor-M 2
Receptor Raspberry Pi NOAA e Meteor-M 2
Receptor Raspberry Pi NOAA e Meteor-M 2
Receptor Raspberry Pi NOAA e Meteor-M 2
Receptor Raspberry Pi NOAA e Meteor-M 2

Este instrutível irá ajudá-lo a configurar uma estação receptora não apenas para o APT do NOAA-15, 18 e 19, mas também para o Meteor-M 2.

Na verdade, é apenas um pequeno projeto subsequente ao grande projeto "Raspberry Pi NOAA Weather Satellite Receiver" da haslettj.

Etapa 1: Comece com Haslettj's Instructable

Antes de seguir o Instructable do haslettj, observe estas alterações primeiro:

O endereço antigo para wxtoimg não está mais ativo. Agora você pode usar este endereço no comando wget:

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

Eu também tive que fazer uma alteração no script "receive_and_process_satellite.sh", porque rtl_fm aparentemente não produz áudio no formato "wav". Mas não há problema, sox pode lidar com isso. Então eu mudei esta linha:

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

Para isso (mas lembre-se de substituir a configuração de ganho "-g 0" e a configuração de erro de frequência PPM "-p 68" por algo que funcione para o seu hardware):

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

No mesmo script, você também pode querer alterar o argumento wxtoimg "-e ZA" para "-e MSA" para obter belas imagens coloridas, como este:

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

Agora vá fazer o Instructable!

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

Etapa 2: Instale GnuRadio e Blocks para RTL-SDR

O receptor Meteor-M 2 usa GnuRadio. Para instalar o que você precisa, faça o seguinte:

sudo apt install gnuradio

sudo apt install gr-osmosdr

Etapa 3: Baixe os scripts GnuRadio

Se você não estiver familiarizado, GnuRadio inclui uma ferramenta gráfica chamada GnuRadio-Companion que pode ser usada para construir gráficos de fluxo e compilá-los em código Python que é então executado.

Eu bifurquei o receptor "otti-soft" s "meteoro-m2-lrpt" modificando alguns dos parâmetros para melhorar o desempenho e usando RTL-SDR em vez de Airspy. Baixe aqui:

github.com/NateDN10/meteor-m2-lrpt

Os arquivos.grc podem ser abertos com GnuRadio-Companion, mas eles não são scripts executáveis - eles estão lá para sua referência e para brincar. Para fazê-lo funcionar, copie o arquivo "rtlsdr_m2_lrpt_rx.py" em seu diretório / home / pi / weather / predict e certifique-se de que seja executável:

chmod + x rtlsdr_m2_lrpt_rx.py

Você também deseja alterar o deslocamento de frequência:

self.rtlsdr_source_0.set_freq_corr (69, 0)

E ganhe o que funcionar para sua configuração:

self.rtlsdr_source_0.set_gain (4, 0)

Etapa 4: Baixe o decodificador

Baixe o decodificador Meteor LRPT de "artlav" aqui - você quer a versão ARM do Linux:

orbides.org/page.php?id=1023

Você pode fazer isso no Raspberry Pi usando estes comandos:

cd / home / pi / clima

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

Agora você deve ter um diretório chamado "medet" dentro do seu diretório "weather", e dentro dele deve haver um executável "medet_arm".

Etapa 5: Baixar outras ferramentas

Para corrigir a proporção das imagens, usaremos a ferramenta Python "meteor_rectify" de dbdexter do Github.

Se você ainda não instalou o git e o ImageMagick:

sudo apt install git

sudo apt install imagemagick

Em seguida, clone o repositório:

cd / home / pi / clima

git clone

Você também pode precisar das bibliotecas Python "pillow" e "numpy":

pip3 install numpy

pip3 instalar travesseiro

Etapa 6: atualize os scripts

Primeiro, adicione a seguinte linha ao final de "schedule_all.sh":

/home/pi/weather/predict/schedule_satellite.sh "METEOR-M 2" 137,1000

Então, em "schedule_satellite.sh", altere este bloco:

se [$ MAXELEV -gt 19]; então

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 "| em `date --date =" TZ = / "UTC \" $ START_TIME "+"% H:% M% D "` fi

Para isso:

se [$ MAXELEV -gt 19]; então

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" | em `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" | em `date --date =" TZ = / "UTC \" $ START_TIME "+"% H:% M% D "` fi fi

Por fim, crie um novo script chamado "receive_and_process_meteor.sh" com o seguinte conteúdo:

#! / bin / bash

# $ 1 = Nome do satélite # $ 2 = Freqüência # $ 3 = Nome do arquivo base # $ 4 = Arquivo TLE # $ 5 = Hora de início do EPOC # $ 6 = Tempo para capturar cd / home / pi / tempo limite do tempo $ 6 predict / rtlsdr_m2_lrpt_rx.py $ 1 $ 2 $ 3 # Inverno # medet / medet_arm $ {3}.s $ 3 -r 68 -g 65 -b 64 -na -S # Summer medet / medet_arm $ {3}.s $ 3 -r 66 -g 65 -b 64 -na -S rm $ {3}.s if [-f "$ {3} _0.bmp"]; então #rm $ {3}.s dte = `date +% H` # Winter #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 # Apenas inverno # meteor_rectify / rectify.py $ { 3} _ir.bmp # Girar imagens noturnas 180 graus se [$ dte -lt 13]; em seguida, converta $ {3} -rectified.png -normalize -quality 90 $ 3-j.webp

Torne-o executável:

chmod + x receive_and_process_meteor.sh

E é isso! Da próxima vez que seu cron job existente for executado para agendar satélites, o Meteor-M 2 também será agendado. O decodificador produzirá um.bmp usando APID 66 para vermelho, 65 para verde e 64 para azul.

A saída padrão dos scripts, quando executados pelo planejador, é anexada a / var / mail / pi. Para ler, use este comando:

menos / var / mail / pi

E para apagar mensagens antigas, faça o seguinte:

/ var / mail / pi

Recomendado: