Sprawozdanie - mikrokontrolery i mikroprocesory

Nasza ocena:

3
Pobrań: 21
Wyświetleń: 1176
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Sprawozdanie - mikrokontrolery i mikroprocesory - strona 1

Fragment notatki:

SPRAWOZDANIE Z MIKROKONTROLERÓW I MIKROPROCESORÓW
TEMAT: ZESTAW EDUKACYJNY BASIC STAMP 2 - STEROWANIE SILNIKIEM KROKOWYM
WPROWADZENIE
Silnik krokowy wymaga specyficznego sterowania sygnałami prądowymi w celu uzyskania odpowiedniej komutacji pola magnetycznego. Obroty silnika są związane bezpośrednio z podawanymi impulsami, prędkość obrotowa zależy od częstotliwości impulsów, a kierunek od kolejności sekwencji impulsów podawanych na fazy silnika.
Najpowszechniejsze rodzaje sterowania to:
- falowe
- pełnokrokowe
- półkrokowe
- mikrokrokowe
W sterowaniu falowym w jednym momencie zasilana jest jedna faza. Po czterech krokach cała faza się powtarza. W sterowaniu dwufazowym w każdej chwili czasu są zasilane dwie fazy.
ZADANIE DO WYKONANIA
Należy napisać i uruchomić program sterowania silnikiem krokowym. Początkowym zadaniem jest podłączenie diod LED i zaobserwowanie działania wszystkich algorytmów. Następnie należy rozszerzyć program o komunikacje z terminalem poprzez łącze szeregowe RS232. Kolejnym etapem jest napisanie programu, który spowoduje obrót wału silnika o zadany kąt.
WYKONANIE
Podłączamy wyświetlacz silnik krokowy do zasilacza i do płytki a następnie wpisujemy w programie w komputerze odpowiedni kod programu.
Kod programu:
`{$STAMP BS2}
`{$PBASIC 2.5}
i VAR Word `Definiujemy zmienną
tmp VAR Word
krok VAR Word
DIRA = $f `Ustawiamy wyjście sygnału
DEBUGIN SDEC tmp `Wczytujemy liczbę ze znakiem
IF tmp >> 15 THEN `Jeżeli liczba jest ujemna to jej pierwszy bit
DEBUG “Ujemna” `jest równy 1
tmp = - tmp `Obliczamy wartość liczby ujemnej
tmp = tmp + $0001
krok = ((50 * tmp)) / 360) `konwersujemy kąt na ilość kroków
FOR i = 1 TO krok `obrót silnika w lewo o ujemny kąt
OUTA = $08
PAUSE 10
OUTA = $04
PAUSE 10
OUTA = $02
PAUSE 10
OUTA = $01
PAUSE 10
NEXT
ELSE `obrót dla kąta dodatniego
DEBUG “Dodatnia”
krok = ((50 * tmp) / 360) ` konwersujemy kąt na ilość kroków
FOR i = 1 TO krok ` obrót silnika w prawo o ujemny kąt
OUTA = $01
PAUSE 10
OUTA = $02
PAUSE 10
OUTA = $04
PAUSE 10
OUTA = $08
PAUSE 10
NEXT
ENDIF `koniec warunku i programu
... zobacz całą notatkę



Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz