ADS-B: Porovnání verzí
(→ACARS) |
(→ACARS) |
||
Řádka 484: | Řádka 484: | ||
* 136.900 MHz - Další kanál pro Evropu | * 136.900 MHz - Další kanál pro Evropu | ||
* 1.545 GHz - Satelitní kanál | * 1.545 GHz - Satelitní kanál | ||
+ | |||
+ | |||
+ | Odkaz na výpočet [http://antény. https://www.jcoppens.com/ant/helix/calc.en.php] | ||
== Odkazy == | == Odkazy == |
Verze z 6. 1. 2017, 18:53
Obsah
Raspberry Pi
Modely
Raspberry Pi se vyrábí v několika provedení které se liší jak výkonem, tak počtem interface. Český e-shop: rpishop.cz mohu plně doporučit.
Raspberry Pi Model B+ V1.2
pi@raspberrypi:~ $ lscpu pi@raspberrypi:~ $ cat /proc/cpuinfo Architecture: armv6l processor : 0 Byte Order: Little Endian model name : ARMv6-compatible processor rev 7 (v6l) CPU(s): 1 BogoMIPS : 2.00 On-line CPU(s) list: 0 Features : half thumb fastmult vfp edsp java tls Thread(s) per core: 1 CPU implementer : 0x41 Core(s) per socket: 1 CPU architecture: 7 Socket(s): 1 CPU variant : 0x0 Model name: ARMv6-compatible processor rev 7 (v6l) CPU part : 0xb76 CPU max MHz: 700.0000 CPU revision : 7 CPU min MHz: 700.0000 Hardware : BCM2708 Revision : 0010 Serial : 000000008bdc96fc
Raspberry Pi2 Model B V1.1
pi@raspberrypi:~ $ lscpu pi@raspberrypi:~ $ cat /proc/cpuinfo Architecture: armv7l processor : 0 Byte Order: Little Endian model name : ARMv7 Processor rev 5 (v7l) CPU(s): 4 BogoMIPS : 38.40 On-line CPU(s) list: 0-3 Features : half thumb fastmult vfp edsp neon vfpv3 Thread(s) per core: 1 tls vfpv4 idiva idivt vfpd32 lpae evtstrm Core(s) per socket: 4 CPU implementer : 0x41 Socket(s): 1 CPU architecture: 7 Model name: ARMv7 Processor rev 5 (v7l) CPU variant : 0x0 CPU max MHz: 900.0000 CPU part : 0xc07 CPU min MHz: 600.0000 CPU revision : 5 . . . . Hardware : BCM2709 Revision : a01041 Serial : 000000002e97c5ef
Raspberry Pi3 Model B V1.1
pi@raspberrypi:~ $ lscpu pi@raspberrypi:~ $ cat /proc/cpuinfo Architecture: armv7l processor : 0 Byte Order: Little Endian model name : ARMv7 Processor rev 4 (v7l) CPU(s): 4 BogoMIPS : 38.40 On-line CPU(s) list: 0-3 Features : half thumb fastmult vfp edsp neon vfpv3 tls Thread(s) per core: 1 vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 Core(s) per socket: 4 CPU implementer : 0x41 Socket(s): 1 CPU architecture: 7 Model name: ARMv7 Processor rev 4 (v7l) CPU variant : 0x0 CPU max MHz: 1200.0000 CPU part : 0xd03 CPU min MHz: 600.0000 CPU revision : 4 . . . . Hardware : BCM2709 Revision : a02082 Serial : 00000000bd487497
Image
Vlastní stránky Raspberry Pi se nachází na www.raspberrypi.org. Zde v sekci "Downloads" můžeme stáhnout image pro microCD kartu. Ta slouží jako disk na kterém je vlastní systém ktrý se zní spustí. Pro přehrání image na microSD kartu můžeme použít program Win32 Disk Image (není možné jen překopírovat, neboť je potřeba zajistit z karty bootování). Pro příjem signálů ADS-B a distribuci na flightradar24 je možné též použít hotový image přímo z flightradar24.com. Obdobně je také možné stáhnou další image z FlightAware kde je i postup instalace.
První spusštění - Debian
V případě balíčků Debian je ve výchozím nastavení nastaven DHCP klient a přístup přes SSH. Vychozí login je "pi" a heslo "raspberry". U instalace FlightAware je heslo "flightaware".
Po prvním spuštění je vhodné spustit příkaz "sudo raspi-config" pro dokončení plného nastavení vlastního Raspberry.
┌───────────────────────────┤ Raspberry Pi Software Configuration Tool (raspi-config) ├────────────────────────────┐ │ │ │ 1 Expand Filesystem Ensures that all of the SD card storage is availabl │ │ 2 Change User Password Change password for the default user (pi) │ │ 3 Enable Boot to Desktop/Scratch Choose whether to boot into a desktop environment, │ │ 4 Internationalisation Options Set up language and regional settings to match your │ │ 5 Enable Camera Enable this Pi to work with the Raspberry Pi Camera │ │ 6 Add to Rastrack Add this Pi to the online Raspberry Pi Map (Rastrac │ │ 7 Overclock Configure overclocking for your Pi │ │ 8 Advanced Options Configure advanced settings │ │ 9 About raspi-config Information about this configuration tool │ │ │ │ <Select> <Finish> │ └──────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
┌───────────────────────────┤ Raspberry Pi Software Configuration Tool (raspi-config) ├────────────────────────────┐ │ │ │ A1 Overscan You may need to configure overscan if black bars are present on display │ │ A2 Hostname Set the visible name for this Pi on a network │ │ A3 Memory Split Change the amount of memory made available to the GPU │ │ A4 SSH Enable/Disable remote command line access to your Pi using SSH │ │ A5 Device Tree Enable/Disable the use of Device Tree │ │ A6 SPI Enable/Disable automatic loading of SPI kernel module (needed for e.g. PiFace) │ │ A7 I2C Enable/Disable automatic loading of I2C kernel module │ │ A8 Serial Enable/Disable shell and kernel messages on the serial connection │ │ A9 Audio Force audio out through HDMI or 3.5mm jack │ │ A0 Update Update this tool to the latest version │ │ │ │ <Select> <Back> │ └──────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
Pokud se rozhodneme používat grafické rozhraní a chceme se na něj vzdáleně připojit, můžeme nainstalovat RDP server který je následně přístupný na portě 3389:
sudo apt-get install xrdp
Napájení
Raspberry Pi je napájeno přes USB mini kde jsou zapojené jen napájecí piny. Proto je potřeba mít zdroj 5V. Je také potřeba aby byl zdroj dostatečně "stabilní". Při testech u 2A zdroje nastávalo odpojení USB donglu. Při výměně jen za 1A se tento problém neprojevil a bylo vše v pořádku ! Z toho plyne že i 1A zdroj může plně dostačovat, pokud je ale stabilní a nijak na výstupu nekolísá.
Odpojení USB zařízení bylo signalizované v dmesg výpisem "USB disconnect, device number 35".
Flightradar24
Server Flightradar24.com zobrazuje jednotlivá letadla na obloze. Využívá dobrovolníků, kteří přijímají ADS-B data vysílané letadly a tyto data předávají.
Pokud chceme sdílet svoje data, je nutné se zaregistrovat. Zda zadáme svoji email adresu a souřadnice umístění přijímače. Následně bude na uvedenou adresu zaslán registrační klíč a kód radaru.
Nastavení:
Prvotní nastavení přijímače provedeme příkazem "sudo fr24feed --signup". Následně jsme vyzváni k nastavení:
Než budete pokračovat, prosím ujistěte se, že: 1 - Vaše ADS-B přijímač připojen k tomuto počítači, nebo je přístupná po síti. 2 - Znáte zeměpisné souřadnice vaše antény na 4 desetinná místa a nadmořskou výšku ve stopách. 3 - Máte pracovní emailovou adresu, která bude použita pro korespondenci s vámi. 4 - Služba fr24feed je zastavena. Pokud tomu tak není, spusťte: sudo service fr24feed stop Krok 1.1 - Zadejte vaší emailovou adresu (username@domain.tld) $: Krok 1.2 - Pokud jste použili FR24 s ADS-B údajů dříve, zadejte váš klíč sdílení. Pokud si nepamatujete svůj klíče pro sdílení, použijte prosím formulář pro vytvoření: http://feed.flightradar24.com/forgotten_key.php V opačném případě nechte pole prázdné a pokračovat. $: Krok 1.3 - Chtěli byste se podílet na matematických výpočtů? (yes/no) $: Krok 2 - Zadejte nejbližší kód letiště (IATA or ICAO) Potřebujeme znát vaše antény přibližnou polohu filtrovat falešnou provoz, jakož i k tomu, aby pozemní pozice dekódování. Můžete buď zadat nejbližší kód letiště nebo ponechte pole prázdné, aby přesnou polohu antény. Pokud je vaše anténa je dál než 20 mil od nejbližšího letiště důrazně doporučujeme poskytovat svou pravou pozici, místo, jak to může ovlivnit výkon dekodér. Zadejte kód letiště nebo nechte prázdné $: DŮLEŽITÉ: Při výpočtech MLAT umístění antény by měly být zapsány velmi přesný! Krok 3.A - Vložte zeměpisnou šířky umístění antény (DD.DDDD) $: Krok 3.B - Vložte zeměpisnou délku umístění antény (DDD.DDDD) $: Krok 3.C - Vložte nadmořskou výšku umístění antény (ve stopách) $: Flightradar24 může, v případě potřeby, použijte emailovou adresu, aby vás kontaktovat ohledně zdroji dat. Chtěli byste i nadále používat toto nastavení? Zadejte svou volbu (ano / ne) $:
Případné přenastavení, jen vlastního zdroje dat lze provést příkazem "sudo fr24feed --reconfigure --fr24key=0123456789ABCDEF" kde samozřejmě key odpovídá dříve přiřazenému kódu. Toto přenastavení je také možné provést přes web rozhraní a to na adrese přijímače na portě 8754.
1 - DVBT Stick (USB) ----------------------------------------------------- 2 - SBS1, SBS1er or SBS3 (USB/Network) 3 - ModeS Beast (USB/Network) 4 - AVR Compatible (DVBT over network, etc) 5 - microADSB (USB/Network) Zadejte typ vašeho přijímače (1-5) Krok 4.2 - Vyberte dump1090 variantu: 1 - Původní Salvatore Sanfilippo Varianta 2 - Malcolma Robb je vidlice Krok 4.3 - Zadejte své další dump1090 argumenty nebo nechte prázdné ....
FlightAware
Dalším serverem který také zobrazuje data z ADS-B přijímači je FlightAware. Navíc ale poskytuje zpětně dobrovolníkům informace vypočítané na základě informaci MLAT. Také je zde funkční webové rozhraní kde je přehled stavu a také mapa ze zobrazením letadel. Postup zprovoznění přijímače nalezneme též na jejich stránkách. Vlastní instalace SDmicro image je stejná pro všechny Raspberry.
Je zde ale rozdíl v přihlášení, kdy login je opět "pi", ale heslo je "flightaware". To ale po spuštění není přímo třeba. Data jsou po zapnutí ihned posílána na server. To že je vše v pořádku se dá podívat na přehledu. Přesto aby jsme měli práva, jakožto naši odměnu za poslaná data je dobré si založit účet.
Pokud se nepovede automatické spárování (probíhá na základě veřejné IP adresy), je možné nastavení ruční. Po přihlášení na Raspberry zadáme:
sudo piaware-config flightaware-user <username> flightaware-password
poté budeme vyzváni k zadání hesla pro FlightAware. Verze 3.1 je již přednastavená aby poskytla všechny dostupné informace. Proto není potřeba ji standardně přenastavovat. Přesto můžeme přenastavit potřebné parametry. Jejich seznam a aktuální nastavení získáme příkazem:
sudo piaware-config
Poté by se již měly informace párovat na náš účet. To vše je v pořádku bude také potvrzeno emailem.
Pokud bude vše v pořádku, tak jsou následně otevřené porty:
TCP 30002 Raw - netříděná data ve formátu AVR (Beast Raw Feed) (dump1090, bez MLAT) TCP 30003 Zpracovaná data ve formátu BaseStation (dump1090, bez MLAT) TCP 30005 Raw - netříděná data ve formátu Beast Raw Feed (dump1090, bez MLAT) TCP 30105 Pouze MLAT data ve formátu Beast Raw Feed (pro FlightFeeders od verze 7.x) TCP 30106 Pouze MLAT data v rozšířeném formátu BaseStation (pro FlightFeeders od verze 7.x) TCP 22 - SSH připojení TCP 80 - Pro webový přístup TCP 8080 - Pro webové sledování letadel TCP 30104 - pro příjem dat z jiných zařízení ve formátu Beast Raw Feed. Data budou přidány do mapy, na port 30005 a PiAware. Nebude ale z nich počítám MLAT)
Nová verze image PiAware má podporu IP6. Bohužel v tomto případě ale není funkční přeposílání dat z MLAT informacemi přes IP4 pro další zpracování. Proto je nutné IP6 zakázat. To se dá docílit několika způsoby. Zde jeden přikládám, který zablokuje přímo načtení modulu pro IP6:
sudo echo "blacklist ipv6" > /etc/modprobe.d/blacklist.conf
Pokud chceme data poskytovat i sdružení HKFree, můžeme doinstalovat mlat klienta, který odesílá potřebná data. Na oplátku nám pak doplňuje informace o pozici letadel. Doinstalování můžeme provést:
sudo apt-get install python3-dev wget http://radar.slapnet.cz/deb/mlat-client_0.2.6_armhf.deb sudo dpkg -i mlat-client_0.2.6_armhf.deb
Následně je potřeba samozřejmě provést provést nastavení v souboru /etc/default/mlat-client. Viz Mlat Client
RTL-SDR
Prvně si stáhneme nejaktuálnější image distribuce pro Raspberry. V našem případě nám postačuje verze "Lite". Tu nakopírujeme na SD kartu a spustíme vlastní Raspberry. Po přihlášení (login: pi / raspberry) doporučuji provést prvotní nastavení:
sudo raspi-config
Zde nastavíme "1 Expand Filesystem" aby byla k dispozici celá kapacita SD karty. Dále provedeme lokalizaci v "4 Internationalisation Options". Komu se nelíbí původní heslo, tak jej může změnit "2 Change User Password".
Jakmile budeme mít připravenou distribuci musíme doinstalovat programy které nám umožní vlastní instalaci ovladačů rtl-sdr:
sudo apt-get install git sudo apt-get install cmake sudo apt-get install libusb-1.0-0.dev sudo apt-get install build-essential
Zkráceně: " sudo apt-get install git cmake libusb-1.0-0.dev build-essential ". Je samozřejmě možné že některé programy mohou být již v distribuci zahrnuty.
Pak pokračujeme vlastní instalací ovladačů rtl-sdr:
git clone git://git.osmocom.org/rtl-sdr.git cd rtl-sdr/ mkdir build cd build cmake ../ make sudo make install sudo ldconfig sudo cp rtl-sdr.rules /etc/udev/rules.d/
Nakonec zablokujeme načtení původních ovladačů rtl v souboru raspi-blacklist.conf a vše restartujeme:
sudo nano /etc/modprobe.d/raspi-blacklist.conf blacklist dvb_usb_rtl28xxu blacklist rtl2832 blacklist rtl2830 sudo reboot
Po znovu přihlášení můžeme příkazem rtp_test -t ověřit, že je vše v pořádku.
Bohužel součástí instalace není skript, který by zajistil automatické spuštění po startu. Proto jsem se pokusil vytvořit následující. Jeho podstatnou výhodou je, že umožňuje spuštění RTL TCP serveru pro všechny klíčenky, které jsou připojeny.
#!/bin/sh # ### BEGIN INIT INFO # Provides: skeleton # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Example initscript # Description: This file should be used to construct scripts to be # placed in /etc/init.d. This example start a # single forking daemon capable of writing a pid # file. To get other behavoirs, implemend # do_start(), do_stop() or other functions to # override the defaults in /lib/init/init-d-script. ### END INIT INFO # Author skriptu: Tydyt # Nastaveni adresy na ktere RTL TCP server posloucha: # 0.0.0.0 - server nasloucha na vsech svych adresach # 127.0.0.1 - server posloucha jen na adrese lokalhost (nelze se vzdalene pripojit) # x.x.x.x - server nasloucha na konkretni adrese (adresa musí byt k dispozici) # auto - skript nastavi automaticky vnejsi IP adresu z eth0 # hostname - skript nastavi automaticky IP adresu z hostname NET="0.0.0.0" # Seznam RTL SDR zarizeni ktere se maji pouzit # Jednotlive ID oddelit mezerou # 0 - pouzije se prvni zarizani ID 0 # 0 4 5 - pouziji se zrizeni ID 0, 4, 5 # all - pouziji se vsechny zarizeni DEVICE="all" # Vychozi TCP port pro server PORT="1234" # Zpusob vytvoreni TCP portu pro jednotlive zarizani # sum - k vychozimu portu je pricteno ID zarizeni ($PORT + $DEVICE) # add - k vychozimu portu je pridano ID zarizeni ($PORT$DEVICE) PORT_ADD="sum" # Moznost pridani dalsich parametru pro server. Tyto hodnoty mohou byt # zmeneny vlastni aplikaci ktera se k RTL RTP serveru pripoji. # -f frequency to tune to [Hz] # -g gain (default: 0 for auto) # -s samplerate in Hz (default: 2048000 Hz) # -b number of buffers (default: 15, set by library) # -n max number of linked list buffers to keep (default: 500) # -P ppm_error (default: 0) # PROG_ARGS="" # Nazev vlastniho skriptu rtl_tcp PROGRAM=rtl_tcp # Cesta k vlastnimu skriptu rtl_tcp PROGDIR=/usr/local/bin # Adresar ze seznamem spustenych programu PIDDIR=/var/run # Zacatek skriptu PATH=/sbin:/usr/sbin:/bin:/usr/bin if [ ! -f $PROGDIR/$PROGRAM ]; then echo "Nebyl nelezen skript rtl_tcp !" exit 0 fi # Zjisteni IP adresy if [ "$NET" = "auto" ]; then NET=`ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'` fi if [ "$NET" = "hostname" ]; then _IP=$(hostname -I) || true if [ "$_IP" ]; then NET=$_IP else NET="0.0.0.0" fi fi # Nastav id z prikazovaho radku jsouli zadane if [ $# -gt 1 ]; then DEVICE="" for ID in $@; do if [ ! "$ID" = "$1" ]; then DEVICE="$DEVICE $ID" fi done fi # Zjisteni vsech SDR zarizeni jeli nastaveno all if [ "$DEVICE" = "all" ]; then DEVICE=`$PROGDIR/rtl_test -t 2>&1 | grep 'Realtek' | cut -d: -f1 | awk '{ print $1}'` fi start(){ for ID in $DEVICE; do if [ "$PORT_ADD" = "sum" ]; then PORT_ID=$(($PORT+$ID)) else PORT_ID="$PORT$ID" fi if [ "$PROG_ARGS" ]; then ARGS="-a $NET -p $PORT_ID $PROG_ARGS" else ARGS="-a $NET -p $PORT_ID" fi startone $ID $PORT_ID done } stop(){ for ID in $DEVICE; do stopone $ID done } startone(){ PIDFILE="$PIDDIR/$PROGRAM-$1.pid" if [ -f $PIDFILE ]; then echo "Server RTL TCP na zarizeni ID $1 JE jiz spusten !" return else echo -n "Server RTL TCP na zarizeni ID $1 ... " $PROGDIR/$PROGRAM -d $1 $ARGS >> /dev/null 2>&1 & PID=$! sleep 1 PIDR=`pidof $PROGRAM` if [ "$PIDR" ]; then for ID in $PID; do if [ $ID = $PID ]; then echo $PID > "$PIDFILE" echo "Je spusten na porte TCP $2" return fi done fi echo "Se nepodarilo spustit ! ($ARGS)" fi } stopone(){ PIDFILE="$PIDDIR/$PROGRAM-$1.pid" if [ ! -f $PIDFILE ]; then echo "Server RTL TCP na zarizeni ID $1 NENI spusten !" return else echo -n "Server RTL TCP na zarizeni ID $1 ... " pid2kill=`cat $PIDFILE` kill -9 $pid2kill rm $PIDFILE echo "Je ukoncen." fi } killall(){ echo -n "Ukonceni vsech RTL TCP serveru: " PID=`pidof $PROGRAM` echo "pid: $PID" if [ "$PID" ]; then for ID in $PID; do kill -9 $ID done fi PIDFILE="$PIDDIR/$PROGRAM-*.pid" rm $PIDFILE } case "$1" in start) start ;; stop) stop ;; restart) killall start ;; kill) killall ;; *) echo $"Moznosti: $0 {start|stop|restart|kill} [ID_zarizeni] [ID_zarizeni_1] [ID_zarizeni_2]" retval=1 esac
Dump1090
Jedná se o vlastní program, který snímá data z ADS-B vysílačů a následně provede jejich zpracování a dekódování. Originální informace jsou na https://github.com/mutability/dump1090
Prvně se doinstaluje odkaz zdroje dat včetně platných klíčů. Pak teprve provedeme vlastní instalaci:
wget https://github.com/mutability/mutability-repo/releases/download/v0.1.1/mutability-repo_0.1.1_armhf.deb sudo dpkg -i mutability-repo_0.1.1_armhf.deb sudo apt-get update && sudo apt-get install dump1090-mutability
Po nainstalování je vhodné provést konfiguraci
sudo dpkg-reconfigure dump1090-mutability
Případně pak můžeme editovat soubor "/etc/default/dump1090-mutability" kde jsou uložené hodnoty pro dump1090-mutability.
Vlastní Image
Pro ty, kteří se bojí vytváření a instalace jednotlivých programů pod Linuxem a přesto si chtějí vytvořit ADS-B postavený na Raspberry jsem připravil nový image SD karty pro tento účel. Popis jak provést vlastní instalaci a nastavení je věnována vlastní stránka ADS-B Image.
Virtual Radar
Pro tento pěkná program je vyhrazena samostatná stránka: Vizualizace leteckého provozu.
FlightAirMap
Další zajímavý radar: https://github.com/Ysurac/FlightAirMap
ACARS
ACARS – Aircraft communiactions Addressing & Reporting System Reporting Sys
Zajímavý odkaz na dokument https://measure.feld.cvut.cz/groups/lis/download/prednasky/EPS1/ACARS.pdf
Kanály pro Evropu:
- 131.725 MHz - Primární kanál pro Evropu
- 131.525 MHz - Sekundární kanál pro Evropu
- 136.900 MHz - Další kanál pro Evropu
- 1.545 GHz - Satelitní kanál
Odkaz na výpočet https://www.jcoppens.com/ant/helix/calc.en.php
Odkazy
Odkazy které mi pomohli k zprovoznění ADS-B příjmu a souvisejícím tématům:
- MiniPC Respberry
- Návod Securitysys.eu
- Návod na anténu Anténa pro 1090 MHz
- Radioamatérské stránky zabívající se i sledováním letadel www.kmitocty.cz
- Kanálový zesilovač Teroz
- Vizualizace vlastních dat VirtuaRadar
Stránky na kterých též je možné sledovat vlastní letecký provoz, nebo mají na dané téma přímou vazbu:
- Letiště Praha Přistávací dráha
- Letecký provoz Flightradar24, Radarbox24, Planefinder
- Program pro automatickou aktualizaci databáze pro VR www.gatwickaviationsociety.org.uk
- Lodní provoz Marinetraffic
A takto může vypadat vlastní přijímač: