Spisu treści:
- Kieszonkowe dzieci
- Krok 1: Poznaj nasz system
- Krok 2: Hakowanie silnika
- Krok 3: Ustawienie sterownika
- Krok 4: Sterowanie silnikiem
Wideo: Silnik krokowy 28BYJ-48 5 V i sterownik A4988: 4 kroki
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
Czy kiedykolwiek chciałeś, aby robot obracał się pod precyzyjnym kątem, używając tylko kilku wyjść Arduino lub micro:bit? Wszystko to za tanio? To jest instrukcja dla ciebie! W tej instrukcji zobaczymy, jak napędzać bardzo tani silnik krokowy przy użyciu tylko 2 wyjść naszego sterownika i wymagający tylko zasilania 5V!
Uczyniłem to poinstruowanym po tym, jak trochę zmagałem się z zebraniem informacji, czasami potykając się o dezinformację, i chciałem uratować innych przed przejściem przez ten sam proces.
Ale zanim zaczniesz, dlaczego takie ograniczenie?
- Dlaczego 5V: ponieważ chcę to zintegrować z robotem mobilnym, który będzie działał tylko z baterią litową 3,7, którą mogę wyprowadzić 5V za pomocą wzmacniacza.
- Dlaczego używać A4988, a nie ULN2003, który często jest dostarczany z silnikiem 28BYJ? Ponieważ po pierwsze wymaga 4 wejść. Dlatego używanie A4988 pozwala nam zaoszczędzić 2 z naszych cennych wyjść kontrolera (a jeśli lubisz pracować z micro:bit tak jak ja, to te wyjścia są cenne…) ! Ale jest więcej! Możliwość napędzania silnika po prostu dając kroki jako wysokie impulsy, daje nam możliwość napędzania silnika za pomocą prostego PWM. Ustalając współczynnik wypełnienia na 50%, zmiana częstotliwości PWM zmieni prędkość obrotową silnika. Dlaczego to jest świetne? Bo jeśli chcesz ustawić prędkość mojego silnika, a następnie dalej sterować innymi rzeczami za pomocą mojego Arduino lub micro:bit, możesz po prostu ustawić moje PWM i zapomnieć o tym, co sprawi, że twój kod będzie o wiele bardziej czytelny, a twoje życie tak bardzo łatwiej (na przykład, jeśli chcesz zbudować takiego robota).
Więc zacznijmy !
Kieszonkowe dzieci
Oto, czego potrzebujesz do tej instrukcji:
- 1x silnik krokowy 28BYJ
- 1x sterownik A4988
- 1x płytka stykowa lub płytka prototypowa, kondensator i kilka przewodów
- Micro:bit i rozszerzenie lub Arduino
- Zasilanie 5V (+3,3V jeśli używasz Micro:bit). Do tego użyłem baterii litowej 18650 i osłony baterii.
- 1x multimetr
Krok 1: Poznaj nasz system
Pierwszą rzeczą, którą polecam na początek, byłoby dowiedzieć się więcej o silnikach krokowych i sterowniku A4988. Hej, ale po co nam ten sterownik ? Czy możemy sterować silnikiem krokowym bez sterownika? Odpowiedź brzmi nie. Płyty takie jak Micro:bit i Arduino są dobre w przetwarzaniu informacji, ale nie podają zbyt dużego prądu, a do uruchomienia silnika krokowego potrzebny jest prąd. Aby dowiedzieć się więcej o działaniu zarówno silnika, jak i sterownika, polecam ten punkt odniesienia. Jest syntetyczny, ale zawiera również większość informacji potrzebnych do okablowania.
Ale poczekaj, zanim spróbujesz cokolwiek podłączyć! Czy 28BYJ jest przystosowany do A4988? Jeśli zrobisz szybkie wyszukiwanie, zobaczysz, że ten silnik rzadko występuje z A4988 jako sterownikiem. Jeśli przeczytasz dokładnie poprzednie odniesienie, możesz zobaczyć, dlaczego: nasz stepper jest silnikiem jednobiegunowym, podczas gdy A4988 jest przeznaczony do napędzania silników bipolarnych, więc będziemy musieli trochę zhakować nasz silnik!
Krok 2: Hakowanie silnika
Aby silniki były kompatybilne ze sterownikiem silnika, po prostu wyjmij czerwony przewód z białego złącza. Aby to zrobić, przeciąć złącze, aby usunąć czerwony przewód i przeciąć czerwony przewód silnika. Następnie zamień żółty i różowy kabel na złączu. Zachowaj czerwony przewód i złącze do następnego kroku!
Aby wyciągnąć kabel ze złącza, wciśnij przewód, który chcesz wyjąć w złączu, a następnie wciśnij widoczną metalową końcówkę na złączu ostrym narzędziem (powyżej zdjęcie, na którym robię to moim ulubionym nożem, opinelem !), a na koniec pociągnij i w końcu całość powinna wyjść jak na powyższym obrazku. Ostatnie zdjęcie pokazuje, jak powinno wyglądać złącze na końcu tych modyfikacji: kolejność kabla na złączu powinna być pomarańczowa/różowa/żółta/niebieska.
(PS: w internecie znajdziesz kilka samouczków wskazujących, że trzeba wylutować czerwony przewód z silnika, a potem porysować płytkę, zapomnij o tym, nie jest to konieczne. Bezużyteczne?)
Krok 3: Ustawienie sterownika
Teraz… czas na napędzanie tego silnika ze sterownikiem ? Jeszcze nie przepraszam ! Widzisz śrubę na płycie A4988 ? Cóż, będziemy musieli z tym pokombinować. Ta śruba pozwala w zasadzie ustawić, ile prądu przejdzie przez cewki silnika. W naszym przypadku, podczas gdy nasz zasilacz daje 5V, a cewki w silniku mają rezystancję 50 Ohm, nasz prąd nie będzie większy niż 100mA, który powinien być podtrzymywany przez silnik, abyś mógł ostatecznie pominąć ten krok. Jeśli jednak jesteś podobny do mnie i chcesz, aby silnik pobierał tylko tyle prądu, ile potrzebuje, to postępuj zgodnie z instrukcjami.
Aby ustawić sterownik, postępuj zgodnie z Metodą 2 tego artykułu z tymi adaptacjami (jak pokazano na powyższym obrazku)
- Użyj 5 V z osłony akumulatora zarówno dla logiki, jak i zasilania silnika (mówi się, że VMO potrzebuje więcej niż 8 V, ale 5 V działa!). 2 piny GND na płytce są połączone, więc nie ma potrzeby podłączania ich obu do masy akumulatora.
- Podłącz piny STEP i DIR również do 5 V (nie do Arduino, jak pokazano w wymienionym artykule)
- Przy ustawianiu multimetru ustawiłem prąd na 50mA co wystarczało do napędzania moich silników półkrokami (więcej o tym w następnym kroku). Aby podłączyć mój multimetr do pomiaru prądu w cewce silnika, jak widać na powyższym obrazku wypiąłem przewód żółty ze złącza i włożyłem przewód czerwony, aby móc włożyć multimetr z czerwonego na żółty przewód do pomiaru prądu.
Krok 4: Sterowanie silnikiem
To wszystko, jesteśmy prawie gotowi, aby nasz silnik się kręcił. Jedyne rzeczy do zrobienia to:
- usunąć nasz multimetr z naszego systemu, jeśli jeszcze tego nie zrobiono,
- podłączyć MS1 do 5V, co sprawi, że kierowca będzie korzystał z półkroków (miałem problem z tym, aby robot obracał się pełnymi krokami na 5V. Ale jako część mojego celu, aby wszystko działało na 5V, zgodziłem się poświęcić trochę prędkości i doprecyzowania),
- dostarcz pinom STEP i DIR to, czego oczekujemy od naszego kontrolera.
Następnie: jeśli chcesz sterować silnikiem za pomocą Arduino, po prostu postępuj zgodnie z artykułem tutaj, w którym znajdziesz przykładowy kod. Jeśli chcesz kontrolować to za pomocą micro:bit, zostań ze mną trochę dłużej.
Micro:bit, podobnie jak Arduino, jest wyposażony w GPIO. Dlatego gdy już go zasilimy (3,3V !), to możemy go zaprogramować na wyjście STEP i DIR. Chociaż wydaje się, że istnieje wiele wejść i wyjść, należy pamiętać, że w rzeczywistości wiele z nich jest już zarezerwowanych do innych celów. Więcej na ten temat dowiesz się z tego artykułu. W tym artykule zobaczysz, że w rzeczywistości wiele wejść/wyjść jest współdzielonych z wyświetlaczem, a zatem, jeśli chcesz ich użyć, będziesz musiał wyłączyć wyświetlacz. Ale nie wyłączajmy wyświetlacza! Więc jakich pinów możemy użyć? Użyję pinów 2 i 8, ponieważ nie będę używał podkładek (pin 2).
Podłącz pin 2 micro:bit do STEP, pin 8 do DIR, wgraj dołączony program używając swojego ulubionego edytora micro:python (ja użyłem mu-editor). Ten program zasadniczo ustawia PWM na pinie 2 z okresem 1 milisekundy (i cyklu pracy 50%), a silnik powinien się obracać. Ustaw pin 8 na 0 lub 1, aby obracał się w taki czy inny sposób i zmień okres, aby obracał się z żądaną prędkością (o ile nie chcesz, aby jechał za szybko… dla mnie impuls co milisekundę był blisko do maksymalnej prędkości, jaką mogłem osiągnąć).
Aby wszystko było bardziej kompaktowe i łatwe do wsiadania do robota mobilnego, zrobiłem małą deskę. Tablica pokazana jest na powyższym obrazku. Na obrazku widać fioletowy przewód biegnący od VMOT do VDD, który chowa się w cieniu. Ponadto żółty przewód przechodzący z SLP do RST w rzeczywistości nie jest lutowany, po prostu go tam umieściłem, aby reprezentować lut, który umieściłem z tyłu płyty, aby połączyć te 2 piny. Uwaga: radiator normalnie nie jest wymagany przy takim układzie, ponieważ pobieramy dużo, dużo mniej niż 1A.
To wszystko, mam nadzieję, że ta instrukcja pomoże wielu z was cieszyć się mocą silnika krokowego w swoich projektach.
Zalecana:
Sterowany przez MIDI silnik krokowy z układem bezpośredniej syntezy cyfrowej (DDS): 3 kroki
Sterowany przez MIDI silnik krokowy z układem Direct Digital Synthesis (DDS): Czy miałeś kiedyś zły pomysł, że TYLKO musiałeś zamienić się w mini projekt? Cóż, bawiłem się szkicem, który wykonałem dla Arduino Due, którego celem było tworzenie muzyki za pomocą modułu AD9833 Direct Digital Synthesis (DDS)… iw pewnym momencie pomyślałem &q
Silnik krokowy z płytką ESP32: 4 kroki
Silnik krokowy z płytką ESP32: Silniki krokowe to silniki prądu stałego, które poruszają się w dyskretnych krokach. Mają wiele cewek, które są zorganizowane w grupy zwane „fazami”. Zasilając każdą fazę po kolei, silnik będzie się obracał, krok po kroku. Silniki krokowe są bardzo przydatne
Silnik krokowy z Arduino UNO: 3 kroki
Silnik krokowy z Arduino UNO: Silniki krokowe to silniki prądu stałego, które poruszają się w dyskretnych krokach. Mają wiele cewek, które są zorganizowane w grupy zwane „fazami”. Zasilając każdą fazę po kolei, silnik będzie się obracał, krok po kroku. Silniki krokowe są bardzo przydatne
Silnik krokowy sterowany silnikiem krokowym - Silnik krokowy jako enkoder obrotowy: 11 kroków (ze zdjęciami)
Silnik krokowy sterowany silnikiem krokowym | Silnik krokowy jako enkoder obrotowy: Masz kilka silników krokowych i chcesz coś zrobić? W tej instrukcji użyjmy silnika krokowego jako enkodera obrotowego do sterowania pozycją innego silnika krokowego za pomocą mikrokontrolera Arduino. Więc bez zbędnych cere
Silnik krokowy z klapkami D i zegarem 555; Pierwsza część obwodu Timer 555: 3 kroki
Silnik krokowy z klapkami D i zegarem 555; Pierwsza część obwodu Timer 555: Silnik krokowy to silnik prądu stałego, który porusza się w dyskretnych krokach. Jest często używany w drukarkach, a nawet w robotyce. Wyjaśnię ten obwód w krokach. Pierwsza część obwodu to 555 regulator czasowy. Jest to pierwszy obraz (patrz wyżej) z chipem 555 w