Forum: Mikrocontroller und Digitale Elektronik PWM Spannungsregler


von Mani (Gast)


Lesenswert?

Hallo!
Ich bin gerade dabei einen PWM Spannungsregler zu bauen, folgendes habe 
ich bereits gemacht:
Einen Atmega 8 habe ich folgendermassen Programmiert, ich habe den 10Bit 
A/D Wandler verwendet um die variable Eingangsspannung zu messen, diese 
liegt zw. 3-5V
Danach habe ich den PWM Aktiviert und das so eingestellt das mithilfe 
der zuvor erfassten variablen Spannung der PWM immer so läuft das 3V ( 
wenn es gegättet ist) rauskommt.

So, nun funktioniert das schonmal, nun muss aber der PWM ja nicht zw. 0V 
und 5V ganze zeit hin und her, sondern zw. 0V und meiner variablen 
Spannung ( die ja zw. 3-5V liegt ) nun meine Frage wie mache ich es am 
einfachtsten, dass mein PWM zw. 0V und dieser variablen Spannung 
hinundher geht?
Ich möchte danach einen LC Filter hinsetzen, und somit immer 3V am 
Ausgang des Filters erhalten.

Vielen Dank

MfG
Mani

von Karl H. (kbuchegg)


Lesenswert?

> dass mein PWM zw. 0V und dieser variablen Spannung
> hinundher geht?

Gar nicht.
Das ist ja der Sinn einer PWM, dass sie nur zwischen 0 und 5V (in deinem 
Beispiel) 'hin und her geht'. Lediglich der zeitliche Anteil der 0V 
Phase wird immer größer, je kleiner du die PWM einstellst. Im Mittel 
kommt dann die Spannung raus, die du haben willst.

> Ich möchte danach einen LC Filter hinsetzen, und somit immer
> 3V am Ausgang des Filters erhalten.

Und genau dieses LC-Filter erzeugt dir dann die von dir gewünschte 
Spannung aus dem 0V-5V Signal.

von Mani (Gast)


Lesenswert?

Ja gut, du hast nicht ganz verstanden was ich haben möchte, Ich habe 
eine variable Eingangsspannung die zw. 3 und 5V pendelt, die liefert 
10A, und ich habe 5V versorgnungsspannung für den AVR

Nun habe ich den PWM der mir aus der variablen Eingangsspannung 
berechnet, wie der PWM sein muss, damit ich am ausgang immer 3V habe, 
deshalb muss der PWM zw. 0V und der variablen Spg. hinundhergehen, weil 
das eben der Leistungsteil ist, ich dachte mir schon mit P-Channel FET, 
oder so, aber ist ja auch nicht ganz das wahre oder?

von Εrnst B. (ernst)


Lesenswert?

Glückwunsch, du hast soeben den Drossel-Abwärtswandler neu erfunden.

Schaltungen und Berechnungshilfe findest du hier:
http://schmidt-walter.eit.h-da.de/smps/smps.html

Dort kannst du auch sehen, wie du bei unterschiedlichen 
Ein/Ausgangsspannungen am PWM-Tastverhältnis drehen musst.

von Mani (Gast)


Lesenswert?

Ok, dasheißt ich schließe mein PWM an den N-Channel FET an, der mir mein 
+ an den LC Filter schaltet richtig ?

Das ganze soll ein Solar-Laderegler werden nämlich, da mir MPP 
Laderegler doch zu schwierig erscheinen dachte ich, mach ich es mit PWM 
da ich die unnötige Leistung nicht "verbraten" möchte.

von Εrnst B. (ernst)


Lesenswert?

Mani wrote:
> Ok, dasheißt ich schließe mein PWM an den N-Channel FET an, der mir mein
> + an den LC Filter schaltet richtig ?

Eher einen P-FET, oder du brauchst einen High-Side Treiber (Fertiger 
Chip oder diskrete Bootstrap-Schaltung)

> Das ganze soll ein Solar-Laderegler werden nämlich, da mir MPP
> Laderegler doch zu schwierig erscheinen dachte ich, mach ich es mit PWM
> da ich die unnötige Leistung nicht "verbraten" möchte.

Kurz mal überlegen, was ein MPP-Tracker macht: Der regelt das 
PWM-Taktverhältnis (hier: eines Step-Down Drosselwandlers), um eine 
maximale Energieentnahme aus der Solarzelle zu erreichen.

