Forum: Projekte & Code PWM SCHALTNETZTEIL Beispiel (Assembler) ATmega8


von Bernhard S. (bernhard)


Angehängte Dateien:

Lesenswert?

Ein 16 MHz getakteter ATmega8 versorgt ein Schaltnetzteil mit einem ca.
40kHZ PWM-Signal.

Ich nutze dieses Prinzip um bei NiCD und NiMH Akkus eine Spannung von
ca. 2V und einem Strom von 5A bereitzustellen.

Die vorgestellte Schaltung arbeitet mit 15V / 1A.

Das PWM-Signal wird im Assembler-Code über PCM definiert und kann nach
belieben verändert werden.

Absichtlich habe ich mich in diesem Beitrag nur auf die Problematik der
PWM-Erzeugung orientiert.

Die größten Probleme hatte ich mit der Hardware. Die Transistoren
müssen mit einer möglichst geringen Flankensteilheit geschaltet werden,
ansonsten erhitzen sie sich ungemein.

Bei 5A Last erwärmen sie sich nur unwesentlich. Ein altes PC-Netzteil
spendete mir die sehr wichtige Schottky Diode und die Induktivität :)

Angefügt habe ich:
-Schaltplan
-ASSEMBLER-CODE
-hex-FILE
-Fuse-Bits (16MHz)


Bernhard

von Tobias S. (tobias)


Lesenswert?

Hi,
sehe ich es richtig, das der Mega8 nichts weiter tut, als ein 40kHz
Signal auszugeben? Wozu braucht man da einen Mikrocontroller mit
16MHz?

Fehlt hier nicht irgendwo eine Rueckkopplung? Wie reagiert die
Schaltung auf Lastaenderungen?

>>Die Transistoren
>>müssen mit einer möglichst geringen Flankensteilheit geschaltet
>>werden, ansonsten erhitzen sie sich ungemein.

Sollten die Flanken nicht besonders Steil sein, um eine gute
Schalterfunktion zu erreichen?

Gruss Tobias

von Bernhard S. (bernhard)


Lesenswert?

Hallo Tobias

>nichts weiter tut, als ein 40kHz Signal auszugeben? Wozu braucht man
>da einen Mikrocontroller mit 16MHz?

Würdest Du mit einem niedrigen Takt arbeiten (z.B. 1MHZ),
dann wäre die Frequenz des PWM Signals wesentlich niedriger.
(Niedrige Frequenz==> grosse Induktivität)

>Fehlt hier nicht irgendwo eine Rueckkopplung?

Ja, die Regelschaltung habe ich bewusst weggelassen,
ist eine Problematik für sich.

Aber ein ADC könnte per Interrupt die Spannung messen und die PWM
korrigieren.

>Wie reagiert die Schaltung auf Lastaenderungen?

Bei Laständerung ändert sich natürlich die Ausgangsspannung
(Ursache: R der Induktivität und Schottky-Diode)


>Sollten die Flanken nicht besonders Steil sein, um eine gute
>Schalterfunktion zu erreichen?

So steiler, desto besser.

Deshalb mussten die R relativ niderohmig dimensioniert werden, damit
die Flanken kleiner als 0,5 µs wurden.


Bernhard

von Ralf B. (Gast)


Lesenswert?

BTW: ne Hardware PWM schafft bei nem Takt von 16 MHz am Atmega 8
immernoch 62.5 kHz ... und das sollte doch eigentlich reichen oder ?

von Benedikt (Gast)


Lesenswert?

>ne Hardware PWM schafft bei nem Takt von 16 MHz am Atmega 8
immernoch 62.5 kHz

Die PWM kann maximal 4MHz bei 16MHz Quarztakt.
Wenn man natürlich Phase Correct und 10bit nimmt geht das allerdings
nicht...

von Bernhard S. (bernhard)


Lesenswert?

Hallo Ralf, hallo Benedikt,

da gebe ich Euch natürlich Recht, dass man mit einer HW-PWM noch höhere
PWM-Frequenzen erzeugen kann.

