跳转至

GTN_GetGroupSuperposition

指令原型:

GT_API GTN_GetGroupSuperposition(short core,short group, ,short coordSystem,short index,TGroupSuperposition *pGroupSuperposition)
指令类型:

group指令。

指令说明:

读取group的叠加功能参数。

指令参数说明:

core 核号,正整数,取值范围请参照核号参数范围一栏。
group group号,正整数,取值范围请参照group号参数范围一栏。
coordSystem 叠加坐标系。
COORD_SYSTEM_ACS(2):轴坐标系。
COORD_SYSTEM_MCS(1):机床坐标系,为笛卡尔坐标系。
COORD_SYSTEM_PCS(0):工件坐标系,为笛卡尔坐标系。
COORD_SYSTEM_TCS(3):工具坐标系,为笛卡尔坐标系。
COORD_SYSTEM_MVCS(10):运动坐标系,为笛卡尔坐标系。
运动坐标系的确定如下:
1. 原点:当前规划位置。
2. X轴方向:运动方向。
3. Y轴方向:X-Z平面的法向量,X-Z平面为X轴与当前姿态方向所组成的平面。
4. Z轴方向:根据X轴和Y轴通过右手螺旋法则得到。
index 叠加表索引,取值范围:[1,4]。
pGroupSuperposition 查表叠加参数结构体指针。详情说明请参照TGroupSuperposition
TGroupSuperposition
typedef struct GroupSuperposition
{
    short enable;
    short mode;
    short pad[2];
    double smoothTime;
    TGroupSuperpositionUnion data;
}TGroupSuperposition;
enable:叠加是否使能,0:不使能,1:使能。
mode:叠加模式。
GROUP_SUPERPOSITION_MODE_DIRECT(0):直接叠加,叠加设置的叠加值。
GROUP_SUPERPOSITION_MODE_WEAVE(1):摆弧叠加,叠加通过由指令GTN_ SetGroupWeaveParameter描述的摆弧参数摆弧叠加坐标系必须设置为运动坐标系。
GROUP_SUPERPOSITION_MODE_WEAVE_EX(2):摆弧叠加扩展,叠加通过由指令GTN_ SetGroupWeaveParameter描述的摆弧叠加坐标系必须设置为运动坐标系。
GROUP_SUPERPOSITION_MODE_TABLE(3):查表叠加,叠加坐标系必须设置为运动坐标系。
GROUP_SUPERPOSITION_MODE_DIRECT_RELATIVE(10):相对叠加模式。
pad:保留参数,必须为0。
smoothTime:平滑时间,对叠加值进行平滑。单位:ms,范围:[0,32]。
data:叠加参数。
当mode为GROUP_SUPERPOSITION_MODE_DIRECT,详情说明请参照TGroupSuperpositionValueDirect
TGroupSuperpositionValueDirect
typedef struct GroupSuperpositionValueDirect
{
    double value[8];
    double reserve[24];
} TGroupSuperpositionValueDirect;
value:设置叠加坐标系下的位置和姿态,姿态通过欧拉角ZYX模式描述。
reserve:保留参数,必须为0。

当mode为GROUP_SUPERPOSITION_MODE_WEAVE_EX,详情说明请参照TGroupSuperpositionWeaveEx
TGroupSuperpositionWeaveEx
typedef struct GroupSuperpositionWeaveEx
{
    short mode;
    short pad[3];
    double time;
    double velocity;
    double reserve[29];
}TGroupSuperpositionWeaveEx;
mode:摆弧叠加子模式。
0:摆弧叠加模式,与GROUP_SUPERPOSITION_MODE_WEAVE模式功能相同。
1:预摆弧模式。
pad:保留参数,必须为0。
time:预摆弧模式的持续时间。
velocity:预摆弧模式的速度。
reserve:保留参数,必须为0。

当mode为GROUP_SUPERPOSITION_MODE_TABLE,详情说明请参照TGroupSuperpositionTable
TGroupSuperpositionTable
typedef struct GroupSuperpositionTable
{
    short mode;
    short startIndex; // 起始叠加表的索引
    short count; 
    short reserve1[5];
    double time; // 预叠加模式的持续时间
    double velocity; // 预叠加模式的速度
    double reserve2[28];
}TGroupSuperpositionTable;
mode:查表叠加子模式。
0:普通模式。
1:预叠加模式。
startIndex:起始叠加表的索引。
count:叠加表数量,count=1时,表示循环叠加索引为startIndex的表,count>1时,则表示依次叠加从startIndex开始的count个。
reserve1:保留参数,必须为0。
time:预叠加模式的持续时间。
velocity:预叠加模式的速度。
reserve2:保留参数,必须为0。

指令返回值:

请参照通用返回值说明