Forum: Mikrocontroller und Digitale Elektronik Arduino + CMos Mosfet als Abwärtswandler


von Tim B. (tim_b84)


Lesenswert?

Liebes Forum,

ich habe mich in den letzten Tagen an einem Projekt versucht bei dem ich 
nicht weiterkomme. Ich weiß auch nicht so recht ob das überhaupt möglich 
ist. Im deutsprachigen Arduino-Forum konnte man mir leider nur sagen, 
dass mein Vorhaben grundsätzlich funktioniert aber konkret scheint auch 
niemand eine Idee zu haben wie ich das umsetzen könnte. Darum versuche 
ich es hier nochmal.

Der Arduino soll einen Cmos Mosfet via PWM (ca. 1 kHz) so regeln, dass 
selbiger aus der Drehzahlabhängigen Ausgangsspannung eines Generators (0 
- max. 60V) eine stabile Ausgangsspannung (13,8V)erzeugt. (Als 
Stromversorgung für den Arduino nehme ich zunächst einmal eine 
unabhängige Stromversorgung an). Dazu messe ich die Ausgangsspannung 
nach dem Mosfet und versuche den Arduino dazu zu bringen den PWM-Wert zu 
vergrößern, wenn die Spannung unter einen bestimmten Wert sinkt und zu 
verkleinern wenn die Spannung über einen bestimmten Wert steigt.

(Mir ist schon klar, dass das mit einem Regler IC einfacher und 
effektiver geht. Ich verbaue aber zur Spannungs- und Strommessung und 
zur Anzeige selbiger an einem PC sowieso einen Arduino. Deshalb bietet 
es sich an das so zu versuchen.)

Nun mal zu meinen etwas kläglichen Programierversuchen.

Ich messe die Ausgnagsspannung nach dem Mosfet über einen 
Spannungsteiler. Ich lege die int=pwmvalue fest und gebe ihr zunächst 
den Wert 0. Im Loop versuche ich dann das:

if (Ausgangsspannung > 13.8) {analogWrite(6, pwmvalue--);}
if (Ausgangsspannung < 13.8) {analogWrite(6, pwmvalue++);}

Das funktioniert aber leider nicht. Die testweise angeschlossene 35W 
Halogenlampe wird heller und wieder dunkler geregelt. Hat jemand eine 
Idde wie man sowas programmieren könnte?


Ich weiß, dass ein richtiger Abwärtsregler dann noch eine Spule und 
einen Elko benötigt. Das Berechnungstool für Abwärtswandler unter 
http://schmidt-walter.eit.h-da.de/smps/abw_smps.html brechnet mir für 
einen Wandler mit 1kHz, 60V max. Eingansspannung und 25A max. 
Ausgangsstrom eine Spule mit 1100 uH. Stimmt das so und was für einen 
Elko benötige ich? Je größer desto besser?

: Verschoben durch Moderator
von Daniel H. (Firma: keine) (commander)


Lesenswert?

Hallo,

ich glaube so wird das nichts. Ein gängiger Ansatz ist über den 
Controller lediglich eine Referenzspannung vorzugeben und die Regelung 
per Hardware, z.B. OPV oder Komparator, vorzunehmen.

Die Kette wäre dann wie folgt:

1. Controller ezeugt PWM
2. PWM wird tiefpass-gefiltert was eine Gleichspannung ergibt die der 
mittleren Spannung des PWM-Signals entspricht.
3. Die Gleichspannung gibt man als Spannungsreferenz auf einen OPV oder 
Komparator
4. Der OPV/Komparator vergleicht die Spannungsreferenz mit der per 
Spannungsteiler aka Shunt abgegriffenen Ausgangsspannung und steuert 
entsprechend der gemessenen Differenz den MOSFET an

Die Regelung wird dabei allein vom OPV/Komparator übernommen und kann 
dadurch wesentlich schneller erfolgen als es mit dem Controller möglich 
ist.

