Forum: Mikrocontroller und Digitale Elektronik [Cortex M3] Frequenzmessung und Mischung/Lock-In


von A. M. (am85)


Lesenswert?

Hi

Ich möchte folgendes auf einem Cortex M3 realisieren. Ich bekomme ein 
mit 48 kHz abgetastetes und mit 24 Bit quantisiertes Messsignal über den 
einen Kanal und eine Rechteckfolge mit einer Frequenz bis ca. 10 kHz 
über den zweiten Kanal (Referenzsignal). In dem Messsignal befindet sich 
eine Schwingung, die der Grundschwingung des Referenzsignals entspricht. 
Ich möchte nun die Grundfrequenz des Refernzsignals bestimmen und den 
aktuellen Messwert einmal mit dem Cosinus und einmal dem Sinus des 
multiplizieren, also im Prinzip einmal die entsprechenden 
Signalkomponente auf den Ursprung bei 0 Hz heruntermischen (Lock-In).

So weit, so gut...ich weiß nur nicht genau, wie ich das realisieren 
soll. Ich könnte jetzt über ein oder zwei Timer die Frequenz des 
Referenzsignals bestimmen, diesen Wert als Argument für existierende 
Implementierungen für Sinus und Cosinus nehmen und wäre dann im Prinzip 
fertig. Ich weiß nur nicht, ob es wirklich so simpel ist, was für 
Fehlergrößen mich erwarten (Festkommaarithmetik) oder ob es viel viel 
einfacher geht? Aus der Analogtechnik weiß ich auf jeden Fall, dass 
schon geringere Frequenzabweichungen nicht mehr das gewünschte Ergebnis 
liefern.

Da ich sowas noch nie auf einem Mikrocontroller realisiert habe, bin ich 
für alle Tipps und Anregungen dankbar.

Schöne Grüße

von A. M. (am85)


Lesenswert?

push

von A. M. (am85)


Lesenswert?

Tut mir leid, wenn ich den Thread immer wieder "hochpushe", aber ein 
paar Tipps wären sehr wichtig für mich. Ich wäre über jedes bisschen 
Hilfe sehr froh.

von Jim M. (turboj)


Lesenswert?

Du sagst ja selbst, dass Du nicht weisst wie Du es realisieren willst - 
und was Du schreibst ist einfach zu vage. Dir helfen würde da nur eine 
wirklich gute Kristallkugel.

von Ralph (Gast)


Lesenswert?

André M. schrieb:
> ob es wirklich so simpel ist

Ja

André M. schrieb:
> Fehlergrößen mich erwarten (Festkommaarithmetik)

Hängt von deinen gewählten Skalierungsfaktoren und den Toleranzen des 
Eingangsignals ab

André M. schrieb:
> viel viel
> einfacher geht

Noch einfacher ???

von A. M. (am85)


Lesenswert?

Jim Meba schrieb:
> Du sagst ja selbst, dass Du nicht weisst wie Du es realisieren willst -
> und was Du schreibst ist einfach zu vage. Dir helfen würde da nur eine
> wirklich gute Kristallkugel.

Naja, was ist daran denn bitte vage? Im Prinzip ist alles damit gesagt, 
dass ich einen Lock-In Verstärker auf einem Mikrocontroller 
implementieren will. Da mir die Phase des Signals egal ist und ich nur 
an die Amplitude will, wollte ich zwei Lock-In Kanäle aufbauen. Einmal 
hat das Refernzsignal einen Phasenversatz von 0° (Sinus) und einmal von 
90° (Cosinus).

Ralph schrieb:
> André M. schrieb:
>> ob es wirklich so simpel ist
>
> Ja

Die Antwort, auf die ich gewartet habe ;-) Hast du selber schon 
Erfahrungen mit sowas in der Art?

Ralph schrieb:
> André M. schrieb:
>> viel viel
>> einfacher geht
>
> Noch einfacher ???

Naja, ich bin davon ausgegangen, dass ich es mir evtl. zu kompliziert 
mache und jemand, der sowas häufiger macht einen ganz anderen, 
vermeindlich einfacheren Weg kennt.

Vielen Dank für eure Antworten.

von Ulrich P. (uprinz)


Lesenswert?

Klingt alles recht simpel und scheint wie zugeschnitten für ein paar 
Experimente auf einem CortexM4, statt eines M3, auch wenn der M3 bei 
Festkomma kein Problem haben sollte.

Aber was macht man im Alltag mit solch einem Lock-In Verstärker? Hat 
jemand mal eine für einen Praktiker vorstellbare Versuchbeschreibung?

Ulrich

von A. M. (am85)


Lesenswert?

Ulrich P. schrieb:
> Aber was macht man im Alltag mit solch einem Lock-In Verstärker? Hat
> jemand mal eine für einen Praktiker vorstellbare Versuchbeschreibung?

Naja, ich weiß nicht, wofür man einen Lock-In Verstärker z.B. im 
Haushalt gebrauchen kann ;-) In der Regel wird er aber bei optischen 
Messungen verwendet, bei denen das Laserlicht moduliert wird und das das 
gesuchte Messsignal unter der Rauschgrenze verschwindet. So z.B. in der 
photoakustischen Spektroskopie.

von Ulrich P. (uprinz)


Lesenswert?

Hi, André!

Danke, ist wirklich nicht für den Alltagsgebrauch, aber jetzt kann ich 
mir wenigstens was drunter vorstellen.

Gruß, Ulrich

von Purzel H. (hacky)


Lesenswert?

Ein Lock-in besteht aus der Quelle und dem Empfaenger. Beide laufen 
synchron, phasenstarr. Wenn man den Referenzclock nicht hat sollte man's 
vergessen. Resp, dann wird's sehr viel schwieriger. Geh davon aus, dass 
das Modulationssignal entweder vom Lock-in, oder dem Lock-in als 
Referenz zur Verfuegung gestellt wird.

von A. M. (am85)


Lesenswert?

Delta Oschi schrieb:
> Ein Lock-in besteht aus der Quelle und dem Empfaenger. Beide laufen
> synchron, phasenstarr. Wenn man den Referenzclock nicht hat sollte man's
> vergessen. Resp, dann wird's sehr viel schwieriger. Geh davon aus, dass
> das Modulationssignal entweder vom Lock-in, oder dem Lock-in als
> Referenz zur Verfuegung gestellt wird.

Wie gesagt, das externe Referenzsignal steht zur Verfügung.

von Purzel H. (hacky)


Lesenswert?

Also, dann startet der Sinus zusammen mit der Flanke des externen 
Referenzsignales. Du baust quasi einen PLL in Form eines DDS.

von Daniel (Gast)


Lesenswert?

Wie kommt das Referenzsignal in den Prozessor? Über einen ADC der 
synchron zu dem für das Messsignal arbeitet oder über einen GPIO?

Wäre es bei einem synchronen ADC nicht möglich einfach die Oberwellen 
aus dem Rechtecksignal zu filtern, wenn das Rechtecksignal in der 
Frequenz nicht zu stark variiert? Für einen FIR Filter braucht man das 
Signal nur auf ein Bit zu quantisieren und mit den n vorherigen Bits als 
Index in ein Array zu benutzen.

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.