Hallo zusammen, beim Weaver-Demodulator ist eine kritische Stelle der Phasenversatz am ersten Mischer. Ist dieser nicht genau 90 °, so nimmt die Seitenbandunterdrückung ab. Bildlich gesprochen stehen die Vektoren nicht senkrecht aufeinander und löschen sich dadurch im zweiten Mischer nicht komplett aus. http://www.pa3ect.eu/Add%20LSB%20PRC-319.html beschreibt den Idealfall ganz anschaulich. Nun zur Frage: real ist ja weder der Phasenversatz am Mischer genau 90 ° noch die Verstärkung des Analogteils genau gleich für beide Kanäle. Kann man das durch einen einfache Verstärkung eines der beiden Kanäle direkt hinter dem ersten Mischer ausgleichen? http://mathscinotes.wordpress.com/2012/10/21/quadrature-modulators-solve-old-problems-with-self-calibration/ hat hierzu einiges simuliert, aus seiner "Figure 6" interpretiere ich, dass ein künstlicher Verstärkungsfehler einen Phasenfehler kompensieren kann. Liege ich richtig, habt ihr weitere Infos zu dem Thema? Viele Grüße und Danke Bernhard alias DL1BG
"Figure 6" sagt für mich aus, daß es nichts nützt, nur eine Größe zu verbessern, sondern es sollte die jeweils zueinander passende Genauigkeit angestrebt werden. Also z.B. 2.2° und 4% ergeben 37dB Unterdrückung oder 0.9° und 1.6% bieten 42dB Unterdrückung Beide Werte sind nicht wirklich gut. Niemand würde bei einem Superhet eine Spiegelfrequenz-Unterdrückung von 40 dB akzeptieren. Bei einem Amplitudenfehler von 0.15% und Phasenfehler von 0.1° sieht das Ergebniss schon akzeptabler aus: D = log(sin(0.1°))*20 = -56 dB Am Einfachsten wäre es also, den VFO durch 4 zu teilen und die Amplitude abgleichbar zu machen. Allerdings hat das NF-Filter auch einen durch Toleranzen verursachten Phasenfehler. Beim einer mathematischen Korrektur des Phasenfehlers ginge vermutlich die Rechenleistung in die Knie. Die Amplitude läßt sich ja leicht durch eine Multiplikation korrigieren. Ob es wohl möglich wäre, eine Phasenkorrektur schaltungstechnisch zu bewirken und das Ganze per DA-Wandler oder PWM-Ausgang zu steuern? Dazu wäre eine spannungsabhängige Zeitverzögerung notwendig. Diese Lösung benötigt keine Rechenleistung. Die Frage ist auch, ob sich ein Testsignal generieren läßt, mit dem die Phase automatisch korrigiert werden kann.
Stimmt, das Bild hatte ich falsch interpretiert. Zum Spielen habe ich den Mischer mal simuliert, deine Aussagen über die Spiegelfrequenzunterdrückung bestätigen sich damit. Eine Amplitudenkorrektur ist sicherlich kein Problem, allerdings lies sich damit in der Praxis auch keine hörbare Verbesserung erreichen. Für die Phasenkorrektur fällt mir ein: - Phasenschieber nach db1uq, davon habe ich aber keine Ahnung - weiteres Mischen in Software, ein kompletter Image Rejection Mixer pro Kanal @ all, vor allem db1ug: Gibt es eine Phasenschieberimplementierung, die nur ~2 ° kann, aber dafür einfach zu berechnen ist? Die CPU-Auslastung ist kein Problem, ich stehe bei ~5%, obwohl immer noch der "kleine" Cortex M3 drin ist. Am Rand: die Spiegelfrequenzunterdrückung ist in der Praxis nicht schlecht, die Teilung des Taktes ist auch 4. Der Takt wird differenziell bis zum Mischer geführt, siehe Schaltbild im Anhang. Nur messen kann ich in dieser Dimension nicht mehr vernünftig, besonders bei höheren Frequenzen. Am liebsten würde ich über den TX-Zweig während des Empfangs einen Testsinus erzeugen, der ja dank der Bandbreite des DACs auch einie khz gegen die Empfangsfrequenz verschoben sein könnte. Dann könnte man zum Abgleich im Bandpassteil die Antenne ab- und den TX-Zweig einkoppeln. So hätte man automatisch für jede mögliche HF ein Testsignal, mit dem Spiegeleffekte erkannt und wegkalibriert werden könnten, evtl. sogar LeCroy-Mäßig zur Laufzeit um Temperaturdrifts zu erwischen. Was sagt ihr / du, Bernd dazu?
Hallo Bernhard Ich hab ein wenig in LTspice rumprobiert (es war mehr ein rumstochern). Ich hab also einen Phasenfehler von 2° vorgegeben und wollte probieren, ob es sich wenigstens ein wenig verbessern läßt. Als ich beim 2. Mischer die Phase auch um 2° vorgestellt hab, war plötzlich das ungewollte Seitenband weg. Bei Phasenfehlern >5° bleibt ein Restfehler zurück, aber bis ca. 3° scheint sich das ungewünschte Seitenband fast komplett zu rauskompensieren. Da der zweite Empfangsmischer sowiso per Software verwirklicht ist, sollte das so machbar sein. Den File hab ich angehängt, mal sehen ob Du das Ergebnis so bestätigen kannst.
Ich hatte nur mit 10° Phasenversatz probiert und deshalb (quasi) keine Verbesserung mit dieser logischen Methode erreicht. Super Ergebnis, so lohnt sich das weitere Forschen! Gerade habe ich zum ersten mal DAC und ADC gleichzeitig an den beiden I2S des STM32 laufen lassen, wie erwartet reicht im TX-Betrieb das Übersprechen in den HF-Seitig offenen Mischereingang für ein starkes Signal aus. Heute Abend probiere ich mal, ob man so händisch am Oszi kalibrieren könnte. Ansatz: - Nennfrequenz (das was im display angezeigt wird "f_display") auf N MHz - LO2 auf 1560 Hz - LO1 auf f_display - LO2_RX -> LSB Empfang - TX-Modulator auf USB, Tiefpass aus, Sinus mit 3,9 kHz Jetzt sollte eine Spiegelfrequenz von 3,9 kHz - (2*1560 Hz) = ~800 Hz zu sehen sein, oder?
Nach langem Forschen wegen zwei Firmwarebugs konnte ich gerade meine Messungen durchführen. Umgesetzt: - Nennfrequenz (das was im display angezeigt wird "f_display") auf 7 MHz - LO2_RX auf 1560 Hz - LO2_TX auf 3120 Hz - LO1 6,9984 MHz - TX-Modulator auf USB, Tiefpass aus, Sinus mit 1,95 kHz -> LO1 gemessen 6,9986 MHz (wie erwartet) -> Sendefrequenz gemessen 7,0048 MHz (wie erwartet) Soweit so gut. Am Eingang des ADC messe ich leider hauptsächlich 1,2 kHz, das falsche Seitenband des TX. Grund: im RX/TX-Schalter direkt hinter dem jeweiligen Mischer schalte ich den nicht benutzten Pfad gegen GND -> kaum Einkopplung HF-Seitig, und die 4,8 kHz entstehen ja erst im HF_Mischer. Trotzdem konnte ich auf 40m und 10m einen Abgleich durchführen: 7 MHz: irgendwo zwichen 89,5 und 90,0 ° 30 MHz: 89,5 ° Summa Summarum: ein mehr akademischer Erfolg, ein automatischer Abgleich wird sich mit der aktuellen Hardware nicht lohnen. Als nächstes teste ich einen Amplitudenabgleich. Soweit mal vielen Dank, für Anregungen und Kritik an meinen Messungen bin ich natürlich dankbar. Viele Grüße Bernhard DL1BG
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.