Einstellbares Netzgerät mit Attiny13
von Hermann Nieder
Kürzlich blätterte ich in einem älteren Fachbuch zum C-Control/Basic-System [1] und fand darin u. a. auch die Beschreibung einschließlich eines Schaltplans für ein gesteuertes Universalnetzgerät, das die PWM-Ausgänge des C-Control-Systems zur Ansteuerung verwendet. Warum sollte es nicht auch möglich sein, ein solches Netzgerät mit einem Attiny13 aufzubauen?
Ich schaute in dem Handbuch des Lernpakets Mikrocontroller[2] nach und fand heraus, dass der ATtiny13 zwar auch zwei PWM-Ausgänge besitzt, von denen auf der Platine des Lernpakets aber nur einer genutzt werden kann, da der Anschluss PB1 für die serielle Schnittstelle verwendet wird. Also beschränkte ich mich auf die vereinfachte Version mit nur einer einstellbaren Spannung. Dies hier ist der Schaltplan des einstellbaren Netzgeräts in Anlehnung an den Schaltplan aus dem o. a. Fachbuch.
| Ganzen Artikel lesen... |  |
Die Ausgangsspannung von 0 bis 20 V wird über das Terminalprogramm des Lernpakets Mikrocontroller eingestellt, indem ein Wert von 0 bis 200 an den ATtiny13 gesendet wird. Dieser stellt die Ausgangsspannung am PWM-Ausgang ein, die ausreichend gesiebt und um den Faktor 5 verstärkt wird. Der Ausgangstransistor muss je nach Belastung des Netzgeräts ausreichend gekühlt werden. Da der AD-Wandler des Mikrocontrollers maximal 5 V Eingangsspannung erhalten darf, ist der Messbereich mit Hilfe der Widerstände P2 und R4 bis R7 auf 25 V erweitert.
Es ist möglich, mit P1 die Ausgangsspannung mit einem Schraubendreher einzustellen. Der „Spannungsmesser" kann mit P2 „geeicht" werden. Die Ausgangsspannung wird vom ATtiny13 an den PC in Volt übertragen.Die Genauigkeit der Messung und damit der Anzeige ist recht gut, wie es der folgende Screenshot aufzeigt.
Das Programm für den ATtiny13 wurde in BASCOM [3] entworfen. Hier ist das Listing dazu.
$regfile

=

"attiny13.dat"
$crystal

=

1200000
Config

Portb.0

=

Output
'Das

Programm

gibt

am

PWM-Ausgang

des

Lernpakets

Mikrocontroller

eine
'Gleichspannung

aus.

Diese

wird

gemessen

und

der

Messwert

in

Volt
'an

den

PC

ausgegeben
Config

Timer0

=

Pwm

,

Prescale

=

1

,

Compare

A

Pwm

=

Clear

Down
Config

Adc

=

Single

,

Prescaler

=

Auto

,

Reference

=

Avcc
Start

Adc
Open

"comb.1:9600,8,n,1,INVERTED"

For

Output

As

#1
Open

"comb.2:9600,8,n,1,INVERTED"

For

Input

As

#2
Dim

N

As

Byte
Dim

Ad_dat

As

Integer
Dim

U

As

Integer
Dim

M

As

Integer
Dim

R

As

Integer
Do
Get

#2

,

N
Pwm0a

=

N
Ad_dat

=

Getadc(3)
Ad_dat

=

25

*

Ad_dat


'

*

25

notwendig

wegen

Messbereichserwiterung
U

=

Ad_dat

/

1023




'

Berechnung

der

Spannung
M

=

U

*

1023

'

R

=

Ad_dat

-

M
R

=

R

*

10
R

=

R

/

102
Print

#1

,

"U

=

"

;

U

;

","

;

R

;

"

Volt"


'

und

Ausgabe

über

die

serielle

Schnittstelle

an

den

PC
Loop
End
Download Programmlisting und die HEX-Datei
Im Bild oben ist eine praktische Ausführung auf einem Steckboard dargestellt. Es fehlt noch der Kühlkörper für den BD237. Die rote LED leuchtet, also ist der ATtiny13 bereit. Die beiden gelben rechts im Bild leuchten ebenfalls, folglich kann der Anwender über die serielle PC-Schnittstelle seinen Wert zur Einstellung der Spannung von 0 bis 20 V senden.
Stückliste zum einstellbaren Netzgerät mit dem ATtiny13:
C1, C2 = 470n
F1,F2 = 1A flink, einschl. Sicherungshaltern
Jmp1 = Jumper
LED1 = rot, 2mA-Typ
LED2, LED2 = gelb, 2mA-Typ
OP1,OP2 = LM358
P1, P2 = 10k
R3 = 2k2
R9 = 10k
R1,R2,R4,R5,R6,R7,R8 = 100k
R10,R11 = 33k
T1 = z.B. BD237 mit Kühlkörper
2 Steckernetzteile mit je 12 V Ausgangsspannung, einschl. zweier Hohlbuchsen passend dazu
1 Steckboard 66 x 174 x 8,5 mm
Literatur, Bezugsquellen:
[1] Burkhard Kainka „MSR mit dem C-Control/Basic-System", Franzis, 1998
[2] Lernpaket Mikrocontroller, Franzis-Verlag, 2007
[3] MCS Electronic, www.mcselec.com

Lernen Sie die ganze Vielfalt vom Franzis Buch- und Softwareverlag kennen