Forum: HF, Funk und Felder Alternativer SSB-TX Ansatz => QRP


von Wulf D. (holler)


Lesenswert?

Beschäftige mich gerade mit dem vereinfachten Ansatz zur Erzeugung eines 
SSB-TX Signals, nach der Idee der kleinen QRP uSDX-Transceiver.

Momentan noch theoretisch, hab die Idee in Octave / Matlab nachgebaut.

Das resourcen-sparende Konzept basiert darauf, aus Modulationssignal fm 
und seiner Hilbert-Transformierten separat Delta-Phase und Amplitude für 
das SSB-Signal zu berechnen.
Mit der Delta-Phase wird im Abtasttakt fs der Trägeroszillator gemäß 
fm*2*pi/fs nachgeführt.
Die Amplitude moduliert den Träger wie gehabt.

Hat das jemand aus dem Forum mal nachvollzogen?

Wollte mir über die zahlreichen YouTube-Videos über die Qualität des 
SSB-Signals ein Bild machen, aber das ist wegen der mittlerweile 
unerträglichen Werbung kaum drin.
Das was ich gehört habe, fand ich diplomatisch gesagt, ausbaufähig.
Nur schwer verständlich.

Hab mir das Hilbert-Filter aus der USDX-Software genauer angesehen: vom 
Prinzip her ok, aber viel zu kurz. Hat nur 15 Taps.
Nach meinen theoretischen Experimenten müssen mindestens 41 her, auch 
bei optimierter Synthese.

Hier scheint der Schwachpunkt des Ansatz zu liegen: kleinste 
Amplitudenfehler zwischen (verzögertem) Original- und Hilbert- Signal 
führen zu kleinen Phasenfehlern und die wiederum zu heftigen 
Verzerrungen im Spektrum des erzeugten SSB-Signals.
Das kann anscheinend nur durch ein sehr präzises - und damit langes - 
Filter vermieden werden.

Oder hat jemand andere Erfahrungen, egal ob theoretisch berechnet oder 
praktisch erprobt?
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> Hab mir das Hilbert-Filter aus der USDX-Software genauer angesehen: vom
> Prinzip her ok, aber viel zu kurz. Hat nur 15 Taps.

Lass mich raten: die kleine CPU da ist zu langsam und/oder zu klein für 
mehr. Geräte wie QMX und Co. benutzen deutlich größere CPUs, aber sind 
leider nicht opensource (wie auch (tr)uSDX dann).

QMX benutzt aber, wenn ich das richtig verstanden habe, noch irgendwas 
ganz anderes.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Bin mir übrigens nicht ganz sicher, ob man den Thread nicht lieber ins 
DSP-Forum schieben sollte. Da gibt es möglicherweise mehr Expertise zu 
solchen Themen.
von Gerd E. (robberknight)


Lesenswert?

Wulf D. schrieb:
> Das resourcen-sparende Konzept basiert darauf,

Was für eine Ressource willst Du sparen?

Strom während dem Senden, Volumen im Gehäuse, Gewicht, Kosten für die 
Bauteile, Entwicklungszeit,...?

Das kann zu ganz unterschiedlichen Konzepten führen.
: Bearbeitet durch User
von Wulf D. (holler)


Lesenswert?

Jörg W. schrieb:
> Lass mich raten: die kleine CPU da ist zu langsam und/oder zu klein für
> mehr. Geräte wie QMX und Co. benutzen deutlich größere CPUs, aber sind
> leider nicht opensource (wie auch (tr)uSDX dann).
>
Wahrscheinlich, mit dem AT-Mega 8-Bitter sind wohl keine längeren Filter 
drin.

Dann ist der SSB-Betrieb im USDX wohl eher zum Spielen. Oder habe ich 
was übersehen?

Eine stärkere CPU wie im QMX wird helfen, schade das es closed Source 
ist.

Jörg W. schrieb:
> Bin mir übrigens nicht ganz sicher, ob man den Thread nicht lieber ins
> DSP-Forum schieben sollte. Da gibt es möglicherweise mehr Expertise zu
> solchen Themen.

Schon möglich, hier ist eher das HF-Analogforum.
Aber das DSP-Forum ist total verwaist. Außerdem hoffe ich noch auf eine 
Rückmeldung aus der Praxis, von jemanden der das USDX in SSB mal 
getestet hat.
von Wulf D. (holler)


Lesenswert?

Gerd E. schrieb:
> Was für eine Ressource willst Du sparen?
>
> Strom während dem Senden, Volumen im Gehäuse, Gewicht, Kosten für die
> Bauteile, Entwicklungszeit,...?

QRP eben: Leistung/Strom, Hardware, Volumen. Dadurch auch Kosten.

Konkret hätte ich gern Rückmeldung zum oben genannten Konzept.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> Außerdem hoffe ich noch auf eine Rückmeldung aus der Praxis, von
> jemanden der das USDX in SSB mal getestet hat.

Was ich gehört habe, nicht besonders toll.  Habe mal versucht, es für 
FT8 zu benutzen, recht erfolglos, und irgendwie klang das auch seltsam. 
Habe aber nicht versucht, ob sich irgendwo mit Aussteuerungspegel oder 
dergleichen da was Besseres machen lässt.

FT8 mit dem QMX habe ich schon gemacht, aber der hat eh einen eigenen 
Digimode, bei dem er das Analogsignal erstmal digitalisiert, die 
Frequenz(en) ermittelt, und dann explizites FSK in der Firmware macht.

Für „richtiges SSB“ bin ich allerdings der falsche Ansprechpartner.  Von 
ein paar Contestens abgesehen, habe ich in meinem Leben nur sehr wenig 
SSB gemacht.
von Wulf D. (holler)


Lesenswert?

Danke, das bringt mich schon mal weiter.

Ich werde im nächsten Schritt meine Octave-Simulation mit realen 
Audiosamples füttern und wieder Demodulieren. Mal sehen wie sich das 
anhört, auch im Vergleich zum USDX.

Hatte übrigens im Winter einen FT8 SW-Dekoder in ein kleines SDR auf 
Pico2-Basis gebaut.
Auf längere Sicht möchte ich das SDR TX-fähig ausbauen, incl FT8, ohne 
zusätzlichen PC etc.
von Georg S. (randy)


Lesenswert?

Sowas habe ich vor einiger Zeit mal gemacht:
https://dl0tz.de/polar/index.html
Nicht mit dem Ansatz QRP, sondern um ein SSB Signal im GHz-Bereich zu 
bekommen, ohne das übliche Setup (70cm-SSB-Funke und hoch mischen). 
Konkret ging es mir um 2,4GHz für einen QO-100 Uplink.
Ja, bei Polarer Modulation ist die Nachbarkanalunterdrückung das große 
Problem (siehe die Spektren auf der Webseite). Ist eher für Anwendungen 
geeignet bei denen das nicht so wichtig ist. Der Satellit sieht sowieso 
keine Nebenaussendung unterhalb -15dB weil das im thermischen Rauschen 
untergeht. Und bei anderen Mikrowellenbändern im Amateurfunkbereich ist 
der Freund auf dem Nachbarhügel vermutlich der einzige Empfänger in 
Reichweite.
von Georg S. (randy)


Lesenswert?

Ja, der uSDX hätte mal eine etwas stärkere CPU nötig. Wenn man in den 
Code schaut sieht man dass der sich ziemlich strecken muss um mit der 
mangelnden Rechenleistung zurecht zu kommen. Heutzutage unnötig. Ich 
baue mein o.g. Projekt gerade von einem STM32F103 (haha. ja, hab mit 
einem Bluepill Board angefangen) auf einen STM32H523 um. Dann kann ich 
die Amplituden- und Phasenwerte mit 48kSps berechnen statt mit 16kSps. 
Davon erhoffe ich mir eine bessere Nachbarkanalunterdrückung.
von Daniel (daniel3)


Lesenswert?

Wulf D. schrieb:
> Beschäftige mich gerade mit dem vereinfachten Ansatz zur Erzeugung eines
> SSB-TX Signals, nach der Idee der kleinen QRP uSDX-Transceiver.

Das finde ich auch sehr interessant.


> Hier scheint der Schwachpunkt des Ansatz zu liegen: kleinste
> Amplitudenfehler zwischen (verzögertem) Original- und Hilbert- Signal
> führen zu kleinen Phasenfehlern und die wiederum zu heftigen
> Verzerrungen im Spektrum des erzeugten SSB-Signals.

Kann es sein, dass ein Teil der Verzerrungen vom TP-Filter 
(Oberwellenfilter) hinter dem Sende-MOSFET wieder eliminiert wird (oder 
überhaupt oberhalb von 3KHz liegt und beim Empfänger weggefiltert wird)?
Vielleicht gehen diese Verzerrungen auch einfach im Kurzwellenstörnebel 
unter oder das menschliche Ohr kann damit gut umgehen?

Mit welchen Audio-Frequenzbereichen arbeitest du bei deinen 
Untersuchungen?


> Oder hat jemand andere Erfahrungen, egal ob theoretisch berechnet oder
> praktisch erprobt?

Kann man das ganze irgendwie simulieren und schauen, was dabei 
rauskommt? Oder in einen uSDX unterschiedliche Sinusfrequenzen 
einspeisen und mit einem Spectrum Analyzer schauen, was hinten 
rauskommt?

Habe einen uSDX und nutze den hin und wieder auf 40m. SSB funktioniert 
so weit gut, bei der kleinen Sendeleistung würde ein leicht kratziger 
Klang wahrscheinlich nicht wesentlich auffallen.
Von mir empfangene Stationen, die mit uSDX senden, klingen auf jeden 
Fall verständlich (aber eben oft eher leise).

Das mit dem Pi Pico2 ist sicher eine gute Idee!!!


> Wollte mir über die zahlreichen YouTube-Videos über die Qualität des
> SSB-Signals ein Bild machen, aber das ist wegen der mittlerweile
> unerträglichen Werbung kaum drin.

Gerüchten nach kann man Browsererweiterungen wie uBlock Origin 
verwenden, kenne mich da aber nicht aus.
: Bearbeitet durch User
von Sandra (sdr_f169)


Angehängte Dateien:

Lesenswert?

Kurz von mir in meiner Mittagspause:

Der uSDX war ursprünglich eine Modifikation des QCX. Da waren 
Amplitudenmodulation durch Modulation der 12V Betriebsspannung der 
Class.E Endstufe und Phasenmodulation am Gate der Endstufen-FETs 
weitgehend voneinander entkoppelt. Bei der späteren Verschlimmbesserung 
durch Modifikation des uSDX erfolgen dann Amplituden- und 
Phasenmodulation zusammen nur über die Gate-Spannung. Das erfordert eine 
Einstellung des DC-Wertes der Amplitudenmodulationsspannung und diese 
Einstellung ist auch noch vom jeweiligen Frequenzband abhängig. Die 
ursprüngliche Schaltung des uSDX ergibt auf jeden Fall das bessere 
SSB-Signal.
von Wulf D. (holler)


Angehängte Dateien:

Lesenswert?

Georg S. schrieb:
> Sowas habe ich vor einiger Zeit mal gemacht:
> https://dl0tz.de/polar/index.html

Klasse, dass sich hier jemand mit ganz Ähnlichem beschäftigt!
Interessant auch die Versuche mit dem SI5351. Wollte den auch nutzen. 
Mal sehen ob ich auf die gleichen Probleme stoße.