d.H. von der Hardware ist deine Schaltung bereits fast ein MPP-Tracker, 
es fehlt nur etwas Zusatzsoftware auf deinem ATMega und ein Shunt, um 
den Strom zu messen.

von Mani (Gast)


Lesenswert?

Hmm, ja da hast recht ^^

Du aber ne Frage, ich verwende das jetzt so:

Hab nen PWM ( problem max. 5V und der FET braucht ja min. 10V weniger 
als an S) ... mit 14kHz ... an D hab ich meine Spule und die diode dran, 
meine Spule ist eine 220µH an S habe ich derzeit 5V dran, mein 
Kondesnsator ist ein 330µF

Es funktioniert aber nicht so richtig, weißt du vielleicht wieso?

Vielen Dank!

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Es funktioniert aber nicht so richtig, weißt du vielleicht wieso?
Ja, ganz klar: das liegt an der Masse, nach deiner Beschreibung ist die 
nirgends verbunden :-/

Um Aussagen abseits der Kristallkugel zu erhalten, wäre ein Schaltplan 
(als anerkanntes Kommunikationsmittel uneter Elektronikern) sinnvoll.

von Josef (Gast)


Lesenswert?

Zum Thema 'Digital Power' kann man auch hier viel interessantes finden:

http://focus.ti.com/docs/solution/folders/print/354.html

Bedingt durch die spezielle Peripherie (schnelle 12bit A/D Wandler, PWM 
Ausgang mit 150ps Aufloesung!) ist die PICCOLO Familie optimiert auf 
schnelle Signalverarbeitung.

Tools ab $39 verfuegbar -> 
http://www.ti.com/corp/docs/landing/piccolotools/index.htm?DCMP=Piccolo&HQS=Other+OT+controlstick

und die Software Library fuer 'Digital Power' gibt's unter
http://focus.ti.com/mcu/docs/mcuorphan.tsp?contentId=50550

von mani (Gast)


Lesenswert?

ich verstehe nicht ganz was du meinst was an der masse ned past

von avion23 (Gast)


Lesenswert?

mani, du kannst die spule gegen masse schalten.
also ein normaler buck converter umgekehrt, d.h. du verwendest plus als 
gemeinsamen pol. Du darfst dann natürlich sptäer nicht die massen 
verbinden sondern vcc ;)
Z.B. 
http://led-treiber.de/html/getaktete_treiber.html#Treiber-555-MOSFET


Lothar miller hat sehr richtig angemerkt, dass du einen schaltplan 
liefern sollst weil sonst keiner das verstehst, was du sagst. Und das 
mit der Masse war ein Beispielsfehler in deiner Beschreibung.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

mani wrote:
> ich verstehe nicht ganz was du meinst was an der masse ned past
Ohne Schaltplan kann man nur raten  :-/

von Mani (Gast)


Angehängte Dateien:

Lesenswert?

Also hier der Schaltplan, wo PWM steht, kommt mein PWM dran der von dem 
Atmega8 kommt!

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Ernst Bachmann hat recht:
> Glückwunsch, du hast soeben den Drossel-Abwärtswandler neu erfunden.

Aber deine Denkweise ist falsch:
>> Nun habe ich den PWM der mir aus der variablen Eingangsspannung
>> berechnet, wie der PWM sein muss, damit ich am ausgang immer 3V habe,
Du mußt nicht aus der Eingangsspannung berechnen, wieviel Energie du 
in die Drossel einlagern mußt. Sondern du mußt soviel Energie einlagern, 
dass du am Ausgang deine Spannung erhältst.

> ... eingangsspannung 3-5V ...
> ... das 3V (wenn es gegättet ist) rauskommt.
Das wirst du nicht schaffen. Was soll denn der dann noch regeln?

BTW:
Die 4007 als Schaltdiode ist ganz und gar fehl am Platz. Die ist zu 
langsam.

EDIT:
5V am Eingang und 10A Laststrom mit dem Mosfet:
1
IRF9132, -10A and -12A, -80V and -100V, 0.30 and 0.40 Ohm, P-Channel Power MOSFETs
Das geht schief. Nach meiner überschlägigen Berechnung sind 10 A * 0,3 
Ohm = 3V. Demnach bleiben von den 5V nach dem Fet noch 2V. Und nachdem 
am Ausgangskondensator C1 ja 3V sein sollen, ist das garantiert zuwenig.

