Forum: Analoge Elektronik und Schaltungstechnik PWM Step-Down Regler Auflösung


von Cyclon (Gast)


Angehängte Dateien:

Lesenswert?

Moin,
ich versuche momentan einen einstellbaren Step-Down Regler zu 
realisieren. Als PWM-Quelle nutze ich einen der 8-Bit Timer eines 
mega644 mit 16Mhz Takt im Fast-PWM-Modus ohne Prescaler. Ich habe also 
eine PWM-Frequenz von 62.5kHz. Ich habe die angehängte Schaltung 
aufgebaut, was soweit auch funktioniert. Nun möchte ich die Spannung 
gerne in max. 50mV Schritten Regeln können. Allerdings liegen zwischen 
zwei Timerwerten ~200mV, was zu viel ist (OCR1AL=10: ~1.9V, OCR1AL=11: 
~2.1V).
Eingangsspannung ist noch 10V (später 24V). Als Last hängen ca. 150 Ohm 
am Ausgang.
Wie kann ich eine höhere Auflösung erreichen?

von Andreas R. (Gast)


Lesenswert?

Hi,
200 mV pro bit kommt mir ein wenig viel vor.
Theoretisch müssten sich 10V/8bit -> ca 40mV pro Bit ergeben.

die 40mV gelten aber nur für den kontinuierlichen Modus
Es scheint so, als ob du noch im diskontinuierlichen Modus bist. Häng 
mal mehr Last dran.

Mehr Auflösung? 8 Bit sind nunmal 8 Bit. Man könnte allerdings 
schummeln, wenn man nicht auf eine feste Frequenz festgelegt ist, indem 
man den TOP-Wert des Timers variabel macht:
Normalerweise kann man nur die Werte
1/255
2/255 ... einstellen.

1/192 liegt aber mittig zwischen den beiden

Wenn man also den TOP-Wert des Timers zwischen 255 und 192 wechselt,
also
1/255
1/192
2/256...
Die Frequenz schwankt dann allerdings zwischen 83 kHz und 62 kHz

Zu deiner Schaltung:
- R8 kannst du Weglassen.
- Bei 10V wird dein Mosfet nur mit einer Gatespannung von 4.4V 
angesteuert, etwas wenig

von Helmut L. (helmi1)


Lesenswert?

Cyclon schrieb:
> Allerdings liegen zwischen
> zwei Timerwerten ~200mV, was zu viel ist (OCR1AL=10: ~1.9V, OCR1AL=11:
> ~2.1V).

Ob zwischen 2 Timerwerten 200mV liegt ist doch egal. Davor hast du doch 
einen Regler der die gemessene Ausgangsspannung mit dem Sollwert 
vergleicht. Und dessen Aufloesung (ADC) ist massgebend. Der Timer wird 
quasi vom Regler moduliert.

> Eingangsspannung ist noch 10V (später 24V). Als Last hängen ca. 150 Ohm
> am Ausgang.

Bei 24V schlaegst es dir aber das Gate vom Mosfet durch. Da wirst du die 
Gate-Source Spannung begrenzen muessen auf unter 20V (Z-Diode)

von I. L. (Gast)


Lesenswert?

Cyclon schrieb:
> Wie kann ich eine höhere Auflösung erreichen?

Warum nimmst du nicht einen 16-Bit Timer, der is viel flexibler!
Ich empfehle dir einen vernünftigen Treiber und ggf. die Ausführung als 
Synchronwandler. Deine Diode macht unnötig Verluste!

Wozu D2?

Gruß Knut

von Andreas R. (Gast)


Lesenswert?

@Helmi
Der Gatetreiber ist IMHO sehr gut:
-Er liefert ausreichend Strom und hat einen geringen statischen 
Stromverbrauch.
-begrenzt die Gatespannung auf 11V, unabhängig von der Eingangsspannung
-kommt mit sehr wenigen Teilen aus.
-ist sehr schnell, weil keiner der Bipolartransistoren in die Sättigung 
getrieben wird.

Für D2 sehe ich momentan auch keinen Sinn, es sei denn, die Anwendung 
erfordert das Verhindern eines Rückstroms in die Versorgung.

Wirkungsgradgünstiger wäre in diesem Fall die Position in Reihe zum FET, 
denn dann muss nicht der komplette Ausgangsstrom durch die Diode, sonder 
nur der (kleinere) Eingangsstrom.

Was ist den die Ziellast? Für eine Last von 150Ω @2V ist das Teil etwas 
überdimensioniert.

von I. L. (Gast)


Lesenswert?

Andreas R. schrieb:
> Der Gatetreiber ist IMHO sehr gut:

Ist er nicht, bestenfalls ausreichend

Andreas R. schrieb:
> Er liefert ausreichend Strom

ja

Andreas R. schrieb:
> hat einen geringen statischen
> Stromverbrauch.

keine Vergleich zu einem integrierten Treiber!

Andreas R. schrieb:
> begrenzt die Gatespannung auf 11V, unabhängig von der Eingangsspannung
stimmt etwa

Andreas R. schrieb:
> -kommt mit sehr wenigen Teilen aus.

ein Treiber ist kompakter

Andreas R. schrieb:
> ist sehr schnell, weil keiner der Bipolartransistoren in die Sättigung
> getrieben wird.