Georg S. schrieb:
> Ich
> baue mein o.g. Projekt gerade von einem STM32F103 (...) auf einen STM32H523 um. 
Dann kann ich
> die Amplituden- und Phasenwerte mit 48kSps berechnen statt mit 16kSps.
> Davon erhoffe ich mir eine bessere Nachbarkanalunterdrückung.

Bin gespannt was dabei rauskommt.

Nach meinen Octave-Versuchen sehe ich den Grund der Artefakte eher in 
mangelnder Filterpräzision und nicht in niedriger Abtastrate.

Anbei ein (theoretisches) Beispiel mit den USDX-Filterkoeffizienten und 
zum Vergleich ein selbst synthetisiertes Filter nach diesem Ansatz:
https://www.wirelessinnovation.org/assets/Proceedings/2011/2011-1b-carrick.pdf

Dabei ganz willkürlich drei Sinustöne mit -20dB Pegel mit 400Hz, 800Hz 
und 1600Hz durch die Filter gegeben und mit einem Träger von 15kHz in 
Polarmodulation beaufschlagt. Die Abtastrate des USDX auf 4500 1/s 
geschätzt.

Eigentlich sind die Ergebnisse des USDX absolut indiskutabel.

Bei 800Hz sieht es nur deshalb gut aus, weil ich testhalber die 
Skalierung auf genau diese Frequenz abgeglichen habe.

Genau daher komme ich auf die Vermutung, dass kleinste 
Amplitudenunterschiede von Original- und Hilbert- Signal zu heftigen 
Artefakten führen.

Und die Amplitudenabweichungen kommen zweifellos aus der Welligkeit des 
Hilbert-Filters.
von Wulf D. (holler)


Lesenswert?

Sandra schrieb:
> Bei der späteren Verschlimmbesserung
> durch Modifikation des uSDX erfolgen dann Amplituden- und
> Phasenmodulation zusammen nur über die Gate-Spannung. Das erfordert eine
> Einstellung des DC-Wertes der Amplitudenmodulationsspannung und diese
> Einstellung ist auch noch vom jeweiligen Frequenzband abhängig. Die
> ursprüngliche Schaltung des uSDX ergibt auf jeden Fall das bessere
> SSB-Signal.

Das die Amplitudenmodulation in einigen Varianten über das Gate und in 
Anderen über die Versorgungsspannung läuft, fiel mir auch schon auf.

Hatte das mal grob in LT-Spice simuliert, schien beides mit erträglichen 
Oberwellen zu funktionieren. Es wird ja mittels LUT linearisiert. 
Interessant aber die Abhängigkeit vom Frequenzband.

Nach dem Hinweis vom Jörg W. hatte ich mir auch das QMX angeschaut. Da 
steckt etwas mehr Aufwand in der PA-Ansteuerung. Ansonsten gleiches 
Prinzip.

Die Phase wird aber doch nur über den SI5351 gesteuert, hat nichts mit 
der PA zu tun.
von Wulf D. (holler)


Lesenswert?

Daniel schrieb:
> Kann es sein, dass ein Teil der Verzerrungen vom TP-Filter
> (Oberwellenfilter) hinter dem Sende-MOSFET wieder eliminiert wird (oder
> überhaupt oberhalb von 3KHz liegt und beim Empfänger weggefiltert wird)?
Nein, ich beziehe mich nur auf die Inband-Artefakte.

> unter oder das menschliche Ohr kann damit gut umgehen?
Denke auch, dass das menschliche Ohr noch die miesesten Signale 
verstehen kann.

> Mit welchen Audio-Frequenzbereichen arbeitest du bei deinen
> Untersuchungen?
Siehe Antwort auf Georg S., 400Hz - 1600Hz, also mitten im Sprachband.

> Kann man das ganze irgendwie simulieren und schauen, was dabei
> rauskommt?

Genau das habe ich versucht. Wobei ich nicht die beschränkte 8 Bit 
Genauigkeit berücksichtigt habe, nur auf Basis des Hilbert-Filters und 
der vermuteten Abtastfrequenz.

> Oder in einen uSDX unterschiedliche Sinusfrequenzen
> einspeisen und mit einem Spectrum Analyzer schauen, was hinten
> rauskommt?
>
Reale Meßwerte wären wirklich spannend. Wollte mir schon einen 
Gebrauchten nur zum messen kaufen. Aber wie einen der minderwertigen 
Clones auf dem Markt vermeiden?

> Habe einen uSDX und nutze den hin und wieder auf 40m. SSB funktioniert
> so weit gut, bei der kleinen Sendeleistung würde ein leicht kratziger
> Klang wahrscheinlich nicht wesentlich auffallen.
> Von mir empfangene Stationen, die mit uSDX senden, klingen auf jeden
> Fall verständlich (aber eben oft eher leise).

Interessant.
von Georg S. (randy)



Lesenswert?

Wulf D. schrieb:
> Klasse, dass sich hier jemand mit ganz Ähnlichem beschäftigt!
> Interessant auch die Versuche mit dem SI5351. Wollte den auch nutzen.
> Mal sehen ob ich auf die gleichen Probleme stoße.

Auf welchen Frequenzbereich zielst du ab? Wenn du bei 24MHz sendest ist 
der Effekt nur 1/100 so groß wie bei 2,4GHz und damit vernachlässigbar.
Das zeigt wie kritisch Phasenrauschen und Phasenstabilität wird wenn man 
schmalbandige SSB Signale im GHz Bereich hat.


> Nach meinen Octave-Versuchen sehe ich den Grund der Artefakte eher in
> mangelnder Filterpräzision und nicht in niedriger Abtastrate.

Es gibt zwei Arten der Nebenaussendungen die ich im meiner Antwort 
vermischt hatte. Die "echte" Nachbarkanalunterdrückung (siehe 1.Bild) 
kommt durch nichtideale Kombination von Amplituden- und Phasenmodulation 
zustande. Die war  bei meinen Speki-Messugen an sich akzeptabel. Ich 
hatte aber auch noch den Effekt dass bei +/- 16kHz vom Träger das Signal 
wieder deutlich hoch kam (siehe 2.Bild).
Der F103 hat nicht genügend Rechenleistung um die Signale schneller als 
mit 16kSps zu berechnen. Ich hatte mal die AM und PM Werte für ein 3-Ton 
Signal mit 48kSps vorberechnet und mit dem Controller nur abspielen 
lassen, da war der zweite Effekt viel geringer. Deswegen hoffe ich dass 
bei höherer Rechenleistung und 48kSps die Nebenaussendungen auch bei 
Sprachsignalen niedriger werden.

Ja, ein 3-Ton Signal. Bei einem 2-Ton Signal geht die Amplitude durch 
Null, ganz schlecht wenn man polar moduliert. Deswegen habe ich einen 
3.Ton mit -20dB dazu genommen, so dass ich dem Nullpunkt der Amplitude 
immer nur auf 10% nahe gekommen bin. Ist für ein Sprachsignal auch 
realistisch, da kommt man nur selten Nahe an den Nullpunkt der 
HF-Amplitude ran. Und ich wollte die Nulldurchgänge mit den hohen 
FM-Hüben weg lassen um zu sehen was ich sonst noch für Probleme in der 
Modulation habe.
: Bearbeitet durch User
von Daniel (daniel3)


Lesenswert?

Ganz kurz, hier ein Video-Link:

https://youtu.be/PzubNCuGvEQ?t=110

"DL2MAN uSDX SSB transmit demo" - Er testet hier den uSDX über 
Dämpfungsglieder direkt an einem ICOM-Gerät (also keine KW-Störungen im 
Spiel).

Der Sound klingt für mich etwas übersteuert. Ansonsten hört man 
definitiv Artefakte, die aber auch mit der Übersteuerung zusammenhängen 
können.
In jedem Fall ist die Sprache verständlich.

Die Artefakte klingen wie KW-Prasseln, deshalb fallen sie im normalen 
Bettrieb wahrscheinlich kaum auf.
von Wulf D. (holler)


Lesenswert?

Georg S. schrieb:
> Auf welchen Frequenzbereich zielst du ab? Wenn du bei 24MHz sendest ist
> der Effekt nur 1/100 so groß wie bei 2,4GHz und damit vernachlässigbar.

Ok ziele auf KW, werde dann den Effekt kaum bemerken.

> Es gibt zwei Arten der Nebenaussendungen die ich im meiner Antwort
> vermischt hatte. Die "echte" Nachbarkanalunterdrückung (siehe 1.Bild)
> kommt durch nichtideale Kombination von Amplituden- und Phasenmodulation
> zustande.

Glaube dir gern, dass du Reste aus der Updatefrequenz des Taktgenerators 
und Signaldämpfers vorfindest. Sieht man auf deinem Analyzer-Screenshot. 
Die werden sich natürlich mit schnelleren Updates verändern.

Ich glaube aber trotzdem noch, dass kleine Fehler in der Amplitude, egal 
ob ungenau berechnet oder gegen die Phase verschoben, keinen 
gravierenden Effekt auf die SSB-Signalqualität haben.
Ganz anders sieht es bei kleinen Phasenfehlern aus. Und die berechne ich 
zumindest aus dem arctan (Hilbert / verzögertes Original). Sind da 
kleine Fehler z.B. durch Welligkeit des Hilberttransformators drin, 
sieht das SSB-Signal gleich ganz furchtbar aus.

>
> Ja, ein 3-Ton Signal. Bei einem 2-Ton Signal geht die Amplitude durch
> Null, ganz schlecht wenn man polar moduliert. Deswegen habe ich einen
> 3.Ton mit -20dB dazu genommen, so dass ich dem Nullpunkt der Amplitude
> immer nur auf 10% nahe gekommen bin.

Den Abschnitt verstehe ich nicht. Bezieht sich das auf meine gerechneten 
Spektrogramme?
Da hatte ich die drei Töne nacheinander durchgerechnet.


Daniel schrieb:
> https://youtu.be/PzubNCuGvEQ?t=110
>
> "DL2MAN uSDX SSB transmit demo" - Er testet hier den uSDX über
> Dämpfungsglieder direkt an einem ICOM-Gerät (also keine KW-Störungen im
> Spiel).
>
Für eine Direktverbindung sind schon deutlich Störungen zu hören.
Aber klar, ist gut zu verstehen.
Der Test mit dem Oszi sagt nicht viel aus, Aufbau ist auch ziemlich 
unklar.
von Georg S. (randy)


Lesenswert?

Wulf D. schrieb:
>> Ja, ein 3-Ton Signal. Bei einem 2-Ton Signal geht die Amplitude durch
>> Null, ganz schlecht wenn man polar moduliert. Deswegen habe ich einen
>> 3.Ton mit -20dB dazu genommen, so dass ich dem Nullpunkt der Amplitude
>> immer nur auf 10% nahe gekommen bin.
>
> Den Abschnitt verstehe ich nicht. Bezieht sich das auf meine gerechneten
> Spektrogramme?
> Da hatte ich die drei Töne nacheinander durchgerechnet.

Nein, ich hab mich auf das Bild von meinem "2-Ton-Test" bezogen der 
eigentlich ein 3-Ton -Test ist, nur dass der 3. Ton bei -20dB sowieso 
von den Intermod-Produkten der beiden Haupttöne zugekleistert wird.


Wulf D. schrieb:
> Für eine Direktverbindung sind schon deutlich Störungen zu hören.
> Aber klar, ist gut zu verstehen.

Ich habe festgestellt dass Sprache recht unkritisch ist. Wenn man die AM 
der polaren Modulation weg lässt, also nur die PM macht, klingt die 
Sprache zwar deutlich verzerrt, ist aber noch verständlich. Das Spektrum 
hat natürlich massiv Außerband-Abstrahlung, v.a. in den benachbarten 
Kanälen.
von Georg S. (randy)


