Hallo, als Neuling im DSP-Bereich hätte ich gerne eure Meinung und Ideen zu meinem Projekt: Es soll der Effektivwert eines Stroms (Netz 50Hz/60Hz) gemessen werden sowie der Anteil der Grundschwingung am Gesamtsignal (Oberwellen herausfiltern). Dazu sample ich mit ca. 10kHz 100ms lang, so dass ich 1024 Samples erhalte. Die Effektivwertberechnung ist einfach und funktioniert. Um die Grundschwingung vom Signal zu trennen brauche ich ein steilflankiges Tiefpassfilter. 60Hz soll noch ungehindert durchkommen, aber 100Hz schon mit z.B. -30dB gedämpft werden. Da ich nur einen 16 Bit MAC habe, kann ich kein IIR-Filter einsetzen, das würde durch die Rundung der Koeffizienten instabil. Sagen einschlägige Programme zur Filterberechnung. Also ein FIR-Filter. Hier brauche ich viele Taps (z.B. 500) um die geforderten Eigenschaften zu erhalten. Ich gebe also meine 1024 Samples x(n) in das Filter, und es kommen y(n) heraus, die den Signalverlauf des gefilteren Ergebnisses darstellen. Frage: Solange noch nicht alle Taps mit Eingangswerten x besetzt sind, ist mein Ausgangssignal nicht korrekt, oder? Das bedeutet, ich bekommen aus meinen 1024 Samples nur (1024 - Taps) gefilterte Samples heraus. Das wäre zu wenig, denn ich brauche für die TRMS-Berechnung immer volle Perioden der interessierenden Frequenzen 50/60Hz. Ich möchte/darf die Messzeit nicht verlängern. Frage: Wenn ich meine Samples einfach verdoppele, also auf 100ms+100ms=200ms entspr. 2048 Samples strecke, habe ich genug Samples, um nach dem FIR TP noch die TRMS-Berechnung durchzuführen. aber ich bekomme auch einen Sprung im Signal nach 100ms, wo die Addition stattfindet. Das bedeutet dann wohl Unterabtastung und Alias-Effekt, richtig? Habt ihr andere Lösungsvorschläge? Danke für eure Hilfe und Gruß Carsten
>>Habt ihr andere Lösungsvorschläge?
Ja:
1024 samples mit Fensterfunktion vorbearbeiten (Kaiserfenster 16 oder
sowas), dann mit Görtzel die Grundwelle rausholen, eventuell getrennt
nochmal Görtzel für die Oberwellen. Das geht auch mit limitierter
Prozessorleistung.
Ich habe Deinen Vorschlag nicht richtig verstanden, ich glaube trotzdem
nich, dass das auf Deine Art vernünftig geht ;-)
Cheers
Detlef
Danke Detlef! Bisher wird die Aufgabe in Hardware erledigt, da kommt ein TP zur Dämpfung der Oberwellen zum Einsatz. Daher mein erster Ansatz, das auch in Software so zu tun. Nun gibt es aber nur 2 übliche Netzfrequenzen auf der Welt. Da müsste es mit 2 Goertzeln, einer für 50Hz, einer für 60Hz auch klappen. Das werde ich mal probieren. Brauche ich denn ein Fenster wie Kaiser 16, wenn meine Sampledauer ein Vielfaches der Periodendauer ist? Nö, oder? Bin aber für weitere Ideen zum TP-Ansatz offen, hier wäre die Kompatibilität altes/neues Produkt besser. Gruß Carsten
>>Brauche ich denn ein Fenster wie Kaiser 16, wenn meine Sampledauer ein >>Vielfaches der Periodendauer ist? Nö, oder? Nö, dann nicht. Hängt von der angestrebten Genauigkeit ab, aber möglicherweise reicht ein quarzgenaues Vielfaches nicht aus sondern Du muss Dich richtig auf die Netzspannung mit ner PLL synchen. Cheers Detlef
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.