User Manual
96
bude dostatečné, ale lepší je volání funkce v mnohem kratších intervalech. Častější volání
funkce nezpůsobí žádné problémy, protože časování je řízené hardwarem. Ze stejného důvodu
můžeme měnit interval volání funkce v rozsahu od 1ms do více než 10ms. Velmi časté volání
funkce nezabírá příliš mnoho strojového času, jelikož se funkce celá zpracuje v předem
definovaném minimálním intervalu.
Pokud se funkce používá správně, bude automatická regulace udržovat požadovanou velikost
konstantních otáček motoru.
Regulace rychlosti je zajištěna přesnou regulační odchylkou, zjištěnou při každém měřicím
cyklu a jejich sčítáním (takzvaný integrační regulátor). Tato chybová hodnota se používá pro
nastavení napětí motoru pomocí PWM modulu mikroprocesoru. Pokud je rychlost příliš nízká,
bude regulační chyba kladná a napětí motoru by se mělo v určitém poměru zvýšit. Když je
rychlost příliš vysoká, musí se napětí snížit. Tato metoda bude svižně nastavovat rychlost RP6
na relativně konstantní hodnotu PWM (ve které se malé odchylky považují za normální).
Regulace umožňuje stabilizaci rychlosti nezávislou na napětí baterie, zátěži (hmotnost,
povrchové podmínky, sklon atd.) a výrobní toleranci. Pokud se budete pokoušet pohánět robot
pevnou hodnotou PWM, může rychlost robotu velmi záviset na účinnosti motorů, zátěži a napětí
baterie. V rozdílné rychlosti levého a pravého motoru se mohou dále projevit důsledky
výrobních tolerancí.
Rutina regulace rychlosti odpovídá také za reverzní chod motoru, který se musí otáčet jedním
směrem a kdykoliv změnit směr otáčení i při rychlosti 15cm/s bez poškození motorů a
převodovek. Pokud se má provést změna směru otáčení, rychlost robotu se automaticky sníží
na nulu, následuje změna směru a následně zvýšení otáček na nastavenou rychlost.
Řídící systém rychlosti a směru otáčení musí dále sledovat spotřebu proudu v motorech. Při
překročení proudových podmínek systém automaticky zastaví motory. Toto bezpečnostní
opatření chrání motory před přetížením a přehřátím, které může trvale zničit motory.
Pokud se během 20 sekund objeví tři události překročení proudu, provede ochranný systém
nouzové zastavení a spustí blikání čtyř stavových LED. Před další činností se musí robot
resetovat.
Dále systém monitoruje poškození enkodérů nebo motorů (které se může projevit, pokud se
v nich budete často šťourat...). Pokaždé, když se to stane, může funkce řízení pohybu zvedat
hodnotu PWM až na maximum a robot se stane neřiditelný ... a samozřejmě musíte
předpokládat nežádoucí zkušenosti! V každém případě se v takovém případu robot úplně
zastaví.
Musíme také stručně uvést, že řízení pohybu také obsahuje funkce pro pohyb na definovanou
vzdálenost a otáčení o definovaný úhel.
Jak můžete vidět, je funkce velmi důležitá pro automatickou regulaci motoru. Klíčová skutečnost
je, že vlastní funkce motionControl nemá žádný parametr jako například požadovanou rychlost.
Provozní parametry se musí nastavovat přes další funkce, které nyní podrobně probereme.