cwiczenie 4.pdf

(292 KB) Pobierz
54838472 UNPDF
Hit roku 2000
BASCOM Co l l l lege
Ćwiczenie 4
Nawijarka cewek,
czyli napędy silników krokowych
W tym artykule chciałbym pokazać Wam, jak
posiadając tylko płytkę testową AVT−2500,
procesor '2051 i kilka drobnych elementów
możemy rozwiązać niejednokrotnie skompli−
kowane problemy przygotować sobie po−
trzebne narzędzia.
Chciałbym podać Wam pierwszy, ale nie
ostatni przykład rozwiązywania za pomocą
naszej płytki i zaprogramowanego procesora
problemów mechanicznych, które zwykle
sprawiają nam najwięcej kłopotów. Nawija−
nie cewek, czy może być coś bardziej okrop−
nego, szczególnie jeżeli mamy do wykonania
kilka sztuk tych powszechnie nie lubianych
przez elektroników elementów? Pokażę
Wam zatem, jak nawet tę okropną czynność
możemy zautomatyzować i wykonać prostą
nawijarkę do cewek.
Celowo piszę: "nawijarka do cewek", a nie
"nawijarka transformatorów", ponieważ wy−
konane, a właściwie zaprogramowane prze−
ze mnie urządzenie nie bardzo nadaje się do
nawijania cięższych lub wykonywanych
grubszym drutem cewek. Powód jest prosty:
stosunkowo mała moc silnika krokowego.
Zadanie było dość proste: napisać program
wprawiający w ruch silnik krokowy, a na−
stępnie uzupełnić go o możliwość programo−
wania liczby obrotów, jaką silnik ma jednora−
zowo wykonać. Mechanika jest zupełnie ba−
nalna: cewkę o niewielkich rozmiarach moż−
na osadzić "na wcisk" na wale silnika, w ra−
zie potrzeby zwiększając jego średnicę za po−
mocą odpowiedniej liczby zwojów taśmy
izolacyjnej. Z układu prowadzącego nawija−
ny przewód na razie zrezygnowałem, pomi−
mo że jego wykonanie byłoby dość proste.
Przy odrobinie wprawy można nawijany
przewód trzymać po prostu w palcach.
Temat silników krokowych był już przeze
mnie poruszany wielokrotnie i mam nadzie−
ję, że wszyscy Czytelnicy pamiętają podsta−
wowe zasady posługiwania się tymi elemen−
tami. Do naszej konstrukcji wykorzystamy
typowy silnik krokowy, najczęściej pocho−
dzący z demontażu przestarzałych stacji dys−
ków 5". Musi to być silnik czterofazowy
(posiadający cztery niezależne cewki). Za−
stosowanie silnika dwufazowego, wymaga−
jącego odwracania kierunku przepływu
prądu w cewkach w przypadku współpra−
cy z naszą płytką testową nie jest możliwe.
Montujemy układ zgodnie z rysunkiem
1 , na którym pokazano tylko połączenia prze−
wodowe, które musimy wykonać na płytce
testowej (możemy także wzorować się na fo−
tografii przedstawiającej naszą nawijarkę)
i bierzemy się za pisanie programu. Z zasady
działania silnika krokowego wynika, że aby
wprawić go w ruch, musimy cyklicznie włą−
czać zasilanie kolejnych jego cewek.
Wynika z tego, że na wyjściach P3.0, P3.1,
P3.2 i P3.3 procesora, do których dołączone
Rys. 1
28
Elektronika dla Wszystkich
54838472.019.png 54838472.020.png 54838472.021.png 54838472.022.png 54838472.001.png 54838472.002.png 54838472.003.png 54838472.004.png
 
