You are on page 1of 3

Hit roku 2000

BASCOM College
Ćwiczenie 4
Nawijarka cewek,
czyli napędy silników krokowych

W tym artykule chciałbym pokazać Wam, jak Temat silników krokowych był już przeze Montujemy układ zgodnie z rysunkiem
posiadając tylko płytkę testową AVT−2500, mnie poruszany wielokrotnie i mam nadzie− 1, na którym pokazano tylko połączenia prze−
procesor '2051 i kilka drobnych elementów ję, że wszyscy Czytelnicy pamiętają podsta− wodowe, które musimy wykonać na płytce
możemy rozwiązać niejednokrotnie skompli− wowe zasady posługiwania się tymi elemen− testowej (możemy także wzorować się na fo−
kowane problemy przygotować sobie po− tami. Do naszej konstrukcji wykorzystamy tografii przedstawiającej naszą nawijarkę)
trzebne narzędzia. typowy silnik krokowy, najczęściej pocho− i bierzemy się za pisanie programu. Z zasady
Chciałbym podać Wam pierwszy, ale nie dzący z demontażu przestarzałych stacji dys− działania silnika krokowego wynika, że aby
ostatni przykład rozwiązywania za pomocą ków 5". Musi to być silnik czterofazowy wprawić go w ruch, musimy cyklicznie włą−
naszej płytki i zaprogramowanego procesora (posiadający cztery niezależne cewki). Za− czać zasilanie kolejnych jego cewek.
problemów mechanicznych, które zwykle stosowanie silnika dwufazowego, wymaga− Wynika z tego, że na wyjściach P3.0, P3.1,
sprawiają nam najwięcej kłopotów. Nawija− jącego odwracania kierunku przepływu P3.2 i P3.3 procesora, do których dołączone
nie cewek, czy może być coś bardziej okrop− prądu w cewkach w przypadku współpra−
nego, szczególnie jeżeli mamy do wykonania cy z naszą płytką testową nie jest możliwe. Rys. 1
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.

28 Elektronika dla Wszystkich


BASCOM
są drivery mocy zasilające cewki silnika, mu− nie ma ograniczeń co do prędkości mini− komentować. Jest to Wasza praca domowa:
si kolejno pojawiać się stan wysoki. Przerwa malnej. Zmienna X decyduje właśnie o tej przeanalizujcie ten program, wypróbujcie go
pomiędzy kolejnymi zmianami stanów decy− prędkości i w przypadku nawijarki powinna i postarajcie się znaleźć inne jeszcze zastoso−
duje o prędkości obrotowej silnika. Przerwa być dobrana tak, aby silnik obracał się moż− wania dla silników krokowych sterowanych
ta nie może być zbyt krótka, ponieważ silnik liwie szybko. W przypadku silnika, którego z naszej płytki testowej.
krokowy ma ściśle określoną maksymalną używałem podczas prób wartość X wynio−
'Nawijarka do cewek
prędkość obrotową, powyżej której silnik sła 10, czyli czas przerwy pomiędzy kolej− '$sim
raptownie traci moc, a wreszcie się zatrzy− nymi krokami wynosił 0,01 sekundy. Są− Config Lcd = 16 * 1a
Cursor Off
muje. Nie ma natomiast jakichkolwiek ogra− dzę, że taka sama wartość X będzie odpo− Declare Sub Mainprogram
niczeń "w dół" − silnik krokowy, w przeci− wiednia dla większości typowych silników Declare Sub Foursteps
wieństwie do silników DC, może obracać się krokowych, zastosowanych w Waszych Declare Sub Ddelay
Dim R As Word
dowolnie wolno. konstrukcjach, jednak najlepiej ustalić tę Dim 4Steps As Byte
Napiszmy zatem podprogram powodują− wartość doświadczalnie. Dim Rotations As Word
Dim X As Byte
cy obrót wału silnika o cztery kroki, czyli je− No dobrze, wiemy już jak obrócić wał sil− S1 Alias P3.4
den cykl: nika o cztery kroki, ale w nawijarce będzie− S2 Alias P3.5
S3 Alias P3.7
my raczej liczyć pełne obroty wału silnika. Rotations = 100
Sub Foursteps I znowu pojawia się problem, który rozwią− Steps = 25
Set P3.0 : Reset P3.1 : Reset P3.2 : Reset P3.3 Reset P3.0 : Reset P3.1 : Reset P3.2 : Reset P3.3
zać możemy jedynie drogą empiryczną.
Call Ddelay Większość, ale tylko większość silników od Sub Mainprogram
Reset P3.0 : Set P3.1 : Reset P3.2 : Reset P3.3 stacji dysków, z którymi miałem do czynie− Cls
Lcd "Turns: " ; Rotations
Call Ddelay nia wykonywała sto kroków na jeden pełny Do
Reset P3.0 : Reset P3.1 : Set P3.2 : Reset P3.3 obrót wału napędowego. A zatem, w celu Debounce S1 , 0 , Decrturns ,
Sub
Call Ddelay wykonania pełnego obrotu przymocowanej Debounce S2 , 0 , Incrturns ,
Reset P3.0 : Reset P3.1 : Reset P3.2 : Set P3.3 do wału napędowego cewki, musimy pod− Sub
Debounce S3 , 0 , Go_on , Sub
Call Ddelay program FOURSTEPS powtórzyć 25 razy. Loop
End Sub Jednak i to musicie sprawdzić doświadczal− End Sub
nie, ponieważ spotykałem się już z silnikami Decrturns:
Każdorazowe wywołanie tego podprogra− o 90 i 120 krokach na obrót. Decr Rotations
mu powodować będzie wykonanie przez sil− A zatem, wykonanie kolejnego podpro− If Rotations = 0 Then
Rotations = 1
nik czterech kroków, w czasie zależnym od gramu: End If
opóźnienia wnoszonego przez podprogram Locate 1 , 8
For R = 1 To Rotations 'zmienna Lcd " "
DDELAY. Takie rozwiązanie ogranicza nie− Locate 1 , 8
co precyzję sterowania silnikiem, ale w przy− ROTATIONS określa liczbę obrotów silnika, Lcd Rotations
które chcemy wykonać Waitms 50
padku nawijarki, którą mamy zbudować, nie Return
ma to znaczenia. Pamiętajmy jednak, że sil− For X = 1 To 4Steps 'zmienna
4STEPS określa liczbę "poczwórnych", kroków Incrturns:
nikiem krokowym możemy w prosty sposób Incr Rotations
sterować z precyzją do połowy kroku. Jak? potrzebnych do 'obrócenia wału silnika o If Rotations = 65536 Then
360 stopni Rotations = 65535
No to popatrzcie: End If
Call Foursteps Locate 1 , 8
Set P3.0 : Reset P3.1 : Reset P3.2 : Reset P3.3 Next X Lcd " "
Locate 1 , 8
'prąd płynie tylko przez Next R Lcd Rotations
pierwszą cewkę Waitms 50
Return
Call Ddelay spowoduje wykonanie określonej zmienną
Set P3.0 : Set P3.1 : Reset P3.2 : Reset P3.3 ROTATIONS liczby obrotów silnika, czyli Go_on:
Cls
'prąd płynie przez cewkę 1 nawinięcie takiej samej liczby zwojów na na− Lcd "Waiting..."
i 2, wał silnika zatrzymał 'się w środkowym szej cewce. Wait 3
Cls
położeniu, czyli wykonał pół kroku I na tym moglibyśmy już właściwie za− Lcd "Working..."
Call Ddelay kończyć pracę. Posklejać te wszystkie pod− For R = 1 To Rotations
Reset P3.0 : Set P3.1 : Reset P3.2 : Reset P3.3 programy razem, zadeklarować zmienne For X = 1 To 4Steps
Call Foursteps
' dokończenie kroku i podprogramy i zamiast zmiennej ROTA− Next X
Call Ddelay TIONS wstawić stałą, określającą liczbę Locate 2 , 4
Lcd R
zwojów naszej cewki. Tak też postąpimy, je− Next R
Zostawmy jednak te dygresje i wracajmy żeli mamy do wykonania tylko kilka iden− Reset P3.0 : Reset P3.1 : Reset P3.2 : Reset P3.3
Cls
do naszej nawijarki. Kolejnym podprogra− tycznych cewek i nie zamierzamy korzystać Call Mainprogram
mem, który musimy napisać, jest realizacja z nawijarki w przyszłości. Jeżeli jednak ma− Return
opóźnienia pomiędzy kolejnymi krokami: my zamiar nawijać wiele różnych cewek Sub Foursteps
o rozmaitej liczbie zwojów, to warto jeszcze Set P3.0 : Reset P3.1 : Reset P3.2 : Reset P3.3
Sub Ddelay trochę popracować i napisać program, który Call Ddelay
Reset P3.0 : Set P3.1 : Reset P3.2 : Reset P3.3
Waitms X '10 lub inna wartość, patrz tekst umożliwi programowe wprowadzanie liczby Call Ddelay
dalej zwojów i obsługuje wyświetlacz LCD, na Reset P3.0 : Reset P3.1 : Set P3.2 : Reset P3.3
Call Ddelay
End sub którym prezentowane są aktualnie wprowa− Reset P3.0 : Reset P3.1 : Reset P3.2 : Set P3.3
dzone wartości a następnie postępy w pracy. Call Ddelay
End Sub
Jak już wspomniałem, dla silnika kroko− Napisałem taki programik i przetestowałem
wego istnieje ściśle określona wartość ma− go na naszej płytce. Jego listing zamieszczo− Sub Ddelay
Waitms 10
ksymalnej prędkości obrotowej, natomiast ny jest poniżej, ale celowo nie będziemy go End Sub

Elektronika dla Wszystkich 29


