Uživatelské nástroje

Nástroje pro tento web

Tento překlad je starší než originální stránka a nejspíše i zastaralý. Zobrazit změny.
Překlady této stránky?:

cs:odroid

Toto je starší verze dokumentu!


Instalace ODROID stanice sítě Bolidozor

Tento návod předpokládá hardwarovou verzi stanice RMDS02C

Jako operační systém je nainstalováno Lubuntu 14.04 LTS.

Obraz operačního systému

Stáhneme obraz OS pro stanici s počítačem ODROID v Bolidozoru.

Stažený image dekomprimujeme a nakopírujeme na SD kartu. Název SD karty zjistíme po zasunutí do čtečky ve výpisu dmesg.

xz -d lubuntu_odroid.img.xz 
sudo dd if=lubuntu_odroid.img of=/dev/sdb bs=1M
sync

Po nakopírování obrazu na SD kartu z ní nabootujeme na ODROIDu a další nastavení provádíme přímo na něm.

Konfigurace image

Image na SDcard musíme upravit pro správné fungování v sítí.

V lubuntu je vytvořen účet odroid s heslem odroid. Uživatel odroid je sudoer. Heslo co nejdříve změníme pomocí příkazu passwd.

Změníme jméno stanice v souborech

/etc/hostname
/etc/hosts

Změníme MAC adresu v souboru

/etc/smsc95xx_mac_addr

Novou MAC adresu vygenerujeme přímo z příkazové řádky. To uděláme příkazem:

$(echo $FQDN|md5sum|sed 's/^\(..\)\(..\)\(..\)\(..\)\(..\).*$/02:\1:\2:\3:\4:\5/')

Tento způsob vygeneruje novou adresu založenou na absolutním doménovém jménu počítače. Je proto nutné nejdříve změnit název stanice. A až potom generovat novou MAC adresu pro odroid.

Změníme časové pásmo podle umístění stanice

sudo dpkg-reconfigure tzdata

Nakonec ještě zvětšíme partition ext4 pomocí GParted na plnou velikos cílové SDcard. Nebo použít odroid-config

Upravit image pro Bolidozor tak, aby rovnou pasoval na 16GB SD kartu.

Další kroky jsou zde popsány pro případ instalace from scratch nebo pro případ potíží se SW nebo HW. Na předpřipraveném image pro síť Bolidozor by měly být hotové. A můžeme pokračovat Spuštěním detekce na stanici

Instalace na čistý OS

Pokud nepoužijeme předpřipravený image, postupujeme podle následujících kroků.

Podpora GPS přijímače

Automatické ladění přijímače

Nejdříve nainstalujeme potřebné softwarové nástroje:

sudo apt-get install subversion python-setuptools python-smbus cython

Dále nainstalujeme programový balík pro komunikaci na I2C

sudo easy_install pymlab

Do /etc/modules přidáme řádek

i2c-dev

přidáme uživatele, pod kterým budeme stanici provozovat, do skupiny i2c a audio

sudo useradd -G i2c Username
sudo adduser Username audio

a restartujeme ODROID.

sudo reboot

Stáhneme softwarové nástroje pro stanici RMDS

svn co svn://svn.mlab.cz/MLAB/Designs/Measuring_instruments/RMDS02C/SW/Host_controller/ ~/Bolidozor

Změnit návod tak, aby využíval verze ladících skriptů z Bolidozor githubu.

Nyni spustíme ladící utilitu

cd ~/Bolidozor
sudo ./frequency_log.py 1 286.0788

Pokud máme nějaké potíže s I2C, použijeme I²C diagnostické nástroje podle MLAB návodu.

Správné obsazení I²C sběrnice po zapojení stanice má vypadat takto:

odroid@odroid:~/Bolidozor$ sudo i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- 51 -- -- -- 55 -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: 70 -- -- -- -- -- -- -- 

0x70 je modul I2Chub, 0x51 je měřící PIC, 0x55 je modul CLKGEN.

Nejdříve se ale musí namapovat I2CHUB tak, aby byly přístupné všechny zařízení na sběrnici. To se stane při alespoň jednom spuštění frequency_log.py .

JACK

Odinstalujeme pulseaudio

apt-get --purge remove pulseaudio pulseaudio-utils pavucontrol 

Nainstalujeme JACK, při dotazu instalátoru na realtime prioritu ji povolíme.

sudo apt-get install jackd2

Spustíme JACK server; interní zvukový adapter pro Playback, externí zvukový adapter připojený přes USB pro Capture.

jackd -r -d alsa -p 2048 -n 3 -r 48000 -P hw:0,0 -C hw:1,0

Pro kontrolu propojení aplikací spustíme

qjackctl

PySDR

git clone https://github.com/MLAB-project/pysdr

Podrobnější popis instalace je na stránce OpenGL waterfall display pySDR.

Kontrolní spuštění pysdr

Funkci rádia můžeme zkontrolovat pomocí pysdr a programu Whistle, který generuje zvukový výstup. Celý systém lokálně přímo na odroidu spustíme těmito příkazy:

~/Bolidozor/pysdr/pysdr-waterfall -d ./detectors/meteor_echo.py -b 8192
jack_connect system:capture_1 pysdr:input_i
jack_connect system:capture_2 pysdr:input_q
~/Bolidozor/pysdr/whistle/whistle -p freqx,-10400:kbfir,41,0,400,100:freqx,400:amplify,200
jack_connect system:capture_1 whistle:input_i
jack_connect system:capture_2 whistle:input_q
jack_connect whistle:output_i system:playback_1
jack_connect whistle:output_q system:playback_2

radio-observer

