Hallo,
Ich habe vor, mir ein Netzteil mit einem Mikrokontroller zu bauen.
Dazu soll die Eingangsspannung von 15VDC mit Hilfe einer PWM
variabel heruntergesetzt werden.
Weil sowohl die Last an dem Ausgang variabel sein kann als auch die
Spannung einstellbar sein soll, weiß ich nicht wie man das Verhältnis
der ON/OFF-Time der PWM berechnen soll.
Mfg Dieter
Richtig.
Aber das weiß wohl keiner so genau wie das off on verhältnis bei ner PWM
die eine variable Spannung an einer variablen last erzeugen soll zu
berechnen ist. Ich denke so x/42 sollte aber hinkommen.
Allgemein ist beim lückenlosen betrieb die ausgangsspannung von der last
unabhängig und ist ua=(t1/T)*Ue
jaa das klingt gut ...
Aber demnach wird die angeschlossene Last vernachlässigt:
Wenn ich nur die Spannung messe mit nem Multimeter, dann fließt so gut
wie gar kein Strom, also wird die Spannung bis zur Uin ansteigen ...
Wenn aber 3A oder so gezogen werden, muss man schon aufpassen
Mfg dieter
Allgemein berechnet man die Ausgangsspannung bei einer PWM:
U_a = (t_leitend / t_gesamt) * U_e
U_a : Ausgangsspannung
U_e : Eingangsspannung
t_leitend : Leitdauer des Transistors
t_gesamt : Periodendauer der PWM, also t_leitend + t_sperrend
Dies gilt jedoch nur für den Fall, dass deine Last am Ausgang konstant
bleibt.
Für eine variable Last musst du eine Regelung implementieren, damit der
µC immer den vorgegebenen Spannungswert am Ausgang einstellt.
Mein Vorschlag wäre hier ein PI-Regler, der dafür sorgt, dass keine
bleibende Regelabweichung entsteht.
Mein erster Vorschlag wäre mal, nach Regelungstechnik zu googlen bzw.
bei Wikipedia zu schauen.
Weiter gibt es bei ATMEL Application Sheets die dem Entwickler
weiterhelfen. Im AVR221 Dokument ist beschrieben, wie man einen
PID-Regler implementiert.
Ich meine man könnte auch den Strom messen,
indem man hinter den Ausgang einen Shuntwiderstand setzt,
um dann daran einen Spannungsabfall zu messen zu können.
Geht das?
Danach kann man so rechnen: Uin*Iin=Uaus*Iaus
Davon gegeben: Uin, Uaus(wird im uC definiert), und gemessen dann Iaus
dann ist Iin=Uaus/Uin *Iaus
und jetzt müsste noch ein Zusammenhang zwischen
Iin und dem Tastverhältnis bestehen?
Mfg Dieter
> und jetzt müsste noch ein Zusammenhang zwischen> Iin und dem Tastverhältnis bestehen?
Schon, aber wozu.
> Uaus(wird im uC definiert),
Du musst unterscheiden zwischen dem Uaus, dass vorgegeben
wird und dem Uaus das sich durch die tatsächliche Last
einstellt. Wenn das Uaus in deiner Schaltung sich nicht
durch unterschiedliche Last ändern würde, bräuchtest du
ja nicht nachregeln.
Siehs mal so:
Der Benutzer gibt sein Wunsch Uaus vor.
Durch die Last stellt sich jetzt aber bei einer bestimmten
PWM ein bestimmtes Uaus ein. Aufgabe der Regelung ist es
nun, die PWm so nachzuregeln, dass sich Uaus_tatsaechlich
an Uaus_wunsch angleicht. Also ich würde dazu ganz einfach
Uaus_tatsaechlich messen und nicht den Umweg über irgendwelche
I gehen.
@ Karl heinz Buchegger
Das stimmt!
Soweit habe ich das jetzt verstanden.
Außer den Fall des lückenden Betriebes.
Der tritt doch bei sehr kleinen Lasten auf, oder?
Also z.B. Messen mitm Multimeter ...
Die Frequenz wollte ich constant bei 10kHz halten,
sodass bei zu kleinen Lasten ein lückender Betreib entsteht.
Mfg Dieter
wenn du schon nen controller da drin hast warum nicht per ADC die
spannung am ausgang messen und dann nachregeln bis du die gewünschte
spannung erreicht hast?
ja im Grunde wollte ich das genau so machen, aber ich wusste halt nicht,
wie ich die Ausgangsspannung berechnen sollte
aber das kriege ich hin, denke ich
g
Danke an Alle, die mir geholfen haben .
Dieter
Die Ausgangsspannung brauchst du auch nicht (direkt) berechnen. Die
musst du dir festlegen, wie groß die sein soll. Der Atmel hat dann die
Differenz zwischen Soll- und Istwert zu bilden, und abhängig davon das
Tastverhältnis (t_leitend zu T_gesamt) zu ändern. Diese Berechnung (von
Regeldifferenz zun Tastverhältnis) erfolgt ( da im ATMEL realisiert)
mittels einer sogenannten Differenzengleichung!! Dazu ist eine konstante
Abtastfrequenz (Takt für den ADC zum Messen der Ausgangsistspannung)
notwendig.
Somit wird mit jedem neuen (Abtastwert) ein neues Tastverhältnis für den
Transistor mittels der Differenzengleichung errechnet. Die
Differenzengleichung hat in etwa folgende Form:
d(n) = k1*e(n) + k2*e(n-1) + k3*d(n-1) (...)
Das ermitteln der Koeffizienten erfolgt über eine Transformation...
Im Anhang ist das Problem mal regelungstechnisch aufgemalt..
regelungstechnische Grüße...
Beim Messen mit ADC muß der ADC zum PWM synchronisiert werden, um nicht
durch den verbleibenden Ripple am Puffer-C einen stetig wabernden
Meßfehler zu haben. Alternative wäre ein 3- oder mehrstufiger
R/C-Tiefpaß mit nachgeschaltetem OV oder Leistungs-OV.
nicht zwingend. es ist sinnvoll die "phase and frequency correct pwm" zu
nutzen und immer beim timerüberlauf (genau in der mitte der pwm) den
adc-wandler zu starten.. somit sind weitere filtermassnahmen nicht
wzingend notwendig..
Eine eigene Frage?
Dieser Thread ist über 19 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.