Bernhard

von Ralf B. (Gast)


Lesenswert?

hmm bei ner 2 bit PWM kann die sicher nen Frequenz von 4 MHz ham ...
bei ner 8 Bit PWM aber leider net ....

von Wolfgang Horn (Gast)


Lesenswert?

Hi, Bernhard,

ersetze den BUZ11 als Treiber durch einen BD135 oder einen
npn-Transistor, der den Strom von Emitter-Basiswiderstand schnell
schaltet.

Die Eingangskapazität des BUZ ist viel zu groß für ATmega.

Ciao
Wolfgang Horn

von Bernhard S. (bernhard)


Lesenswert?

Hallo Wolfgang,

>ersetze den BUZ11 als Treiber durch einen BD135 oder einen
>npn-Transistor, der den Strom von Emitter-Basiswiderstand schnell
>schaltet.

In meinem ersten Versuchsaufbau befand sich ein npn-Transistor, war
aber nicht ganz so zufrieden (Stromverstärkung), deshalb entschied ich
mich für einen FET.


>Die Eingangskapazität des BUZ ist viel zu groß für ATmega.

Laut Datenblatt ca. 2nF Eingangskapazität.

Ist für den ATmega doch eine relativ hohe Last, da gebe ich Dir Recht.


Bernhard

von frankieboy (Gast)


Lesenswert?

@Bernhard

Kennst Du die Applikationsnote AVR450 (Battery charger)?
Dort ist ein Akkulader mit Tiny15 bzw. 4433 beschrieben, der auch mit
einer PWM den Stepdown-Schaltregler realisiert.

Gruss

Frank

von Bernhard S. (bernhard)


Lesenswert?

>Kennst Du die Applikationsnote AVR450 (Battery charger)?


Danke für Deinen Tipp, hab's mir gerade mal angeschaut,

ich denke, dort sind auch wertvolle Hinweise enthalten, die ich bei
meinem Reflexlader einflechten kann.


Bernhard

von Läubi (Gast)


Lesenswert?

@Bernhard:
Kannst du noch ein paar "Tips" zu den zu verwenden Bauteilen geben?
ALso welche ALternativen man eventuell hat, weil ich hab noch nene paar
Alte NT hier rumleigen, mal sehen ob sich da verwertbares findet, müßte
bloss wissen welche ungefähren Werte brauchbar wären :)

von Bernhard S. (bernhard)


Lesenswert?

@Läubi

>Kannst du noch ein paar "Tips" zu den zu verwenden Bauteilen geben?

Schottky Diode:

Selbst eine normale Silizium-Diode kann verwendet werden, nur diese
erwärmen sich wesentlich intensiver und der Wirkungsgrad der Schaltung
nimmt enorm ab.

Induktivität:

Das ist ein Kapitel für sich, Entstördrosseln sind nicht zu empfehlen,
da sie ungünstige Speichereigenschaften aufweisen.
Ich suche in Netzteilen gern die Ringkerne, notfalls diese etwas
umwickeln (50...100Wdg), dicker Kupferdraht, so dicker desto besser,
damit der Ohmische Widerstand klein wird.
Bei größeren Lasten erwärmt sich das ganze ja doch.

Ausgangstransistor:
Hier ist vorallem hohe Impulsstrom-Festigkeit gefragt, je höher seine
Stromverstärkung, um so geringer der Strom für den Treiber-Transistor.
Die Spannungsfestigkeit spielt eine untergeordnete Rolle, denn meistens
werden die Schalatungen mit relativ niedrigen Spannungen versorgt.

Bernhard

von Läubi (Gast)


Angehängte Dateien:

Lesenswert?

dürfen die Wickulungen auch übereinader liegen?in SNT sind ja oft so
dioden im SOT gehäuse drinne, sind die brauchbar?
Ich vermute jzt mal das die Schotky dazu da ist den Transistor vor der
Rückinduktion der Spule zu schützen oder welche Aufgabe übernimmt
dieser?
Als Transistor hab ich einen C4020 gefunden, der kann ne ganze Menge ab
wie mir scheint gg (siehe anhang)

von Bernhard S. (bernhard)


Lesenswert?

@Läubi

>Als Transistor hab ich einen C4020 gefunden, der kann ne ganze Menge
>ab

Kommt auf den Anwendungsfall drauf an. Er besitzt eine sehr hohe
Spannungsfestigkeit, dafür ist sein Kollektor-Impuls-Strom ziemlich
gering (nur 3A), für oben veröffentlichtes Beispiel nicht geeignet, er
würde warscheinlich den Strom-Tod sterben.

>dürfen die Wickulungen auch übereinader liegen?

ja

>in SNT sind ja oft so dioden im SOT gehäuse drinne, sind die
> brauchbar?

ja, aber für einen speziellen Anwendungsfall würde ich vorsichtshalber
nocheinmal in's Datenblatt schauen, Diode ist nicht gleich Diode ;)

> Ich vermute jzt mal das die Schotky dazu da ist den Transistor vor
> der Rückinduktion der Spule zu schützen oder welche Aufgabe
> übernimmt dieser?

Sie hat eine Doppelfunktion:

1. Schutz des Transistors vor der Rückinduktionsspannung

2. (Hauptgrund) Der Strom der Rückunduktion wird an an die Last weiter
geleitet und dieser kann einige Ampere betragen

von Marco S (Gast)


Lesenswert?

Bei der Schaltung möchte ich kein Akku sein.

Die Anordnung der Transistoren sieht man z.B. in elv anders herum.
Uc-npn-pmosfet. Du kannst wenigstens einen Stromshunt gen Masse legen,
RC-Glättung und AD-Wandler des M8 füttern dann einen I-Regler.
Ansonsten lass den M8 weg und bastel was um einen uc384x herum.

Gruß
Marco

von Bernhard S. (bernhard)


Lesenswert?

@Marco

>Bei der Schaltung möchte ich kein Akku sein.

Ich auch nicht ;)

Diese Schaltung stellt auch nur ein Prinzip dar,
ganz bewusst habe ich eine U bzw. I-Regelung ausgeblendet.

>Die Anordnung der Transistoren sieht man z.B. in elv anders herum.

Es gibt mehrere Schaltungs-Prinzipien, das ist nur eins von mindestens
vier.

Bernhard

von Läubi (Gast)


Lesenswert?

Ich mein diese mit zwei dioden gegeinander geschaltet, sind laut dem
Datenblatt was ich gefunden hab Schotkys.
Wollte jezt nicht gleich mal mit 5 A anfangen sonder einfach mal
prinzipel ein wenig mit SchaltNetzteilanwendungen mich befassen und da
sind son paar recycling teile ganz gut, wenn da was abraucht isses
nicht aergerlich, hab hier bestimmt noch von 3 alten SNT Bauteile
rumliegen.
Danke schonmal für die Infos, ist mal schön wen zu wissen der sich
etwas auskennt, im Inet gibts immer nur mehr oder weniger genaue
beschreibungen.
Könnte man dieses Prinzip auch verwenden um Wechselspannung zu
erzeugen, also die Spule durch nen Trafo (1:1 oder so) ersetzen?
Und was ich noch wissen wollte: Warum nimmt man nicht gleich den MosFET
um GND durchzusteuern? hat das nachteile gegenuber einen NPN Transistor?

von Bernhard S. (bernhard)


Lesenswert?

@Läubi

>Könnte man dieses Prinzip auch verwenden um Wechselspannung zu
>erzeugen, also die Spule durch nen Trafo (1:1 oder so) ersetzen?

Mit diesem Prinzip könnte man auch Wechselspannungen erzeugen,
allerdings ohne Trafo!!!

Die positive Halbwelle wird mit diesem Prinzip schon erzeugt, für die
negative benötigt man eine weitere Schaltung.

Gern wird hierfür der Aufwärtswandler (Step-Up) verwendet.


>Und was ich noch wissen wollte: Warum nimmt man nicht gleich den
>MosFET um GND durchzusteuern?
>hat das nachteile gegenuber einen NPN Transistor?

Ein FET lässt sich sehr verlustarm ansteuern, ein Transisor benötigt
immer einen Basisstrom.

von Läubi (Gast)


Lesenswert?

Ja deswegen Frage ich ja: Warum nicht gleich den Transistor durch den
Fet ersetzen? Soll doch ein Transistor sein im Schaltplan oder?
Spule hatte ich gedacht wegen der Potentialtrennung :)
(Danach könnte man es ja wieder Gleichrichten und glätten)

von Bernhard S. (bernhard)


Lesenswert?

@Läubi

>Soll doch ein Transistor sein im Schaltplan oder?

ja, das ist ein PNP-Transistor

>Warum nicht gleich den Transistor durch den Fet ersetzen?

kann man tun, man müsste sich nur einen geeigneten Typ heraussuchen,
ich denke, ein N-Kanal würde geeignet sein?

>Spule hatte ich gedacht wegen der Potentialtrennung :)
>(Danach könnte man es ja wieder Gleichrichten und glätten)

Müsste theoretisch funktionieren, am Besten Du skizzierst mal die
Schaltung, da kann man besser darüber diskutieren?

Bernhard

von Ralf (Gast)


Lesenswert?

hi, warum braucht man eine induktivität zum runter regeln? ich kenne
mich überhaupt nicht aus, aber ich habe mir das so gedacht, dass man
mit einem transistor einen strom schalten kann und durch das
Tastverhältnis der PWM die spannung einstellen kann. Dann hat man am
emitter des Transistors ein rechteck das im mittel die gewünschte
Spannung ergibt und am ende glättet man das ganze einfach mit einen
Kondensator. Was passiert wenn ich das so machen würde?

Was genau macht die induktivität hier? Ich dachte die braucht man nur
bei step up reglern. (kenne bisher nur linearregler wie den 7805 :))

von Bernhard S. (bernhard)


Lesenswert?

Hallo Ralf,

> warum braucht man eine induktivität zum runter regeln?

Diese Induktivität speichert Energie, sie wird durch den Transistor mit
Energie vollgepumpt und wenn er abschaltet, dann gibt die Induktivität
ihre Energie an die Last ab.

Dieses Verfahren ermöglicht sehr gute Wirkungsgrade,
es geht nur sehr wenig Energie verloren.

Bsp: Eingangsspannung 21 Volt
     Ausgangsspannung 1 Volt
     Ausgangsstrom 5 Ampere

Würdest Du die Ausgangsspannung von 1V/5A mit einem Widerstand (bzw.
Transistor / Linearregler) realisieren, dann würde dieser 100 Watt
vernichten müssen. 100W ===> Bügeleisen hat ca. 600W

Ein Schaltregler dagegen wird gerade mal handwarm  ;)


>Dann hat man am
>emitter des Transistors ein rechteck das im mittel die gewünschte
>Spannung ergibt und am ende glättet man das ganze einfach mit einen
>Kondensator. Was passiert wenn ich das so machen würde?

Der Widerstand muss die Verlustleistung immer "vernichten"

       P=U*I     20V x 5A = 100W

Bernhard

von Lupin (Gast)


Lesenswert?

Hmm okay, kann man die schaltung wie sie hier ist auch benutzen um nach
oben zu regeln (eine höhere Spannung zu erzeugen) oder was müsste man
dann daran ändern?

Wieviel Henry sind denn 60 windungen? Wäre das ganze mit einer höheren
PWM frequenz nicht effektiver?

von Bernhard S. (bernhard)


Lesenswert?

@Lupin

>kann man die schaltung wie sie hier ist auch benutzen um nach
>oben zu regeln (eine höhere Spannung zu erzeugen) oder was müsste man
>dann daran ändern?

Ein Transistor und eine Induktivität werden in Reihe geschaltet, wobei
der Transistor gegen GND schaltet.

Siehe Step-Up-Regler bzw. Auwärts-Wandler.

Beim öffnen des Transistors entsteht eine Induktionsspannung, die ohne
Last schnell den kV Bereich erreichen kann.

Deshalb müssen Relais auch durch eine parallel-geschaltete Diode
versehen werden, um diese Induktionsspannung abzuführen.

Nimm mal ein einfaches Relais, ohne Schutzdiode und lass einen Strom
durchfließen.

Immer wenn Du schlagartig durch einen Schalter den Stromfluss
unterbrichst, siehst Du einen kleinen Funken am Schalter, das ist die
gespeicherte Energie dieser Induktivität ;)

Letztens testete ich ein 12V-KFZ-Relais, irgendwie kam ich mit dem
Kontakt der Spule in Verbindung ==> war äußerst unangenehm die Wirkung
in meinen Fingerspitzen.

>Wieviel Henry sind denn 60 windungen?

einige mH, kann ich Dir nicht genau sagen, ist von sehr vielen Faktoren
abhängig, der verwendete Ferit-Kern spielt eine wesentliche Rolle,
vorallem die Eigenschaft, Energie zu speichern.

Kerne von Entstördrosseln sind für STEP-UP / DOWN Regler nicht
geeignet.


>Wäre das ganze mit einer höheren PWM frequenz nicht effektiver?

Ja, so höher die Frequenz, desto kleiner die Induktivität,

aber

die Transistoren müssen sehr schnell schalten können, ansonsten
erwärmen sie sich zu sehr bei jedem Schaltvorgang, das gilt natürlich
auch für die Dioden
und die Ferit-Kerne müssen für die hohen Frequenzen ausgelegt sein.

Bernhard

von Marco S. (masterof)


Lesenswert?

abo

von Tobias Wiese (Gast)


Lesenswert?

Hallo,

ich habe auch vor ca einem halben Jahr angefangen, mich mit der
Thematik "Schaltnetzteile" zu beschäftigen und mittlerweile immerhin
3 Funktionierende Designs aufgebaut; allerdings alles primärgetaktete
Schaltnetzteile, welche die Netzspannung auf Niederspannung
transformieren.
Das letzte Netzteil liefert 14 Volt bei 10 Ampere.

Soviel zur Vorgeschichte.

Ich habe mir die Schatung mal angesehen, und es sind mir doch ein paar
dinge aufgefallen. Einige wurden hier auch schon genannt:

-1. Der NPN-Transistor (BD236) sollte den Mosfet (BUZ11) ansteuern,
nicht umgekehrt. Besser wäre noch eine sog. gegentaktstufe bestehend
aus einem NPN- und einem PNP-Transistor zur Ansteuerung des FET. Damit
lassen sich sehr steilflangike Umschaltungen hinbekommen.

-2. der BUZ 11 ist für dieses Netzteil nicht optimal; es gibt FETS mit
geringerer Gatekapazität und geringerem RDS(on) (Widerstand im
eingeschalteten Zustand). 40 mOhm ist für ein Schaltnetzteil eigentlich
schon zu viel. IRFxxx - Transis wären nen denkbarer ersatz oder auch ein
IGBT.

Mal was zu dem (2S)C4020, der weiter oben thematisiert wurde: Dies ist
ein typischer Schalttransistor für primärgetaktete SNTs mit hoher
Eingangsspannnung (Netzspannung). Für das hier thematisierte Projekt
ist er völlig ungeeignet, denn erstens ist die Strombelastbarkeit zu
gering und zweitens ist der RDS(on) viel zu hoch.

Eine Frage noch zu der Spule: ist diese genau berechnet oder
"geschätzt"? Eine Induktivität in einem SNT sollte immer möglichst
exakt berechnet werden, damit unangenehme Effekte wie z.B. lückender
Stromfluß etc. ausbleiben.

