edw_2003_02_s51.pdf

(333 KB) Pobierz
E2000 Zasilacz Antoniak @.qxd
++
sterowany
komputerowo
2 6 5 5
Do czego to służy?
Zasilaczy na łamach EdW było już wiele –
isłusznie. Jest to bowiem jeden z najbardziej
niezbędnych przyrządów w pracowni elek-
tronika. Zbigniew Raabe powiedział kiedyś
przy opisie takowego, że koncepcji budowy
zasilaczy jest tyle, ilu jest na świecie elektro-
ników. Na różne okazje potrzebne są różne
zasilacze. Poza tym wiem z doświadczenia,
że dobrych zasilaczy nigdy za wiele. Dziś ja
chciałbym zaproponować Czytelnikom bu-
dowę niecodziennego zasilacza sieciowego,
przydatnego zwłaszcza przy pracy nad ukła-
dami mającymi współpracować z kompute-
rem czy też wszelkimi systemami mikropro-
cesorowymi. Gdy pracujemy nad takim ukła-
dem, cały czas używamy komputera – zwy-
kle budowa części sprzętowej jest prosta lub
wręcz banalna, a cały trud polega na napisa-
niu programu dla mikrokontrolera lub PC-ta.
Do zasilania wykorzystujemy jakiś zasilacz,
ale rzadko bywa tak, że jest on pod ręką
i wszelkie manipulacje przy nim są utrudnio-
ne. Zwłaszcza w sytuacji, gdy „pracownia”
elektronika hobbysty to skromny stolik mo-
gący pomieścić komputer, opracowywany
układ, parę narzędzi i ... niewiele więcej. Za-
silacz stoi wtedy gdzieś w rogu lub wetknię-
ty jest w nie zawsze wygodnie położone
gniazdko. Pomyślałem, że byłoby czymś nie-
zwykle wygodnym mieć dostęp do zasilacza
z poziomu komputera PC. Chcemy zaprogra-
mować procka (bez ISP) lub dokonać zmian
wukładzie – jedno kliknięcie i zasilacz jest
wyłączony, możemy bez obaw wyjąć układ
z podstawki. Po dokonaniu zmian klikamy
iukład jest znów zasilany. Chcemy zmienić
napięcie – klikamy na odpowiedni przycisk
i ... no, myślę że wystarczy już tej wyliczan-
ki i Czytelnicy zgodzą się ze mną, jak uży-
teczny może być taki niezwykły zasilacz.
Oprócz możliwości zmiany napięć oferuje on
stałą kontrolę napięcia wyjściowego, które
obrazowane jest na „wyświetlaczu” w głów-
nym oknie programu. Wynik aktualizowany
jest ok. 5 razy na sekundę. Model wyposaży-
łem w niewielki transformator TS6/40 z my-
ślą o zastosowaniu go do zasilania głównie
układów mikroprocesorowych i cyfrowych
nie czerpiących prawie nigdy więcej niż
300...500mA prądu. Nic nie stoi jednak na
przeszkodzie, aby zastosować większy trans-
formator i duży radiator na układzie LM317
– taki zasilacz mogący dostarczyć prądu po-
nad 1A sprosta chyba wszystkim wymaga-
niom jakie napotka w pracowni niejednego
elektronika.
Jak to działa?
Schemat ideowy układu przedstawiony jest
na rysunku 1 . Pomimo dość dużej liczby
elementów sposób funkcjonowania zasilacza
jest w sumie bardzo prosty. Komunikuje się
Rys. 1 Schemat ideowy
Elektronika dla Wszystkich
51
Zasi lacz
210667204.023.png 210667204.024.png 210667204.025.png 210667204.026.png 210667204.001.png 210667204.002.png 210667204.003.png 210667204.004.png 210667204.005.png 210667204.006.png 210667204.007.png 210667204.008.png 210667204.009.png
on z komputerem za pomocą portu szerego-
wego, którym może być dowolny z portów
COM1...COM4 (jest wybierany przy urucho-
mieniu programu w PC-cie). Do konwerto-
wania napięć w jedną stronę wykorzystałem
zwykły wzmacniacz operacyjny TL081. Pra-
cuje on tu w roli komparatora, a do jego zasi-
lania użyte są linie RTS i DTR, na które
w chwili otwarcia portu podawane są prze-
ciwne stany. Konwersję w drugą stronę za-
pewnia prosty bufor z tranzystorem T1.
Działanie całości jest następujące: przez cały
czas (co ok. 200ms) procesor U2 wysyła do
komputera informację o napięciu wyjścio-
wym. Robi to „na ślepo”, nie zastanawiając
się, czy została odebrana, czy nie. Informację
tę uzyskuje za pośrednictwem, ośmielę się
użyć tego słowa, rewelacyjnego układu U3
typu LM331. Pracuje on w typowej aplikacji
przetwornika U/F z wyjątkiem włączenia re-
zystorów R13 i R14 zamiast jednego rezysto-
ra na wejściu. Tworzą one dzielnik przez dwa,
potrzebny ze względu na fakt, że zakres do-
puszczalnych napięć wejściowych tej kostki
wynosi w przybliżeniu 0...Uzas-2V, co przy
Uzas=15V daje wartości 0...13V. To stanow-
czo za mało. Dzięki R13 i R14 możliwe jest
mierzenie napięć z zakresu ok. 0...25V, co jest
wręcz idealne w naszym zastosowaniu. War-
tości tych rezystorów zostały zgodnie z prostą
zasadą Thevenina dobrane tak, aby układ U3
„widział” rezystor o zalecanej wartości mniej
więcej równej 100kΩ. Choć w modelu uży-
łem zamiennika kostki LM331 o nieco gor-
szych parametrach – układu XR4151 – uzy-
skane wyniki i tak przeszły moje oczekiwa-
nia, mogę z czystym sumieniem polecić ten
układ wszystkim jako alternatywne rozwiąza-
nie przetwornika analogowo-cyfrowego. Po
szczegóły odsyłam do EdW12/2000 i 1/2001
oraz na stronę internetową EdW – są tam no-
ty aplikacyjne wymienionych układów.
Współczynnik przetwarzania wynosi
1kHz/V, a więc napięcie wyjściowe zasilacza
w woltach jest dwukrotnie (dzielnik) większe
od częstotliwości przebiegu na nóżce 3 U3
wyrażonej w kilohercach. Jest to wyjście ty-
pu otwarty kolektor, co załatwiło problem
z dopasowaniem napięć ze strefy 15V do
5V . Procesor (za pomocą pozostałego Time-
ra0 – Timer1 wytwarza baudrate dla portu)
mierzy czas trwania 50 okresów tego prze-
biegu i wysyła wynik (najpierw starszy a po-
tem młodszy bajt Timera0) przez port szere-
gowy. Następnie czeka 200ms, znowu mie-
rzy i wysyła - i tak w kółko. Nie interesuje go
przy tym, czy dane zostały odebrane – opisa-
na transmisja ma miejsce stale, nawet bez
względu na to, czy port jest otwarty, czy nie.
Komputer może te liczby odebrać i zinterpre-
tować lub zignorować – wedle „uznania”. Je-
śli program Zasilacz.exe jest uruchomiony
i port jest otwarty, przychodząca informacja
jest przez komputer przetwarzana z uwzglę-
dnieniem dzielnika przez dwa, liczby mie-
rzonych okresów oraz długości trwania okre-
su zegara w procesorze (ok. 1,085µs). Wynik
trafia na „wyświetlacz”. Tak wygląda komu-
nikacja w kierunku procesor - komputer.
W drugą stronę jest ciekawiej, bo przesy-
łanych jest kilka rodzajów informacji. Rysu-
nek 2 zawiera przykładowy zrzut z ekranu
głównego okna programu Zasilacz.exe.
jeśli pierwszą instrukcją programu w proce-
sorze byłoby podanie na linię P1.3...P1.6 sta-
nów niskich, to i tak przez krótki czas byłyby
tam stany wysokie, a to spowodowałoby wy-
stąpienie na wyjściu zasilacza przez mniej
więcej ten czas maksymalnego możliwego do
uzyskania z danym transformatorem napię-
cia. Układ U8 zapobiega wystąpieniu takiego
niekorzystnego zjawiska – tuż po włączeniu
zasilacza na wyjściu pojawia się ok. 1,4V.
Po wciśnięciu przycisku ON zasilacz jest
włączany. Komputer otwiera port, po czym
wysyła liczbę 15 (włącz 1,4V na wyjściu)
oraz liczbę 176 odpowiadającą rozkazowi 11
i argumentowi 0. Ponowne wciśnięcie tego
przycisku wyłączy zasilacz - zaowocuje mia-
nowicie wysłaniem liczby 15, potem 208
(rozkaz 13) i zamknięciem portu. Skąd takie
dziwne liczby? A no z nikąd – ich wartość
jest zupełnie nieistotna, ważne żeby były uni-
kalne. Jeśli procesor odbierze liczbę 176, to
podaje na nóżkę P3.7 stan niski, jeśli 208 –
stan wysoki. A do portu P3.7 ... nic nie jest
podłączone! Jedynie napis REL sugeruje, że
chodzi o jakiś przekaźnik. Dlaczego jednak
nie ma go na schemacie i płytce drukowanej?
Otóż na tym etapie projektowania zasilacza
powstał mały dylemat. Nasz zasilacz trzeba
jakoś włączać iwyłączać, ściślej – dołączać
iodłączać od niego zasilany układ. W najpros-
tszym przypadku można by realizować wyłą-
czanie, podając po prostu na wyjście naj-
mniejsze z możliwych napięć, co zresztą jest
czynione. Zgodzicie się jednak wszyscy, że
uznanie urządzenia, na którym występuje na-
pięcie sporo ponad 1V, za odłączone od zasi-
lacza jest grubą przesadą. Nasuwa się więc
użycie przekaźnika włączonego w obwód
wyjścia zasilacza. Popularne przekaźniki
przeznaczone do pracy przy napięciu sieci
230V nie są dobrym rozwiązaniem, bo czer-
pią zwykle 50...150mA. Najlepszy byłby
przekaźnik małosygnałowy ze względu na
dużą rezystancję cewki, a co za tym idzie –
mały pobór prądu. Jednak przekaźniki takie
cechują się zadziwiającym wręcz zróżnico-
waniem rozkładów wyprowadzeń i ich liczbą.
Poza tym z doświadczenia wiem, że są one
znacznie trudniej dostępne niż ich duzi kole-
dzy, zwłaszcza w niewielkich sklepach elek-
tronicznych w małych miastach. Gdybym
więc zastosował jakiś konkretny typ lub na-
wet dodał w miarę uniwersalne miejsce na
płytce, to i tak istniałoby wiele typów wręcz
idealnie się tu nadających pod względem pa-
rametrów, które trzeba by wlutować „na dru-
tach” lub na oddzielnej płytce. Ostatecznie
uznałem, że na płytce drukowanej zasilacza
nie będzie przekaźnika. Konkretny typ jaki
zastosujecie należy zamontować na niewiel-
kim kawałku płytki uniwersalnej wraz z tran-
zystorem (-ami) sterującym i (koniecznie!)
diodą likwidującą przepięcia. Na płytce są
stosowne punkty do pobrania napięć
5V i 15V oraz punkt REL. Przykładowo
Rys. 2 Główne okno programu
Zasilacz.exe
Obecny jest na nim wspomniany wyświe-
tlacz, 9 przycisków służących do wyboru na-
pięć, przycisk on/off, mały checkbox oraz
oczywiście help i about. Do czego służy ów
checkbox wyjaśnię później, teraz jedynie
przepraszam obrońców ojczyzny - polszczy-
zny, ale taki termin chyba najlepiej oddaje
pełnioną funkcję („miejsce służące zaznacze-
niu pewnej opcji” lub coś podobnego mało
mnie pociąga) – dla równowagi w helpie (ha!
znów angielskie określenie) użyłem niezbyt
trafnego słowa „opcja”. To samo dotyczy
użytego wcześniej określenia baudrate. Wci-
śnięcie jednego z przycisków wyboru napięć
lub włącznika/wyłącznika powoduje wysłanie
przez komputer jednego bajtu, w którym
starsza połówka stanowi rozkaz mówiący
procesorowi co ma zrobić, a młodsza to argu-
ment tego rozkazu. Procesor U2 odbiera ten
bajt w procedurze obsługi przerwania
UART-a i - zależnie od jego wartości - odpo-
wiednio reaguje. Jeśli zmieniamy napięcie
wyjściowe, rozkaz wynosi zero a argument
określa, które napięcie wybieramy i przyjmu-
je wartości od 6 (napięcie numer 9 – regulo-
wane P10) do 14 (napięcie numer 1 regulo-
wane P2). Wysłanie liczby 15 powoduje po-
łączenie nóżki ADJ układu U1 z masą, oczy-
wiście przez jeden z tranzystorów układu U4.
Powoduje to podanie na wyjście zasilacza
najmniejszego możliwego napięcia, z więk-
szością kostek 74LS145 równego ok.
1,4V (1,25V + napięcie kolektor-emiter tran-
zystora). Jak widać, liczby 14...6 są dokład-
nym zanegowaniem liczb 1...9. Jest tak ze
względu na obecność w zasilaczu bramek
zukładu U8. Wielu zapyta, po co zastosowa-
łem tę kostkę, skoro negacja ta jest tu zupeł-
nie niepotrzebna, a nawet gdyby była po-
trzebna, to z dziecinną łatwością można ją
zrealizować programowo? Otóż po włącze-
niu urządzenia do sieci układ U2 jest reseto-
wany, co jak wiadomo, powoduje podanie na
wszystkie porty stanów wysokich. Nawet
52
Elektronika dla Wszystkich
210667204.010.png 210667204.011.png 210667204.012.png
– w modelu zastosowałem tani (2,50PLN)
i prosty przekaźnik JZC pobierający przy no-
minalnym napięciu 12V prąd 30mA. Nie jest
to może element o jakichś rewelacyjnych pa-
rametrach, ale nadaje się tu całkiem nieźle.
Jest zasilany z wyjścia 15V poprzez szerego-
wą diodę LED, co daje na cewce przekaźni-
ka napięcie troszkę ponad 12V. Diodę można
przy okazji wykorzystać w roli kontrolki.
Sterowanie odbywa się za pomocą dwóch
tranzystorów NPN włączonych jeden za dru-
gim w konwencji wspólnego emitera. W ob-
wodzie kolektora drugiego z nich jest przeka-
źnik i dioda. Pierwszy pełni rolę bufora mię-
dzy dwiema strefami napięć (5V – 15V) oraz
inwertera – dzięki niemu przekaźnik jest włą-
czany, gdy na P3.7 panuje stan niski, a nie
wysoki. Dysponując przekaźnikiem na
5V wystarczy tu jeden typowo włączony
tranzystor PNP.
No cóż – omówienie programu rozpoczą-
łem niejako od końca. Nie wspomniałem
oważnym zjawisku mającym miejsce zaraz
po jego uruchomieniu – o skanowaniu wyj-
ścia zasilacza. Skanowanie służy umieszcze-
niu na przyciskach odpowiadających im
wartości napięć. Polega ono na tym, że kom-
puter wybiera kolejne napięcia (1...9) i - po
odczekaniu chwili na ich ustalenie się - od-
czytuje ich wartości, które następnie umie-
szcza na przyciskach. Użytkownik widzi
wtedy małe okienko z paskiem postępu sy-
gnalizującym zaawansowanie skanowania.
Proces może być wkażdej chwili przerwany,
ale nie w połowie kroku. Dzięki skanowaniu
przy starcie programu informacja na przyci-
skach jest zawsze aktualna. Choć trwa ono
ok. 5s, nie jest uciążliwe, gdyż występuje je-
den jedyny raz po uruchomieniu. Jeśli pod-
czas korzystania z zasilacza okno programu
jest chwilowo niepotrzebne, nie należy go
zamykać, tylko zmi-
nimalizować – dwu-
krotne kliknięcie na
ikonkę w Trayu na-
tychmiast je przy-
wraca. Samo skano-
wanie nie jest w ża-
den sposób niebez-
pieczne dla układu
dołączonego do za-
silacza o ile zastosu-
jemy przekaźnik na
jego wyjściu. Jednak
znajdą się pewnie ta-
cy, którzy go nie za-
stosują, zdając się na
własną pamięć, aby
podczas skanowania
nie pozostawiać
żadnych urządzeń
podłączonych do za-
silacza. Ponieważ
pamięć ludzka jest
zawodna, przed roz-
poczęciem tego procesu ukazuje się ostrze-
żenie, mające na celu ustrzec ich przed skut-
kami pomyłki. Przy zastosowaniu przeka-
źnika ostrzeżenie to tylko niepotrzebnie de-
nerwowałoby użytkownika – w takim przy-
padku należy je wyłączyć, zwierając do ma-
sy nóżkę 14 procesora U2 (P1.2). Nie pole-
cam takich praktyk, gdy w układzie przeka-
źnika nie ma. Obecność przekaźnika jest
niemal obowiązkowa.
Na koniec wyjaśnienie funkcji małego
checkboksu znajdującego się po lewej stronie
panelu z przyciskami. Jego zaznaczenie
znacznie ułatwia proces regulacji zasilacza –
sprawia, że po wybraniu któregokolwiek
z napięć wartość poprzednio ustawionego na-
pięcia kopiowana jest na odpowiadającym
mu przycisku. Dzięki temu bez konieczności
ponownego skanowania widać, które napię-
cia są już wyregulowane, a które jeszcze nie.
Podczas normalnej pracy opcja ta powinna
być odznaczona, gdyż jedynie przeszkadza-
łaby, fałszując napisy przy szybkim przełą-
czaniu napięć. Przyczyną jest niezbyt duża
szybkość zmian napięcia na wyjściu U1 po
skokowej zmianie rezystancji pomiędzy koń-
cówką ADJ a masą.
wości należy wybrać potencjometr o ma-
łej wartości w porównaniu ze współpracują-
cym rezystorem (zwiększy to precyzję regu-
lacji), aby tylko suma ich rezystancji gwaran-
towała uzyskanie potrzebnego napięcia. Dla
leniwych w wykazie podaję wyliczone war-
tości dla kilku popularnych napięć ustawio-
nych w modelu.
Uruchomienie sprowadza się do wyregu-
lowania przetwornika U/F za pomocą helitri-
ma P1. W tym celu należy uruchomić pro-
gram Zasilacz.exe – po skanowaniu na przy-
ciskach pojawią się przypadkowe wartości.
Na dowolnym kanale trzeba ustawić napięcie
ok. 20V lub inne będące w okolicy najwięk-
szego napięcia jakie chcemy uzyskać z na-
szego zasilacza (ostatecznie może to być
wręcz dowolne stosunkowo spore napięcie -
liniowość LM331 okaże się i tak wystarcza-
jąco dobra).
Ciąg dalszy na stronie 57.
Wykaz elementów
Rezystory:
R1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
R2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .240
R3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .560
R4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .680
R5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1k
R6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1,5k
R7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2k
R8,R9,R10 . . . . . . . . . . . . . . . .dobrać zależnie od potrzeb
R11,R17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100k
R12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6,81k 1%
R13,R14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220k
R15,R16,R18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22k
R19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12k
P1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .helitrim 5k
P2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47 PR
P3,P4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100 PR
P5,P6,P7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .470 PR
P8,P9,P10 . . . . . . . . . . . .PR (dobrać zależnie od potrzeb)
Kondensatory:
C1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2200 µ F/25V
C2,C3,C13,C16 . . . . . . . . . . . . . . . . . . . . . . . . . . .100nF
C4,C9,C10,C14,C15 . . . . . . . . . . . . . . . . . . . .100 µ F/25V
C5,C6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 µ F MKT
C7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10nF MKT
C8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2,2 µ F/16V
C11,C12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33pF
C17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10 µ F/16V
Półłprzewodniki:
D1...D4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1N4148
M1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .mostek 1,5A
T1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .BC548B
U1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .LM317T
U2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89C2051
U3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .LM331 (‘4151)
U4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74LS145
U5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .TL081
U6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7815
U7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7805
U8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4011
Inne:
X1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11,0592MHz
CON1,CON2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ARK2
CON3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .DB9F
Montaż i uruchomienie
Schemat montażowy znajduje się na rysun-
ku 3 . Sam montaż jest typowy. Kolejność
jest właściwie dowolna, najlepiej rozpocząć
go od zworek i podstawek pod układy scalo-
ne. Zależnie od wartości napięć jakie chcemy
uzyskać, należy wlutować rezystory
R2...R10 i potencjometry P2...P10 o odpo-
wiednich wartościach, zgodnie z prostym
wzorem: Uwy=1,25V*(Q/200R + 1) ;
Rn+Pn>Q>Rn ; n=2,...,10. W miarę możli-
Rys. 3 Schemat montażowy
Komplet podzespołłów z płłytkąą
jest dostęępny w sieci handlowej AVT
jako kit szkolny AVT-2655.
Elektronika dla Wszystkich
53
210667204.013.png 210667204.014.png 210667204.015.png 210667204.016.png 210667204.017.png 210667204.018.png 210667204.019.png 210667204.020.png 210667204.021.png 210667204.022.png
Zgłoś jeśli naruszono regulamin