Lesenswert?

Wulf D. schrieb:
> Für eine Direktverbindung sind schon deutlich Störungen zu hören.
> Aber klar, ist gut zu verstehen.

Es ist aber auch schwer Fehler zu suchen. Wenn ich meinen RTL-SDR per 
Dämpfungsglied an den Ausgang des polaren Modulators schalte hört sich 
die Sprache irgendwie verzerrt an. Wenn ich den Modulator für den QO-100 
Uplink benutze hört es sich im Downlink viel besser an. Weiß nicht warum 
das so ist. Vielleicht koppelt zu viel phasenmodulierte HF an dem 
digitalen Attenuator vorbei in den RTL-SDR rein. Und bei 2,4GHz kann ich 
mit dem RTL-SDR auch nicht empfangen, mir dem kann ich nur bei 1290 oder 
430 MHz testen.
von Wulf D. (holler)


Lesenswert?

Georg S. schrieb:
> Es ist aber auch schwer Fehler zu suchen.

Das erfahre ich auch gerade.

Wollte eigentlich meine Simulation mit Audiofiles füttern. Aber schon 
nach einigen 100ms gehen die Signale im anschwellenden Geräusch unter.

Da steckt noch ein systematischer Fehler drin. Eigentlich nichts 
komplexes, finde es aber nicht.

Hat irgendwas mit der Delta-Phase zu tun.
von Sandra (sdr_f169)


Lesenswert?

Georg S. schrieb:
> Wulf D. schrieb:
>> Für eine Direktverbindung sind schon deutlich Störungen zu hören.
>> Aber klar, ist gut zu verstehen.
>
>  ... Wenn ich meinen RTL-SDR per
> Dämpfungsglied an den Ausgang des polaren Modulators schalte hört sich
> die Sprache irgendwie verzerrt an. Wenn ich den Modulator für den QO-100
> Uplink benutze hört es sich im Downlink viel besser an. Weiß nicht warum
> das so ist. ...

Wenn ich das SSB-Signal vom uSDX über ein Dämpfungsglied mit dem ICOM 
selber anhöre, hört sich das auch schlechter an, als wenn ich mein 
Signal mit einem entfernten WebSDR anhöre. Bisher haben alle QSO-Partner 
mein SSB-Signal vom uSDX für gut verständlich befunden.
von Daniel (daniel3)


Lesenswert?

Georg S. schrieb:
> Weiß nicht warum
> das so ist. Vielleicht koppelt zu viel phasenmodulierte HF an dem
> digitalen Attenuator vorbei in den RTL-SDR rein.

Eventuell sollte man bei solchen Messungen die Massen entkoppeln.

z.B. mit einem symmetrischen Dämpfungsglied dazwischen, einem Übertrager 
oder einfach Signal und(!) Masse(n) jeweils mit einem kleinen C 
entkoppeln.
von Wulf D. (holler)


Lesenswert?

Danke euch erstmal für die Rückmeldungen, vor allem auch zu den 
praktischen Erfahrungen mit dem uSDX.

Habe den Fehler in meiner SSB-Simulation nach dem polaren Ansatz 
gefunden.
Hatte versucht, das Signal über einen ganz normalen Cosinus mit der aus 
dem Modulationssignal berechneten Delta-Phase abzubilden.
So in der Art:
Das geht leider sehr schnell schief. Grund ist die Periodizität des 
cos(), wo kleinste Rechenfehler in der Phase, also hier das Delta-Phi, 
in kürzester Zeit t das Ergebnis ruinieren.

Ich hatte in meinen Plots über 0,5s gerechnet. Da türmt sich schon ein 
beträchtlicher Fehler auf, die Ergebnisse sind unbrauchbar.

Lösen kann man das mit der VCO-Funktion. In meiner Octave-Version steckt 
zwar ein kleiner Bug drin, läßt sich aber umschiffen. Jetzt 
funktionieren auch längere Audio-Files.

Werde die Ergebnisse bei Zeiten korrigieren, sobald der eingeschränkte 
Wertebereich und die im uSDX verwendeten Näherungsformeln eingebaut 
sind.
von Herbert Z. (herbertz)


Lesenswert?

Mein Ansatz ist ...eventuell ist es auch falsch gedacht...man könnte ja 
das fast komplette Pico SDR Design benutzen um zumindest CW zu machen. 
Den Muxer brauchet es dann nicht, aber einen mehrstufigen Verstärker mit 
TP.
Einziges Manko wäre, die Angezeigte Sendefrequenz würde um den ZF Betrag 
(einige kHz) nicht mit der Sendefrequenz übereinstimmen. Wäre jetzt aber 
nicht so schlimm und eventuell gäbe es dafür auch eine Lösung. Ich bin 
da noch nicht fertig mit diesem Gedanken.
: Bearbeitet durch User
von Herbert Z. (herbertz)


Lesenswert?

Nachtrag :Ja ich weiß, es werden auch diverse VFO Baugruppen verkauft 
mit wenig Ausgangsleistung an 50 Ohm....
Auf Basis des Pico SDR arbeitet man auch an einem Allmode TX. Ist aber 
noch nicht so weit.
von Wulf D. (holler)


Lesenswert?

Der uSDX, der von Jörg erwähnte QMX und auch Georgs Projekt nutzen alle 
einen VCO.
Beim uSDX ist es der sehr günstige programmierbare Taktgenerator SI5351, 
den ein paar SW-Tricks in einen brauchbaren VCO verwandeln.

Mein mittelfristiges Ziel ist eine TX-Integration im Pico-SDR.

Wollte jetzt erstmal theoretisch schauen, wo die mehr oder weniger 
großen Abstriche an der TX-Qualität im uSDX liegen. Das schöne an dem 
Projekt ist, dass alle Quellen, HW und SW, offenliegen.

Jetzt kann man detailliert testen, was die einzelnen Vereinfachungen 
wegen fehlender Rechenleistung und beschränkter HW für Auswirkungen 
haben. Da wären z.B.:
1
- recht kurzes Hilbert-Filter
2
- 8- / 16 Bit Integerarithmetik
3
- einfache Wurzel-Näherungsfunktion
4
- grob genäherter arccos
5
- niedrige (?) Abtastrate
6
- fehlender Anti-Aliasing-Filter

Mit dem Pico2 bräuchte man viel weniger Kompromisse.

Im RX-Zweig des Pico-SDR verzichtet man sogar auf einen externen 
Taktgenerator und baut den mittels Microcode der Port-IO nach.
Funktioniert auch, aber das jittert ganz ordentlich. Für TX unbrauchbar, 
damit wird man vermutlich zu heftige Nebenaussendungen provozieren.
von Herbert Z. (herbertz)


Lesenswert?

https://github.com/kaefe64/Arduino_uSDX_Pico_FFT_Proj


Ist auch nahrhaft für den Kopf...
von Georg S. (randy)


Lesenswert?

Wulf D. schrieb:
> Das schöne an dem
> Projekt ist, dass alle Quellen, HW und SW, offenliegen.

Bei meinem Projekt liegen die Quellen auch offen:
https://gitlab.com/dg6rs/polar
Vor allem auf den Hilbert-Trafo will ich hinweisen: Meine Suche damals 
hat ergeben dass es einfacher ist I und Q als IIR-Allpässe zu berechnen, 
die untereinander 90° Phasenverschiebung haben. Das ist von der 
Rechenleistung her einfacher als den I-Kanal 1:1 (mit delay) 
durchzuschleifen und einen passenden 90° versetzen Q-Kanal zu berechnen. 
Man hat dann eine frequenzabhängige Phasenverschiebung im Audio, aber es 
heißt das menschliche Ohr hört das nicht.

Ich denke eines der Haupt-Kompromisse dem uSDX ist die niedrige 
Abstastrate. Ich hab die Grafiken nicht auf der Webseite sondern nur im 
Vortrags-Skript der UKW-Tagung in Weinheim: Die Wandlung der I/Q Daten 
in Amplitude und Phase ist eine nichtlineare Funktion die das Spektrum 
aufweitet. Außerhalb der 3kHz SSB-Nutzband müssen sich Amplituden- und 
Phasensignal so überlagern dass sie sich im Spektrum zu Null aufheben. 
Und das in dem ganzen Frequenzbereich in dem das AM und PM Signal 
relevant Leistungsdichte haben. Dafür sind meine 16kSps (=8kHz Nyquist) 
eigentlich schon zu knapp. Deswegen will ich das auf 48kSps aufbohren.
Ich glaube der uSDX hat nirgendwo ein Bild vom Spektrum seines 
TX-Signals. Ich hab da einen verdacht, warum...
: Bearbeitet durch User
von Wulf D. (holler)


Lesenswert?

Herbert Z. schrieb:
> https://github.com/kaefe64/Arduino_uSDX_Pico_FFT_Proj

Danke, kannte ich noch nicht. Einiges gefällt mir gut, z.B. das schöne 
Display mit gut aufgelöster FFT.
So was hätte auch gut meinem FT8-Decoder gestanden :-)

Es hat auch auf die Pico-Schwächen verwiesen, wie den beschränkt 
nutzbaren Wertebreich des ADC. Immerhin bringt der Pico2 1/2 Bit mehr.

Er generiert das TX-Signal aus kartesischen Daten, mit Mischer und viel 
nachgeschalteter HW. Ich hoffe das geht mit dem polaren Ansatz mit 
weniger.

Georg S. schrieb:
> Bei meinem Projekt liegen die Quellen auch offen:
> https://gitlab.com/dg6rs/polar

Klasse, Vielen Dank!


> Vor allem auf den Hilbert-Trafo will ich hinweisen: Meine Suche damals
> hat ergeben dass es einfacher ist I und Q als IIR-Allpässe zu berechnen,
> die untereinander 90° Phasenverschiebung haben. Das ist von der
> Rechenleistung her einfacher als den I-Kanal 1:1 (mit delay)
> durchzuschleifen und einen passenden 90° versetzen Q-Kanal zu berechnen.
> Man hat dann eine frequenzabhängige Phasenverschiebung im Audio, aber es
> heißt das menschliche Ohr hört das nicht.

Kannte ich noch nicht, muss man erstmal verstehen.

> Ich denke eines der Haupt-Kompromisse dem uSDX ist die niedrige
> Abstastrate.

Möglich, aber ich komme da nicht hinter: die Abtastrate ist im uSDX in 
der Arduino-Loop-Schleife verborgen, wenn ich den Code richtig 
interpretiere.
Wenn der Code der Schleife abgearbeitet ist, fängt der vermutlich gleich 
wieder oben an. Kenne aber Arduino kaum.

> Ich hab die Grafiken nicht auf der Webseite sondern nur im
> Vortrags-Skript der UKW-Tagung in Weinheim: Die Wandlung der I/Q Daten
> in Amplitude und Phase ist eine nichtlineare Funktion die das Spektrum
> aufweitet. Außerhalb der 3kHz SSB-Nutzband müssen sich Amplituden- und
> Phasensignal so überlagern dass sie sich im Spektrum zu Null aufheben.

Sorry, aber das bezweifele ich: das ist zwar zeit- und wertediskret, 
aber ansonsten doch linear???
1
- Amplitude aus sqrt (Re² + Im²)
2
- Phase aus arctan (Im / Re)
3
- Delta Phase = Phase' (dt)
4
5
=> Delta-Phase steuert den Oszillator nach
6
=> Amplitude moduliert die PA

