MC_SetKinTransform_Lin – Nastavení kinematické transformace

Symboly blokůPotřebná licence: COORDINATED MOTION
PIC PIC

Popis funkce

Bloky MC_MovePath a MCP_MovePath 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_SetKinTransform_Lin slouží pro nastavení kinematické transformace. To je transformace mezi polohou motorů a kartezkými souřadnicemi koncového efektoru stroje. Pro různé typy strojů má tato funkce různý charakter a parametry. Tento blok slouží pro případy, kdy je transformace prázdná, tj. polohy motorů přímo odpovídají kartézkým souřadnicím koncového efektoru (to je typické pro obráběcí stroje nebo portálové manipulátory) nebo lineární (např. struktura T-bot).

Systém motion control obsahuje 3 souřadnice polohy, kvaternion pro určení orientace a několik dalších (tzv. aux) souřadnic. Blok MC_SetKinTransform_Lin umožňuje nadefinovat, kolik používáme polohových souřadnic, (např. některý stroj se pohybuje jen v ploše a pak používá jen 2 polohové souřadnice nebo stroj se může jen natáčet a pak nemá žádnou polohovou souřadnici), zda stroj používá natočení v 3D prostoru, kolik a jakých (posuvné nebo rotační) dalších os je použito. Počet polohových os definuje parametr npos. Orientace je interně vždy reprezentována kvaternionem. Jak se bude zadávat do parametrů bloků určuje parametr RotMode. Lze ji zadávat buď kvaternionem nebo pomocí Eulerovo úhlů (ty si lze představit jako souřadnice na zeměkouli: zeměpisná délka, zeměpisná šířka, azimut). Protože tato kinematika je lineární, stejná čísla, která se zadávají do parametrů odpovídající požadované orientaci, jsou pak i polohy odpovídajících os/motorů.

Parametry A a b. slouží pro lineární transformaci. Pokud polohy os/motorů přímo odpovídají kartézkým souřadnicím, transformace se neuplatňuje a je potřeba ponechat původní nastavení, tj. A=[1], b=[0]. Pro manipulátor struktury T-bot platí X=M1+M2, Y=M1-M2. Pak je potřeba nastavit A=[1 1; 1 -1], b=[0 0]. Platí, že MCS=A*ACS+b, kde ACS jsou polohy motorů a MCS jsou kartézké souřadnice. Matice A musí být čtvercová a regulární, aby bylo možné určovat polohy motorů z kartézkých souřadnic.

Poznámka 1: pokud stroj používá natáčení jen v jedné (někdy i dvou) ose, bývá výhodnější nepoužít orientaci, ale přidat natočení jako dodatečnou (aux) osu. Poznámka 2: čtyři souřadnice kvaternionu přímo mapovat na osy/motory reálně asi nejde. Pro různé simulace a testování a také proto, že u jiných kinematik se to vyskytuje, tak je to podpořeno i zde.

Vstupy

uAxesGroup

Odkaz na skupinu os

Reference

Execute

Náběžná hrana aktivuje blok

Bool

Parametry

npos

počet použitých polohových os   0  3 3

Long (I32)

RotMode

Volba reprezentace orientace  1

Long (I32)

1 ....

no orientation (aux rad); stroj orientaci nepoužívá, doplňkové rotační osy se zadávají v radiánech

2 ....

quaternion; orientace se zadává kvaternionem (tj. čtveřice čísel)

3 ....

ZYX angles [rad]; otočení je zadáno pomocí 3 úhlů (otočení postupně podle osy Z, Y, X), přičemž úhly jsou v radiánech

4 ....

ZYX angles [deg]; otočení je zadáno pomocí 3 úhlů (otočení postupně podle osy Z, Y, X), přičemž úhly jsou v úhlových stupních

5 ....

no orientation (aux deg); stroj orientaci nepoužívá, doplňkové rotační osy se zadávají v úhlových stupních

naux

Počet doplňkových os   0  3

Long (I32)

fcyc

čísla/pořadí doplňkových os, které jsou rotační. Pro rotační doplňkové osy se poloha zadává v radiánech nebo ve stupních a normalizuje se na interval -1805o až +1805o (resp. ekvivalent v radiánech)   0

Long (I32)

A

transformační matice. Platí, že MCS=A*ACS+b. Matice musí být čtvercová, regulární a správné dimenze.  [1.0]

Double (F64)

b

transformační vektor. Platí, že MCS=A*ACS+b. Vektor musí být správné dimenze.  [0.0]

Double (F64)

Výstupy

yAxesGroup

Odkaz na skupinu os

Reference

Done

Příznak dokončení algoritmu

Bool

Busy

Příznak, že algoritmus ještě neskončil

Bool

Error

Příznak chyby

Bool

ErrorID

Výsledek poslední operace

Error

i ....

obecná chyba systému REXYGEN

2023 © REX Controls s.r.o., www.rexygen.com