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/07/21 15:51] – [Spuštění pySDR na prezentačním počítači] roman | cs:pysdr [2015/08/27 16:09] – [Socket spojeni] 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 22: | Řádek 23: | ||
Po stažení a instalaci podle readme na Githubu a zapnutí jacku (například přes qjackctl) můžeme program spustit z pracovního adresáře pomocí. | Po stažení a instalaci podle readme na Githubu a zapnutí jacku (například přes qjackctl) můžeme program spustit z pracovního adresáře pomocí. | ||
- | ./waterfall.py | + | ./pysdr-waterfall |
Otevře se nám okno, které v případě, že je připojený nějaký zdroj dat, obsahuje spektrogram | Otevře se nám okno, které v případě, že je připojený nějaký zdroj dat, obsahuje spektrogram | ||
Řádek 73: | Řádek 74: | ||
Potom PySDR můžeme spustit pomocí | Potom PySDR můžeme spustit pomocí | ||
- | ./waterfall.py | + | ./pysdr-waterfall |
| | ||
Řádek 82: | Řádek 83: | ||
- | ===== Generování zvukového výstupu - Whistle | + | ===== Slyšitelný výstup |
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 ==== | ||
+ | |||
+ | Whistle je konfugorovatelný generátor signálu dají se v něm za sebe různě poskládat operace, které umí. Je to takové hodně malé GNURadio, jen to umí běžet uvnitř callbacku JACKu. Umí to dělat Kaiser-Bessel [[http:// | ||
+ | |||
+ | Např.: | ||
+ | |||
+ | ./whistle -p freqx, | ||
+ | |||
+ | pro poslech meteorů. Tahle sekvence operací je nastavená jako výchozí, když se tomu -p nepředá. | ||
+ | |||
+ | ./whistle -p freqx, | ||
+ | | ||
+ | Před výpočtem FIR filtru se signal posune o 31.8 kHz dolu. | ||
+ | |||
+ | Spočítá se FIR, který má 201 taps. | ||
+ | |||
+ | Pásmová propust od 0 Hz do 400 Hz. Útlum 200 dB. | ||
+ | |||
+ | Výstup z filtru se posune o 500 Hz nahoru. | ||
+ | |||
+ | Výstup se zesílí 200x. | ||
Řádek 95: | Řádek 118: | ||
sox SVAK1_1386323982726.wav -c 2 -t f32 -r 44100 - repeat 20 | jack-stdin pysdr: | sox SVAK1_1386323982726.wav -c 2 -t f32 -r 44100 - repeat 20 | jack-stdin pysdr: | ||
| | ||
- | ===== Prezentační vrstva | + | ===== Prezentace signálu z detekční stanice ===== |
Pro přímé zobrazování detekovaných meteorů může běžet živý waterfall i na jiném počítači, | Pro přímé zobrazování detekovaných meteorů může běžet živý waterfall i na jiném počítači, | ||
Řádek 182: | Řádek 205: | ||
=== Jacktrip === | === Jacktrip === | ||
- | Jacktrip je metoda pro přenášení zvukových dat přes jack, která synchronizuje vzájemně dvě instance jacku běžící na různých strojích.. | + | Jacktrip je metoda pro přenášení zvukových dat přes jack, která synchronizuje vzájemně dvě instance jacku běžící na různých strojích.. V Ubuntu je potřeba jacktrip zkompilovat, |
- | sudo apt-get install | + | sudo apt-get install |
+ | git clone https:// | ||
+ | cd ./ | ||
+ | ./build | ||
== Server == | == Server == | ||
Řádek 194: | Řádek 220: | ||
jacktrip -q 8 -r 3 -s | 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 == | == Klient == | ||
+ | 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 | ||
- | Kde v jeho menu nastavíme správnou vzorkovací frekvenci. Pak spustíme jacktrip klienta s parametrem IP adresy detekční stanice. Jacktrip je ale potřeba zkompilovat, | + | qjackctl |
- | sudo apt-get install libasound2-dev | + | |
- | svn co http:// | + | Kde v jeho menu nastavíme správnou vzorkovací frekvenci. Pak spustíme |
- | cd ./ | + | |
- | ./build | + | |
- | + | ||
- | Nyní jej můžeme spustit: | + | |
./jacktrip -z -c 192.168.1.21 | ./jacktrip -z -c 192.168.1.21 | ||
Řádek 217: | Řádek 236: | ||
`resolveip -s popelnice.local` | `resolveip -s popelnice.local` | ||
+ | | ||
+ | nebo například | ||
+ | | ||
+ | avahi-resolve -4 -n meteor4.local | ||
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. | 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í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 | ||
+ | |||
+ | jacktrip -s -o10 | ||
+ | |||
+ | kde za parametrem -o je offset od portu 4464, pro každé nové připojení tento offset musí být jiný. | ||
+ | |||
+ | Na uživatelském počítači zadáte: | ||
+ | |||
+ | jacktrip -c -o10 | ||
+ | |||
+ | 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 -p21928 | ||
+ | | ||
+ | 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 // | ||
+ | |||
+ | [Options] | ||
+ | General\NumPorts=1 | ||
+ | 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. | ||
+ | |||
+ | |||
+ | ==== Socket spojeni ==== | ||
+ | |||
+ | PySDR se může připojit na stanici přímo pomocí netcat. Příklad použití je následující. | ||
+ | nc radio-TEST.local 3701 | ./ | ||
+ | |||
| |
cs/pysdr.txt · Poslední úprava: 2020/08/09 19:40 autor: kaklik