HalliHallo Ich bin gerade auf der Suche eines tollen skripts wo beschrieben wird durch welche numerische verfahren ich signale (analoge) rückgewinnen kann. Aber irgendwie hab ich da noch gar nichts gefunden. Hoffe es ist mir jemand behilflich und kann mir den einen oder anderen tip geben. Lieben Gruß Fränzi
Aus was denn "rückgewinnen"? Ist das ursprüngliche Signal auf einen Träger aufmoduliert, oder ist es nur von Rauschen/Störungen überlagert?
Hallo Christoph das ursprüngliche Signal ist auf einem träger aufmoduliert
Also (a) ein Numerisches Verfahren, um die Modulation rückgängig zu machen, oder (b) ein Verfahren um dein Signal numerisch zu approximieren/darzustellen/auszuwerten? Falls a) AM oder FM moduliert? Falls b) Was für ein Signal, welcher Funktionsraum für die Approximation? /Ernst
Hallo Ernst Also ich möchte mein Signal welches ich amplitudenmoduliert habe quasi wieder demodulieren, demnach suche ich ein Verfahren wo dies möglich ist. Ein FM-moduliertes Signal habe ich auch, aber erstmal möchte ich mich gerne mit dem AM beschäftigen. Ich hoffe du kannst mir da ein wenig helfen Liebe Gruß Fränzi
Hallo Fränzi und Unernst oder was soll der Negationsstrich ( vielleicht http://www.nicht-lustig.de , der heisst Sauer) Das sieht nach einer Art "software-defined radio"-Aufgabe aus. Mit diesem Suchbegriff findet Google viel praxisbezogenes. Ein Signal, das in Ampltude und/oder Phase moduliert ausgesendet wurde, wird mit zwei um 90 Grad phasenverschobenen Sinusschwingungen multipliziert, und damit auf eine niedrigere Frequenz heruntergemischt. Diese beiden Signale kann man beispielsweise mit der PC-Soundkarte weiterverarbeiten.
Hah! Zurück zu den alten Detektor-Radios! Da lief die Demodulation etwa so ab: Schwingkreis für die Träger-Frequenz, Gleichrichterdiode, Kondensator im Kopfhörer fitert die Trägerfrequenz. Geht dann softwaretechnisch so ähnlich, z.B. einfach eine floating average über den Absolutwert deines Eingangssignals bilden. Absolutwert entspricht Diode, Mittelwert über die letzten X messwerte entspricht nem Kondensator. /Ernst
Und wie realisiere ich das mathematisch (numerisch)? z.B. wenn mein AM-Signal aus Trägersignal ut=u_t*sin(2*pi*f_t*t) Modulationssignal um=u_m*sin(2*pi*f_m*t); zusammensetzt. Liebe Gruß Fränzi
Nur war der Detektordiode die Phasenlage egal. Die Absolutwertbildung muß für alle Phasenlagen der Trägerfrequenz dieselbe Amplitude ergeben. Deshalb macht man die doppelte Multiplikation mit Sinus und Cosinus, und erhält als Zwischenergebnis erst mal zwei Signale. Mit dem Pythagoras ermittelt man dann die Zeigerlänge, wenn man es als Zeigerdiagramm betrachtet.
Trägersignal ut(t)=u_t*sin(2*pi*f_t*t); Modulationssignal um(t)=u_m*sin(2*pi*f_m*t); d.H. dein "Eingangssignal", das du Auswerten willst, ist f(t)=ut(t)*(um(t)+u_m+offset); [offset] (AM-Moduliert, bei um(t)==-u_m bleibt eine Träger-Ampliutude "offset" übrig) Geplottet ungefähr so:
1 | + A |
2 | 2 + A A AA |
3 | + AA AA AA AA AA |
4 | + A A AA AA AA A A AA |
5 | | A A AA AA AA A A A A AAA |
6 | + AA AA AA AAA AA AA AA A A A A A A |
7 | + AA AA AA AAA A A A A AA AAA A A A A A A |
8 | 1 + A AA AA AA A A A A A A AAA A A A A A A A A |
9 | + AA AA AAA A A AAA AAA A A A A A A A AA A A A A A A A A |
10 | + AA AA AAA A A A A A A A A A A A A A A A A A A A A A A A A |
11 | |AA AA AA A A A A A A A A A A A A A A A A A A A A A A A A A A |
12 | * A A AA AA A A A A A A A A A A A A A A A A A A A A A A A A A A A |
13 | * AA A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A |
14 | *--*+-*-+*-+*--*--*+-*-+*--**--*--*+-*-+*--*--*+-*-+*--*---*--*+-*-+*--*--*+-*-+*--*--**--*--*+-*-+ |
15 | 0 + A AA A A A 0.02AA A A A A 0.04 A A A A A 0.06 A A A A A 0.08 A A A A A0.1 |
16 | + A A AAAA A A A A A A A A A A A A A A A A A A A A A A A A A A A |
17 | + AA AA AAA A A A A A A A A A A A A A A A A A A AA A A A A A A |
18 | | AA AA A A A A A A A A A A A A A A A A A A A A A A A A A |
19 | + AA AAA AAA AAA AA A A A A A A A A A A A A A A A A A |
20 | -1 + A AA AA AA AAA A A A A A A AAA A A A A A A A A |
21 | + AA AA AA A A A A A A AA A A A A A A A A |
22 | + AA AA AA AA AA AA AAA A A A A AAA |
23 | + A AA AA AA AA A A A A AA |
24 | | A AA AA AA AAA AA AA |
25 | + AA AA AA AA AA |
26 | -2 + A A AA |
27 | + A |
Jetzt den Mittelwert über die letzten X Messwerte bei Äquidistanter Abtastung des Eingangssignals:
1 | t - n |
2 | ----- |
3 | \ |
4 | avg(t) = ) abs(f(x))/n |
5 | / |
6 | ----- |
7 | x=t |
Ergibt in etwa:
1 | + AA |
2 | 1.6+ AAAAA |
3 | + AAAAAA |
4 | + AAAAA |
5 | + AAAAAA |
6 | 1.4+ AAAAA |
7 | + AAAAA |
8 | + AAAAA |
9 | 1.2+ AAAA |
10 | + AAAA |
11 | + AAAA |
12 | 1 + AAAA |
13 | + AAAA |
14 | + AAAA |
15 | 0.8+ AAAA |
16 | + AAAA |
17 | + AAAAA |
18 | 0.6+ AAA |
19 | + AAA |
20 | + AAAA |
21 | 0.4+ AAAA |
22 | + AAAA |
23 | + AAA |
24 | 0.2+ AAAA |
25 | + AAA |
26 | +AAAA |
27 | *-+---+--+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+--+---+-- |
28 | 0 0.02 0.04 0.06 0.08 0.1 |
/Ernst
Jup, den Link von db1uq solltest du dir auch anschauen, das scheint wesentlich besser zu sein als meine Hemdsärmel-Methode. /Ernst
Hier das Blockschaltbild für ein Software-defined Radio mit AM-Demodulation, wie beschrieben mit zwei Mischern und Pythagoras: http://www.winradio.com/home/g305-demod.htm
Naja, das erste Problem ist normal erstmal die Trägerfrequenz/phasenrückgewinnung, da man wie schon gesagt wurde das modulierte Signal wieder mit dem Träger multiplizieren muss zum heruntermischen. Die Phasenlage muss übereinstimmen, sonst funktioniert die Demodulation nicht, außerdem könnten die Signalfrequenzen leicht unterschiedlich sein. In beiden Fällen führt das zur Auslöschung des Signals. So eine Phasenrückgewinnung kann man mit einer numerischen Implementierung einer PLL machen. Der Fachbegriff dafür fällt mir leider gerade nicht ein, es geht jedenfalls über einen Phasenakkumulator und eine Regelschleife. Wenn man dann dadurch die Trägerphase zum aktuellen Sample für jedes Sample hat muss man nurnoch mit e^j*phase (oder auch -, fällt mir gerade auch nich ein g) multiplizieren, um das ganze komplex herunterzumischen. Das demodulierte Signal liegt dann entweder im Real- oder im Imaginärteil von dem, was man dann bekommt.
Die Trägerphase ist nur für einen AM-Synchrondemodulator nötig. Mit zwei Mischern für I und Q und die Pythagoras-Bildung ist die Phasenlage egal, man berechnet so nur die Zeigerlänge, nicht dessen Winkel. Durch die Phasenabweichung rotiert der Zeiger langesam statt stillzustehen. Statt zwei Mischern kann man auch mit einem Samplingmischer 4 mal pro Trägerschwingung abtasten, das entspricht einem abwechselnden Mischen mit Sinus und Cosinus . Die beiden Mischer sind quasi im Zeitmultiplex durch einen ersetzt. Beide Verfahren brauchen keine Information über die Phasenlage. Im Elektor Dezemberheft wird diese Schaltung vorgestellt, statt Sinusschwingungen mit Rechteck, damit natürlich Nebenempfang auf Harmonischen: http://www.elexs.de/iq1.htm
Erstmal möcht ich mich bedanken, 1a hilfe wird einem hier geboten Werd mich jetzt erstmal damit beschäftigen. Nebenbei hab ich ein wenig rumprobiert (mit matlab) und bin da schonmal auf was ansehnliches gekommen (hoffe ich mal) was mir im moment garnicht klar wird ist das bsp. von Ernst, sieht super aus und vielleicht auch einfach aber die Mittelwertbetrachtung über den letzten X Messwerten bei Äquidistanter Abtastung des Eingangssignals bereitet mir arge probleme, da weiß ich garnicht wie ich anfangen soll um auf 'ähnliche' kurvenverläufe zu kommen. welche mathematischen möglichkeiten gibt es denn noch zur Frequenzmodulation? Lieben Gruß fränzi
Hi nochmal mal kurz das, was mir noch zu FM-Demodulation einfällt. Ist aber schon bissl her, seitdem ich das gemacht habe, also weder vollständig noch umbedingt richtig. Bei der Demodulation: 1. Träger zurückgewinnen 2. Signal damit ins komplexe Basisband heruntermischen, also wieder Multiplikation mit exp(j*phi), oder eben mit cos und sin multiplizieren und damit I und Q betrachten. Ich hatte allerdings beide Punkte nicht mit Software gemacht, sondern mit Hardware I/Q-Demodulator runtergeschmischt und dann per 500ksps AD-Wandler I und Q in den PC. Geht natürlich auch numerisch, wenn du schnell genug abtasten und verarbeiten kannst. 3. Du musst nurnoch die Phasen der einzelnen Samples anschauen. Die Ableitung der Phase ist das demodulierte Signal. Also signal(k) = phase(k) - phase(k-1), oder in Matlab für komplette Vektoren: signal = diff(phase); Zusammengefasst ging die FM-Demodulation jedenfalls mit einer Zeile Code, müsste dann so etwas wie signal = diff(angle(bbsignal)) gewesen sein. 4. Tiefpass filtern Modulation: Sollte dann ja umgedreht gewesen sein ;) Quasi: bbsignal = exp(j*cumsum(signal)); Und dann eben wieder per IQ-Modulation auf Trägerfrequenz bringen. Das Verfahren mit Summe und Differenz ist aber nicht ganz genau, da man eigentlich die Ableitung braucht. Für Signalfrequenz << Abtastrate im komplexen Basisband funktionierts aber ganz gut.
Ich hätte noch einen Literaturhinweis zum Thema: "Digitale Signalverarbeitung in der Nachrichtentechnik" von P.Gerdsen/P.Kröger Springer Verlag 1993 ISBN 3-540-55520-X Darin u.a. als Blockschaltbild mit Beschreibung: AM und FM Modulatoren und -Demodulatoren. Zum Beispiel Seite 276-278: FM Basisband-Modulator, bestehend aus: Integration des Modulationssignals - Verzögerung - Addition des Nullphasenwinkels - Sinus/Cosinus-Kennlinie - Multiplikation mit dem Scheitelwert. Das Buch läßt sich vermutlich in einer Hochschulbibliothek auftreiben, alt genug ist es ja.
wie könnt ich aber numerisch vorgehen falls digitale datensätze vorliegen würden (demodulation kann nicht analog durchgeführt werden) Lieben Gruß Fränzi
Das genannte Buch gibts in der 2.Auflage von 1996 noch zu kaufen: http://www.amazon.de/gp/product/3540611940/ref=sib_rdr_dp/302-2180262-9923207 dort darf im Inhaltsverzeichnis blättern. Die vorgestellten Verfahren behandeln eine digitale (numerische) Verarbeitung, nichts analoges.
vielleicht die digitalen signale (diskrete) durch interpolation in kontinuierliche signale umwandeln. Interpolation --> Umkehroperation der Abtastung wie das nun genau funktioniert weiß ich nicht, vielleicht kann wer anders helfen. Peter
vielleicht unter bestimmten modellannahmen des kontinuierlichen signals das digitale signal (diskret) möglichst gut reproduzieren. wie das nun genau funktioniert weiß ich nicht, vielleicht kann wer anders helfen. weigstens habe auch ich meinen senf abgegeben. Peter
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.