Тематикой ADS-B я заинтересовался практически случайно. Исследуя тему компактных серверов переодически натыкался на «малинки» и прочие «одороиды», а так же способы их применения. Однажды и вовсе наткнулся на тему в которой радостная школота  довольные пользователи малинки рассказывали о том, как воспользовались предложением от flightradar24.com (далее FR) и получили от них «халявный» комплект из антенны на 1090 Mhz, коробки с приемником и корпус с «raspberry pi»  ака «малинка».  С «малиной» я еще не ковырялся, не было времени,  желания и было много сомнений в целесообразности — производительность все же оставляет желать лучшего.

 

Не так давно прочитал сообщение от Александара 4Z5LV, который сообщил что в последнюю версию (на данный момент) sdr-split v.1.19 , добавлена возможность 8-битного семплирования сигнала, что в свою очередь дает возможность совместной работы с утилитой dump1090. Которая позволяет декодировать сигналы ADS-B, а значит теперь прием возможен не только на «старом китайском свитке» RTL, но и на любимом Afedri SDR 🙂

 

Само-собой, мне захотелось такую возможность воплотить.

 

Первое с чего все начинается — антенна. За воскресенье, загуглив тематику сделал 8 элементный коллинеар на 1.1 Ггц.

 

Результат, учитывая адские потери в кабеле, посредственную точность изготовления элементов и самой конструкции в целом — весьма впечатляющий.

 

ew8ax ads-b 1090mhz collinear antenna 8 elements

 

ew8ax ads-b 1090mhz collinear antenna 8 elements outside

 

Если на NAGOYA UT102UV стояющую на карнизе небыло слышно совсем ничего, то самодельный коллинеар уровни сигналов если и не шкалят, то слышны весьма громко.

 

AFEDRI SDR-Net + SDR Console v2 +ADS-B reception

 

Ок, далее качаем dump1090, а лучше её форк от Мальколма Роба или еще кого-нить, кто занимается ее развитием и украшательством.

 

 

git clone https://github.com/MalcolmRobb/dump1090

 

cd dump1090

 

make

 

 

После получения бинарника я столкнулся с проблемой. Запустить я его запустил, но результат отсутствовал . Что ж,  если ничего не помогает — прочтите инструкцию(с)

 

Обратившись к описанию утилиты sdr_split на сайте мною был найден «секретный ключ» —cE0  :

 

 

1. Added conversion from 16-bit sample size to RTL-SDR like 8 bit sample size, output of converted data stream to stdout. (option -cE0) for use with dump1090 utility.

 

 

Это был шаг в верном направлении, но все еще чего-то не хватало. Я слышал сигналы и видел их на водопаде, но в консоли было пусто.

 

В конце долгих многочасовых поисков я наконец понял в чем у меня проблема и  почему ничего не работает. Вот, что навело меня на правильную, но почему-то неочевидную для меня мысль.

 

 

The binary file should be created using rtl_sdr like this (or with any other program that is able to output 8-bit unsigned IQ samples at 2Mhz sample rate

 

 

Ну конечно же, sample rate должен быть 2 Mhz!!!

 

И стоило мне исправиль жту ошибку как я тут же увидел заветные самолеты в консоли…

 

 

А если зайти на порт 8080 сервера, то dump1090 поднимает там вебсервер и отдает более визуальную статистику и информацию.

 

 

Общий механизм работы софт-харда точно такой же, как мной уже был реализован ранее при работе с WEBSDR от PA3FW.

 

При помощи sdr_split подклчаемся к сетевому приемнику Афедри, получаем поток, пишем этот поток в файл FIFO на диске.

 

При помощи dump1090 читаем этот файл, получаем результат в виде хэшей и остальных данных с ADS-B.

 

Как обычно я использую файлик  afedri-start.sh для запуска этой связки.Вот его содержимое.

 

 

#!/bin/bash

 

./sdr_commander  -t192.168.0.245 -al1 -am1 -E4 -A0 -sn$SAMPLE_RATE -g$GAIN -q0 -f$FREQUENCY

 

 

 

 

Далее, подключаемся к агрегатору. Регистрируемся на сайте FR. Идем на страницу «Share your ADS-B data«, выбираем свою ОС и качаем их софт. Инструкций по подключению в интернетах полно , приведу коротко.

 

 

wget https://repo-feed.flightradar24.com/linux_x86_binaries/fr24feed_1.0.18-5_i386.tgz

 

tar -zxvf fr24feed_1.0.18-5_i386.tgz

 

Раскладываем файлы по директориям (см ссылку на хабр)

 

./fr24feed --signup

 

 

отвечаем на вопросы, получаем новый ключ, делаем "демона" для fr24feed, идем на ФР убеждаемся что мы закончены и сбор статистики пошел.

 

ew8ax ads-b stat on flightradar24.com

 

Где-то через сутки можно будет увидеть статистику, с каких азимутов сигнал самолетов приходит, а с каких нет. У меня все не очень хорошо, если честно то все плохо. Со всех сторон дома, а антенна всего на окне третьего этажа. Просветов до неба между домами всего два, в них максимальная дальность составляла до 200 nm, что неплохо, но конечно хотелось бы кгруговой диаграммы. А она достижима только на крыше.. Ну, что есть, то есть…

 

 

TODO:

 

1)отдельный приемник для ads-b (уже едет 😀 )

 

2)band pass filter 1090

 

2)нормальный кабель с нормальными коннекторами

 

3)радача получаемой информации большему числу агрегаторов: flightaware, opensky-network etc

 

 

 

На данный момент, до приезда ADS-B приемника WEBSDR@AfedriSDR будет работать в ADS-B режиме.

 

 

 

 

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *