Spisu treści:
- Krok 1: PWM Co?
- Krok 2: Trochę matematyki… Częstotliwość
- Krok 3: Trochę matematyki… Puls
- Krok 4: Dość matematyki! Teraz zagrajmy
- Krok 5: Ostatnia, ale nie najmniej… prawdziwa rzecz
Wideo: 556 Servo Driver: 5 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Serwomechanizmy (także serwa RC) to małe, tanie, masowo produkowane serwomotory wykorzystywane do sterowania radiowego i robotyki na małą skalę. Są zaprojektowane tak, aby można je było łatwo kontrolować: pozycja wewnętrznego potencjometru jest stale porównywana z pozycją nakazaną z urządzenia sterującego (tj. sterowania radiowego). Każda różnica powoduje wygenerowanie sygnału błędu w odpowiednim kierunku, który napędza silnik elektryczny do przodu lub do tyłu i przesuwa wał do zadanej pozycji. Kiedy serwo osiąga tę pozycję, sygnał błędu zmniejsza się, a następnie staje się zerem, w którym to momencie serwo zatrzymuje się.
Serwa sterowania radiowego są połączone za pomocą standardowego połączenia trójprzewodowego: dwa przewody do zasilania DC i jeden do sterowania, przenoszący sygnał modulacji szerokości impulsu (PWM). Standardowe napięcie to 4,8 V DC, jednak na kilku serwach stosuje się również 6 V i 12 V. Sygnał sterujący to cyfrowy sygnał PWM o częstotliwości odświeżania 50 Hz. W każdym przedziale czasowym 20 ms aktywnym wysokim impulsem cyfrowym steruje pozycją. Impuls nominalnie mieści się w zakresie od 1,0 ms do 2,0 ms, przy czym 1,5 ms zawsze stanowi środek zakresu.
Nie potrzebujesz mikrokontrolera ani komputera do sterowania serwomechanizmem. Możesz użyć czcigodnego układu scalonego timera 555, aby dostarczyć wymagane impulsy do serwomechanizmu.
W sieci dostępnych jest wiele układów opartych na mikrokontrolerach. Dostępnych jest również kilka obwodów do testowania serwomechanizmów opartych na pojedynczych 555, ale chciałem precyzyjnego taktowania bez jakichkolwiek zmian częstotliwości. Musiał jednak być tani i łatwy w budowie.
Krok 1: PWM Co?
Jak sama nazwa wskazuje, sterowanie prędkością modulacji szerokości impulsu działa poprzez napędzanie silnika serią impulsów „ON-OFF” i zmieniając cykl pracy, ułamek czasu, przez który napięcie wyjściowe jest „ON” w porównaniu do czasu, kiedy jest „OFF””, impulsów przy zachowaniu stałej częstotliwości.
Koncepcja tego obwodu polega na tym, że wykorzystuje on dwa zegary do generowania wyjściowego sygnału PWM (modulacji szerokości impulsu) do napędzania serwomechanizmu.
Pierwszy zegar działa jako multiwibrator astabilny i generuje „częstotliwość nośną”, czyli częstotliwość impulsów. Brzmi dezorientująco? Cóż, chociaż szerokość impulsu wyjściowego może się różnić, chcemy, aby czas od początku pierwszego impulsu do początku drugiego impulsu był taki sam. To jest częstotliwość występowania impulsów. I tutaj ten obwód pokonuje zmienną częstotliwość większości pojedynczych obwodów 555.
Drugi zegar działa jak multiwibrator monostabilny. Oznacza to, że musi zostać wyzwolony, aby wygenerować własny impuls. Jak wspomniano powyżej, pierwszy zegar uruchomi drugi w ustalonym, definiowanym przez użytkownika przedziale czasowym. Drugi zegar ma jednak zewnętrzny potencjometr, który służy do ustawiania szerokości impulsu wyjściowego, a w efekcie określania cyklu pracy i kolejno rotacji serwomechanizmu. Przejdźmy do schematu…
Krok 2: Trochę matematyki… Częstotliwość
Obwód wykorzystuje LM556 lub NE556, które można zastąpić dwoma 555-ami. Właśnie zdecydowałem się użyć 556, ponieważ jest to podwójny 555 w jednym pakiecie. Lewy obwód czasowy lub generator częstotliwości jest skonfigurowany jako astabilny multiwibrator. Chodzi o to, aby wytworzył częstotliwość nośną około 50 Hz, z której cykl pracy zostanie dodany przez zegar po prawej stronie lub generator szerokości impulsu.
C1 ładuje się przez R1, R4 (używany do ustawiania częstotliwości) i R2. W tym czasie moc wyjściowa jest wysoka. Następnie C1 rozładowuje się przez R1, a wyjście jest niskie.
F = 1,44 / ((R2+R4 + 2*R1) * C1)
F= 64Hz dla R1 = 0
F= 33Hz dla R1 = 47k
Jednak w uproszczonym symulowanym obwodzie R1 jest pominięty, a częstotliwość jest ustalona na 64 Hz.
Bardzo ważne! Chcemy, aby czas, w którym wyjście jest niskie, był krótszy niż minimalna szerokość impulsu generatora szerokości impulsu.
Krok 3: Trochę matematyki… Puls
Generator szerokości impulsu lub zegar z prawej strony jest ustawiony w trybie monostabilnym. Oznacza to, że za każdym razem, gdy wyzwalany jest timer, daje impuls wyjściowy. Czas impulsu jest określony przez R3, R5, R6 i C3. Zewnętrzny potencjometr (100k LIN POT) jest podłączony do określenia szerokości impulsu, który określi obrót i zakres obrotu serwa. R5 i R6 służą do precyzyjnego dostrojenia skrajnych pozycji serwomechanizmu, unikając jego drgania. Zastosowana formuła jest następująca:
t = 1,1 * (R3 + R5 + (R6 * POT)/(R6 + POT)) * C4
Tak więc minimalny czas impulsu, gdy wszystkie rezystory zmienne są ustawione na zero, wynosi:
t = 1,1 * R3 * C4
t = 0,36 ms
Należy zauważyć, że ten minimalny czas szerokości impulsu jest dłuższy niż impuls wyzwalający, aby zapewnić, że generator szerokości impulsu nie będzie stale generował impulsów 0,36 ms jeden po drugim, ale ze stałą częstotliwością ± 64 Hz.
Gdy potencjometry są ustawione na maksimum, czas wynosi
t = 1,1 * (R3 + R5 + (R6 * POT)/(R6 + POT)) * C4
t = 13 ms
Cykl pracy = szerokość impulsu / interwał.
Tak więc przy częstotliwości 64 Hz odstęp między impulsami wynosi 15,6 ms. Tak więc cykl pracy waha się od 2% do 20%, przy czym środek stanowi 10% (pamiętaj, że impuls 1,5 ms jest pozycją środkową).
Dla jasności potencjometry R5 i R6 zostały usunięte z symulacji i zastąpione pojedynczym rezystorem i pojedynczym potencjometrem.
Krok 4: Dość matematyki! Teraz zagrajmy
Możesz odtworzyć symulację TUTAJ: po prostu kliknij przycisk „Symuluj”, poczekaj, aż symulacja się załaduje, a następnie kliknij przycisk „Rozpocznij symulację”: poczekaj na ustabilizowanie się napięcia, a następnie kliknij i przytrzymaj lewy przycisk myszy na potencjometrze. Przeciągnij myszką i przesuń potencjometr, aby sterować serwomechanizmem.
Możesz zauważyć zmianę szerokości impulsu na górnym oscyloskopie, podczas gdy częstotliwość impulsu pozostaje taka sama na drugim oscyloskopie.
Krok 5: Ostatnia, ale nie najmniej… prawdziwa rzecz
Jeśli chcesz pójść dalej i zbudować sam obwód, tutaj znajdziesz schemat, układ PCB (jest to jednostronna płytka PCB, którą możesz łatwo wyprodukować w domu), układ komponentów, układ miedzi i listę części.
Mała uwaga na temat trymerów:
- niebieski trymer ustawia częstotliwość sygnału;
- środkowy czarny trymer ustawia dolny limit obrotu
- pozostały czarny trymer ustaw górny limit obrotów
Krótka uwaga przydatna do kalibracji obwodu dla konkretnego serwomechanizmu:
- ustawić główny potencjometr na zero
- wyreguluj środkowy czarny trymer, aż serwo ustawi się stabilnie na dolnym limicie bez gadania;
- teraz ustaw główny potencjometr na maksimum
- wyreguluj pozostały czarny trymer, aż serwo ustawi się stale na wyższym limicie bez drgania
Jeśli podobała Ci się ta instrukcja, zagłosuj na mnie w konkursie!:)
Nagroda sędziowska w konkursie Electronics Tips & Tricks Challenge
Zalecana:
Romeo: Una Placa De Control Arduino Para Robótica Con Driver Incluidos - Robot Seguidor De Luz: 26 kroków (ze zdjęciami)
Romeo: Una Placa De Control Arduino Para Robótica Con Driver Incluidos - Robot Seguidor De Luz: Que tal amigos, siguiendo con la revisiones de placas y sensores, con el aporte de la empresa DFRobot, hoy veremos una placa con prestaciones muy interesante, . ideal para el desarrollo de prototipos robóticos y el control de motores y servo, d
Używanie timera 556 do napędzania silnika krokowego: 5 kroków
Korzystanie z timera 556 do napędzania silnika krokowego: Ta instrukcja wyjaśnia, w jaki sposób zegar 556 może napędzać silnik krokowy. Dla tego obwodu nie jest potrzebny żaden kod
556 Time zapewnia wejście zegara do 2 liczników dekadowych, które będą sterować 20 diodami LED: 6 kroków
Czas 556 zapewnia wejście zegara do 2 liczników dekad, które będą sterować 20 diodami LED: Ta instrukcja pokaże, w jaki sposób zegar 556 zapewnia wejścia zegara do 2 liczników dekad. Liczniki dekad będą sterować 20 diodami LED. Diody LED będą migać w sekwencji 10
Servo Steering Robot Car dla Arduino: 6 kroków (ze zdjęciami)
Servo Steering Robot Car dla Arduino: ten samochód jest oparty na konstrukcji platformy arduino, rdzeniem jest Atmega-328 p, który może realizować sterowanie przednim kołem, napęd na tylne koła i inne funkcje. Jeśli grasz sam, wystarczy użyj modułu bezprzewodowego;Jeśli chcesz wdrożyć
Pan-Tilt Multi Servo Control: 11 kroków (ze zdjęciami)
Pan-Tilt Multi Servo Control: W tym samouczku dowiemy się, jak kontrolować wiele serw za pomocą Pythona na Raspberry Pi. Naszym celem będzie mechanizm PAN/TILT do pozycjonowania kamery (PiCam). Tutaj możesz zobaczyć, jak będzie działał nasz ostateczny projekt: Test pętli Control Servo Control: