cs:pysdr
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verzeNásledující verzeObě strany příští revize | ||
cs:pysdr [2014/09/24 22:09] – [Spuštění pySDR na prezentačním počítači] kaklik | cs:pysdr [2016/11/27 09:27] – [Základní vlastnosti] kaklik | ||
---|---|---|---|
Řádek 2: | Řádek 2: | ||
Jde o program určený ke zobrazení živého waterfallu (spektrogramu) ze streamu dat. Ten může být poskytnut přes unixovou rouru, nebo Jack audio systém. | Jde o program určený ke zobrazení živého waterfallu (spektrogramu) ze streamu dat. Ten může být poskytnut přes unixovou rouru, nebo Jack audio systém. | ||
+ | Nástroj je užitečný pro debugging [[http:// | ||
===== Základní vlastnosti ===== | ===== Základní vlastnosti ===== | ||
Řádek 10: | Řádek 11: | ||
* Dynamická změna měřítka pomocí myši | * Dynamická změna měřítka pomocí myši | ||
+ | |||
+ | {{youtube> | ||
{{: | {{: | ||
Řádek 74: | Řádek 77: | ||
./ | ./ | ||
- | | ||
- | + | ===== Slyšitelný výstup | |
- | ==== Použití s gnuradiem | + | |
- | + | ||
- | {{: | + | |
- | + | ||
- | + | ||
- | ===== Generování zvukového výstupu - Whistle | + | |
Pro vygenerování audiosignálu z RF signálu přijímaného stanicí byt vytvořen speciální program **whistle**, | Pro vygenerování audiosignálu z RF signálu přijímaného stanicí byt vytvořen speciální program **whistle**, | ||
+ | ==== Použití whistle ==== | ||
- | ==== Princip funkce programu ==== | + | Whistle je konfugorovatelný generátor |
- | + | ||
- | Program provádí frekvenční konverzi komplexním násobením | + | |
- | + | ||
- | ===== Přehrávání z audiosouboru ===== | + | |
- | + | ||
- | sox SVAK1_1386323982726.wav -c 2 -t f32 -r 44100 - repeat 20 | jack-stdin pysdr: | + | |
- | + | ||
- | ===== Prezentační vrstva detekční stanice ===== | + | |
- | + | ||
- | Pro přímé zobrazování detekovaných meteorů může běžet živý waterfall i na jiném počítači, než na kterém běží detekční stanice. Blokové schéma systému pak vypadá následovně: | + | |
- | + | ||
- | {{: | + | |
- | + | ||
- | + | ||
- | Jednotlivé bloky jsou výše zmíněné programy. | + | |
- | + | ||
- | + | ||
- | ==== Spuštění pySDR na prezentačním počítači ==== | + | |
- | + | ||
- | Pokud je stanice připojena datovou linkou s dostatečnou propustností, tak je možné pustil pySDR lokálně a prohlížet si přitom data ze vzdálené stanice. | + | |
- | + | ||
- | + | ||
- | === SSH === | + | |
- | + | ||
- | Jednou z možností je použití trubek přes ssh spojení. V tom případě budeme postupovat následovně. | + | |
- | + | ||
- | | + | |
- | - Spustíme pySDR ' | + | |
- | - Připojíme se na vzdálenou stanici a přesměrujeme data do unixové trubky: | + | |
- | + | ||
- | ssh radio.ust.cz " | + | |
- | + | ||
- | V qjackctl pak přetažením myší spojíme stdin a pysdr. Nyní by měl být v pysdr vidět waterfall ze vzdálené stanice. | + | |
- | + | ||
- | + | ||
- | === NetJack === | + | |
- | + | ||
- | sudo apt-get install qjackctl | + | |
- | + | ||
- | + | ||
- | Uživatel musi byt v skupine audio | + | |
- | + | ||
- | sudo adduser kaklik audio | + | |
- | + | ||
- | a v / | + | |
- | + | ||
- | @audio - rtprio 99 | + | |
- | @audio - memlock unlimited | + | |
- | + | ||
- | Pokud se to neudala, tak spusteni jakck zkonci takto: | + | |
- | + | ||
- | jackdmp 1.9.8 | + | |
- | Copyright 2001-2005 Paul Davis and others. | + | |
- | Copyright 2004-2011 Grame. | + | |
- | jackdmp comes with ABSOLUTELY NO WARRANTY | + | |
- | This is free software, and you are welcome to redistribute it | + | |
- | under certain conditions; see the file COPYING for details | + | |
- | JACK server starting in realtime mode with priority 10 | + | |
- | Segmentation fault (core dumped) | + | |
- | + | ||
- | + | ||
- | + | ||
- | == Lokalni spojeni Jack == | + | |
- | + | ||
- | Potom lze jack spustit: | + | |
- | + | ||
- | jackd -d alsa -dhw:1 | + | |
- | + | ||
- | kde hw:1 cislo je urcene podle / | + | |
- | + | ||
- | aplay -l | + | |
- | + | ||
- | + | ||
- | == Sitove spojeni Jack == | + | |
- | + | ||
- | + | ||
- | Nejdrive musi instalace jack fungovat lokalne viz vise. | + | |
- | + | ||
- | Nasledne na master pocitaci spustime: | + | |
- | + | ||
- | qjackctl | + | |
- | + | ||
- | a nastavime zdroj dat z remote klienta na lokalni siti: | + | |
- | + | ||
- | jack_netsource -H kaklik-netbook.local | + | |
- | + | ||
- | Na remote klientovi | + | |
- | + | ||
- | jackd -R -d netone | + | |
- | + | ||
- | Zdroj http:// | + | |
- | + | ||
- | === Jacktrip === | + | |
- | + | ||
- | Jacktrip | + | |
- | + | ||
- | sudo apt-get install jacktrip dbus-x11 | + | |
- | + | ||
- | == Server == | + | |
- | + | ||
- | Na staničním počítači musíme spustit instanci jacku, která bude číst data ze správné zvukovky. V tomto případě je to externí USB zvukovka s hw:1 | + | |
- | jackd -R -dalsa -dhw:1 | + | |
- | + | ||
- | Dále pak spustíme jacktrip server | + | |
- | + | ||
- | jacktrip -q 8 -r 3 -s | + | |
- | + | ||
- | Na vizualizačním počítači pak spustíme istanci jacku, která musí mít nastavenou stejnou vzorkovací frekvenci, jako instance detekční stanici, zde si ale můžeme pomoci grafickým nástrojem qjackctl | + | |
- | + | ||
- | qjackctl | + | |
- | == Klient == | + | Např.: |
+ | ./whistle -p freqx, | ||
- | Kde v jeho menu nastavíme správnou vzorkovací frekvenci. Pak spustíme jacktrip klienta s parametrem IP adresy detekční stanice. Jacktrip | + | pro poslech meteorů. Tahle sekvence operací |
- | | + | |
- | svn co http:// | + | |
- | cd ./ | + | |
- | ./build | + | |
| | ||
- | Nyní jej můžeme spustit: | + | Před výpočtem FIR filtru se signal posune o 31.8 kHz dolu. |
- | | + | Spočítá se FIR, který má 201 taps. |
- | protože jacktrip nepodporuje zeroconf, tak můžete nechat IP adresu doplnit bash | + | Pásmová propust od 0 Hz do 400 Hz. Útlum 200 dB. |
- | `resolveip -s popelnice.local` | + | Výstup z filtru se posune o 500 Hz nahoru. |
- | Po spojení s protistanicí by se v zapojovací desce qjackctl mělo objevit zařízení jacktrip. Parametr -z v tomto případě znamená poskytnutí nulových hodnot při podtečení bufferu. | + | Výstup |
- | ==Více klientů== | ||
- | Pokud chcete mít připojení ke stanici pro více uživatelů, | ||
- | Na straně serveru pro každého klienta musíte do nového terminálu zadat | + | ==== Princip fungování programu ==== |
- | jacktrip -s -o10 | + | Program provádí frekvenční konverzi komplexním násobením signálu |
- | kde za parametrem -o je offset od portu 4464, pro každé nové připojení tento offset musí být jiný. | + | ===== Přehrávání z audiosouboru ===== |
- | Na uživatelském počítači zadáte: | + | sox SVAK1_1386323982726.wav |
- | + | ||
- | jacktrip | + | |
- | + | ||
- | se stejným parametrem | + | |
- | + | ||
- | === QmidiNet === | + | |
- | + | ||
- | Qmidinet je aplikace, která slouží k přenosu Midi dat po síti. | + | |
- | + | ||
- | QmidiNet nainstalujete: | + | |
- | + | ||
- | sudo apt-get install qmidinet | + | |
- | + | ||
- | A spouští se stejným příkazem na straně serveru i u klienta. | + | |
- | + | ||
- | qmidinet | + | |
| | ||
- | kde za -p vložíte vlastní UDP port. Ještě je potřeba povolit připojení qmidinet k jacku. V grafickém prostředí to lze udělat snadno nastavením v nabídce ikony qmidinet. Přes příkazovou řádku je však potřeba vytvořit soubor // | + | ==== Socket spojeni ==== |
- | [Options] | + | PySDR se může připojit na stanici RMDS02D přímo pomocí netcat. Příklad použití je následující. |
- | General\NumPorts=1 | + | nc radio-TEST.local 3701 | ./ |
- | General\AlsaMidi=true | + | |
- | General\JackMidi=true | + | |
- | Network\Interface=eth0 | + | |
- | Network\UdpPort=21928 | + | |
- | Pak by se po spuštění qmidinet měla v qjackctl objevit QmidiNet propojka. | + | Kde radio-TEST.local je sitove jmeno stanice. V případě, že pysdr spouštíme rovnou na stanici, tak je to localhost. |
| |
cs/pysdr.txt · Poslední úprava: 2020/08/09 19:40 autor: kaklik