Explicacion Script schedulle_satellite.sh

Imagen de Ruben EA5BZ

Os adjunto una nueva versión del script schedulle_satellite.sh usado para recibir los Satélites NOAA automaticamente con una Raspberry y un RTL-SDR.
A parte de alguna ligera mejora lo mas importante son los comentarios de la parte superior explicando lo que son cada una de las variables. De ese modo nos será mas sencillo personalizarlo a nuestro gusto.

Adjunto igualmente el script al post para que se pueda descargar.

#!/bin/bash
#
#START_TIME es el dia y la hora en formato normal de comienzo del pase ejemplo: 21Sep18 16:24:51
#TIMER es la duracion del pase en segundos
#var1 es la hora de comienzo de pase en formato Epoch
#var2 es la hora de fin de pase en formato Epoch
#var3 es el segundo del comienzo del pase (lo usamos para el TIMER)
#El While dice: Mientras la fecha sea la del día de hoy haz lo de dentro

PREDICTION_START=`/usr/bin/predict -t /home/pi/weather/predict/weather.tle -p "${1}" | head -1`
PREDICTION_END=`/usr/bin/predict -t /home/pi/weather/predict/weather.tle -p "${1}" | tail -1`
MAXELEV=`/usr/bin/predict -t /home/pi/weather/predict/weather.tle -p "${1}" | awk -v max=0 '{if($5>max){max=$5}}END{print max}'`
var2=`echo $PREDICTION_END | cut -d " " -f 1`

while [ `date --date="TZ=\"UTC\" @${var2}" +%D` == `date +%D` ]; do

    START_TIME=`echo $PREDICTION_START | cut -d " " -f 3-4`
    var1=`echo $PREDICTION_START | cut -d " " -f 1`
    var3=`echo $START_TIME | cut -d " " -f 2 | cut -d ":" -f 3`
    TIMER=`expr $var2 - $var1 + $var3`
    OUTDATE=`date --date="TZ=\"UTC\" $START_TIME" +%Y%m%d-%H%M%S`

    if [ $MAXELEV -gt 19 ]
      then
        echo ${1//" "} `date --date="TZ=\"UTC\" $START_TIME" +%d/%m/%Y" "%H:%M:%S` Max Elev: $MAXELEV >> /home/pi/weather/predict/pases.txt
        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" | at `date --date="TZ=\"UTC\" $START_TIME" +"%H:%M %D"`
      fi

    nextpredict=`expr $var2 + 60`
    PREDICTION_START=`/usr/bin/predict -t /home/pi/weather/predict/weather.tle -p "${1}" $nextpredict | head -1`
    PREDICTION_END=`/usr/bin/predict -t /home/pi/weather/predict/weather.tle -p "${1}" $nextpredict | tail -1`
    MAXELEV=`/usr/bin/predict -t /home/pi/weather/predict/weather.tle -p "${1}" $nextpredict | awk -v max=0 '{if($5>max){max=$5}}END{print max}'`
    var2=`echo $PREDICTION_END | cut -d " " -f 1`

done
AdjuntoTamaño
schedule_satellite.sh1.95 KB

Comentarios

Hola Rubén, gran trabajo!! He

Hola Rubén,
gran trabajo!!

He estado trabajando en algo parecido estos últimos días, he creado un sistema que usando una librería de python hace predicción de satélites de radioaficionados y mediante un SDR hace la grabación y la emisión de la captura a youtube:

https://github.com/fmogollonr/hamradiosatscapture

Me he encontrado con un problema en estos días y es el Doppler en el SDR, no he visto una forma fácil de intenar eliminarlo.

No sé si tú te has encontrado con ese problema en algún momento.

Un saludo

Felipe

EB2ELU

Imagen de Ruben EA5BZ

Buenas tardes Felipe. El

Buenas tardes Felipe.
El doppler de modo "automático" es algo complicado ya que al rtl_fm le das una frecuencia y no es posible cambiarla "al vuelo".
Yo lo que hice darle un ancho de banda lo suficientemente ancho como para que "quepa" la transmision incluido su desplazamiento.
Ahora echo un ojo a tu trabajo.
Muchas Gracias