BASCOM
Chciałbym nawet podsunąć Wam parę po− ny do sterowania ploterem. Problem jest je−
mysłów, a właściwie tematów do przemyślenia. dynie z "przetłumaczeniem" przez procesor
Wróćmy jeszcze do naszej nawijarki, która jest kodu HPGL i odpowiednim wysterowaniu
urządzeniem bardzo prostym i nie posiadającym silników plotera. No cóż, jest to temat dla
możliwości automatycznego prowadzenia nawi− BARDZO ambitnych programistów!
janego przewodu. A może by tak dodać do niej Jednak ci bardzo ambitni mogą natrafić na
drugi silnik krokowy, na którego wale zamoco− poważny problem: braku wystarczającej ilości
wana by była zwyczajna śruba, M5 lub M6, ja− nóżek w małych procesorach 'X051. Dwa sil−
kakolwiek, byle można by było łatwo połączyć niki krokowe to 8 pinów, zostaje tylko siedem.
ją z wałem za pomocą kawałka rurki. Ten drugi Wyświetlacz alfanumeryczny to dalsze 6 pi−
silnik musiałby obracać się synchronicznie nów i już pozostała nam tylko jedna wolna
z pierwszym lub nieco wolniej, lub szybciej, nóżka! W przypadku budowy plotera, frezarki
w zależności od średnicy nawijanego drutu, Rys. 2 czy też innego urządzenia sterowanego z kom−
zmieniając po nawinięciu każdej warstwy kieru− putera nie ma to większego znaczenia, bo i tak
nek obrotów. Gwint śruby mógłby służyć jako Chyba już wiecie, do czego zmierzam: nie będziemy w nich raczej wykorzystywać
prowadnica przewodu i w ten sposób otrzymali− wykorzystując dwa silniki krokowe i garść wyświetlacza. Ale w innych projektach te 15
byśmy całkowicie zautomatyzowaną nawijarkę! elementów mechanicznych moglibyśmy zbu− aktywnych pinów może być problemem. Po−
Pójdźmy dalej: wyobraźmy sobie urządze− dować ploter, który mógłby rysować ścieżki myślimy nad jakimś rozwiązaniem na potrze−
nie, którego szkic (szkic, a nie rysunek tech− bezpośrednio na laminacie albo nawet usu− by BASCOM College, a na razie mogę polecić
niczny!) został pokazany na rysunku 2. Dwa wać zbędny laminat za pomocą frezu. Nicze− Wam prosty, opracowany przeze mnie układ,
silniki krokowe z nasadzonymi na ich wałach go nowego nie wymyśliłem, takie urządzenia opublikowany w numerze 4/00 Elektroniki
śrubami. Pierwszy silnik zamocowany jest do są od dawna produkowane i umożliwiają wy− Praktycznej (AVT−860). Jest to sterownik
podstawy, a drugi umieszczony został przesuw− konanie prototypowej płytki obwodu druko− dwóch silników krokowych, cztero− lub dwu−
nie, na wózku lub jakichś szynach... Śruba, wanego w ciągu paru minut, bez konieczno− fazowych, lub czterech silników prądu stałego
a właściwie długi nagwintowany pręt (do naby− ści taplania się w chlorku czy innych pa− średniej mocy. Sterownik ten dołączany jest do
cia w każdym sklepie ze śrubami i artykułami skudztwach. Tylko że cena tych urządzeń ... procesora za pomocą magistrali I2C, która bę−
budowlanymi), zamocowana do wału drugiego no, lepiej zmieńmy temat. dzie tematem jednej z następnych lekcji.
silnika przesuwa jakiś element, do którego Wykonanie w amatorskich warunkach
przymocowany jest podnoszony i opuszczany frezarki do płytek jest całkowicie możliwe. Zbigniew Raabe
za pomocą elektromagnesu pisak wodoodpor− Prawie każdy program inżynierski, w tym e−mail: zbigniew.raabe@edw.com.pl
ny. A może nie pisak, tylko mały silniczek z mi− także EASY i AUTOTRAX, potrafią wyge− Konsultacje: Sławomir Surowiński
niaturowym frezem dentystycznym ...? nerować kod w formacie HPGL przeznaczo− e−mai: slawomir.surowinski@edw.com.pl

REKLAMA · REKLAMA · REKLAMA · REKLAMA · REKLAMA · REKLAMA · REKLAMA


Z OFERTY AVT
ZWROTNICE I FILTRY GŁOŚNIKOWE FIRMY JANBO
IMPEDANCJE
CZĘSTOTLIWOŚCI MO C C EN A
KOD TYP OBCIĄŻEŃ UWAGI
PODZIAŁU (Hz) (VA) NETTO
(OHM)
ZWROTN01 B−2 5000 80 2x8 Dwudrożna 12/6 dB/okt. 11.89 zł
ZWROTN02 B−2 5000 80 2x8 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 3x8 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 3x8 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

You might also like