Siehe auch:
http://www.mikrocontroller.net/articles/Konstantstromquelle#Konstantstromquelle_mit_Komparatoren
http://www.mikrocontroller.net/articles/Stromsenke

Viele Grüße
Daniel

: Bearbeitet durch User
von Paul Baumann (Gast)


Lesenswert?

Tim programmierte:
>if (Ausgangsspannung > 13.8) {analogWrite(6, pwmvalue--);}
>if (Ausgangsspannung < 13.8) {analogWrite(6, pwmvalue++);}

Was ist, wenn die Spannung genau 13,8 Volt beträgt?

MfG Paul

von Tim B. (tim_b84)


Lesenswert?

Vielen Dank für Eure Aatworten. Ich dachte mir schon, dass das nicht so 
einfach wird. Ich werde mich heute Abend nochmal hinsetzen und mich mit 
dem Beitrag von Daniel H. befassen. Auf die Schnelle is tmir das zu hoch 
;-)

Paul Baumann. Wenn die Spannung genau 13,8V beträgt, dann stimmt die 
Spannung ja und der PWM-Wert muss nicht verändert werden. Oder?

von Jörg E. (jackfritt)


Lesenswert?

Was ist wenn vom Generator weniger wie 13,8V kommen? Dann brauchst du 
einen anderen wandler ;)

von Tim B. (tim_b84)


Lesenswert?

Jörg Esser: Weniger ist nicht schlimm. Evt. sogar vorteilhaft. Ich würde 
den Wandler evt. unter 5V abschalten lassen, dann bis 13,8V voll 
durchsteuern und ab 13,8V regeln. Aber wieso funktioniert der Sketch so 
nicht? Hat einer eine Idee?

Wenn ich das richtig sehe verringert der Arduino den Wert bis 0 und 
fängt dann wieder bei 255 an. Kann ich das irgendwie verhindern?

von Daniel H. (Firma: keine) (commander)


Lesenswert?

Tim Baudermann schrieb:
> Ich dachte mir schon, dass das nicht so
> einfach wird.

Es sieht auf den ersten Blick komplizierter aus als es ist.

Der Vorteil der Lösung mit Komparator (empfiehlt sich wenn man einen 
Schaltregler aufbauen möchte) ist, dass der MOSFET (bei geeigneter Wahl 
des Komparators) deutlicher schneller als mit 1 kHz angesteuert und 
dadurch die Größe der Induktivität deutlich reduziert werden kann.

Bei 1kHz brauchst du eine Induktivität mit etwa 1mH. Diese muss gemäß 
Tool aber 30A Spitze (Ripple!) aushalten. Eine derartige Induktivität 
kostet bei Mouser z.B. 60€ und wiegt 2kg.

Erhöht man die Frequenz nun auf 100kHz so benötigt man nur noch 10µH. 
Diese Induktivität kostet dann auch nur noch knapp 4€ und wiegt um die 
30g.

von Tim B. (tim_b84)


Lesenswert?

OK, jetzt habe ich mir den Vorschlag von Daniel H. mal durch den Kopf 
gehen lassen. So richtig verstehen tu ich's aber nicht. Kommt da nicht 
sowas wie ein Linearregler bei raus? Wieso sollte der Komperator/OPV 
denn PWM Signale geben?

Dass die Spannung schneller angeglichen würde ist natürlich sehr gut. 
Der Atmega ist da - zumindest wenn der PWM Wert pro Durchlauf immer nur 
um 1 erhöht wird - nicht so schnell

Das mit der höheren Frenquenz macht auch durchaus Sinn. Schade, dass der 
Atmega selbst nur 1kHz kann. Gibt es denn Microcontroller die selbst ein 
PWM Signal mit höherer Frequenz geben können?

Ich hatte auch schon eine Spule mit 1mH und 25A rausgesucht, die bei RS 
ca. 20€ kostet. Das ist aber immer noch ziemlich viel.