Treiber ist schneller.


100R Gatevorwiderstände sind, ohne zu rechnen, zu groß. 22R sind 
üblicher!


Gruß Knut

von Cyclon (Gast)


Lesenswert?

Erstmal Danke für eure Antworten, mein Problem hat sich erledigt. 
Irgendwas stimmte nicht mit dem PWM-Modus (oder ich hab den immer noch 
nicht richtig verstanden). Im "Non-Inverting Fast-PWM-Modus" hatte ich 
die oben beschriebenen Probleme, jetzt habe ich mein Programm intern auf 
"Inverting Fast-PWM" umgebaut und es läuft. Keine Ahnung wo da der 
Unterschied ist.

Der Vollständigkeit halber möchte ich dennoch auf eure Beiträge 
eingehen:

>Mehr Auflösung? 8 Bit sind nunmal 8 Bit. Man könnte allerdings
>schummeln, wenn man nicht auf eine feste Frequenz festgelegt ist, indem
>man den TOP-Wert des Timers variabel macht:
>Normalerweise kann man nur die Werte
Ja gut, das mit der Auflösung war unglücklich ausgedrückt. Ich meinte 
damit kleinere Abstände in der Spannung.

>Ob zwischen 2 Timerwerten 200mV liegt ist doch egal. Davor hast du doch
>einen Regler der die gemessene Ausgangsspannung mit dem Sollwert
>vergleicht. Und dessen Aufloesung (ADC) ist massgebend. Der Timer wird
>quasi vom Regler moduliert.
Nee, das ist eben nicht egal. Wenn der Timer nur 200mV Schritte kann, 
kann der Regler davor regeln soviel er will, dann trifft er u.U. nie die 
gewünschte Spannung.

>Bei 24V schlaegst es dir aber das Gate vom Mosfet durch. Da wirst du die
>Gate-Source Spannung begrenzen muessen auf unter 20V (Z-Diode)
Das regelt mein Mosfet-Treiber.

>Warum nimmst du nicht einen 16-Bit Timer, der is viel flexibler!
>Ich empfehle dir einen vernünftigen Treiber und ggf. die Ausführung als
>Synchronwandler. Deine Diode macht unnötig Verluste!
Bei ner 16-Bit PWM würde die Frequenz zu niedrig sein, dann bräuchte ich 
ne größere Spule. Synchronwandler kannte ich noch nicht, sieht aber 
interessant aus. Werd ich auf jeden Fall mal ausprobieren.

>Wozu D2?
Gute Frage. Was ich mir bei der Diode gedacht hab, weiß ich auch nicht 
mehr, die ist wirklich überflüssig.

>Was ist den die Ziellast? Für eine Last von 150Ω @2V ist das Teil etwas
>überdimensioniert.
Ziellast sind bis zu 4A, hatte aber leider nix zur Hand, was das 
aushalten würde, daher die 150 Ohm.

@knutinator:
Ich will jetzt hier keine Diskussion über integrierte und diskrete 
Treiber lostreten, aber kannst du mir nen Treiber nennen der die 
Gate-Spannung des Fets auf ungefährliche 12V begrenzt?
Ich bin eigentlich ganz zufrieden mit meinem Treiber. Ist günstig, nimmt 
nicht viel Platz weg und hat schön viele Teile die kaputt gehen 
können...

von Helmut L. (helmi1)


Lesenswert?

Cyclon schrieb:
> Nee, das ist eben nicht egal. Wenn der Timer nur 200mV Schritte kann,
> kann der Regler davor regeln soviel er will, dann trifft er u.U. nie die
> gewünschte Spannung.

Dein Regler mittelt das doch aus. Wenn du zum Beispiel 266mV haben 
willst dann stellt dein Regler erst 200mV , 200mV und dann 400mV ein. 
Der Mittelwert ist dann 266mV. Diese Mittelwertbildung besorgt dir dein 
Ausgangsfilter mit L1 , C1.  Das ginge sogar mit nur 2 Ausgangszuständen 
auch 2 Punktregler genannt. Z.B eine Regelung für ein Heizgerät da wird 
auch nur Ein/Aus geschaltet. Deshalb ist die Auflösung der PWM egal wenn 
die von einem Regler aus ihre Daten bekommt.

von Simon K. (simon) Benutzerseite


Lesenswert?

Guck dir den Regelmechanismus vom MC34063 an. Der hat keine PWM, sondern 
nur ein Flip Flop. Ist also gewissermaßen auch ein 2-Punktregler. Ein 
"Mehrpunktregler" verbessert aber trotzdem den Ripple.

von Urlauber (Gast)


Lesenswert?

Falls der Ausgangsstrom durch die Differenz zwischen den Spannungen 
"ISENSE" und "VSENSE" berechnet werden soll,
erreicht man selbst bei Einsatz von 0.1% Widerständen bei R4..7,
nur ca. 100mA Genauigkeit.
Je nach Anwendungsfall kann das aber durchaus ausreichend sein.
Eine zusätzliche Möglichkeit wäre noch, irgendwo in der Brücke ein 
Trimmpoti vorzusehen, oder Sofwaremässig einen Korrekturwert 
miteinzubeziehen ...

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.