Bitte versteht meinen Beitrag nicht falsch, er soll nicht
"besserwisserisch sein", vielmehr müßt ihr nicht den gleichen Mist
wiederholen, den ich schon gemacht habe (mir sind einge Probe-Layouts
wegen falsch berechneten Bauteilen um die Ohren geflogen) g

von Tobias Wiese (Gast)


Lesenswert?

Sorry vergesst das mit dem RDS(on) beim 2SC4020...ist ja ein normaler
transi...kein FET...trotzdem...in dem hier thematisierten NT wäre er
überfordert!

von Bernhard S. (bernhard)


Lesenswert?

Hallo Tobias Wiese,

ich gebe Dir uneingeschränkt Recht mit den steilen Flanken und geringen
Kapazitäten



>Eine Frage noch zu der Spule: ist diese genau berechnet oder
>"geschätzt"? Eine Induktivität in einem SNT sollte immer möglichst
>exakt berechnet werden, damit unangenehme Effekte wie z.B. lückender
>Stromfluß etc. ausbleiben.

In diesem konkreten Beispiel wurde ein L aus einem Schaltnetzteil
verwendet, Durchmesser ca. 3cm, 1mm Kupferdraht.
Selbst unter Vollast entsteht kein "lückender Betrieb", demzufolge
war L in dieser konkreten Anwendung groß genug.

Bernhard

von Axel R. (Gast)


Lesenswert?

Ist aber trotzalledem schön zu sehen, welche Mühe sich Bernhard mit der
Dokumentation gegeben hat.
Dafür Respekt! Das lassen viele einfach aussen vor.

Zu den unzulänglichkeiten der Schaltung wurde schon berichtet...

AxelR.

von Laeubi (Gast)


Lesenswert?

Ja, ich hab mich dann doch zu einer Integrierten Lösung mit dem MC38...
entschieden, aber werd mal in näherer Zukunft mal was entwerfen, das
Problem ist echt ne passende Spule zu finden, ich weiss immer nicht was
man den Dingern zutrauen kann, mal ganz ab davon das ich kein Plan hab
wieviel Henry die haben die ich hier so rumliegen hab.
Meine "Idee" gibts natürlich shcon in ausgereifterer Version (wie
sollte es anders sein gg) und nennt sich Sperrwandler.
Sowas werd ich mir mal bauen, der Thread hat mich dann doch neugierig
gemacht.

von Axel R. (Gast)


Lesenswert?

Dort, wo man die Datenblätter der Schaltwandlerschaltkreise ziehen kann,
gibt es immer ein Reihe von Application Notes. Dort wird auch eingehed
auf die Spulen (inductor selection) eingegangen. Einfach mal
schmökern...

von jaja...derhenne (Gast)


Lesenswert?

Hallo,

hier ein sehr nützlicher link: 
http://schmidt-walter.fbe.fh-darmstadt.de/smps/smps.html

von Dirk F. (dirk-frerichs)


Lesenswert?

hi

also schaltnetzteile baue ich gerne mit dem SG3525
und einigen FETs

welchen "sinn" erfüllt hier der AVR ?

oder was geht mit dem AVR was mit dem anderem nicht geht

von Marius S. (lupin) Benutzerseite


Lesenswert?

der AVR ist in einer schaltung vlt schon vorhanden und kann daher auch 
gleich sowas einfaches mit übernehmen.

Außerdem kann man einfacher eine intelligente Steuerung von 
Spannung/Strom realisieren.

von Michael U. (Gast)


Lesenswert?

Hallo,

@Ralf:

ist dann ein Schaltregler. Die waren vor den Schaltwandlern Mode, meist 
wurde ein µA723 mißbraucht.

Schlecht zu dimensionieren, schwingfreudig zur falschen Zeit und nur 
schwer ein brauchbares Verhalten auf Lastsprünge zu realisieren 
(Speicher-C am Ausgang).

Gruß aus Berlin
Michael

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.