Hat niemand eine Idee wie man den Sketch hinbekommen könnte. Wie bringe 
ich den Atmega dazu mit der Werterhöhung bei 255 aufzuhören und nicht 
wieder bei 0 anzufangen nachdem er bis 255 hochgezählt hat?

Ich möchte versuchen das Projekt so einfach wie möglich zu halten, nicht 
zuletzt um es meinen elektrotechnischen und programiertechnischen 
Kennmissen anzupassen ;-)

von Amateur (Gast)


Lesenswert?

Keine Ahnung, warum das Ganze nicht geht. Ich würde aber ein bisschen 
Hysterie entwickeln. Eigentlich sollte klar sein, dass Regelungen auf 
Gleichheit nicht das Gelbe vom Ei sind.

von Florian S. (flst78)


Lesenswert?

Wenn er die mit PWM gepulste Spannung über einen Spannungsteiler direkt 
zurück in den ADC-Eingang des Controllers gibt, misst der irgendeine 
Spannung und inkrementiert/dekrementiert entsprechend immer weiter 
hoch/runter. Und da er vermutlich niemals die gewünschten 13,8V misst, 
wird er immer weiter inkrementieren bis er wieder bei 0 angekommen ist. 
:-) Um die Spannung korrekt zu messen wäre mindestens ein R-C-Tiefpass 
mit OpAmp vor dem ADC sinnvoll.

von Daniel H. (Firma: keine) (commander)


Lesenswert?

Tim Baudermann schrieb:
> Kommt da nicht sowas wie ein Linearregler bei raus?

Kommt darauf an, was man damit aufbaut. Nur mit OPV und MOSFET wird es 
ein Linearregler. Packe noch eine Induktivität und eine Diode dazu und 
du hast einen Schaltregler. Und da im zweiten Fall der MOSFET nicht mehr 
linear geregelt werden soll nimmt man dann statt des OPV besser direkt 
einen Komparator.

Tim Baudermann schrieb:
> Wieso sollte der Komperator/OPV denn PWM Signale geben.

Weil er die gemessene Ausgangsspannung mit einer Referenzspannung 
vergleicht und in Abhängigkeit von der Differenz den MOSFET an- oder 
abschaltet. Sprich:

Ausgangsspannung zu klein => Transistor an => Ausgangsspannung steigt
Ausgangsspannung zu groß => Transistor aus => Ausgangsspannung sinkt

Und je nachdem wieviel zu groß oder zu klein die Ausgangsspannung ist 
wird auch mehr oder weniger lange an- und abgeschaltet.

Tim Baudermann schrieb:
> Der Atmega ist da - zumindest wenn der PWM Wert pro Durchlauf immer nur
> um 1 erhöht wird - nicht so schnell

Was aber nichts macht wenn man ihn verwendet um die Referenzspannung für 
den Komparator zu erzeugen, da hier die Geschwindigkeit nicht so 
entscheidend ist.

Tim Baudermann schrieb:
> Hat niemand eine Idee wie man den Sketch hinbekommen könnte. Wie bringe
> ich den Atmega dazu mit der Werterhöhung bei 255 aufzuhören und nicht
> wieder bei 0 anzufangen nachdem er bis 255 hochgezählt hat?

Dein Problem wird sein, dass du fortlaufend eine Spannung misst die 
kleiner als 13,8V ist. Dadurch wird dein Zähler solange erhöht bis er 
den Wertebereich eines Bytes (=> 255) überschreitet und wieder bei 0 
anfängt. Ursache könnte sein, dass aufgrund von Verlusten, Störungen 
o.ä. tatsächlich niemals 13,8V hinter dem MOSFET gemessen werden.

Viele Grüße
Daniel

Edit: Die Anmerkung von Florian bzgl. Filterung vor dem ADC halte ich 
auch für sehr sinnvoll.

: Bearbeitet durch User
von Max H. (hartl192)


Lesenswert?