> Und das in dem ganzen Frequenzbereich in dem das AM und PM Signal
> relevant Leistungsdichte haben. Dafür sind meine 16kSps (=8kHz Nyquist)
> eigentlich schon zu knapp.

Klar, der Hilberttransformator hat nur einen eingeschränkten 
Frequenzbereich. Deshalb muss da auch ein Bandpass (Anti-Alaisingfilter) 
vor. Hatte ich oben zum uSDX angemerkt.

Aber 16kSps halte ich für Sprache schon für äußerst komfortabel. Musst 
halt sehen, dass dein Hilbert-Transformator wegen der recht hohen 
Abtastrate unten rum noch gut funktioniert. Ist in deinem Ansatz 
vielleicht gar kein Problem.

> Ich glaube der uSDX hat nirgendwo ein Bild vom Spektrum seines
> TX-Signals. Ich hab da einen verdacht, warum...

Ja, echte Messwerte fand ich auch noch nicht. Vielleicht steckt in den 
zahlreichen Youtube-Videos mehr als Gelaber, ggf frage ich den 
werbefreien Abo-Account meiner Tochter mal an.
von Georg S. (randy)


Angehängte Dateien:

Lesenswert?

Wulf D. schrieb:
> Sorry, aber das bezweifele ich: das ist zwar zeit- und wertediskret,
> aber ansonsten doch linear???
> - Amplitude aus sqrt (Re² + Im²)
> - Phase aus arctan (Im / Re)

Das sind zwei nichtlineare Funktionen. Für den 16kSps Fall habe ich das 
Spektrum der AM und PM simuliert (mit Octave, siehe Bild). So viel Pegel 
wie die PM bei +/-8kHz noch hat wundert mich dass das resultierende 
Spektrum der echten HF bei 16kSps überhaupt so gut ist. Einer der 
Hauptgründe warum ich mit 48kSps probieren will um zu sehen wie viel 
besser das wird.

Wulf D. schrieb:
> Möglich, aber ich komme da nicht hinter: die Abtastrate ist im uSDX in
> der Arduino-Loop-Schleife verborgen, wenn ich den Code richtig
> interpretiere.

Ich hatte im Kopf dass der uSDX 8kSps benutzt. Aber es ist lang her dass 
ich einen Blick in den Code geworfen habe. Damals als Vorbereitung,bevor 
ich meinen Code gestartet habe.
: Bearbeitet durch User
von Wulf D. (holler)


Angehängte Dateien:

Lesenswert?

Georg S. schrieb:
> Das sind zwei nichtlineare Funktionen.

Das stimmt natürlich.
Ich hatte was anderes im Sinn, nämlich warum sollten die Funktionen das 
Spektrum des Eingangssignals verbreitern?

Am Ende hast du auch hier Recht, da sieht man die längere Erfahrung 
damit. Habe meine Octave-Simulation mit realen Audiofiles gefüttert und 
da kommt tatsächlich ein unerwartet breites Signal raus.

Verstehe ich aber noch nicht. Vor allem wenn man im Vergleich den 
synthetischen Sweep, einen Sinus von 200Hz bis 2800Hz, Amplitude von 0,9 
auf 0,1 fallend, ansieht.

Da gibt es die Verbeiterung nicht. Interessant auch die Audio-Resultate.
Das reale Audio ist ein Tagesschau-Intro mit Begrüßung, mit Audacity 
steilflankig auf 250Hz bis 2700Hz bandbegrenzt. Abtastrate 6kSps.

Der Sweep bleibt nach der Demodulation glasklar.
Das reale Audio hat dagegen stark gelitten.
Vermute noch einen anderen Effekt, der hier zu Fehlern führt. Denke da 
an die Differenzierung der Phase. Benötigst Du diesen Rechenschritt in 
der von dir verwendeten Methode auch?

Anbei die Audio-Files. Bei den Tagesschau-Audios habe zwei verschiedene 
Hilbert-Filter ausprobiert. Das vom uSDX mit 15 Taps und eines mit N=41.
Höre kaum einen Unterschied.

> Für den 16kSps Fall habe ich das
> Spektrum der AM und PM simuliert (mit Octave, siehe Bild). So viel Pegel
> wie die PM bei +/-8kHz noch hat wundert mich dass das resultierende
> Spektrum der echten HF bei 16kSps überhaupt so gut ist. Einer der
> Hauptgründe warum ich mit 48kSps probieren will um zu sehen wie viel
> besser das wird.

Weiß nicht wie du das simuliert hast. Habe probehalber bei mir die 
Abtastfrequenz von 6kSps auf 12kSps verdoppelt, ohne die 
Audio-Bandbreite zu verändern. Das hatte weder auf das SSB-Signal noch 
auf das demodulierte Nutzsignal irgend einen Effekt.
von Georg S. (randy)


Lesenswert?

Wulf D. schrieb:
> Ich hatte was anderes im Sinn, nämlich warum sollten die Funktionen das
> Spektrum des Eingangssignals verbreitern?

Weil sie nichtlinear sind. Ich bin kein Mathematiker und hab keinen 
Ansatz das erklären zu können. War nur immer schon so...


> Vor allem wenn man im Vergleich den
> synthetischen Sweep, einen Sinus von 200Hz bis 2800Hz, Amplitude von 0,9
> auf 0,1 fallend, ansieht.

Ein reiner Sinus ist ein Sonderfall. Da hat man in der polaren 
Modulation keine AM, und die FM ist eher konstant bzw. nur langsam sich 
ändernd.

> Weiß nicht wie du das simuliert hast.

Ich kann mein Octave File mal wieder ausgraben wenn du dich da 
durchkämpfen willst. Ist aber eher kraut&rüben. Und es ist lang her. Ich 
muss mich da auch erst wieder rein suchen wenn ich das was machen 
wollte.

> Höre kaum einen Unterschied.

Hören ist bei mir so ein Problem. Es hört sich "irgendwie seltsam" an, 
ohne dass ich die Messtechnik oder auch nur eine Idee hätte wie ich das 
Problem greifen oder präzisieren könnte.
von Georg S. (randy)


Lesenswert?

Schau dir aber auf jeden fall den Hilbert Trafo an den ich gefunden 
habe:
https://web.archive.org/web/20070814013543/http://yehar.com/ViewHome.pl?page=dsp/hilbert/011729.html
https://www.mikrocontroller.net/attachment/33904/hilbert_Olli_Niemitalo.pdf

Sehr breitbandig und durch die IIR Filter brauch er wenige 
Multiplikationen.
Ist ursprünglich für 44,1kSps gedacht, geht aber auch bei kleineren 
Sampleraten.
von Wulf D. (holler)



Lesenswert?

Danke für die Hinweise!
Der Ansatz mit den Allpässen funktioniert, habe testhalber zwei sehr 
einfache mit je zwei Koeffizienten ausprobiert:
1
% Branch I (In-Phase)
2
aI1 = -0.735495;
3
aI2 =  0.459346;
4
% Branch Q (Quadrature)
5
aQ1 = -0.152135;
6
aQ2 =  0.855073;

An bei das Ergebnis des Tagesschau-Testsignals nach polarer 
SSB-Modulation und sync. Demodulation / Filterung.

Klingt anders, aber nicht unbedingt besser oder schlechter.
Frage mich noch immer, warum das so verzerrt klingt. Das müsste besser 
gehen.

Hat die Deutsche Bundespost früher auf den Fernstrecken nicht auch 
SSB-Trägerfrequenz-Übertragung für Telefonie genutzt?

Ich glaube die Achillesferse ist die Unstetigkeitsstelle -pi => +pi des 
atan2 bei der Berechnung der Phase.
Anschließend wird die Phase differenziert, zeitdiskret heißt das eine 
Differenz des aktuellen mit dem vorherigen Wert.

Dabei kann die Differenz-Phase heftig springen. In Oktave gibt es dafür 
die "unwrap"-Funktion, die je nach Schwellwert der Differenz eine 
Korrektur um 2*pi vornimmt.

Vermutlich funktioniert das nicht richtig, hier lohnt ggf eine 
Detailbetrachtung.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> Hat die Deutsche Bundespost früher auf den Fernstrecken nicht auch
> SSB-Trägerfrequenz-Übertragung für Telefonie genutzt?

Dürfte eher A3E als J3E gewesen sein.

Nicht nur Bundespost, btw.


https://fernmeldemuseum-dresden.de/technik/uebertragungstechnik/tf-uebertragungstechnik/systeme-mit-12-kanaelen/
von Wulf D. (holler)


Lesenswert?

Jörg W. schrieb:
> Dürfte eher A3E als J3E gewesen sein.

Interessanter Link. Aber A3E kann es nicht gewesen sein. Zitat
1
12 Fernsprechkanäle 300 Hz – 3400 Hz werden über zwei Amplitudenmodulationsstufen frequenzmäßig hintereinander in den Bereich 60 kHz bis 108 kHz (auch Primärgruppe genannt) umgesetzt.

48kHz / 12 = 4kHz. Ein wenig Platz brauchen die Analogfilter auch, da 
bleibt nur noch SSB.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> da bleibt nur noch SSB

oder C3E oder wie das heißt, ein Seitenband unterdrückt, aber der Träger 
noch dabei
von Wulf D. (holler)


Lesenswert?

Jörg W. schrieb:
> Wulf D. schrieb:
>> da bleibt nur noch SSB
>
> oder ein Seitenband unterdrückt, aber der Träger
> noch dabei

Das wäre auch möglich. Ist schwer, richtig detaillierte Infos darüber zu 
finden.

Kann mich kaum noch erinnern, aber Anfang der 80er könnte die Technik 
bei Ferngesprächen noch im Einsatz gewesen sein, bevor auf PCM 
gewechselt wurde.
Da gabs Rauschen, manchmal Nebensprechen und Prasselgeräusche, aber so 
merkwürdige Verzerrungen wie in meiner SSB-Simu gabs nicht.

Vielleicht bin ich mit dem Polar-Ansatz, also Amplituden- und 
Phasenmodulation, auf dem Holzweg.
von Wulf D. (holler)


Angehängte Dateien:

Lesenswert?

Hab mal ein Blockschaltbild von der Simulation angefügt.
Die Symbolik zwischen zeitdiskret- und kontinuierlich geht etwas 
durcheinander, sollte aber das Vorgehen ausreichend erklären.

Denke schon dass die Simulation halbwegs passt, das Youtube von DL2MAN 
klingt ganz ähnlich verzerrt.
Nur in der Frage warum das so ist und wie man ggf Abhilfe schaffen kann, 
bin ich keinen Schritt weiter.
von Daniel (daniel3)


Lesenswert?

Wulf D. schrieb:
> Denke schon dass die Simulation halbwegs passt, das Youtube von DL2MAN
> klingt ganz ähnlich verzerrt.

Bist du sicher, dass du den Sound vom DL2MAN-Video als Referenz nehmen 
kannst? Wir hatten ja weiter oben schon diskutiert, dass da 
wahrscheinlich über die Gerätemassen zu viel Sendeleisting 
reingeschwappt sein könnte:

Sandra schrieb:
> Wenn ich das SSB-Signal vom uSDX über ein Dämpfungsglied mit dem ICOM
> selber anhöre, hört sich das auch schlechter an, als wenn ich mein
> Signal mit einem entfernten WebSDR anhöre. Bisher haben alle QSO-Partner
> mein SSB-Signal vom uSDX für gut verständlich befunden.

Meiner Meinung nach bräuchtest du echte Aufnahmen vom uSDX unter realen 
Bedingungen mit optimal ausgesteuertem Mikrofonsignal.
von Wulf D. (holler)


Lesenswert?

Daniel schrieb:
> Bist du sicher, dass du den Sound vom DL2MAN-Video als Referenz nehmen
> kannst?

Sicher bin ich nicht. Aber immerhin ist DL2MAN einer der beiden 
Entwickler des uSDX, sollte schon wissen was er tut.

> Meiner Meinung nach bräuchtest du echte Aufnahmen vom uSDX unter realen
> Bedingungen mit optimal ausgesteuertem Mikrofonsignal.

Klar, das wäre optimal. Am besten mit dem gleichen Audiofile 
angesteuert, welches ich für die Simu verwendete. Besitze aber keinen 
uSDX. Einen vertrauenswürdigen findet man ab 100€.
Vielleicht magst du einen Test durchführen, die Audio-Testdatei hatte 
ich oben angehängt.

Habe mal testweise das SSB-Signal kartesisch moduliert, d.h. die I- und 
Q- Komponente nach Interpolation mit cos() und sin() multipliziert und 
addiert bzw subtrahiert, mit der Trägerfrequenz im Argument.

Nach Demodulation mit dem gleichen Synchron-Detektor, wie ich in für die 
Polarmodulation nutzte, ist nun das Ergebnis nicht vom Original zu 
unterscheiden. Auch das modulierte Trägerspektrum ist deutlich schmaler.
Im realen Leben bedeutet aber so ein Ansatz einen viel größeren 
Hardwareaufwand.
von Wulf D. (holler)



Lesenswert?

Zum Vergleich Spektrum und Demodulationsbeispiel der Simulation mit 
kartesischer SSB-Modulation. Ist viel sauberer.
Bleibt noch immer die Frage warum, wo klemmt es beim polaren Ansatz?
von Daniel (daniel3)


Lesenswert?

Wulf D. schrieb:
> Klar, das wäre optimal. Am besten mit dem gleichen Audiofile
> angesteuert, welches ich für die Simu verwendete. Besitze aber keinen
> uSDX. Einen vertrauenswürdigen findet man ab 100€.
> Vielleicht magst du einen Test durchführen, die Audio-Testdatei hatte
> ich oben angehängt.

Grundsätzlich wäre das möglich. Ich könnte das File in den uSDX 
einspielen, dann über Dämpfungsglied ins RTL-SDR und den Sound dort 
(also im PC) aufnehmen.

Dann müsste ich aber wissen, wie groß das Dämpfungsglied etwa sein 
sollte (Sendeleistung uSDX irgendwo bei 3,5W je nach Betriebsspannung) 
und außerdem wäre wichtig zu wissen, wie das Dämpfungsglied aufgebaut 
sein müsste (Abschirmung einzelner Segmente, asymm. oder symm., wie 
viele Einzelsegmente etc.), damit es keine unerwarteten 
Übersprechungen/Übersteuerungen gibt.
von Wulf D. (holler)


Lesenswert?

Daniel schrieb:
> Grundsätzlich wäre das möglich. Ich könnte das File in den uSDX
> einspielen, dann über Dämpfungsglied ins RTL-SDR und den Sound dort
> (also im PC) aufnehmen.
>
Das wäre Klasse.
Ich habe ein Pico-SDR, das fühlt sich ohne Preamp zwischen -40dBm und 
-100dBm wohl. Darüber entsteht Clipping, darunter zu viel Rauschen.
5W sind 37dBm, d.h. du müsstest mindestens 80dB dämpfen wenn der 
RTL-Stick ähnlich viel verträgt.

Wenn du mit einem PC sowohl die Audiodatei abspielen, als auch den 
RTL-Stick mit Recorder betreiben willst, wird es vermutlich schwer die 
80dB zu erreichen. Da koppelt immer irgendwo was rüber.

Hast du nicht noch irgendwo einen Audioplayer mit Akkubetrieb, einen 
iPod oder ein älteres Handy mit 3,5mm Klinkenstecker wo man die 
Lautstärke des Analogausgangs regeln kann?
Bei Bedarf erzeuge ich das Testaudio in einer gängigeren Abtastrate.

Dann könnte man den ganzen Aufbau trennen und an den uSDX einfach nur 
einen 50-Widerstand ohne Antenne anschließen. Rund 50dB Spielraum sind 
drin und im Wasserfalldiagramm sollte der Empfangspegel abschätzbar 
sein.
von Georg S. (randy)


Lesenswert?

Wulf D. schrieb:
> Zum Vergleich Spektrum und Demodulationsbeispiel der Simulation mit
> kartesischer SSB-Modulation. Ist viel sauberer.
> Bleibt noch immer die Frage warum, wo klemmt es beim polaren Ansatz?

Theoretisch sollte es keinen Unterschied geben, v.a. in einer Simulation 
bei der die Trägheit PLL nicht zum tragen kommt. Bleibt an sich nur den 
Fehler in der Mathe zu suchen der in der Simulation steckt.
von Wulf D. (holler)



Lesenswert?

Georg S. schrieb:
> Theoretisch sollte es keinen Unterschied geben, v.a. in einer Simulation
> Bleibt an sich nur den
> Fehler in der Mathe zu suchen der in der Simulation steckt.

Fehler in der Mathe ja, aber die Simulation orientiert sich am uSDX-Code 
und da könnte sie ganz dicht dran sein. Vielleicht kann das Daniel mit 
einem Test bestätigen.

Versuche natürlich auch die Mathe zu verbessern. Bin da einen halben 
Schritt weiter. Wie schon zuvor gesagt, vermute den Fehler in der Phase.

Der uSDX geht in der letzten auf Github veröffentlichten Version 1.02x 
der usdx.ino wie folgt vor:
1
static int16_t prev_phase;
2
int16_t phase = arctan3(q, i);
3
int16_t dp = phase - prev_phase;  // phase difference and restriction
4
prev_phase = phase;
5
if(dp < 0) dp = dp + _UA; // make negative phase shifts positive: prevents negative frequencies and will reduce spurs on other sideband

Also erst den arctan() rechnen, dann Differenzieren und darauf bei 
Bedarf eine Korrektur um 2*pi.
Das arctan3(q, i) ist hier eine schnelle Näherungsfunktion des arctan2.

Habe zwei verschiedene Optimierungen versucht, beide mit exakt dem 
gleichen Ergebnis:

1. Die Reihenfolge oben vertauscht, d.h. arctan(), dann Phasenkorrektur 
und zuletzt differenziert.

2. Ganz ohne arctan() und Differenz, sondern die analytische Ableitung 
nach der Euler-Formel direkt berechnet.

In den Spektren schlägt sich die Änderung nicht besonders stark nieder. 
Aber ich finde das demodulierte Signal hört sich schon deutlich besser 
an.

Anbei die aktualisierte Übersicht und das demodulierte Audiosample mit 
der o.g. Verbesserung.
von Wulf D. (holler)


Angehängte Dateien:

Lesenswert?

Wieder einen halben Schritt weiter: neben dem besser funktionierendem 
unwrap der atan2-Unstetigkeit das Timing zwischen Phase und Amplitude 
fein abgeglichen.
Dazu die bereits auf Trägerfrequenz fc interpolierten Daten verwendet, 
auf Signal-Abtastrate umgerechnet war das Optimum bei 1,5 Ts Verzögerung 
der Amplitude. Ein T ging dabei sicher durch die Differenzierung der 
Phase verloren.

Das Tagesschau-Intro hört sich jetzt noch ein wenig besser an, die 
Sprache ist fast sauber. Im Zip-Archiv alle drei Verfahren 
nebeneinander, uSDX-like, die optimierte Polarmodulation und das rein 
kartesische Verfahren.

Spektrum sieht auch etwas besser aus: etwa 10dB bessere Unterdrückung 
des unteren Seitenbands USB und am oberen Ende etwa 10dB weniger 
Energie.

Vom Spektrum her lange nicht perfekt, das sieht man beim Vergleich mit 
dem kartesischen Ansatz und vor allem wenn man sich das 
Zweiton-Testsignal 600Hz + 1kHz anschaut: jede Menge Mischfrequenzen. Wo 
kommen die bloß her?

Der Abfall zu höheren Frequenzen beim demodulierten Signal liegt am 
Dezimationsfilter, hab da eine fertige Octave-Funktion genutzt. Die 
hätte ich besser dimmensionieren sollen, der Abfall hat also nichts mit 
der Modulation zu tun.
Generell haben die demodulierten Signale -6dB Amplitude gegenüber 
Einganssignal. Die andere Hälfte landet im unteren Seitenband.
von Wulf D. (holler)


Lesenswert?

Für die, die es interessiert: habe das Thema jetzt parallel in ein 
zweites Forum gestellt, mit Ausrichtung auf digitale Themen:
https://www.dsprelated.com/thread/18639/

Hätte hier vielleicht doch besser in den DSP-Slot gepasst.
Sieht man sich die unglaubliche Beteiligung am vintage 
4-Transistor-Verstärker Thread an, liegt das Interesse hier wirklich wo 
anders. Ist natürlich auch ok.
von Georg S. (randy)


Lesenswert?

Ist hald ein Nischenthema. Als ich hier mein Projekt vorgestellt habe 
hat mich die sehr zurückhaltende Reaktion auch gewundert. Dachte ich 
hätte ein Alleinstellungsmerkmal: Die günstigste stand-alone(*) 
Möglichkeit in den Mikrowellenbändern ein SSB Signal zu bekommen. Ist 
aber scheinbar noch Nischichiger.
Bastle damit rum wenn es dich interessiert. Alle anderen kaufen sich 
einen QMX oder uSDX. Ist auch verständlich, da geht verdammt viel Zeit 
rein. Wenn man nicht basteln sondern nur funken will. Hab ich bei meiner 
QO-100 Station auch so gemacht. Alles außer dem polaren SSB-Generator 
ist einfach gekauft und zusammengesteckt. Sonst wäre das nie in einem 
reellem Zeitplan fertig geworden.
Diesen September gehe ich nochmal auf die UKW-Tagung in Weinheim. 
Vielleicht findet es da Interessenten. Vor allem weil ich vorhabe einen 
Fertigbausatz anzubieten, vielleicht nicht bis September, aber bis 
Jahresende (SMD bestückt, THT und Gehäuseeinbau selber machen)
Fertig ist das noch lange nicht. Die Integration mit SDR-Software steckt 
in den Kinderschuhen (wichtig für reine User) und die Variante mit 
48kSps hat einen schwer zu findenden Fehler den die 16kSps nicht hatte. 
Der vermiest das Spektrum.

(*) also ohne 2m/70cm Allmode-Funke deren Signal hochgemischt wird.
: Bearbeitet durch User
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Georg S. schrieb:
> Vielleicht findet es da Interessenten.

Ich denke, Interessenten (im Sinne von "Leute, die das dann verwenden 
würden") finden sich immer, aber die wenigsten stecken da tief genug 
drin.

Letztlich, das Einzige, was mich am QMX stört ist, dass er nicht 
Opensource ist.
von Wulf D. (holler)


Lesenswert?

Georg S. schrieb:
> Ist hald ein Nischenthema.
Sieht so aus. Simple Antennenverstärker sind gefragter ;-)

Kann mich aber auch für low-tech-Themen begeistern. Wollte schon immer 
mal einen super-stromsparenden, schmalbandigen UHF-Regen.-Receiver mit 
3-Port SAW-Filter aufbauen. Auch so ein 2- 4- Transistor Projekt.