von Mani (Gast)


Lesenswert?

So also, den P-Channel FET den ich oben eingetragen habe, ist natürlich 
nicht der den ich verwende ich verwende den Komplimentären zu dem 
IRFZ34N ... der kann die Last locker schalten außerdem hab ich noch paar 
da, zur not schalt ich welche Paralell.

So nun, die Diode ist auch nicht ganz die ich verwende ich verwende eine 
BYV96 . ist eine Schottky Diode.

Achja, zum testen verwende ich erstmal folgendes:

einen PWM mit 50% mit 50kHz bereitgestellt erstmal von einem TL494
Einen Ferritkerntrafo mit dem ETD29 Kern mit Luftspalt ( als meine 
Speicherdrossel mit 35 Windungen )
einen 560µF als Kondensator

Was haltet ihr davon nun?

Vielen Dank

von Mani (Gast)


Lesenswert?

Oder Wäre es besser, die Spule so zu schalten, ist glaube ich auch so 
wie avion23 das gemeint hätte, den PWM auf nen N-Channel FET legen, die 
Masse an die Spule schalten, während die Spule an + hängt. Aber trotzdem 
ist hier, das Bezugspotential Masse oder ?

Danke

von Mani (Gast)


Lesenswert?

sorry habs vergessen hier das was ich meinte:
http://www.trifolium.de/netzteil/img/kap6_2d.gif

von Mani (Gast)


Lesenswert?

Hab eh schon gemerkt, das der Link natürlich einen Aufwärtswandler 
darstellt, den ich soeben erfolgreich aufgebaut habe mit TL494 und ein 
paar kleinen umänderungen komme ich jetzt bei 14V eingang auf 60V 
ausgang, aber ich brauche natürlich einen abwärtswandler und keinen 
aufwärtswandler ;)

von Mani (Gast)


Lesenswert?

Juhu, es funktioniert!

Also funktionieren tut es schonmal, nur glaube ich das ich keinen 
N-Channel nehmen sollte als Schalter oder ? Oder kann ich den eh 
verwenden wenn ich an D das + hänge und an S die Spule dran häng?

Danke

von Mani (Gast)


Lesenswert?

Das einzige was noch auszusetzen ist, die Spannung bricht ziemlich stark 
zusammen, weiß aber nicht woran das liegen könnte, ich muss morgen mal 
meine Spule messen, habe aber wie gesagt Ferritkerntrafo 35 Windungen 
mit 1mm Luftspalt im Kern.

Müsste doch soweit passen oder nicht ?

von Mani (Gast)


Lesenswert?

Sooo, Abwärtswandler funktioniert nun zur vollsten zufriedenheit, nun 
würde ich nochmal gern auf MPP-Tracking eingehen, dabei geht es darum 
den Punkt zu finden Wo U und I zusammen am größten sind ( also max. 
Leistung ), nur was ich nicht ganz verstehe, meine Solaranlage liegert 
18V, wie soll ich es plötzlich so schaffen das die Solaranlage nurmehr 
16V liefert weil ich dann im MPP bin.

Wäre echt froh über eure Hilfe!

Danke!

von Εrnst B. (ernst)


Lesenswert?

Die Spannung vom Modul sinkt, wenn du mehr Strom ziehst.
MPP macht natürlich nur Sinn, wenn dein Verbraucher auch die ganze 
Leistung aufnehmen kann, den dein Modul liefert.

Eine einfache Regelung könnte z.B. so aussehen (Pseudocode)
1
richtung=1;
2
while(1) {
3
  Leistung=U_in * I_in;
4
  if (Leistung < Letzte_Leistung) {
5
     richtung=-richtung;
6
  }
7
  PWM_taktverhaeltnis += richtung;
8
  Letzte_Leistung=Leistung;
9
  // vor der naechsten Iteration mindestens einige PWM-Zyklen warten
10
}

von Mani (Gast)


Lesenswert?

Sehr gut, also wenn ich einen Akku lade, dann kan der MPP ja sowieso nur 
zw. 12V und 13,7V liegen... ok ich glaube jetzt hab ichs verstanden!

VIELEN VIELEN DANK!!!!

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.