Tim Baudermann schrieb:
> Das mit der höheren Frenquenz macht auch durchaus Sinn. Schade, dass der
> Atmega selbst nur 1kHz kann. Gibt es denn Microcontroller die selbst ein
> PWM Signal mit höherer Frequenz geben können?
Ja, der dsPIC33FJ16GS502 zum Beispiel kommt bis auf 3.75MHz bei 8 bit 
Auflösung.

> Wie bringe
> ich den Atmega dazu mit der Werterhöhung bei 255 aufzuhören und nicht
> wieder bei 0 anzufangen nachdem er bis 255 hochgezählt hat?
1
if(Ausgangsspannung<13.8&&pwmvalue<255)
2
  pwmvalue++;
und um den Unterlauf zu verhuindern
1
if(Ausgangsspannung>13.8&&pwmvalue>0)
2
  pwmvalue--;


Hast du eigentlich schon mal drüber nachgebracht was mit der 
Ausgangsspannung passiert wenn das Programm aus irgendeinem Grund 
abstürzen sollte?

: Bearbeitet durch User
von c-hater (Gast)


Lesenswert?

Tim Baudermann schrieb:

> Das mit der höheren Frenquenz macht auch durchaus Sinn.

Natürlich. Kein Mensch betreibt einen Schaltwandler mit 1kHz. Das fängt 
frühestens so bei 10kHz an und geht bis in den MHz-Bereich. Die meisten 
Wandler arbeiten so zwischen 50 und 200kHz, weil sich für viele 
Awendungen ungefähr in diesem Frequenzbereich ein Optimum ergibt.

> Schade, dass der
> Atmega selbst nur 1kHz kann.

Das ist doch Unsinn.

> Gibt es denn Microcontroller die selbst ein
> PWM Signal mit höherer Frequenz geben können?

AVRs können 8Bit-PWM mit 1/256stel der Taktfrequenz. Da die 
höchstmögliche Taktfrequenz 20MHz ist, wäre also die höchstmögliche 
Frequenz für eine 8Bit-PWM 20.000.000/256 = 78,125kHz.
Die AVRs sind aber nicht zwingend auf 8 Bit PWM-Auflösung festgelegt. 
Man kann die Auflösung verringern und damit gleichzeitig im gleichen 
Maße die PWM-Frequenz erhöhen. Die allgemeine Formel für die maximale 
PWM-Frequenz ist (für FastPWM):

fPWM = Systemtakt/2^AuflösungsBits

Für die anderen möglichen PWM-Modi, die aber für eine 
Schaltwandler-Anwendung unwichtig sind, mußt du das Ergebnis noch einmal 
durch zwei teilen.

> Wie bringe
> ich den Atmega dazu mit der Werterhöhung bei 255 aufzuhören und nicht
> wieder bei 0 anzufangen nachdem er bis 255 hochgezählt hat?

Du lernst Programmieren.

> Ich möchte versuchen das Projekt so einfach wie möglich zu halten, nicht
> zuletzt um es meinen elektrotechnischen und programiertechnischen
> Kennmissen anzupassen ;-)

Wenn du nicht mal eine "gesättigte" Addition oder Subtraktion 
selbstständig hinbekommst, dann sind Schaltwandler eine Anwendung, die 
deine Fähigkeiten mit Sicherheit noch völlig überfordern. Also mußt du 
entweder deine Fähigkeiten durch Lernen ausbauen oder dir ein Projekt 
aussuchen, was du mit den vorhandenen Fähigkeiten realisieren kannst.

von Shield (Gast)


Lesenswert?

c-hater schrieb:
> Also mußt du
> entweder deine Fähigkeiten durch Lernen ausbauen oder dir ein Projekt
> aussuchen, was du mit den vorhandenen Fähigkeiten realisieren kannst.
oder nach einem SMPS Shield mit fertiger Lib suchen.

von stefan us (Gast)


Lesenswert?

Diese primitive Regelung hat noch einen Haken:

NACHDEM erkannt wurde, dass die Ausgangsspannung zu hoch ist, wird die 
Pulsweite angepasst. Dies zeigt VERZÖGERT Wirkung, weil Spule und 
Kondensator ja ein Tiefpass sind.

Dass heisst, der Mikrocontroller wird trotz Anpassung der PWM weiterhin 
eine gewisse Zeit lang die Information "Spannung zu hoch" erhalten und 
demzufolge die Pulsweite zu sehr ändern.

Das wiederrum hat zur Folge, dass die Ausgangssapnnug zu weit absinkt. 
Bis der Controller das merkt, ist die Pulsweite schon viel niedriger, 
als sie sein sollte.

So entsteht eine Schwingung.

Lies dich mal zum Thema PID Regler ein. Diese Regler arbeiten mit drei 
Komponenten (statt nur einer, wie dein Regler) und sie sind durch 
Faktoren einstellbar. Bei richtiger Einstellung entsteht keine 
Schwingung.

von Sepp (Gast)


Lesenswert?

Max H. schrieb:
>> Das mit der höheren Frenquenz macht auch durchaus Sinn. Schade, dass der
>> Atmega selbst nur 1kHz kann. Gibt es denn Microcontroller die selbst ein
>> PWM Signal mit höherer Frequenz geben können?
> Ja, der dsPIC33FJ16GS502 zum Beispiel kommt bis auf 3.75MHz bei 8 bit
> Auflösung.

Die DSPs der TI TMS320C674x Serie (10$/Stück) können 3x eHRPWM mit ca. 
200ps (!) Auflösung. Reicht bei 100 kHz für fast 16 Bit Auflösung bzw. 
fast 20 MHz bei 8 Bit... und den Regler rechnet er auch schnell genug 
;-)

von Cyblords feuchter Traum (Gast)


Lesenswert?

Hallo Tim,

also:

Der Arduino auf Basis 328 ist und bleibt ein stinknormaler µC von der 
fa. Atmel. Dieser kann (siehe Datenblatt) 67,5 kHz rausbringen.
Wie?

byte DeineGewuenschtePWM=0;
#define TIMER_CLK_DIV1    0x01

void setup()
{
  pinMode(11,OUTPUT);
  TCCR2A = _BV(COM2A1) | _BV(COM2B1) | _BV(WGM21) | _BV(WGM20);
  TCCR2B = _BV(TIMER_CLK_DIV1);

}
void loop(){
 OCR2A = DeineGewuenschtePWM;
}

Achtung: Code ungeprüft, müsste aber so funzen.


Deine Regelung: Im Ansatz richtig, leider aber untauglich. Der Regler 
benötigt eine logarithmische NAchregelung, d.h. kleine Regelabweichung, 
kleine Korrektur Deiner PWM-Breite, große Abweichung= große Korrektur.
Weiterhin solltest Du eine Totzeit einbauen. Da der Arduino nur 0-255 
kann wirst Du immer eine bleibende Regelabweichung behalten.

Dein Projekt: Du musst mehr probieren, gerade (muss ich leider sagen) in 
diesem Forum sind nur wenige bereit, Anfängern geduldig über den Weg zu 
helfen.
Im Gegenzug solltest Du so viel wie möglich versuchen selber zu 
ergründen.
Hier wissen einige Leute viel, wollen aber auch nicht für Dich 
"entwickeln"
um Dir dieses Stück unseres Hobbies abzunehmen.

Viele Grüße

Jörg

von Tim B. (tim_b84)


Lesenswert?

Ich versuche mal auf möglichst viele Beiträge zu antworten:



> Wenn er die mit PWM gepulste Spannung über einen Spannungsteiler direkt
> zurück in den ADC-Eingang des Controllers gibt, misst der irgendeine
> Spannung und inkrementiert/dekrementiert entsprechend immer weiter
> hoch/runter. Und da er vermutlich niemals die gewünschten 13,8V misst,
> wird er immer weiter inkrementieren bis er wieder bei 0 angekommen ist.
> :-) Um die Spannung korrekt zu messen wäre mindestens ein R-C-Tiefpass
> mit OpAmp vor dem ADC sinnvoll.

