Jak połączyć serwomotory z Arduino

Wypróbuj Nasz Instrument Do Eliminowania Problemów





W tym poście dowiemy się, czym jest silnik serwo, jak działa, jak współpracować z mikrokontrolerem i co wyróżnia ten silnik spośród innych silników.

Będąc entuzjastami elektroniki, zetknęlibyśmy się z wieloma rodzajami silników, tutaj przyjrzymy się specjalnemu typowi silnika zwanego silnikiem serwo.



Co to jest silnik serwo?

Silnik serwo lub po prostu serwo to specjalny rodzaj silnika, który jest przeznaczony do precyzyjnej kontroli położenia, przyspieszenia i prędkości. W przeciwieństwie do wszystkich innych typów silników, serwo może obracać się tylko o 180 stopni w obu kierunkach. Posiada mechaniczne koła zębate oraz stoper ograniczający kątowe obroty serwomechanizmu.

Typowy silnik serwo:

Serwomotory są używane w robotyce, kamerach CCTV, samochodach RC, łodziach, zabawkowych samolotach itp. Serwonapędy są używane tam, gdzie nie ma potrzeby kontynuowania ruchu obrotowego, ale blokuje się w określonej pozycji lub przesuwa część ładunku z kontrolowaną prędkością w ramach ruchomego limitu kątowego.



Serwo to nie tylko silnik, jak inne typy, ale jest to moduł, który łączy w sobie zwykły silnik DC / AC, grupę przekładni, elektronikę sterującą i układ sprzężenia zwrotnego. Przyjrzyjmy się szczegółowo każdemu z wymienionych etapów.

Silnik DC / AC, który jest używany w module serwo, może być silnikiem bezszczotkowym lub szczotkowanym, w większości serwomechanizmów hobbystycznych używany jest silnik prądu stałego, a silniki prądu przemiennego są używane w zastosowaniach przemysłowych. Silnik zapewnia obrotowe wejście do serwomechanizmu. Silnik obraca się z prędkością kilkuset obrotów wewnątrz serwomechanizmu, a obroty wyjściowe są około 50 lub więcej razy mniejsze od jego obrotów.

Kolejnym etapem jest montaż przekładni, która kontroluje kąt obrotu i prędkość serwomechanizmu. Przekładnia może być wykonana z tworzywa sztucznego lub metalu, w zależności od wielkości ładunku. Generalnie silniki prądu stałego pracują na wysokich obrotach i niskim momencie obrotowym, zespół przekładni przekształci nadwyżkę obrotów na moment obrotowy. W ten sposób mały silnik może wytrzymać duże obciążenie.

Kolejnym etapem jest elektronika sterująca, która składa się z tranzystorów MOSFET i układów scalonych do sterowania obrotami silnika. W serwomotorach zawsze obecny jest system sprzężenia zwrotnego do śledzenia aktualnej pozycji siłownika.

W serwomechanizmach generalnie elementem sprzężenia zwrotnego jest potencjometr, który jest bezpośrednio połączony z obracającym się siłownikiem. Potencjometr działa jako dzielnik napięcia, który jest podawany do elektroniki sterującej. To sprzężenie zwrotne pomaga elektronice sterującej określić ilość mocy przekazywanej do silnika.

Serwomotor w ustalonym położeniu niechętnie poruszy się od swojego obecnego położenia, jeśli jakakolwiek siła zewnętrzna będzie próbowała zakłócić. System sprzężenia zwrotnego monitoruje aktualną pozycję i zasila silnik przed zakłóceniami zewnętrznymi.

Powyższy scenariusz jest taki sam, gdy serwo porusza siłownikiem. System sterowania kompensuje siłę zewnętrzną i porusza się z określoną prędkością.

Wiesz już całkiem sporo o serwomotorze i jego mechanizmie działania. Zobaczmy, jak sterować serwomotorami za pomocą mikrokontrolera.

Serwomotory mają 3 zaciski, w przeciwieństwie do innych silników, które mają 2 zaciski, dwa do zasilania (znamionowe 5 V) i jeden do sygnału sterującego. Przewody są kolorowe, aby ułatwić identyfikację zacisków.

Sygnały sterujące serwomechanizmów to PWM przy częstotliwości 50 Hz. Szerokość impulsu sygnału określa położenie ramienia siłownika. Typowy silnik serwo hobby działa od 1 do 2 milisekund szerokości impulsu.

Przyłożenie 1 ms sygnału sterującego szerokością impulsu utrzyma siłownik w pozycji 0 stopni. Przyłożenie 2 ms sygnału sterującego szerokością impulsu utrzyma siłownik w pozycji 180 stopni. Podawanie sygnałów w czasie 1-2 ms utrzyma siłownik w zakresie 0-180 stopni. Można to lepiej zrozumieć na poniższym obrazku.

Do tej pory zrozumiałbyś, jak serwomechanizm jest sterowany przez modulację szerokości impulsu (PWM).

Teraz nauczmy się, jak połączyć serwomotor z Arduino.

Schemat obwodu:

jak połączyć serwomotor z Arduino.

Okablowanie jest łatwe i intuicyjne. Jeśli używasz nieporęcznego serwomotoru, potrzebujesz zewnętrznego źródła zasilania. Jeśli spróbujesz zasilić z zasilacza arduino, skończy się to przeciążeniem portu USB komputera.

Jeśli masz podobne serwo, co zostało zilustrowane na początku artykułu, to możesz je zasilać z zasilacza arduino 5V, również pokazanego w prototypie autora.

Prototyp autora:

Arduino potrzebuje biblioteki serwomechanizmów do obsługi tego, co ułatwiło nam zadanie i jest już w środowisku Arduino IDE.

Program:

//--------Program developed by R.Girish--------//
#include
Servo motor
int pos = 0
int t=10
void setup()
{
motor.attach(7)
}
void loop()
{
A:
pos=pos+1
motor.write(pos)
delay(t)
if(pos==180) { goto B}
goto A
B:
pos=pos-1
motor.write(pos)
delay(t)
if(pos==0) { goto A}
goto B
}
//--------Program developed by R.Girish--------//

Powyższy program przesunie siłownik od 0 do 180 stopni w prawo i 180 do 0 stopni w lewo i cykl się powtórzy. Jest to prosty program do testowania serwomechanizmu, który może być potrzebny do napisania własnego kodu dla niestandardowych aplikacji.




Poprzedni: Obwód sterownika zaworu pompy wody dwururowej Dalej: Zrozumienie okablowania regulatora napięcia motocykla