BASCOM
są drivery mocy zasilające cewki silnika, mu−
si kolejno pojawiać się stan wysoki. Przerwa
pomiędzy kolejnymi zmianami stanów decy−
duje o prędkości obrotowej silnika. Przerwa
ta nie może być zbyt krótka, ponieważ silnik
krokowy ma ściśle określoną maksymalną
prędkość obrotową, powyżej której silnik
raptownie traci moc, a wreszcie się zatrzy−
muje. Nie ma natomiast jakichkolwiek ogra−
niczeń "w dół" − silnik krokowy, w przeci−
wieństwie do silników DC, może obracać się
dowolnie wolno.
Napiszmy zatem podprogram powodują−
cy obrót wału silnika o cztery kroki, czyli je−
den cykl:
nie ma ograniczeń co do prędkości mini−
malnej. Zmienna X decyduje właśnie o tej
prędkości i w przypadku nawijarki powinna
być dobrana tak, aby silnik obracał się moż−
liwie szybko. W przypadku silnika, którego
używałem podczas prób wartość X wynio−
sła 10, czyli czas przerwy pomiędzy kolej−
nymi krokami wynosił 0,01 sekundy. Są−
dzę, że taka sama wartość X będzie odpo−
wiednia dla większości typowych silników
krokowych, zastosowanych w Waszych
konstrukcjach, jednak najlepiej ustalić tę
wartość doświadczalnie.
No dobrze, wiemy już jak obrócić wał sil−
nika o cztery kroki, ale w nawijarce będzie−
my raczej liczyć pełne obroty wału silnika.
I znowu pojawia się problem, który rozwią−
zać możemy jedynie drogą empiryczną.
Większość, ale tylko większość silników od
stacji dysków, z którymi miałem do czynie−
nia wykonywała sto kroków na jeden pełny
obrót wału napędowego. A zatem, w celu
wykonania pełnego obrotu przymocowanej
do wału napędowego cewki, musimy pod−
program FOURSTEPS powtórzyć 25 razy.
Jednak i to musicie sprawdzić doświadczal−
nie, ponieważ spotykałem się już z silnikami
o 90 i 120 krokach na obrót.
A zatem, wykonanie kolejnego podpro−
gramu:
komentować. Jest to Wasza praca domowa:
przeanalizujcie ten program, wypróbujcie go
i postarajcie się znaleźć inne jeszcze zastoso−
wania dla silników krokowych sterowanych
z naszej płytki testowej.
'Nawijarka do cewek
'$sim
Config Lcd = 16 * 1a
Cursor Off
Declare Sub Mainprogram
Declare Sub Foursteps
Declare Sub Ddelay
Dim R As Word
Dim 4Steps As Byte
Dim Rotations As Word
Dim X As Byte
S1 Alias P3.4
S2 Alias P3.5
S3 Alias P3.7
Rotations = 100
Steps = 25
Reset P3.0 : Reset P3.1 : Reset P3.2 : Reset P3.3
Sub Foursteps
Set P3.0 : Reset P3.1 : Reset P3.2 : Reset P3.3
Call Ddelay
Reset P3.0 : Set P3.1 : Reset P3.2 : Reset P3.3
Call Ddelay
Reset P3.0 : Reset P3.1 : Set P3.2 : Reset P3.3
Call Ddelay
Reset P3.0 : Reset P3.1 : Reset P3.2 : Set P3.3
Call Ddelay
End Sub
Sub Mainprogram
Cls
Lcd "Turns: " ; Rotations
Do
Debounce S1 , 0 , Decrturns ,
Sub
Debounce S2 , 0 , Incrturns ,
Sub
Debounce S3 , 0 , Go_on , Sub
Loop
End Sub
Decrturns:
Decr Rotations
Każdorazowe wywołanie tego podprogra−
mu powodować będzie wykonanie przez sil−
nik czterech kroków, w czasie zależnym od
opóźnienia wnoszonego przez podprogram
DDELAY. Takie rozwiązanie ogranicza nie−
co precyzję sterowania silnikiem, ale w przy−
padku nawijarki, którą mamy zbudować, nie
ma to znaczenia. Pamiętajmy jednak, że sil−
nikiem krokowym możemy w prosty sposób
sterować z precyzją do połowy kroku. Jak?
No to popatrzcie:
If Rotations = 0 Then
Rotations = 1
End If
Locate 1 , 8
Lcd " "
Locate 1 , 8
Lcd Rotations
Waitms 50
Return
For R = 1 To Rotations ' z m ienna
ROTATIONS określa liczbę obrotów silnika,
które chcemy wykonać
For X = 1 To 4Steps ' z m ienna
4STEPS określa liczbę "poczwórnych", kroków
potrzebnych do 'obrócenia wału silnika o
360 stopni
Incrturns:
Incr Rotations
If Rotations = 65536 Then
Rotations = 65535
End If
Set P3.0 : Reset P3.1 : Reset P3.2 : Reset P3.3
'prąd płynie tylko przez
Call Foursteps
Next X
Locate 1 , 8
Lcd " "
Locate 1 , 8
Lcd Rotations
Waitms 50
Return
Next R
pierwszą cewkę
Call Ddelay
Set P3.0 : Set P3.1 : Reset P3.2 : Reset P3.3
'prąd płynie przez cewkę 1
i 2, wał silnika zatrzymał 'się w środkowym
położeniu, czyli wykonał pół kroku
Call Ddelay
Reset P3.0 : Set P3.1 : Reset P3.2 : Reset P3.3
' dokończenie kroku
spowoduje wykonanie określonej zmienną
ROTATIONS liczby obrotów silnika, czyli
nawinięcie takiej samej liczby zwojów na na−
szej cewce.
I na tym moglibyśmy już właściwie za−
kończyć pracę. Posklejać te wszystkie pod−
programy razem, zadeklarować zmienne
i podprogramy i zamiast zmiennej ROTA−
TIONS wstawić stałą, określającą liczbę
zwojów naszej cewki. Tak też postąpimy, je−
żeli mamy do wykonania tylko kilka iden−
tycznych cewek i nie zamierzamy korzystać
z nawijarki w przyszłości. Jeżeli jednak ma−
my zamiar nawijać wiele różnych cewek
o rozmaitej liczbie zwojów, to warto jeszcze
trochę popracować i napisać program, który
umożliwi programowe wprowadzanie liczby
zwojów i obsługuje wyświetlacz LCD, na
którym prezentowane są aktualnie wprowa−
dzone wartości a następnie postępy w pracy.
Napisałem taki programik i przetestowałem
go na naszej płytce. Jego listing zamieszczo−
ny jest poniżej, ale celowo nie będziemy go
Go_on:
Cls
Lcd "Waiting..."
Wait 3
Cls
Lcd "Working..."
For R = 1 To Rotations
For X = 1 To 4Steps
Call Foursteps
Next X
Locate 2 , 4
Lcd R
Next R
Reset P3.0 : Reset P3.1 : Reset P3.2 : Reset P3.3
Cls
Call Mainprogram
Return
Call Ddelay
Zostawmy jednak te dygresje i wracajmy
do naszej nawijarki. Kolejnym podprogra−
mem, który musimy napisać, jest realizacja
opóźnienia pomiędzy kolejnymi krokami:
Sub Foursteps
Set P3.0 : Reset P3.1 : Reset P3.2 : Reset P3.3
Call Ddelay
Reset P3.0 : Set P3.1 : Reset P3.2 : Reset P3.3
Call Ddelay
Reset P3.0 : Reset P3.1 : Set P3.2 : Reset P3.3
Call Ddelay
Reset P3.0 : Reset P3.1 : Reset P3.2 : Set P3.3
Call Ddelay
End Sub
Sub Ddelay
Waitms X '10 lub inna wartość, patrz tekst
dalej
End sub
Jak już wspomniałem, dla silnika kroko−
wego istnieje ściśle określona wartość ma−
ksymalnej prędkości obrotowej, natomiast
Sub Ddelay
Waitms 10
End Sub
Elektronika dla Wszystkich
29
54838472.005.png 54838472.006.png
BASCOM
Chciałbym nawet podsunąć Wam parę po−
mysłów, a właściwie tematów do przemyślenia.
Wróćmy jeszcze do naszej nawijarki, która jest
urządzeniem bardzo prostym i nie posiadającym
możliwości automatycznego prowadzenia nawi−
janego przewodu. A może by tak dodać do niej
drugi silnik krokowy, na którego wale zamoco−
wana by była zwyczajna śruba, M5 lub M6, ja−
kakolwiek, byle można by było łatwo połączyć
ją z wałem za pomocą kawałka rurki. Ten drugi
silnik musiałby obracać się synchronicznie
z pierwszym lub nieco wolniej, lub szybciej,
w zależności od średnicy nawijanego drutu,
zmieniając po nawinięciu każdej warstwy kieru−
nek obrotów. Gwint śruby mógłby służyć jako
prowadnica przewodu i w ten sposób otrzymali−
byśmy całkowicie zautomatyzowaną nawijarkę!
Pójdźmy dalej: wyobraźmy sobie urządze−
nie, którego szkic (szkic, a nie rysunek tech−
niczny!) został pokazany na rysunku 2 . Dwa
silniki krokowe z nasadzonymi na ich wałach
śrubami. Pierwszy silnik zamocowany jest do
podstawy, a drugi umieszczony został przesuw−
nie, na wózku lub jakichś szynach... Śruba,
a właściwie długi nagwintowany pręt (do naby−
cia w każdym sklepie ze śrubami i artykułami
budowlanymi), zamocowana do wału drugiego
silnika przesuwa jakiś element, do którego
przymocowany jest podnoszony i opuszczany
za pomocą elektromagnesu pisak wodoodpor−
ny. Amoże nie pisak, tylko mały silniczek z mi−
niaturowym frezem dentystycznym ...?
Rys. 2
ny do sterowania ploterem. Problem jest je−
dynie z "przetłumaczeniem" przez procesor
kodu HPGL i odpowiednim wysterowaniu
silników plotera. No cóż, jest to temat dla
BARDZO ambitnych programistów!
Jednak ci bardzo ambitni mogą natrafić na
poważny problem: braku wystarczającej ilości
nóżek w małych procesorach 'X051. Dwa sil−
niki krokowe to 8 pinów, zostaje tylko siedem.
Wyświetlacz alfanumeryczny to dalsze 6 pi−
nów i już pozostała nam tylko jedna wolna
nóżka! W przypadku budowy plotera, frezarki
czy też innego urządzenia sterowanego z kom−
putera nie ma to większego znaczenia, bo i tak
nie będziemy w nich raczej wykorzystywać
wyświetlacza. Ale w innych projektach te 15
aktywnych pinów może być problemem. Po−
myślimy nad jakimś rozwiązaniem na potrze−
by BASCOM College, a na razie mogę polecić
Wam prosty, opracowany przeze mnie układ,
opublikowany w numerze 4/00 Elektroniki
Praktycznej (AVT−860). Jest to sterownik
dwóch silników krokowych, cztero− lub dwu−
fazowych, lub czterech silników prądu stałego
średniej mocy. Sterownik ten dołączany jest do
procesora za pomocą magistrali I2C, która bę−
dzie tematem jednej z następnych lekcji.
Zbigniew Raabe
e−mail: zbigniew.raabe@edw.com.pl
Konsultacje: Sławomir Surowiński
e−mai: slawomir.surowinski@edw.com.pl
Chyba już wiecie, do czego zmierzam:
wykorzystując dwa silniki krokowe i garść
elementów mechanicznych moglibyśmy zbu−
dować ploter, który mógłby rysować ścieżki
bezpośrednio na laminacie albo nawet usu−
wać zbędny laminat za pomocą frezu. Nicze−
go nowego nie wymyśliłem, takie urządzenia
są od dawna produkowane i umożliwiają wy−
konanie prototypowej płytki obwodu druko−
wanego w ciągu paru minut, bez konieczno−
ści taplania się w chlorku czy innych pa−
skudztwach. Tylko że cena tych urządzeń ...
no, lepiej zmieńmy temat.
Wykonanie w amatorskich warunkach
frezarki do płytek jest całkowicie możliwe.
Prawie każdy program inżynierski, w tym
także EASY i AUTOTRAX, potrafią wyge−
nerować kod w formacie HPGL przeznaczo−
REKLAMA · REKLAMA · REKLAMA · REKLAMA · REKLAMA · REKLAMA · REKLAMA
ZWROTNICE I FILTRY GŁOŚNIKOWE FIRMY JANBO
Z OFERTY AVT
KOD TYP
CZĘSTOTLIIWOŚCII
PODZIIAŁU ((Hz))
MOC
((VA))
IIMPEDANCJE
OBCIIĄŻEŃ
((OHM))
UWAGII
CENA
NETTO
ZWROTN01 B−2
5000
80
2 x 8
Dwudrożna 12/6 dB/okt.
11.89 zł
ZWROTN02 B−2
5000
80
2 x 8
Dwudrożna 12/6 dB/okt.
11.89 zł
ZWROTN03 BOT−2
1800
140
2 x 8 lub 2 x 4
Dwudrożna, polecana przy mocnym głośniku wysokotonowym
31.97 zł
ZWROTN04 P−2−18
2700 lub 4200
220
2 x 8 lub 2 x 4
Dwudrożna, profesjonalna − 18 dB/okt.
54.10 zł
ZWROTN05 SŁ−OT−8
800 / 6500
110
3 x 8
Trójdrożna, odpowiednik fabrycznych zwrotnic typu ALTUS
25.41 zł
ZWROTN06 SŁ−OT−U
850 / 6600
110
3 x 8 lub 3 x 4
Trójdrożna, ulepszony ALTUS
31.97 zł
ZWROTN07 BOTES−8
520 / 5400
110
3 x 8
Trójdrożna, z korekcją fizjologiczną − 4 dB
47.54 zł
ZWROTN08 J−3P/2
1160 / 6000
160
3 x 8 lub 3 x 4
Trójdrożna, do głośników TONSIL − cewka powietrzna
41.80 zł
ZWROTN09 A−BW226
220 / 2350
210
3 x 8 lub 3 x 4
Trójdrożna, do głośników TESLA ARN 226
59.84 zł
ZWROTN10 J−SB−FE
125
120
8 + 8 lub 4 + 4
Odgałęźnikowa, do zestawu superbasowego + satelity
63.93 zł
ZWROTN11 J−3AN
700 / 4600
160
3 x 8 lub 3 x 4
Trójdrożna, z korektorem impedancji ( GDN i GDM )
55.74 zł
ZWROTN12 X−3
400 / 5000
300
3 x 8 lub 3 x 4
Trójdrożna, do zestawów estradowych
78.69 zł
ZWROTN13 Z−F130
130
120
4
Samochodowy fitr basowy − jeden kanał w obudowie
38.52 zł
FILTR01
F−8
125 lub 400
300
8
Samochodowy filtr basowy do dodatkowego subwoofer'a
40.98 zł
FILTR02
F−4
85,130 lub 400
300
4
Samochodowy filtr basowy do dodatkowego subwoofer'a
40.98 zł
FILTR03
X−1H−PI
5000
160
8 lub 4
Filtr górnoprzepustowy do zestawów z głośnikami PIEZO
13.11 zł
Ceny netto bez 22% VAT. Prezentowane artykuły dostępne są w sprzedaży wysyłkowej i sklepach firmowych AVT,
bliższe informacje na stronach z ofertą.
30
Elektronika dla Wszystkich
54838472.007.png 54838472.008.png 54838472.009.png 54838472.010.png 54838472.011.png 54838472.012.png 54838472.013.png 54838472.014.png 54838472.015.png 54838472.016.png 54838472.017.png 54838472.018.png
Zgłoś jeśli naruszono regulamin