Přeložíme radio-observer. Přejmenujeme vytvořenou binárku radio-observeru na název stanice. K tomu vytvořime v home příslušný konfigurační soubor .nazev_stanice.json .

spustíme radio-observer, který si sám otevře konfigurační soubor se stejným názvem z home adresáře.

./nazev_stanice

Zároveň klient jacku je pak pojmenovaný nazev_stanice. To je užitečné v případě, že na jedné stanici potřebujeme z nějakého důvodu připojených více radio-observerů.

Alternativně však můžeme zvolený konfigurační soubor otevřít pomocí parametru -c tj.

./radio-observer -c konfigurační_soubor

Následně připojíme MIDI výstup radio-observeru na MIDI vstup PySDR.

jack_connect waterfall:midi_out pysdr:input_events

Spuštění detekce meteorů na stanici

Před prvním spuštěním musíme do domovského adresáře uživatele ODROID nakopírovat jeho konfigurační soubor nazev_binarky.json z adresáře se zdrojovými kódy radio-observer. Tento soubor musíme přejmenovat podle jména stanice a upravit jeho vnitřek podle umístění složky, do které budeme ukládat detekované meteory.

Popis konfiguračního souboru pro síť Bolidozor naleznete v popisu Radio-observeru.

Adresáře do kterých se budou ukládat data o meteorech, na které se odkazuje konfigurační soubor, musí existovat. Pokud neexistují, vytvořte je.

Detekci spustíme pomocí skriptu

~/Bolidozor/netstart.sh

Skript můžeme spustit přímo na stanici, nebo přes ssh s přesměrováním na vzdálený xserver. Příklad spuštění ssh s přesměrováním na xserver počítače, ze kterého provádíme přihlášení.

ssh odroid@nazev_stanice -X
~/Bolidozor/netstart.sh

Popis skriptu netstart.sh

ulimit -c unlimited
~/Bolidozor/frequency_log.py 1 286.0788&
jackd -r -d netone -i0 -I0 -o2 -O1 2>/dev/null&
sleep 3
qjackctl&
sleep 4
alsa_in -d hw:1,0 -r 48000 -q 4&
sleep 3
~/Bolidozor/ODROID3/ODROID3&
sleep 3
jack_connect alsa_in:capture_1 system:playback_1
jack_connect alsa_in:capture_2 system:playback_2
jack_connect ODROID3:midi_out system:playback_3

V tomto ukázkovém skriptu je název stanice ODROID3.

ulimit

Zajistí uložení core dump, pokud dojde v některé aplikaci k výjimce.

frequency_log.py

Automaticky ladí rádio, aby zázněj od nosné GRAVESu byl na 10,6 kHz.

jackd -r -d netone -i0 -I0 -o2 -O1

Spustí JACK server s výstupem na síť. Nejsou zapnuty žádné vstupní kanály, dva výstupy pro přenos I a Q, jeden výstup pro přenos MIDI pro přenos parametrů detekovaných meteorů z radio-observeru.

qjackctl

Můze se vynechat. Spustí grafickou aplikace, pomocí které je vidět, zda server běží a co je s čím propojeno.

alsa_in -d hw:1,0 -r 48000 -q 4

Spustí grabování ze zvukovky přes ALZA driver. Kvalita převzorkování je nastavena na nejvyšší.

~/Bolidozor/jmeno_stanice/jmeno_stanice

Spustí radio-observer, čímž se začnou ukládat detekované meteory do adresáře, který je specifikován v konfiguračním souboru .json .

jack_connect

Propojí všechny aplikace v případě, že je na síti připojena monitorovací stanice.

Monitorování detekovaných meteorů na PC

Na PC připojeném do sítě LAN mužeme spustit vizualizaci detekovaných meteorů, Vizualizaci spustíme následujícím sledem příkazů, které můžeme umístit do skriptu netmaster.sh ,

jackd -r -d alsa&
sleep 3
qjackctl&
sleep 3
~/git/pysdr/pysdr-waterfall&
#~/git/pysdr/pysdr-waterfall -d ~/git/pysdr/detectors/meteor_echo.py&
sleep 3
~/git/pysdr/whistle/whistle -p freqx,-10400:kbfir,41,0,400,100:freqx,400:amplify,200&
sleep 3
jack_netsource -H odroid -i2 -I1 -o0 -O0&

jackd

Spustí lokální JACK server.

qjackctl

Nástroj pro propojování aplikací v JACK.

pysdr-waterfall

Spustí waterfall zobrazení. V našem případě máme OpenGL waterfall display pySDR nainstalován do adresáře ~/git/pysdr. Pysdr do tohoto adresáře stáhneme pomocí příkazu

git clone https://github.com/MLAB-project/pysdr

Ve skriptu máme také zakomentovánu variantu se spuštěnou detekcí meteorů přímo v pysdr.

whistle

Generuje zvuk meteoru.

jack_netsource

Připojí JACK přes síť k ODROIDu.

Je dobré také vytvořit dávku netstop.sh

killall whistle
killall jack_netsource
killall jackd
killall qjackctl

která vše zastaví. Pysdr-waterfall musíme zastavit ručně zavřením jeho okna.

Pokud je vše spuštěno, musíme na obou počítačích pomocí qjackctl nebo pomocí přikazu jack_connect vše pospojovat.

Propojení JACK komponent by mělo vypadat takhle na Odroidu:

a takhle na PC:

Takhle pak vypadá meteor detekovaný na zvukovém proudu v pysdr

a takhle radio-observerem

Skripty pro odesílání dat

Skripty pro odesílání dat na space.astro.cz nejsou pro radio-observer ještě upraveny.

cs/odroid.1411716652.txt.gz · Poslední úprava: 2014/09/26 07:30 autor: kaklik