Serwomechanizm

Na rysunku 1 widać serwomechanizm o rozmiarze "standard". Wewnątrz serwomechanizmu znajduje się silnik, kilka przekładni zębatych, by zredukować prędkość silnika, płytka drukowana pełniąca rolę sterownika oraz potencjometr (rys. 2).

rys1
rys1

rys1
rys2

Silnik i potencjometr są podłączone do płytki sterującej i razem tworzą zamkniętą pętlę sprzężenia zwrotnego. Płytka sterująca oraz silnik są zasilane stałym napięciem (przeważnie pomiędzy 4,8V i 6V jednakże większość będzie też działać przy napięciu do 7,2V). By uruchomić silnik, przesyłany jest sygnał cyfrowy do płytki sterującej. To powoduje ruch silnika, który przez szereg kół zębatych jest połączony z potencjometrem. Pozycja wałka potencjometru, wskazuje pozycję ramienia serwomechanizmu. Kiedy potencjometr osiąga zadaną pozycję, płytka sterująca zatrzymuje silnik. Podstawowym przeznaczeniem serwomechanizmów modelarskich jest osiąganie dokładnych pozycji kątowych w zakresie 90o lub 180o. Może nie wydaje się to za wiele, ale w rzeczywistości tego typu sterowanie może być wykorzystane do sterowania robotem, poruszania nogami w górę i w dół, obracania czujnikiem do skanowania pomieszczenia itp. Precyzyjny obrót serwa o odpowiedni kąt w odpowiedzi na zadany sygnał cyfrowy ma olbrzymie zastosowanie we wszystkich dziedzinach robotyki.

Sterowanie PWM

Ramię serwa modelarskiego jest pozycjonowane sygnałem PWM (ang. Pulse Width Mo-dulation). Obwód sterujący znajdujący się wewnątrz serwomechanizmu (rys. 2) poddaje analizie czas trwania stanu wysokiego tego sygnału i w zależności od niego wysterowuje odpowiednio silnik (rys. 3).

rys1
rys3

Układ analizujący sygnał cyfrowy, wysyłany do serwomechanizmu reaguje na impulsy trwające od około 1ms do 2ms. Impulsy te są wysyłane 50 razy na sekundę. Dokładna długość impulsu, w ułamkach milisekundy, determinuje pozycję w jakiej ma się znaleźć ramię serwa. Niektóre serwomechanizmy są bardzo tolerancyjne jeśli chodzi o zmiany okresu sygnału PWM, podczas gdy inne nie będą działały prawidłowo lub będą "drgać". Moc przekazywana do silnika, wewnątrz serwa także jest proporcjonalna do różnicy pomiędzy pozycją w jakiej ramie serwa się znajduje, a pozycją w jakiej powinno być. Jeżeli różnica ta jest mała, to silnik porusza się z dosyć małą prędkością. Zapobiega to przeskoczeniu (ang. overshoot) zadanej pozycji. Jeżeli natomiast różnica ta jest duża, to silnik wiruje z maksymalną prędkością, lecz im bliżej zadanej pozycji, tym bardziej prędkość maleje.