Danke. Das war ein sehr hilfreicher Hinweis. Ich habe das überprüft und 
den Arduino die Messergebnissen via serielprint ausgeben lassen. Da 
kommen tatsächlich äußerst seltsame Werte raus. Ein einfacher Elko hilft 
da auch nicht weiter.



>if(Ausgangsspannung<13.8&&pwmvalue<255)
>  pwmvalue++;
>
>und um den Unterlauf zu verhuindern
>
>if(Ausgangsspannung>13.8&&pwmvalue>0)
>  pwmvalue--;

Danke. Dass ich da nicht selbt drauf gekommen bin schreibe ich mal 
meiner mangelden Erfahrung zu ;-)



>oder nach einem SMPS Shield mit fertiger Lib suchen.

Das wäre mir natürlich am liebsten. Ich habe auch schon gesucht, bin 
aber leider nicht fündig geworden - zumindest nicht in diesem 
Leistungsbereich. Wenn jemand Bezugsquellen kennt bin ich für jeden 
Hinweis dankbar.



>Diese primitive Regelung hat noch einen Haken:
>
>NACHDEM erkannt wurde, dass die Ausgangsspannung zu hoch ist, wird die
>Pulsweite angepasst. Dies zeigt VERZÖGERT Wirkung, weil Spule und
>Kondensator ja ein Tiefpass sind.
>
>Dass heisst, der Mikrocontroller wird trotz Anpassung der PWM weiterhin
>eine gewisse Zeit lang die Information "Spannung zu hoch" erhalten und
>demzufolge die Pulsweite zu sehr ändern.
>
>Das wiederrum hat zur Folge, dass die Ausgangssapnnug zu weit absinkt.
>Bis der Controller das merkt, ist die Pulsweite schon viel niedriger,
>als sie sein sollte.
>
>So entsteht eine Schwingung.
>
>Lies dich mal zum Thema PID Regler ein. Diese Regler arbeiten mit drei
>Komponenten (statt nur einer, wie dein Regler) und sie sind durch
>Faktoren einstellbar. Bei richtiger Einstellung entsteht keine
>Schwingung.


Sowas hatte ich befürchtet. Darum hatte ich zu Beginn gefragt ob dieses 
Projekt so überhaupt realisierbar ist. In diesem Fall brauche ich wohl 
nicht weiter zu machen, denn mir das dafür notwendige Fachwissen 
anzueignen lässt sich leider nicht mit meinem Zeitbudget und vor allem 
mit dem meiner Kinder in Einklang bringen ;-)



>Der Arduino auf Basis 328 ist und bleibt ein stinknormaler µC von der
>fa. Atmel. Dieser kann (siehe Datenblatt) 67,5 kHz rausbringen.
>Wie?
>
>byte DeineGewuenschtePWM=0;
>#define TIMER_CLK_DIV1    0x01
>
>void setup()
>{
>  pinMode(11,OUTPUT);
>  TCCR2A = _BV(COM2A1) | _BV(COM2B1) | _BV(WGM21) | _BV(WGM20);
>  TCCR2B = _BV(TIMER_CLK_DIV1);
>
>}
>void loop(){
> OCR2A = DeineGewuenschtePWM;
>}
>
>Achtung: Code ungeprüft, müsste aber so funzen.
>
>
>Deine Regelung: Im Ansatz richtig, leider aber untauglich. Der Regler
>benötigt eine logarithmische NAchregelung, d.h. kleine Regelabweichung,
>kleine Korrektur Deiner PWM-Breite, große Abweichung= große Korrektur.
>Weiterhin solltest Du eine Totzeit einbauen. Da der Arduino nur 0-255
>kann wirst Du immer eine bleibende Regelabweichung behalten.
>
>Dein Projekt: Du musst mehr probieren, gerade (muss ich leider sagen) in
>diesem Forum sind nur wenige bereit, Anfängern geduldig über den Weg zu
>helfen.
>Im Gegenzug solltest Du so viel wie möglich versuchen selber zu
>ergründen.
>Hier wissen einige Leute viel, wollen aber auch nicht für Dich
>"entwickeln"
>um Dir dieses Stück unseres Hobbies abzunehmen.

