www.mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik PWM - Mittelwert messen


Autor: Michael (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe folgendes Problem:

Ich möchte den Mittelwert einer PWM messen: 8bit, 32kHz. Mit einer 
Abstastrate von 20Hz. Ich kann die Spannung nicht schnell genug messen, 
um den Mittelwert in Software zu berechnen, ich strebe daher eine 
Mittelwertbildung an. Die PWM ändert sich max. alle 200ms, deswegen die 
20Hz Abtastrate. Ein einfaches RC-Glied ist wahrscheinlich zu langsam, 
oder?
Ich habe ein Tiefpass zweiter Ordnung aufgebaut (siehe Anhang - über 
mircochip Filterlab berechnet ), dieser zeigt jedoch nicht die 
gewünschte Funktion. Das Ausgangssignal, ist bis auf eine kleine 
Verschiebung in y-Richtung identisch.

Habt ihr eine Idee, wie ich die PWM sinnvoll messen kann?

Gibt es fertige Tiefpassfilter höherer Ordnung oder ein 
"Mittelwertbilder", die man nur noch parametrisieren muss? Ein 
entsprechendes Bauteil, darf ruhig auch ein bißchen mehr kosten.

Ich freue mich über jede Antwort, Danke

// Wenn irgendwas unklar ist, bitte einfach nachfragen, ich versuch alle 
Fragen zeitnah zu beantworten

Autor: Johannes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Von Maxim gibt es "Switched-Capacitor Filter", vermutlich auch von 
anderen Herstellern, da kann man die Grenzfrequenz über den Eingangstakt 
in sehr großen Bereichen einstellen, z.B.:

MAX293/MAX294, gehen von 0,1 Hz bis 25 kHz.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael schrieb:
> 8bit, 32kHz.
Sind die 32kHz die Frequenz für einen kompletten PWM-Zyklus?

Für 8 Bit brauchst du ein Filter mit einer Dämpfung von 8*6dB = 48dB. 
Wenn du einen PT1-Tiefpass (=RC-Glied) mit 32kHz/256 = 125Hz verwendest, 
hast du das erreicht. Und damit kommst du locker noch über deine 20Hz 
Abtastrate...

Ich würde also (pi mal Daumen) einfach ein RC-Glied mit fg=40Hz 
verwenden.

Autor: Klaus Ra. (klara)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,
Deine Angaben sind etwas verwirrend.

> Ich möchte den Mittelwert einer PWM messen

Die PWM hat gewöhnlich eine konstante Amplitude, nur das Tastverhältnis 
ändert sich. Das Tastverhältnis könnte man ja mit einem Mikroprozessor 
messen oder diskret mit Schmitt-Trigger und ein paar IC´s.

Wozu brauchst Du den Mittelwert der PWM?

Mittelwerte können analog an schnellsten mit einen RC-Glied gemessen 
werden. Je höher die Ordnung des Filters ist, je länger dauert das 
Einschwingen, bzw. das Einstellen auf den Mittelwert.

Bei 32KHz und Änderungen der Modulation so alle 200ms ist das für ein 
gewöhnliches RC-Glied eigentlich kein Problem. Je grösser die 
Zeitkonstante des RC-Gliedes ist, je glatter ist der Mittelwert. 200ms 
sind 5Hz. 32KHz/5=6400. Wurzel(6400)=80. Leg das RC-Glied für 5x80=400 
Hz aus. 400Hzx80=32000Hz, damit liegt man genau in der Mitte.
Gruss Klaus

Autor: U.R. Schmitt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du bist Dir sicher, daß Du das analog messen willst? dann nimm den 
Tiefpass wie es schon oben gesagt wurde. Falls Du aber mit dem 
Analogwert den AD Wandler eines µC fütterst, dann solltest Du dir 
wirklich überlegen ob Du nicht gleich das Puls Pause Verhältnis mit 
einem flankengesteuerten Interrupt und Timer messen willst. Einfacher 
und genauer.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus Ra. schrieb:
> Leg das RC-Glied für 5x80=400 Hz aus.
32kHz/400Hz
Für einen 7-Bit AD-Wandler würde das knapp reichen...

BTW: Meine Berechnung mit fg=125 Hz gilt für einen 8-Bit-Wandler.

Autor: Michael (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ich den Filter mit fg=40Hz (R=12k C=0µ33) einstelle, kommt 
folgendes raus --> siehe Anhang.

Ich möchte den Mittelwert der Spannung bekommen. Sprich (auf den Anhang 
bezogen): Ich habe eine PWM Tastverhältnis: 27/255. Daraus ergibt sich 
effktiv eine Spannung von 0,317V bei 3V Amplitude. Diese Spannung würde 
ich gerne messen.

PWM im Eingang --> Gleichspannung im Ausgang.

Ich muss über mehrere Stunden mit einem Datenlogger die PWM aufnehmen, 
deswegen möchte ich nicht das Signal direkt abtasten und das Verhältnis 
bestimmen.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael schrieb:
> Wenn ich den Filter mit fg=40Hz (R=12k C=0µ33) einstelle, kommt
> folgendes raus --> siehe Anhang.
Ja, klar: deine PWM-Frequenz ist ja auch keineswegs 32kHz!!!
Das sind 8ms pro Zyklus, also gerade mal: 125Hz.
125 Hz? Kommt dir die Zahl bekannt vor?
Du zählst in deiner 8-Bit PWM mit 32kHz. Und bekommst dadurch eine 
PWM-Frequenz von 125Hz.

Um hier mit 8 Bit Genauigkeit messen zu können, müsste deine 
Filterfrequenz kleiner als (125Hz/256 =) 0,5Hz sein.

EDIT:
Deshalb auch meine allererste Frage:
>>>> 8bit, 32kHz.
>>>Sind die 32kHz die Frequenz für einen kompletten PWM-Zyklus?

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, haben wir aneinander vorbei gesprochen. Die 32Khz sind natürlich 
die Frequenz mit der ich zähle. Dadurch komm ich dann auf ne 
Wiederholung von ~125Hz. Ich hab jetzt mal nen Filter mit C=47µ und nem 
Poti 22k aufgebaut und guck mal, wie das so aussieht. Hoffe mal ich sehe 
dann die PWM-Änderungen noch sinnvoll.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael schrieb:
> Hoffe mal ich sehe dann die PWM-Änderungen noch sinnvoll.
Das wird kritisch werden, denn du hast ja Änderungen mit 5Hz (200ms) und 
filterst mit 0,5Hz...

Hier würde dir dann ein steilflankigeres Filter tatsächlich 
weiterhelfen.

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Deswegen hatte ich mir den aktiven Filter 2.Ordnung überlegt. Aber 
wahrscheinlich hab ich dort die Parameter falsch festgelegt.
Folgende Parameter habe ich eingesetzt: Stopband: 125Hz mit -50dB 
Dämpfung und Passband: 20hz mit -1dB Dämpfung.

Eine Idee, wie sowas am einfachsten hinbekomme?

Autor: Johannes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Stopband: 125Hz mit -50dB Dämpfung und Passband: 20hz mit -1dB Dämpfung.

Das wäre in der Frequenz ein Verhaltnis von 6, du brauchst also ein 
Filter mit > 80 dB/Dekade. Das geht nicht mit 2. Ordnung.

> Eine Idee, wie sowas am einfachsten hinbekomme?

Wie gesagt, nimm den Switched-Capacotor-Filter (Tiefpass 8. Ordnung) und 
stell die Grenzfrequenz auf ca. 10 Hz, dann sollte das schon halbwegs 
gehen.

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibt es noch andere brauchbare Bausteine? Ich würde gerne bei RS 
Components bestellen, da gibts diesen leider nicht.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Johannes schrieb:
> Filter mit > 80 dB/Dekade. Das geht nicht mit 2. Ordnung.
Aber mit einem TP 4. Ordnung wäre er ja schon bedient...
Und das geht tatsächlich wie im OP dargestellt mit einem OpAmp

Michael schrieb:
> Ich habe ein Tiefpass zweiter Ordnung aufgebaut (siehe Anhang - über
> mircochip Filterlab berechnet )
Der ist 4. Ordnung... Seis drum. Ich habe deine Schaltung mal mit 
LT-Spice simuliert und meine, die müsste eigentlich funktionieren 
(Anhang).
Zeig doch mal deinen aktuellen Schaltplan (Versorgung, welche OPs...).

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wow, danke für die Mühen.

Ich verwende folgende OP's: TL062CP. RS-Bestellnr.: 638-908

Ich versorge die ganze Kiste mit +5V; GND; -5V

Verwende Tantal-Kondensatoren mit den entsprechenden Werten und Potis, 
um die entsprechenden Widerstände genau einzustellen. Siehst du einen 
Fehler?

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfach mit dem Multimeter messen

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was mit dem Multimeter messen? Die PWM? Ich brauch das Signal an nem 
Datenlogger, sonst wär das alles kein Problem.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael schrieb:
> Ich versorge die ganze Kiste mit +5V; GND; -5V
Und deine PWM-Eingangsspannung ist ...?
> Ich versorge die ganze Kiste mit +5V; GND; -5V
Das ist für den viel zu wenig.
electrical characteristics, VCC± = ±15 V
--> VOM Maximum peak output voltage swing
RL = 10 kΩ, TA = 25°C       ±10 ±13.5 V 
RL ≥ 10 kΩ, TA = Full range ±10 ±10 V
Die Ausgänge können dann gerade mal (bestenfalls) von -3V bis +3V 
aussteuern. Schlechtestenfalls kommen die überhaupt nicht von 0V weg... 
:-o

Du brauchst hier auf jeden Fall einen OP mit Rail-to-Rail Ausgang.


> Verwende Tantal-Kondensatoren
Das geht eigentlich nicht so ohne Weiteres, denn du hast es hier ja mit 
Wechselspannungen zu tun...
Mach die Widerstände hochohmiger, dann bekommst du kleinere Kapazitäten.

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lothar Miller schrieb:
> Ich versorge die ganze Kiste mit +5V; GND; -5V
> Und deine PWM-Eingangsspannung ist ...?
0...3V
>> Ich versorge die ganze Kiste mit +5V; GND; -5V
> Das ist für den viel zu wenig.electrical characteristics, VCC± = ±15 V
> --> VOM Maximum peak output voltage swing
> RL = 10 kΩ, TA = 25°C       ±10 ±13.5 V
> RL ≥ 10 kΩ, TA = Full range ±10 ±10 V
> Die Ausgänge können dann gerade mal (bestenfalls) von -3V bis +3V
> aussteuern. Schlechtestenfalls kommen die überhaupt nicht von 0V weg...
> :-o
Wenn ich den Filter anschließe bekomme ich am Ausgang fast 1:1 das 
Eingangssignal raus. Nur minimal verschoben und leicht am schwingen... 
also nix Sinnvolles.
> Du brauchst hier auf jeden Fall einen OP mit Rail-to-Rail Ausgang.
Kannst du für diese Anwendung einen OP empfehlen?

>> Verwende Tantal-Kondensatoren
> Das geht eigentlich nicht so ohne Weiteres, denn du hast es hier ja mit
> Wechselspannungen zu tun...
> Mach die Widerstände hochohmiger, dann bekommst du kleinere Kapazitäten.
Ok, das kann ich machen. Welche Verhältnisse, sind denn dabei 
entscheidend?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.