MC_GroupHalt, MCP_GroupHalt – Zastavení koordinovaného pohybu (přerušitelné)
Symboly blokůPotřebná licence: COORDINATED MOTION CONTROL
Popis funkce
Bloky MC_GroupHalt a MCP_GroupHalt mají naprosto shodnou funkci, jediným rozdílem
je, že MCP_ varianta bloku má méně vstupů a potřebné konstanty se zadávají jako
parametry bloku.
Blok MC_GroupHalt zahajuje řízené zastavení pohybu. Osa se přesune do stavu „GroupMoving“, dokud není rychlost nulová. Společně s nastavením výstupu Done je stav změněn na „GroupStandby“.
Poznámka 1: Blok MC_GroupHalt se používá k zastavení skupiny os za normálních provozních podmínek. V non-buffered režimu je možné zadat další pohybový příkaz při zpomalení osy, který zruší MC_GroupHalt a bude ihned proveden.
Poznámka 2: Je-li tento příkaz aktivní, další příkaz může být aktivován (spuštěn). Např. vozidlo bez řidiče detekuje překážku a potřebuje zastavit. MC_GroupHalt je aktivován. Před dosažením stavu „GroupStandby“ je překážka odstraněna a pohyb může pokračovat nastavením dalšího pohybového příkazu, aby vozidlo nemuselo zastavit.
Vstupy
uAxesGroup | Odkaz na skupinu os | reference |
Execute | Náběžná hrana aktivuje blok | bool |
Deceleration | Maximální povolené zpomalení [unit/s] | double |
Jerk | Maximální povolená změna zrychlení [unit/s] | double |
Výstupy
yAxesGroup | Odkaz na skupinu os | reference |
Done | Příznak dokončení algoritmu | bool |
CommandAborted | Příznak přerušení funkce bloku | bool |
Busy | Příznak, že algoritmus ještě neskončil | bool |
Active | Příznak, že blok řídí osu | bool |
Error | Příznak chyby | bool |
ErrorID | Kód chyby | error |
|
|
|
Příklad
Pro porovnání je následující příklad totožný jako u bloku MC_GroupStop. Časové průběhy v levém sloupci odpovídají bloku MC_GroupStop. Průběhy v pravém sloupci bloku MC_GroupHalt. Je vidět, že při použití bloku MC_GroupHalt dojde k dojetí do požadované polohy již na druhé spuštění exekutivy bloku MC_MoveLinearAbsolute.
V druhém příkladě je spuštěn blok MC_MoveLinearAbsolute, který je následně přerušen blokem MC_GroupHalt. Ještě před zastavením je spuštěn druhý pohyb blokem dalším MC_MoveLinearAbsolute. Příklad ilustruje to, že pro možnost spuštění dalšího pohybu, nemusí dojít k úplnému zastavení skupiny os.
[Předchozí] [Na začátek] [Výše] [Další]