Vielen Dank für diesen Hinweis. Ich denke das mit der logarithmische 
Nachregelung würde ich mit etwas probieren irgendwann hinbekommen. Aber 
wenn ich die von stefan us beschriebenen Schwierigkeiten nicht in den 
Griff bekomme hilft mir das nun auch nicht weiter.

Ich finde, dass einem in diesem Forum zumindest im Vergleich zu vielen 
anderen Foren sehr gut geholfen wird. Zumindest hat mich noch keiner 
verurteilt weil ich einen Arduino verwende ;-) Ich glaube auch nicht, 
dass es der Sinn eines Forums sein sollte sich Arbeit abnehmen zu lassen 
aber manchmal komme ich eben bei meinen einfach Projekten nicht weiter 
und da ist es sehr hilfreich auf das Wissen von anderen zurückgreifen zu 
können. In diesem Fall war es mir vor allem wichtig erts mal zu klären 
ob meine Idee überhaupt umsetzbar ist.



Ich werde wohl auf einen fertigen Regler zurückzugreifen auch wenn man 
da nicht immer das perfekt passende findet (insbesondere bei einem so 
großen Enigangsspannungsbereich). Wenn noch jemand einen Tipp für ein 
Schaltregler Shield hat wäre ich wie gesagt auch sehr dankbar.

Danke für Eure Hilfe.

von Amateur (Gast)


Lesenswert?

Es gäbe noch die Möglichkeit einen fertigen Schaltregler zu nehmen und 
die Referenzspannungsberechnung von einem µP vornehmen zu lassen.
Diese wird dann via PWM dem Regler als Sollwert zugeführt.
So bekommst Du die Regelgeschwindigkeit eines fertigen Schaltreglers 
plus der Variabilität der Ausgangsspannung.

von Florian S. (flst78)


Lesenswert?

Amateur schrieb:
> Es gäbe noch die Möglichkeit einen fertigen Schaltregler zu nehmen und
> die Referenzspannungsberechnung von einem µP vornehmen zu lassen.
> Diese wird dann via PWM dem Regler als Sollwert zugeführt.
> So bekommst Du die Regelgeschwindigkeit eines fertigen Schaltreglers
> plus der Variabilität der Ausgangsspannung.

Soetwas habe ich mal mit einem LM2675-Adj. aufgebaut und am 
Spannungsteiler des Feedbackeingangs über einen weiteren Widerstand eine 
variable GLATTE Gleichspannung angelegt und kann damit alle 
Ausgangsspannungen von 1.25V bis ca. 13V per PWM (in 255 Schritten) 
einstellen. (Habe quasi den einen Widerstand des Spannungsteiler 
variabel gemacht) Aber auch hierzu war ein Tiefpassfilter mit OpAmp 
notwendig, um eine saubere Umwandlung des PWM-Signals in eine 
Gleichspannung vorzunehmen. Vermutlich würde es auch genügen PWM 
Signal->Widerstand->Kondensator gegen GND->Widerstand->Spannungsteiler 
am Feedbackeingang des Reglers zu verwenden, habe das aber nie 
ausprobiert. (Ich glaube ein Schaltplan wäre jetzt besser ;-))

@Tim: Wie hast du den Elko angeschlossen? Wie ist der Elko 
dimensioniert? Wie ist Dein Spannungsteiler zur Spannungsmessung 
dimensioniert? Probier mal, ob Deine Messung besser wird, wenn Du den 
Elko zwischen Spannungsteilerausgang und GND schaltest. Poste am besten 
mal einen Schaltplan.

: Bearbeitet durch User
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.