Serva PDM Angle Hold jsou motory, které jsou řízeny signálem PDM (Pulse Duration Modulation) a jsou schopné udržet daný úhel.

Úhlová serva se používají k simulaci pohybu různých mechanismů: Pohon může snadno otevřít/zavřít ventily a vytvořit tak krmítko pro domácího mazlíčka nebo navrhnout malý úkryt v hostinci. A takové servomotory umožní vašemu robotovi ovládat paže nebo otáčet hlavou.

Seznam modelů

model Tvarový faktor Řídící signál Kontaktujte nás Jmenování Vnitřní rozhraní Rozsah otáčení
Feetech FS90 / Dokumentace Micro PDM Ne Držení úhlu Analogový 0–180 °
Feetech FT90B / Dokumentace Micro PDM Ne Držení úhlu Digitální 0–180 °
Feetech FS90-FB / Dokumentace Micro PDM Ano Držení úhlu Analogový 0–180 °
Feetech FS0403-FB / Dokumentace Micro PDM Ano Držení úhlu Analogový 0–180 °
Feetech FS5106B Standardní PDM Ne Držení úhlu Analogový 0–180 °
Feetech FS5109M Standardní PDM Ne Držení úhlu Analogový 0–180 °
Feetech FT5519M Standardní PDM Ano Držení úhlu Digitální 180°
Feetech FB5118M / Dokumentace Standardní PDM Ano Držení úhlu Digitální 0–300 °
Feetech FT6335M / Dokumentace Standardní PDM Ne Držení úhlu Digitální 0–360 °

Rozhraní pro správu

U úhlových serv PDM závisí poloha výstupního hřídele na délce impulsu. Pro ovládání motoru je nutné předat speciální signál PDM (Pulse Duration Modulation) – impulsy konstantní frekvence a proměnné šířky. Při obdržení řídicího impulsu z externího regulátoru generuje plnění servopohonu vlastní signál do motoru, jehož trvání je určeno zpětnovazebním senzorem. Dále obvod porovná dobu trvání dvou pulzů:

Pokud je doba trvání jiná → elektromotor se zapne. Směr hřídele závisí na znaménku rozdílu impulsů.

V signálu PDM je frekvence pulzu konstantní a rovná se 50 Hz, tj. perioda pulzu je 20 ms. Šířka impulzu se však mění a závisí na tom výstupní přídržný úhel motoru. Obecně se uznává, že rozsah výstupního úhlu 0–180° odpovídá šířce pracovního impulsu 544–2400 μs.

Jako příklad uvádíme data pro oblíbený hobby servopohon Feetech FS90.

Pulzní perioda Šířka pulzu Poloha serva popis
20 ms 544 us Maximální poloha hřídele ve směru hodinových ručiček CW
20 ms 1540 us 90° Neutrální poloha hřídele
20 ms 2400 us 180° Maximální poloha hřídele proti směru hodinových ručiček CCW
ČTĚTE VÍCE
Který měřič si mám vybrat pro soukromý dům?

U různých pohonů se rozsah šířky impulsu a rotace hřídele může lišit od standardního. Například existují serva s rozsahy 0–120° a 0–310°. Tyto údaje lze upřesnit v charakteristikách.

I v rámci stejného modelu serva existuje výrobní chyba, která způsobuje, že provozní rozsah délek pulsů se liší. Pro přesný provoz musí být každé konkrétní servo zkalibrováno: prostřednictvím experimentování je nutné vybrat správný rozsah, který je pro něj specifický.

Často se metoda řízení serv nazývá PWM (Pulse Width Modulation) nebo PPM (Pulse Position Modulation). To není pravda a použití těchto metod může dokonce poškodit jednotku. Správný termín je PDM (Pulse Duration Modulation), ve kterém je důležitá délka pulzů, nikoli frekvence.

Pokud váš servopohon chrastí, cuká nebo má za úkol ovládat více serv, věnujte pozornost rozšiřující desce Multiservo Shield.

Servopohony se zpětnou vazbou

Mezi PDM úhlově držící serva existují i ​​modely se zpětnou vazbou, u kterých je signál z interního potenciometru vyveden samostatným vodičem.

To bude užitečné pro vytváření složitých zpětnovazebních smyček, kde se objeví aktuální poloha serva. Například zjistit, zda servo dosáhlo cílové pozice nebo zda s ním něco nerušilo.

Obvykle je přítomnost zpětnovazebního signálu výslovně indikována v charakteristice servopohonu.

Napájení serva

Servopohon lze napájet dvěma způsoby: přímo z regulátoru (pokud to charakteristiky dovolují) nebo z externího zdroje napájení.

Žádné externí napájení

Pokud je servopohon napájen 5 volty a odebírá proud menší než 500 mA, je možné napájet servomotor přímo z regulátoru.

Schéma zapojení

Barva drátu kontakt Funkce Připojení
Oranžová / žlutá / bílá S Čep ovládání serva Připojte k I/O pinu řadiče.
Červený V Jídlo Připojte ke zdroji napájení ovladače.
Hnědá / Černá G Země Připojte k zemi ovladače.

S externím napájením

Pokud je servopohon napájen napětím vyšším než 5 voltů nebo odebírá proud vyšší než 500 mA, vyžaduje externí zdroj napájení.

Schéma zapojení

Barva drátu kontakt Funkce Připojení
Oranžová / žlutá / bílá S Čep ovládání serva Připojte k I/O pinu řadiče.
Červený V Jídlo Připojte k externímu zdroji napájení s vhodným napětím.
Hnědá / Černá G Země Připojte k uzemnění externího napájecího zdroje a k zemi regulátoru.

Příklady práce pro Arduino

Mozkem projektu bude platforma Arduino Uno.

ČTĚTE VÍCE
Jak se nazývá plast používaný k dekoraci stěn?

Vezměme Feetech FS90 jako testovací servopohon. Příklady jsou kompatibilní se všemi servy PDM s úhlovým držením, stačí do programu zadat charakteristiky vašeho konkrétního motoru.

Připojení a konfigurace

Pro přehlednost schématu využíváme připojení servopohonu přímo k regulátoru, bez externího napájení. Pokud potřebujete další napájecí zdroj, zkontrolujte schémata v sekci napájení serva.

Co budete potřebovat?

Schéma zařízení

Pro rychlé sestavení a odladění zařízení doporučujeme vzít rozšiřující desku Troyka Shield, která se umístí na horní část Uno R3 sendvičovou metodou.

Nastavení softwaru

Ke spuštění příkladů budete potřebovat knihovnu AmperkaServo, což je obal standardní knihovny Servo s dalšími metodami.

Změna polohy rohu

Pro spuštění vyzkoušíme motor v polohách 0, 90 a 180 stupňů.

Kód pro Arduino IDE

Po zablikání zařízení se hřídel serva otočí o 0, 90 a 180 stupňů.

Plynulá změna polohy úhlu

Pojďme si úkol zkomplikovat. Pohybujme hřídelí plynule od 0 do 180 stupňů.

Kód pro Arduino IDE

Po zablikání zařízení se hřídel serva bude plynule pohybovat od 0 do 180 stupňů a zpět.

Změna polohy úhlu dvou serv

Do projektu přidáme druhý servopohon.

Hřídel dvou motorů otočíme postupně do poloh 0, 90 a 180 stupňů.

Kód pro Arduino IDE

Po zablikání zařízení se hřídel každého serva otočí střídavě o 0, 90 a 180 stupňů.

Čtení úhlu serva

Dále vypočítáme aktuální polohu hřídele motoru. Je důležité si uvědomit, že pouze malý počet serv umožňuje číst data zpětné vazby přes samostatný vodič.

Pro test zopakujeme standardní příklad pro plynulé posunutí servopohonu od 0 do 180 stupňů a paralelně odečteme aktuální úhel hřídele motoru.

Schéma zařízení

Kód pro Arduino IDE

Po zablikání zařízení se hřídel serva bude plynule pohybovat od 0 do 180 stupňů a zpět. A paralelně se na konzole zobrazí aktuální úhel hřídele.

Příklady práce pro Espruino

Mozkem projektu bude platforma z rodiny Espruino, například Iskra JS.

Připojení a konfigurace

Pro přehlednost schématu využíváme připojení servopohonu přímo k regulátoru, bez externího napájení. Pokud potřebujete další napájecí zdroj, zkontrolujte schémata v sekci napájení serva.