> Bastle damit rum wenn es dich interessiert. Alle anderen kaufen sich einen QMX 
oder uSDX.
Habe ich jetzt auch getan, einen beschädigten (tr)SDX. Eigentlich nur 
zum Vermessen. Will wissen, was der genau leistet. Muss erst reparieren, 
Sender angeblich durch Verpolung zerstört. Noch ist der nicht im Haus.

Im DSP-related Forum hatte auch jemand die polare SSB-Modulation mit 
ausreichender CPU-Power versucht. Sprache klingt ausgesprochen gut, aber 
er sagt auch, dass er an weiteren Optimierungen gescheitert ist. Hab ihm 
um Spektren gebeten, mal sehen ob was kommt.

> Vor allem weil ich vorhabe einen Fertigbausatz anzubieten
Das ist natürlich ein großer Schritt, was ganz anderes als ein PoC auf 
die Beine zu stellen.

> die Variante mit 48kSps hat einen schwer zu findenden Fehler den die 16kSps 
nicht hatte.
Ob du nun einen Zeitversatz zwischen Amplitude und Phase hast? Durch 
meine Simulation fand ich raus, dass bereits ein Sample (1/fs) das 
Spektrum deutlich verschlechtert.

Jörg W. schrieb:
> Letztlich, das Einzige, was mich am QMX stört ist, dass er nicht
> Opensource ist.
Beim SDX findet die Weiterentwicklung leider auch nur noch als closed 
source im (tr)SDX statt. Schade.
Und der QMX hat bis heute kein Update auf SSB: damit entfällt auch so 
was wie FT8, oder?
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> Und der QMX hat bis heute kein Update auf SSB: damit entfällt auch so
> was wie FT8, oder?

Doch, er kann SSB (mit Polarmodulation), und er macht Digimodes 
ausgesprochen aufwändig: er misst die ankommenden Frequenzen, und 
generiert das FSK-Signal passend.

Ja, dass der (tr)uSDX von Opensource abgerückt ist, macht ihn mir auch 
wenig sympathisch.  Habe noch einen uSDX mit 9-Band-Modul, dass kann der 
QMX halt nicht (aber dafür ist er viel kleiner).
von Georg S. (randy)


Lesenswert?

Wulf D. schrieb:
>> die Variante mit 48kSps hat einen schwer zu findenden Fehler den die 16kSps
> nicht hatte.
> Ob du nun einen Zeitversatz zwischen Amplitude und Phase hast?

Wenn, dann müsste dieser kleiner gewesen sein als bei der 16kSps 
Variante, einfach wegen der 3fachen Samplerate. Aber ich bin wegen 
Wasser im Keller (Gewitterregen) die letzte Woche zu nichts gekommen.
Ich suche noch. Ein weiteres mal stellt sich raus dass es wertvoll ist 
den Source Code so zu organisieren dass man die Hardware-Abhängigen 
Sachen so abgetrennt hat dass man die Signalverarbeitung auf dem PC 
compilieren kann. Das hilft viel weil es man Zwischenwerte der 
Berechnung auf die Festplatte schreiben kann.
von Georg S. (randy)


Lesenswert?

Wulf D. schrieb:
> Und der QMX hat bis heute kein Update auf SSB: damit entfällt auch so
> was wie FT8, oder?

Bei meinem polaren Modulator sollte FT8 gehen. Selber getestet habe ich 
das bisher nicht, aber ein HAM aus Brasilien. Aber er hat keinen 
speziellen FT8-Moduls, sondern das läuft über den normalen SSB 
Modulator, mit entsprechend mehr Rauschen im Band als sein müsste.
von Wulf D. (holler)


Lesenswert?

Georg S. schrieb:
> Ich suche noch. Ein weiteres mal stellt sich raus dass es wertvoll ist
> den Source Code so zu organisieren dass man die Hardware-Abhängigen
> Sachen so abgetrennt hat dass man die Signalverarbeitung auf dem PC
> compilieren kann.

Auf jeden Fall macht das Sinn. Wenn's kompliziert wird, gehe ich 
dreistufig vor. Erst "High-Level" in Matlab/Octave, dann in C/C++ auf 
dem PC und im letzten Schritt erst auf dem uC. Auch da nutze ich 
zunächst Testdaten vom PC, sonst wird die Fehlersuche zu mühsam.
Hatte ich so beim FT8-Decoder auf dem RP2350 Ende letzten Jahres  so 
gemacht.

Mit dem QMX hat Jörg natürlich Recht, hab's nicht mitbekommen. Ob es 
davon Spektren gibt?

> Bei meinem polaren Modulator sollte FT8 gehen. ... sondern das läuft über den 
normalen SSB Modulator, mit entsprechend mehr Rauschen im Band als sein müsste.

Das Außer-Band als auch In-Band-Geräusch ist wirklich unschön. Auch bei 
FT8, wo man ja potentiell Nachbarn im gleichen Kanal zurauscht, wenn man 
wie in meiner Simu nur 30dB SNR schafft.

Könnte aber sein das das in der Simu ein Artefakt aus der dort 
verwendeten Interpolationsfunktion interp(x, k) ist und ich da ein 
Phantom jage.
Mit anderen Worten: die polare Modulation könnte auch fehlerfrei 
umsetzbar sein. Was zu beweisen wäre. Baue mal einen PoC auf, das wird 
aber Herbst oder später.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> Das Außer-Band als auch In-Band-Geräusch ist wirklich unschön. Auch bei
> FT8, wo man ja potentiell Nachbarn im gleichen Kanal zurauscht, wenn man
> wie in meiner Simu nur 30dB SNR schafft.

Deshalb hat er ja beim QMX auch einen separaten Digitalmodus 
implementiert, um nicht über den SSB-Modulator gehen zu müssen.
von Wulf D. (holler)



Lesenswert?

Jörg W. schrieb:
> Deshalb hat er ja beim QMX auch einen separaten Digitalmodus
> implementiert, um nicht über den SSB-Modulator gehen zu müssen.

Das ist wirklich elegant. Dennoch würde ich gern ein SSB-Spektrum vom 
QMX sehen. Bin einfach nur neugierig, ob jemand die Polarmodulation im 
Griff hat.

Wie oben gesagt, hatte ich mir einen defekten (tr)µSDX besorgt. Die drei 
BS170 waren schnell gegen 2N7002k ersetzt, was anderes hatte ich nicht 
da. Deshalb das TX-Bias von 128 auf 90 reduziert, außerdem TX-Drive von 
4 auf 2. Das ergab die sauberste AM-Modulation. Sauber ist aber relativ.

CW ist wirklich sauber, keinerlei Nebengeräusch. Ein einzelner Ton ist 
in AM und auch SSB ebenfalls ok. Aber schon ein Zweiton (600Hz & 1kHz) 
wird sowohl bei AM und besonders bei SSB von deutlichem 
Hintergrundgeräusch unterlegt.
Das sieht man sowohl am HF-Spektrum auf einem analogen Anritsu MS2601B 
als auch hört man das nach Demodulation mit einem Pico-SDR. Bei 
optimalem Empfang bei -75dBm.
Sowohl SDR als auch µSDX waren massefrei mit Akkubetrieb, auch die 
Generatoren.

Ob das Pico-SDR das Ergebnis verfälscht, kann ich nicht zweifelfrei 
sagen. Aber das HF-Spektrum sagt eigentlich schon viel aus. Max. 20dB 
Seitenbandunterdrückung und ein sehr deutliches Außerband-Geräusch, 
keine 20dB unter Sendepegel.

Könnte sein, dass die nicht originalen TX-Transistoren das Ergebnis 
verschlechtert haben. Wer Vorschläge hat wie man das Ergebins verbessern 
kann, bitte melden. Oder Messungen von Spektren mit Polarmodulation.

Dateien im Anhang:
Die Messübersicht. Sendefrequenz war 14 MHz. AM-Modulation ca 40%. Beim 
µSDX gabs mit dem Analog-Oszi kein Bild der Modulation. Mit dem 
digitalen Tektronix ging es nur als Foto. Die Screenshot-Funktion 
(Print) lieferte nur Artefakte.

Die Audiodatei ist das vom µSDX SSB-gesendete und Pico-SDR empfangene 
Tagesschau-Intro, wie schon zuvor benutzt. Die leisen Plopp-Töne alle 
500ms-1s sind vom Messaufbau, konnte ich kurzfristig nicht abstellen.
Der Rest hat dennoch viel Potential nach oben.
Eigentlich finde ich den Aufbau des (tr)µSDX ziemlich genial. Aber 
sollte die HF-Qualität bei allen Exemplaren so sein, wäre der für TX 
eher als ein PoC anzusehen.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> Das ist wirklich elegant. Dennoch würde ich gern ein SSB-Spektrum vom
> QMX sehen. Bin einfach nur neugierig, ob jemand die Polarmodulation im
> Griff hat.

Kann ich versuchen aufzunehmen. Was hättest du gern als Ansteuerung? 
2-Ton-Signal? Müsste ich sehen, wo / wie ich das zusammen bekomme. 
Einen AWG habe ich nicht hier.
von Wulf D. (holler)


Angehängte Dateien:

Lesenswert?

Jörg W. schrieb:
> Kann ich versuchen aufzunehmen. Was hättest du gern als Ansteuerung?
> 2-Ton-Signal?

Wäre wirklich klasse. Hänge das 2-Ton-Signal als längeres mp3 an. Habe 
das von einem kleinen Player (iPod Nano) in Endlosschleife abgespielt.
Geht wahrscheinlich auch vom PC, da evtl mit mehr Störungen. Oder ein 
älteres Handy mit 3,5mm Kopfhörer-Klinkenbuchse.
Ein AWG braucht man nicht.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Player werde ich finden. Da fällt mir noch ein, dass man ja mit der 
Funktionsgenerator-App auch ein Zweitonsignal produzieren können sollte.

Muss dann nur gucken, wie weit ich das auf Mikrofon-Level dämpfen muss.
von Wulf D. (holler)


Lesenswert?

Danke!
Ich habe die Mehrfach-Töne auf dem PC mit dem freien Audio-Editor 
Audacity erzeugt. Einfach pro Ton eine Spur anlegen und hinterher alles 
in ein Mono-Audiofile exportieren.
Der uSDX benötigte erstaunlich hohe Pegel an seinem Eingang. Da musste 
ich den Lautstärkesteller am Player gut aufdrehen.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> Ich habe die Mehrfach-Töne auf dem PC mit dem freien Audio-Editor
> Audacity erzeugt. Einfach pro Ton eine Spur anlegen und hinterher alles
> in ein Mono-Audiofile exportieren.

Stimmt, ist natürlich auch 'ne Variante.
von Gerhard H. (ghf)


Lesenswert?

Ich bekenne, nicht den ganzen thread gelesen zu haben,

aber das scheint ähnlich zu sein wie die 3. Methode
nach Weaver. Der ersetzt das 90°-Filter durch eine
Multiplikation/Mischen mit sin und cos. Sin und cos
fallen bei einem DDS praktisch in idealer Form ohne
nennenswerten Mehraufwand für lau an.

"   3rd method Weaver   " ist google-AI-bekannt.

Gerhard   DK4XP
von Wulf D. (holler)


Lesenswert?

Gerhard H. schrieb:
> aber das scheint ähnlich zu sein wie die 3. Methode
> nach Weaver. Der ersetzt das 90°-Filter durch eine
> Multiplikation/Mischen mit sin und cos. Sin und cos

Nein, darum geht es hier nicht, es geht um polare Modulation.
Das 90°-Filter ist hier ein Hilbert-Transformator. Digital läßt der sich 
in guter Qualität implementieren.
Die Frage ist hier, wovon die Qualität der Modulation am Ende abhängt.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Jörg W. schrieb:
> Muss dann nur gucken, wie weit ich das auf Mikrofon-Level dämpfen muss.

Im Moment bekomme ich da gar keine Leistung im SSB-Betrieb raus. Da muss 
ich mal gucken, ob noch irgendwas mit dem Aufbau des Bausatzes nicht in 
Ordnung ist. In CW und Digi ist es kein Problem, Leistung 
rauszubekommen.

(Digimode funktioniert über die eingebaute 
USB-Soundkarten-Implementierung, nicht über den Analog-Eingang.)
: Bearbeitet durch Moderator
von Wulf D. (holler)


Lesenswert?

Kommt denn HF-Pegel mit dem eingebauten Mikrofon?
Vielleicht erkennt der die gesteckte Klinkenbuchse nicht, hat soweit ich 
das im Schaltplan sehe keine richtige Umschaltung intern/extern.

Sendepfad geht ja, wenn die Digimodes funktionieren.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> Kommt denn HF-Pegel mit dem eingebauten Mikrofon?

Hab ich noch nicht geschafft, aber vielleicht muss ich einfach die 
Bedienungsanleitung nochmal lesen. :-)  SSB mach ich sonst nicht, 
insbesondere nicht QRP.
von Sandra (sdr_f169)


Lesenswert?

Beim PicoRXProjekt wurde schon einiges getestet, um eine TX-Funktion 
hinzu zu fügen:

https://101-things.readthedocs.io/en/latest/transmitter_experiments.html
von Wulf D. (holler)


Lesenswert?

Bin schwer beeindruckt, wie tief und systematisch die das Thema 
bearbeitet haben: Danke für den Hinweis!

Die Ergebnisse hören sich gut an, aber man sieht bei der polaren 
Modulation im Spektrum noch deutlich, wie das Außerband- Geräusch bei 
jedem Wort aufzieht.

Im QMX wurde noch ein Weg dazwischen beschritten: polare Modulation mit 
SI5351 als NCO und class E TX (soweit gleich), aber mit analoger 
Modulation der TX-Versorgungsspannung. Bei dem 101-things Ansatz nutzen 
die class D.

Insofern wären Jörgs Messungen am QMX schon noch interessant.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite



Lesenswert?

Jörg W. schrieb:
> aber vielleicht muss ich einfach die Bedienungsanleitung nochmal lesen

Hat geholfen. :-)

Ich hatte nur "Audio" im Menü gesehen und da nichts relevantes gefunden 
– aber für "SSB" gibt es noch ein eigenes Menü, und dort auch die 
Möglichkeit, eine Signalquelle anzugeben.  Standard war "USB", also die 
eingebaute (emulierte) USB-Soundkarte.  Kein Wunder, dass da vom 
externen Signal nicht viel zu hören war. ;-)

Hier mal die Messungen des Spektrums.

Die beiden Diagramme 230614 und 230853 zeigen dein Zweitonsignal, wobei 
ich beim zweiten die RBW auf das Minimum von 30 Hz herunter genommen 
habe (was zu 100 s Sweep führt), um die Peaks möglichst fein aufzulösen.

Die Diagramme 225646 und 230036 zeigen das Spektrum des eingebauten 
Zweitongenerators, den man auch als SSB-Quelle wählen kann (700 Hz + 
1900 Hz).

Schließlich noch das CW-Signal als Vergleich, Diagramm 224619.  Für SSB 
habe ich die Mittenfrequenz des Analyzers allerdings so verschoben, dass 
das Sprachband halbwegs in der Mitte liegt, d.h. die (CW-)Grundfrequenz 
wäre links davon (USB-Modus).

(Vor dem Analyzer ist ein 40-dB-Attenuator.  Hatte die Pegelanzeige 
nicht korrigiert, Gesamtleistung ist ja jetzt nicht ganz so wichtig.)
: Bearbeitet durch Moderator
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Angehängte Dateien:

Lesenswert?

Habe heute früh bemerkt, dass ich vermutlich noch nie die 
Autokalibrierung laufen lassen hatte. Damit korrigiert die Firmware für 
die einzelnen Bänder DAC-Fehler. Dauerte ziemlich lange und hat gut 
aufgeheizt. :-)

(Rechts im Bild der Abschlusswiderstand, der ist für die IR-Kamera 
vermutlich zu stark reflektiv.)

Hat jetzt aber für 7 MHz zumindest nichts grundlegend geändert, habe 
aber nur kurz den internen 2-Ton-Generator für den Test benutzt.

Ich muss mir mal ein externes Mikrofon bauen, dann kann ich auch mal 
versuchen, einen Test mit richtiger Sprache over the air zu machen und 
aufzuzeichnen.  Vielleicht bin ich ja bei guten Bedingungen auch mal in 
Twente zu hören und kann dort mitschneiden.
von Wulf D. (holler)


Angehängte Dateien:

Lesenswert?

Vielen Dank für die Messungen!
Die höhere Auflösung war eine gute Idee, hab die µSDX-Messungen auf RWB 
30Hz wiederholt und per GPIB exportiert.

Den QMX-Messungen gegenübergestellt und zusätzlich noch neben die 
PicoTX-Prototypen aus dem 101-things-Link gestellt. Auch wenn die vom 
Messsignal und Meßgeräten nicht dazu passen.
Man sieht dennoch, dass die polare Modulation anscheinend immer mit 
einem deutlichen Störteppich einher geht. Am Besten sieht's noch beim 
QMX aus, der hat bei dem Zweiton-Signal um 40 dB Geräuschabstand.

Man sieht auch gut, dass das 300Hz / 1900Hz Signal an der Grenze der 
90°-Filter liegt, die Seitenbandunterdrückung ist deutlich schwächer als 
bei 600Hz / 1kHz.

Mal sehen, ob die 101-Things-Leute da noch ran kommen.
Oder mal selber was probieren.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> Man sieht auch gut, dass das 300Hz / 1900Hz Signal an der Grenze der
> 90°-Filter liegt, die Seitenbandunterdrückung ist deutlich schwächer als
> bei 600Hz / 1kHz.

Ich vermute, dass sie genau deshalb auch diese Kombi gewählt haben.
von Wulf D. (holler)


Lesenswert?

Jörg W. schrieb:
> Ich vermute, dass sie genau deshalb auch diese Kombi gewählt haben.

Wahrscheinlich. Ein ziemlich schmales Band.

Nehme an, dass sich der QMX wesentlich besser als der uSDX anhören wird.
Nach den Spektren sollte es 20dB weniger Geräusch geben.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Jörg W. schrieb:
> Vielleicht bin ich ja bei guten Bedingungen auch mal in Twente zu hören
> und kann dort mitschneiden.

Zumindest jetzt abends auf 40 m keine Chance. Mein CW-Signal höre ich 
bei hinreichend schmalbandigem Filter gerade mal so, da braucht man kein 
SSB zu versuchen.

Vielleicht passt es ja tagsüber auf 20 m besser.
von Wulf D. (holler)


Lesenswert?

Auf 80m soll es Abends z.Z. auch gut funktionieren, falls man eine 
passende Antenne hat.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Hab ich leider nicht. Ist alles bissel kürzer.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Angehängte Dateien:

Lesenswert?

Nach Twente komme ich nicht. Also alternativer Aufbau: senden mit der 
Antenne auf dem Dach, Empfang mit einem TH-F7 im Wohnzimmer, dort vom 
Lautsprecher aus mit dem Laptop mitgeschnitten.

Die Rauschglocke am Anfang ist ein sehr stark verstärktes 
Eingangsrauschen der NF, das dann durch das Einsetzen der NF-AGC im QMX 
zurückgeht, sowie das erste Mal auf das Mikrofon gesprochen wird.
von Wulf D. (holler)


Lesenswert?

Jörg W. schrieb:
> Nach Twente komme ich nicht.

Hab’s heute Nacht mit dem uSDX auf 80m probiert, da kam nur ganz schwach 
das CW Signal an. Der Twente Signalpegel hat sich nicht gerührt.

Heute Morgen ca 9:00 Uhr kam USB auf 20m an (10dB über Rauschpegel), 
leider vergaß ich aufzuzeichnen. Eine 1/2h Stunde später ging nichts 
mehr, auch kein CW.

Wie auch immer, lokal gemessen hatte der uSDX viel Klirr und Geräusch.

Bei QMX klirrt es subjektiv viel weniger.
Das Geräusch könnte von zu wenig RX-Pegel kommen.
Und das Mikrofon hat vermutlich zu viel Pegel bzw die AGC ist etwas 
langsam. Gut, stört die Verständlichkeit nicht im geringsten.
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Wulf D. schrieb:
> Und das Mikrofon hat vermutlich zu viel Pegel bzw die AGC ist etwas
> langsam.

Das Mikrofon ist einfach nur eine Elektretkapsel aus der Bastelkiste, 
ohne irgendwelche Gehäuse oder Windschutz.  Den Pegel / AGC habe ich 
notdürftig mit dem Terminalprogramm justiert.

Wenn man ständig SSB machen möchte, würde man sich wohl was besseres 
leisten.
von Georg S. (randy)


Angehängte Dateien:

Lesenswert?

Ich hab heute den polaren Modulator mit 48kSps über den QO-100 
ausprobiert. die Beispiele auf der Webseite 
https://dl0tz.de/polar/index.html#Messungen sind bisher mit 16kSps.
Der Pegel könnte etwas höher sein. Ich hab das Gefühl dass das vor einem 
Jahr noch etwas mehr war. Vielleicht gammelt ein Stecker oder das Kabel 
saugt Wasser...
Was man sieht ist dass andere ein wesentlich "rechteckigeres" Spektrum 
haben. Ich hab schon ein 2poliges Hochpassfilter mit 2kHz Eckfrequenz um 
die Tiefen nach unten zu drücken. Es scheint so dass da bei den meisten 
TRX noch viel mehr an Sprach-DSP gemacht wird.
Ich versuche nächste Woche über Arbeitskollegen das Spektrum mit einem 
professionellen Speki aufnehmen zu können.
: Bearbeitet durch User
von Wulf D. (holler)


Lesenswert?

Hört sich gar nicht so übel an. Bist gerade 10 dB über dem Rauschpegel, 
da kann man natürlich kein Geräusch beurteilen.
Wenn du Spektren messen willst, wären die Zweitöne mindestens so 
interessant wie Sprache als Modulationssignal.

Mir ging es in dem Thread erst mal über die erreichbare Qualität der 
polaren Modulation und auf was man achten muss.

In der Funkpraxis mag ein Präprozessing des Sprachsignals eine wichtige 
Rolle spielen. In Sandras Link auf die 101-things-Untersuchungen nimmt 
die Audioverarbeitung auch größeren Raum ein.
Aus meiner Sicht schon Feintuning, zunächst sollten Klirr und 
Interferenzen im grünen Bereich sein.

Übrigens, nutzt du Parabolantennen? Die Frequenzachse sieht nach X-Band 
aus.
von Georg S. (randy)


Lesenswert?

Wulf D. schrieb:
> In Sandras Link auf die 101-things-Untersuchungen nimmt
> die Audioverarbeitung auch größeren Raum ein.

