24.07.2019, 15:29
Guten Tag,
ich habe in meiner Sammlung einige HF-Telefonrundspruchempfänger von Biennophone. Das sind Radioempfänger mit 6 eingestellten Festfrequenzen im Langwellenbereich. Durch Knopfdruck können einzelne Kanäle ausgewählt werden.
HFTR.jpg (Größe: 52,82 KB / Downloads: 307)
Der HF-Telefonrundspruch nutzte als Kabelverteilanlage das normale analoge Telefonnetz und war in der Schweiz und Italien wohl ein lange gern genutzter und abonnierter Dienst. Heute existiert er wohl nicht mehr beziehungsweise es gibt nur noch sehr kleine private Netze. Gesendet wurde auf folgenden Kanälen.
Kanal 1: 175 kHz Programm: "international" analog dem Programm von "Schweizer Radio international"
Kanal 2: 208 kHz Programm: RSR1 "la première"
Kanal 3: 241 kHz Programm: "klassische Musik"
Kanal 4: 274 kHz Programm: RSI1 "rete uno"
Kanal 5: 307 kHz Programm: DRS1
Kanal 6: 340 kHz Programm: "leichte Musik"
Auch mit einen normalen LW-Radio konnte man den HF-TR empfangen, allerdings mit reduzierter Audiobandbreite. Lange habe ich nach einer
Lösung gesucht meine Empfänger alltagstauglich nutzbar zu machen. Hier im hohen Norden gab es den HF-TR meines Wissens sowieso nie. Es gab in der Bastlerszene und auch offiziell eine UKW nach LW Umsetzerlösung. Man brauchte also sechs solche Umsetzer die dann UKW Programme in das eigene Kabelnetz übertrugen. Das war relativ aufwendig und man konnte nur die lokalen UKW-Programme umsetzen, insgesamt also unbefriedigend. Vor einigen Jahren durfte ich mit einem Ettus-SDR aus der Firma einen Abend spielen und konnte dort mit einem PC spielend diese sechs Kanäle auf der LW erzeugen. Zumindest die Träger und ein paar synthetisch erzeugte Töne. Mehr war mit meinen Kenntnissen nicht drin. Die PC-Technik war damals auch noch nicht so leistungsfähig wie heute und der Ettus-SDR war sündhaft teuer. Nichts für den Privatmann. Heute, ein paar Jahre später, möchte ich den Versuch nochmal wiederholen. Das Ettus-SDR wurde durch die von Bernhard vorgestellte FL2000-Grafikkartenlösung ersetzt. Statt 1000 Euro nur noch 10 Euro, das ist für den Hobbyisten tragbar.
Zunächst einmal habe ich nach einer Lösung gesucht sechs Soundkarten auf einem PC zu installieren. Für jedes Internetprogramm das von vlc kommt eine Soundkarte. Linux bringt eine elegante Lösung mit. Es ist das Kernelmodul snd_aloop. Mit sudo modprobe snd_aloop [Optionen] kann man nahezu beliebig viele virtuelle Soundkarten im System anlegen. Danach startet man sechsmal vlc mit jeweils einer anderen Stream-URL und leitet die Ausgabe auf die Eingänge der virtuellen Soundkarten. Die Ausgänge der virtuellen Soundkarten liest man in GNU-Radio ein.
Mein erstes Testprogramm war noch etwas unglücklich zusammengestellt und ressourcenfressend.
Ich habe hier jeden Träger direkt mit der Zielsamplerate von 8.82MSPS erzeugt. Das ist für kleinere PCs zuviel, so auch für mein SDR-Testsystem. Ich konnte zwar alle sechs Träger erzeugen, aber nur noch drei davon in Echtzeit modulieren. Erst ein moderner PC mit Intel Core-I7 Prozessor hatte keine Probleme das Python-Programm in Echtzeit abzuarbeiten!
Danach habe ich die Trägergenerierung umgestellt. Alle Träger werden nur noch mit maximal 1 MSPS erzeugt und moduliert.
Erst nachdem alle Signale zusammengefügt sind wird nochmal glatt um den Faktor 10 interpoliert und damit hochgesetzt. Leider kann man mit der Grafikkarte nicht mit niedrigeren Samplesrates als 7.77MSPS aussenden, sonst hätten sicher auch die 1MSPS ausgereicht. Die 10 MSPS sind für FL2000 Grafikkarten auch der Defaultwert, deshalb habe ich ihn gewählt und weil beim Faktor 10 keine anschließende Dezimierung erfolgen muss.
So abgeändert schafft auch mein kleines SDR-Testsystem mit Intel Core2Quad und 8GB RAM die Erzeugung von sechs modulierten
Langwellenträgern.
Viel wird sich nicht mehr optimieren lassen?
GNU-Radio erzeugt aus dem Signalbild ja ein Python-Programm, das man auch ohne GNU-Radio starten kann. Diese Art Programme werden von einem Python-Interpreter ausgeführt. Dieser allein verbraucht schon viel Rechenleistung.
In den nächsten Tagen werde ich prüfen ob das Programm noch auf einem Raspberry 3 oder 4 in Echtzeit läuft. Dann hätte ich
eine stromsparende Kopfstation für HF-TR die rund um die Uhr laufen kann. Schafft ein Raspberry das Python-Programm nicht in Echtzeit abzuarbeiten werde ich nach Lösungen in C oder C++ schauen müssen. Diese Sprachumstellung war ja auch der Schlüssel das unser iRadio auf Raspberry 1 noch flüssig läuft.
Otto.
ich habe in meiner Sammlung einige HF-Telefonrundspruchempfänger von Biennophone. Das sind Radioempfänger mit 6 eingestellten Festfrequenzen im Langwellenbereich. Durch Knopfdruck können einzelne Kanäle ausgewählt werden.
HFTR.jpg (Größe: 52,82 KB / Downloads: 307)
Der HF-Telefonrundspruch nutzte als Kabelverteilanlage das normale analoge Telefonnetz und war in der Schweiz und Italien wohl ein lange gern genutzter und abonnierter Dienst. Heute existiert er wohl nicht mehr beziehungsweise es gibt nur noch sehr kleine private Netze. Gesendet wurde auf folgenden Kanälen.
Kanal 1: 175 kHz Programm: "international" analog dem Programm von "Schweizer Radio international"
Kanal 2: 208 kHz Programm: RSR1 "la première"
Kanal 3: 241 kHz Programm: "klassische Musik"
Kanal 4: 274 kHz Programm: RSI1 "rete uno"
Kanal 5: 307 kHz Programm: DRS1
Kanal 6: 340 kHz Programm: "leichte Musik"
Auch mit einen normalen LW-Radio konnte man den HF-TR empfangen, allerdings mit reduzierter Audiobandbreite. Lange habe ich nach einer
Lösung gesucht meine Empfänger alltagstauglich nutzbar zu machen. Hier im hohen Norden gab es den HF-TR meines Wissens sowieso nie. Es gab in der Bastlerszene und auch offiziell eine UKW nach LW Umsetzerlösung. Man brauchte also sechs solche Umsetzer die dann UKW Programme in das eigene Kabelnetz übertrugen. Das war relativ aufwendig und man konnte nur die lokalen UKW-Programme umsetzen, insgesamt also unbefriedigend. Vor einigen Jahren durfte ich mit einem Ettus-SDR aus der Firma einen Abend spielen und konnte dort mit einem PC spielend diese sechs Kanäle auf der LW erzeugen. Zumindest die Träger und ein paar synthetisch erzeugte Töne. Mehr war mit meinen Kenntnissen nicht drin. Die PC-Technik war damals auch noch nicht so leistungsfähig wie heute und der Ettus-SDR war sündhaft teuer. Nichts für den Privatmann. Heute, ein paar Jahre später, möchte ich den Versuch nochmal wiederholen. Das Ettus-SDR wurde durch die von Bernhard vorgestellte FL2000-Grafikkartenlösung ersetzt. Statt 1000 Euro nur noch 10 Euro, das ist für den Hobbyisten tragbar.
Zunächst einmal habe ich nach einer Lösung gesucht sechs Soundkarten auf einem PC zu installieren. Für jedes Internetprogramm das von vlc kommt eine Soundkarte. Linux bringt eine elegante Lösung mit. Es ist das Kernelmodul snd_aloop. Mit sudo modprobe snd_aloop [Optionen] kann man nahezu beliebig viele virtuelle Soundkarten im System anlegen. Danach startet man sechsmal vlc mit jeweils einer anderen Stream-URL und leitet die Ausgabe auf die Eingänge der virtuellen Soundkarten. Die Ausgänge der virtuellen Soundkarten liest man in GNU-Radio ein.
Mein erstes Testprogramm war noch etwas unglücklich zusammengestellt und ressourcenfressend.
Ich habe hier jeden Träger direkt mit der Zielsamplerate von 8.82MSPS erzeugt. Das ist für kleinere PCs zuviel, so auch für mein SDR-Testsystem. Ich konnte zwar alle sechs Träger erzeugen, aber nur noch drei davon in Echtzeit modulieren. Erst ein moderner PC mit Intel Core-I7 Prozessor hatte keine Probleme das Python-Programm in Echtzeit abzuarbeiten!
Danach habe ich die Trägergenerierung umgestellt. Alle Träger werden nur noch mit maximal 1 MSPS erzeugt und moduliert.
Erst nachdem alle Signale zusammengefügt sind wird nochmal glatt um den Faktor 10 interpoliert und damit hochgesetzt. Leider kann man mit der Grafikkarte nicht mit niedrigeren Samplesrates als 7.77MSPS aussenden, sonst hätten sicher auch die 1MSPS ausgereicht. Die 10 MSPS sind für FL2000 Grafikkarten auch der Defaultwert, deshalb habe ich ihn gewählt und weil beim Faktor 10 keine anschließende Dezimierung erfolgen muss.
So abgeändert schafft auch mein kleines SDR-Testsystem mit Intel Core2Quad und 8GB RAM die Erzeugung von sechs modulierten
Langwellenträgern.
Viel wird sich nicht mehr optimieren lassen?
GNU-Radio erzeugt aus dem Signalbild ja ein Python-Programm, das man auch ohne GNU-Radio starten kann. Diese Art Programme werden von einem Python-Interpreter ausgeführt. Dieser allein verbraucht schon viel Rechenleistung.
In den nächsten Tagen werde ich prüfen ob das Programm noch auf einem Raspberry 3 oder 4 in Echtzeit läuft. Dann hätte ich
eine stromsparende Kopfstation für HF-TR die rund um die Uhr laufen kann. Schafft ein Raspberry das Python-Programm nicht in Echtzeit abzuarbeiten werde ich nach Lösungen in C oder C++ schauen müssen. Diese Sprachumstellung war ja auch der Schlüssel das unser iRadio auf Raspberry 1 noch flüssig läuft.
Otto.