Forum: Mikrocontroller und Digitale Elektronik PWM glätten und Analog einlesen


von Oliver W. (oliver_w49)


Lesenswert?

Guten morgen,

ich habe zwei digitale Schaltungen:
Meine Steuerung sowie einen Motorcontroller einer externen Firma (110A 
bei 24V, da möchte ich nicht ran).

Meine Steuerung hat bisher immer Proportionalventile angesteuert, daher 
PWM mit ca 500Hz.
Nun soll diese Steuerung den Motorcontroller ansteuern, welcher einen 
Eingang zum Anschluss eines Potis hat (0-5V, 5K Poti).

Diese soll nun unser Steuersignal bekommen. Wenn ich da meine 500Hz 
reinschicke, wird das ja sehr wahrscheinlich Abtastfehler geben, also 
will ich das glätten.
Aber wie mache ich sowas am besten?

Belastung ist hierbei unkritisch, aber die Einschwingzeit meines 
RC-Gliedes passt mir so nicht (erste Berechnung waren irgendwas um 300ms 
und der Motor sollte schon so schnell wie möglich stoppen...).
Was also macht man da am besten? (Gerne auch Stichworte oder Links zum 
weiter Totgooglen ;) ).

Gruss, Olli

von Peter D. (peda)


Lesenswert?

Wenns schnell sein muß, ein MC, der das Tastverhältnis mißt und auf 
einen DAC ausgibt.
Damit erreichst Du bei 500Hz PWM 2ms Reaktionszeit.

von Falk B. (falk)


Lesenswert?

@ Oliver W. (oliver_w49)

>Nun soll diese Steuerung den Motorcontroller ansteuern, welcher einen
>Eingang zum Anschluss eines Potis hat (0-5V, 5K Poti).

Intern ist das wieder eine Spannung.

>Diese soll nun unser Steuersignal bekommen. Wenn ich da meine 500Hz
>reinschicke, wird das ja sehr wahrscheinlich Abtastfehler geben, also
>will ich das glätten.
>Aber wie mache ich sowas am besten?

Mit einem RC-Filter. Ggf. mit mehreren Stufen.

>Belastung ist hierbei unkritisch, aber die Einschwingzeit meines
>RC-Gliedes passt mir so nicht (erste Berechnung waren irgendwas um 300ms
>und der Motor sollte schon so schnell wie möglich stoppen...).
>Was also macht man da am besten? (Gerne auch Stichworte oder Links zum
>weiter Totgooglen ;) ).

http://www.mikrocontroller.net/articles/Pulsweitenmodulation#DA-Wandlung_mit_PWM

von Oliver W. (oliver_w49)


Lesenswert?

Peter Dannegger schrieb:
> Damit erreichst Du bei 500Hz PWM 2ms Reaktionszeit.

So schnell muss es nicht sein, der Roboter bewegt sich im Bereich bis 
15kmh, ich will nur nicht das es beim zB "Einparken" (niedrige 
Geschwindigkeit, "Präzision" gefordert) jedes mal eine Bedenksekunde 
braucht.

Falk Brunner schrieb:
> Intern ist das wieder eine Spannung.

War mir bewusst.

> Mit einem RC-Filter. Ggf. mit mehreren Stufen.

Da ist aber für mich die Frage:
Wo kann man da was lesen um mal die "Reaktionszeit" von einem 
Mehrstufigen zu beurteilen?

> http://www.mikrocontroller.net/articles/Pulsweiten...

Im vorraus gelesen und anhand dessen einen Filter Designed, aber der ist 
halt nicht optimopti ;)

von Falk B. (falk)


Angehängte Dateien:

Lesenswert?

@ Oliver W. (oliver_w49)

>> http://www.mikrocontroller.net/articles/Pulsweiten...

>Im vorraus gelesen und anhand dessen einen Filter Designed, aber der ist
>halt nicht optimopti ;)

Na dann rechne doch mal.

Welche Anstiegszeit soll dein Filter haben? 10ms? 100ms?

Sagen wir 10ms. Daraus errechnet man die Bandbreite bzw. Zeitkonstante.

Anstiegszeit ~ 2,2 tau = R*C

-> tau = 4,5ms

Die Grenzfrequnzen liegt bei 1/(2*Pi*tau) = 35 Hz.

Ein Filter 1. Ordnung hat 20dB/Dekade Dämpfung, d.h. 350Hz werden schon 
mit ~20dB = Faktor 10 gedämpft. Naja. Da das aber nicht ausreicht, muss 
man einen Filter höherer Ordnung nehmen. Im einfachsten Fall den Filter 
2 oder 3x in Reihe schalten, wenn gleich das Ergebnis nicht optimal ist. 
Oder richtig per Filterdesignregeln, gibt es auch online.

http://sim.okawa-denshi.jp/en/OPseikiLowkeisan.htm

Aktiver Filter 2. Ordnung mit 35 Hz in Sallen Key Struktur.

R1=R2=47k
C1=C2=100n

Wenn 2. Ordnung nicht reicht, schaltet man davon zwei in Reihe, schon 
hat man 4. Ordnung. Das Ergebnis, siehe Anhang, Einschwingvorgang und 
Ripple.

Bei dem Filter 2. Ordnung hat man ca. 28mV Ripple, bei 4. Ordnung ca. 
118uV.

von MaWin (Gast)


Lesenswert?

> Wo kann man da was lesen um mal die "Reaktionszeit" von einem
> Mehrstufigen zu beurteilen?

 http://www.lothar-miller.de/s9y/archives/11-RC-Glied-fuer-PWM.html#extended
 http://www.microchip.com/ AN538 "Using PWM to Generate Analog Output"

von Oliver W. (oliver_w49)


Lesenswert?

Okay, ich hab mich in das Ganze ein wenig eingelesen.

Wenn ich meine PWM Frequenz auf ca. 4kHz erhöhe und dann einen 
"normalen" Tiefpass von R=47k und C=100n einsetze, habe ich knapp 10ms 
bis ich auf 90% bin, voll vertretbar.

Nun will ich ein wenig Sicherheit gewinnen bezüglich der Last, also 
einen OPV dazwischen.
Will ich nun einen nichtinvertierenden Verstärker als "Spannungsfolger" 
bauen, so sollte ja R1/R2 -> 0 gehen, damit V -> 1 geht.
Kann ich da R1 weglassen oder sollte ich da eher 100 Ohm / 200kOhm 
nehmen?

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.