Das muss ich bei Gelegenheit durcharbeiten. Zur Zeit ist mein Signal 
unnötig Basslastig, aber einfach einen noch steileren Hochpass über den 
Sprachbereich legen macht das Signal nur schlechter. Und auch meine AGC 
(automatic gain control) für den Mikrofonpegel funktioniert nicht gut.


> Wenn du Spektren messen willst, wären die Zweitöne mindestens so
> interessant wie Sprache als Modulationssignal.

Ich hatte vor CW, Sprachsignal und ein 3-Ton Signal zu messen. Ein 
dritter Ton mit 20dB weniger Pegel sorgt dafür dass ich im IQ-Signal 
keine Nulldurchgänge habe sondern die Amplitude nur auf 1/10 des 
Maximalpegels runter geht. Damit will ich sehen wie hoch die Probleme 
der Modulation sind ohne das Nulldurchgangs-Problem. Das ist bei Polarer 
Modulation nicht zu vermeiden.
Ist das für dich ok? Oder bestehst du auf einem 2-Ton signal? Das müsste 
ich noch die IQ-Tabelle mit Octave erzeugen.


> Die Frequenzachse sieht nach X-Band aus.

Der Uplink zum QO-100 ist bei 2,4GHz, auf der Frequenz erzeuge ich das 
Signal mit ca. 0dBm und schicke es dann in eine PA die ca. 10W draus 
macht.
Der Satellit schickt das Signal bei ca. 10GHz wieder runter. Das Video 
ist von einem WebSDR der in England steht:
https://eshail.batc.org.uk/nb/
Das erklärt die Frequenzachse bei ca. 10 GHz.
Es wäre interessant einen Empfänger für die 2,4GHz zu haben, dann könnte 
ich es ein paar Meter neben der Antenne selber empfangen und mit mehr 
als den 10dB SNR hier rein stellen. Hab ich (derzeit) aber nicht.
: Bearbeitet durch User
von Wulf D. (holler)


Lesenswert?

Georg S. schrieb:
> Damit will ich sehen wie hoch die Probleme
> der Modulation sind ohne das Nulldurchgangs-Problem. Das ist bei Polarer
> Modulation nicht zu vermeiden.
> Ist das für dich ok?

Ja klar, man sieht so oder so die Signalqualität innerhalb des Bands, 
wenn man den Span des Analyzers und dessen Bandbreite bei dieser Messung 
nicht zu groß wählt.
Das mit den Nulldurchgängen kapiere ich zwar nicht, aber egal.

>
>> Die Frequenzachse sieht nach X-Band aus.
> Der Satellit schickt das Signal bei ca. 10GHz wieder runter. Das Video
> ist von einem WebSDR der in England steht:
> https://eshail.batc.org.uk/nb/

Spannende Sache, hatte ich zuvor noch nie von gehört.
von Georg S. (randy)



Lesenswert?

Hier ein paar Spektren. Der Spectrum Analyzer den ich hatte ging nur bis 
1,5GHz, deswegen habe ich eine Frequenz im 23cm Band genommen obwohl 
mich im wesentlichen der Bereich bei 2,4GHz interessiert.
Beim 3-Ton Signal (2-Ton 1000/1500Hz plus ein dritter Ton mit 500Hz bei 
-20db) hab ich mit dem Marker das rechte Intermod-Produkt genommen weil 
das linke bei ca. -20dB ja mit Absicht im Signal war.
Die Nebenlinie bei 48kHz (=AM/PM Updatefrequenz) ist relativ stark. Und 
beim SSB Audiosignal hat man das Gefühl einen Breitband-Rauschgenerator 
zu haben. Vielleicht sind solche Chips wie der ADF4351 einfach nicht 
besser.
: Bearbeitet durch User
von Georg S. (randy)


Angehängte Dateien:

Lesenswert?

Wegen dem 3 Ton Signal: hier ist das IQ-Diagramm. Die Töne bei 1000 und 
1500Hz machen in dem Diagramm 2 bzw. 3 Umdrehungen. Um den Nulldurchgang 
des 2-Ton Signals zu vermeiden ist ein dritter Ton mit 500Hz dazu 
genommen (d.h. 1 Umdrehung) der den Nulldurchgang und den Damit 
verbundenen 180° Sprung in der Phase vermeidet. Ich wollte mit dem 
Signal einfach die anderen Probleme testen die der Signalgenerator hat, 
v.a. Zeitverschiebung zwischen dem AM und dem PM Signal.
von Dirk W. (Firma: FEP) (dirkwi)


Lesenswert?

Georg S. schrieb:

.....
> Vielleicht sind solche Chips wie der ADF4351 einfach nicht
> besser.


Vom Rauschen her schafft man damit die -60 dBc im Nachbarkanal die man
z.B. für das ACP von TETRA braucht.

Gruss
D.W.
von Wulf D. (holler)


Lesenswert?

Falls ich die Spektren richtig zuordne und deute, sehe ich um 20dB 
Seitenbandunterdrückung beim Audio- und 35dB beim Dreiton- Signal, 30dB 
Dämpfung der Interferenzen und Klirr und 40dB Dämpfung der 
Abtast-Artefakte.

Nehme an, beim Audiosignal verfälschen Messfehler das Bild.

Das liegt alles im Rahmen des bisher gesehenen. Nicht wirklich gut im 
Vergleich zum I-Q-Mischer. Aber auch nicht schlechter als beispielsweise 
der QMX oder meine Simulations-Versuche.

Frage mich noch immer wo das Geräusch her kommt.
So langsam glaube ich, dass es Artefakte aus der begrenzt schnellen 
Steuerung von Phase und Amplitude sind.

Obwohl du mit 48kHz hier schon extrem schnell bist. Aber vielleicht 
kommen NCO (ADF4351) und/oder die steuerbare Amplitudendämpfung (PE4302) 
nicht mit?
Oder ist die Amplitudensteuerung mit 6 Bit zu grob?

Die ganze Sache müsste doch eigentlich in einer Simulation nachweisbar 
sein.
von Georg S. (randy)


Lesenswert?

> Vom Rauschen her schafft man damit die -60 dBc im Nachbarkanal die man
> z.B. für das ACP von TETRA braucht.

Hmm. Dann muss ich bei mir nochmal nach der fehlenden Signalqualität 
suchen. Bei dem Bild mit dem CW Träger sieht man dass der Rauschgrund 
bei ca. 60dBc gegenüber dem CW-Signal liegt, bei einer RBW von 30Hz. Das 
wären auf 30kHz Kanalbandbreite umgerechnet gerade mal -30dBc 
Nachbarkanalunterdrückung. (Tetra hat 25-150kHz Bandbreite). Da fehlen 
also ca. 30dB
von Wulf D. (holler)



Lesenswert?

Habe noch ein wenig in der Simulation optimiert und jetzt 40dB sowohl 
bei Seitenbandunterdrückung als auch Geräusch erreicht.

Die letzten 10dB waren in der Interpolation der Amplituden- und 
Phasensamples auf die höhere Trägerfrequenz-Rate vergraben.

Das hat für eine reale Implementierung wenig Bedeutung, da dort eine 
Interpolation verzichtbar ist. Aber vielleicht trotzdem interessant für 
Georg S., die 48kHz sind vielleicht auch durch Interpolation entstanden.

Der Fehler wurde durch das wellige Interpolationsfilter eingebracht. 
Habe der Bequemlichkeit halber die Octave-Funktion
1
datainterpol = interp (data, faktor);
benutzt, die da gleich mit filtert. Das verschlechtert das Ergebnis der 
in dieser Hinsicht sehr empfindlichen polaren Modulation.

Statt der function einfach die samples vervielfacht, ganz ohne Filter. 
Das brachte schon mal 7 dB geringeres Geräusch. Anschließend mit einem 
gleitenden Mittelwertfilter ganz leicht die Kanten geglättet, brachte 
nochmal 3 dB.

Der SSB-modulierte / demodulierte Audio-Ausschnitt ist nun nicht mehr 
vom Original zu unterscheiden. Anbei Spektren der Simulation vom 
Zweitonsignal und Audiosignal.

Außerdem drei verschiedene Näherungsformeln für den atan2(y,x) getestet. 
Zwei waren unbrauchbar, eine genau so gut wie die Library-Funktion.
Eine ungeeignete Näherung produziert natürlich auch jede Menge Geräusch. 
Im Attachment die gute Näherung als Matlab-Code. Wieviel Rechenzeit die 
als C-Code gegenüber der Lib einspart wäre zu testen.

Die Simulation ist nun ausgereizt, mal sehen ob sich das Vorgehen in 
eine reale Hard- und SW übertragen läßt.
von Georg S. (randy)


Lesenswert?

Wulf D. schrieb:
> vielleicht
> kommen NCO (ADF4351) und/oder die steuerbare Amplitudendämpfung (PE4302)
> nicht mit?

der PE4302 ist eher zu schnell. Einregelzeit auf die neue Amplitude ca. 
1us laut Datenblatt. das gibt hochfrequenten Splatter. Die FM des 
ADF4351 könnte die Crux sein. Ich wüsste nicht wie ich nachmessen könnte 
wie gut bzw. schnell er den Vorgeben für die PM folgt.
von Wulf D. (holler)


Lesenswert?

Georg S. schrieb:
> Die FM des
> ADF4351 könnte die Crux sein. Ich wüsste nicht wie ich nachmessen könnte
> wie gut bzw. schnell er den Vorgeben für die PM folgt.

Da fällt mir spontan auch nichts ein.
Evtl. indirekt, also nur FM modulieren und das Ergebnis über einem 
vertrauenswürdigen Empfänger analysieren.

Habe gesehen, dass der PE4302 nur 6 Bit hat. Könnte mal in meiner Simu 
die Amplitude auf 6 Bit quantisieren und schauen ob‘s schlechter wird.
von Georg S. (randy)


Lesenswert?

Zur Zeit mache ich mir mehr Sorgen um den Rauschfuß des ADF4351. Ich hab 
innerhalb des SSB Signals gerade mal 35-40dB mehr Leistungsdichte als 
außerhalb.
Dieses Rauschen ist auf meiner eigenen Platine (4-Lagig, jeder Vcc Pin 
hat seinen eigenen L/C Filter) gleich stark wie auf der 
Aliexpress-ADF4351-Eval-Platine.
: Bearbeitet durch User
von Wulf D. (holler)



Lesenswert?

Georg S. schrieb:
> Zur Zeit mache ich mir mehr Sorgen um den Rauschfuß des ADF4351. Ich hab
> innerhalb des SSB Signals gerade mal 35-40dB mehr Leistungsdichte als
> außerhalb.

So ganz verstehe ich das nicht: im deinem Spektrum vom CW-Signal sieht 
es eher nach 60dB aus. Es sei denn, du berücksichtigst die vier Spices 
drumrum, wo auch immer die her kommen. Wären noch immer 50dB. Die 
Umrechnung oben im Thread auf -30dBc konnte ich nicht nachvollziehen. 
Kenne mich diesbezüglich aber auch nicht aus.

Wie auch immer, besser als 40dB Geräuschdämpfung konnte ich in meiner 
ziemlich idealen SSB-Simulation auch nicht erzielen.

Interessehalber die Magnitude in der Simu auf 4 Bit quantisiert. Auf das 
Zweitonsignal hat das keinerlei Einfluss.
Beim realen Audio sieht es anders aus. Rauschanstieg und schlechtere 
Seitenkanalunterdrückung. Auch klingt das Audio rauer. Beides im 
Attachment, demoduliert ohne- bzw mit 4Bit- Quantisierung.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.