跳转至

GTN_MoveGateAbsolute

指令原型:

GT_API GTN_MoveGateAbsolute(short core,short group,double endPoint[],
TGatePrm *pGatePrm,TGroupMoveParameter *pPrm,TListInfo *pListInfo)

指令类型:

group指令。

指令说明:

绝对位置模式的门型轨迹插补。

指令参数说明:

core 核号,正整数,取值范围请参照核号参数范围一栏。
group group号,正整数,取值范围请参照group号参数范围一栏。
endPoint 圆弧的终点位置。大小为8的数组,单位:mm或度。位置的意义通过 GTN_SetGroupCommandPosDefine指令指定。
pGatePrm 门型轨迹描述参数结构体指针。详情说明请参照TGatePrm
TGatePrm
typedef struct TGatePrm
{
    short mode;
    short pad[3]; //对齐
    TGateUnion data;
}TGatePrm;
mode:门型轨迹描述模式。GATE_MODE_NORMAL(0):通用模式。
pad:保留参数,必须为0。
data:不同门型轨迹描述模式参数联合体。详情说明请参照TGateUnion
TGateUnion
typedef union TGateUnion
{
    TGate gate;
    double data[32];
} TGateUnion;
gate:通用模式的描述参数。详情说明请参照TGate
TGate
typedef struct TGate
{
    double h1;
    double h2;
    double h3;
    double k1;
    double k2;
    short curveMode;
    short oriChangeMode;
    short reserve1[6];
    double reserve2[8];
}TGate;
h1:起点垂直提升高度,单位:mm。
h2:终点垂直下降高度,单位:mm。
h3:两段曲线段的最小过渡高度,单位:mm。
k1:上升曲线段平移量占平移段的百分比,范围:(0,1)。
k2:下降曲线段平移量占平移段的百分比,范围:(0,1)。
curveMode:过渡曲线模式。范围:[0,1]。目前只支持模式1。
0:圆弧过渡。
1:样条曲线过渡。
oriChangeMode:姿态变化模式。范围:[0,1]。建议设置为模式0。
0:姿态在整个门型轨迹过程中变化。
1:姿态在非垂直上升和垂直下降的阶段中变化。
reserve1:保留参数,必须为0。
reserve2:保留参数,必须为0。

data:保留参数,必须为0。

pPrm 运动参数结构体指针。详情说明请参照TGroupMoveParameter
TGroupMoveParameter
typedef struct GroupMoveParameter
{
    double velocity;
    double acceleration;
    double reserve1[3];
    double deceleration;
    short overrideSelect;
    short endVelocityMode;
    short orientationDir;
    short reserve2[3];
    long reserve3[3];
} TGroupMoveParameter;
velocity:速度。当规划坐标系为COORD_SYSTEM_PCS或COORD_SYSTEM_MCS,且空间位置有运动量时,单位为mm/s。 当空间位置不动,只有姿态插补时,速度参数意义由纯姿态插补速度定义模式决定。当规划坐标系为COORD_SYSTEM_ACS时,速度参数意义为各个轴的合成速度。
acceleration:加速度。当规划坐标系为COORD_SYSTEM_PCS或COORD_SYSTEM_MCS,且空间位置有运动量时,单位为,单位mm/s2。 当空间位置不动,只有姿态插补时,加速度参数意义由纯姿态插补加速度定义模式决定。当规划坐标系为COORD_SYSTEM_ACS时,加速度参数意义为各个轴的合成加速度。
reserve1:保留参数,必须为0。
deceleration:减速度。当规划坐标系为COORD_SYSTEM_PCS或COORD_SYSTEM_MCS,且空间位置有运动量时,单位为,单位mm/s2。 当空间位置不动,只有姿态插补时,减速度参数意义由纯姿态插补减速度定义模式决定。当规划坐标系为COORD_SYSTEM_ACS时,减速度参数意义为各个轴的合成减速度。
overrideSelect:倍率选择,范围:[0,16],0表示不受倍率影响。
endVelocityMode:终点速度模式,范围:[0,1],0:前瞻使能时,终点速度由前瞻模块决定,1:终点速度为0。
orientationDir:姿态变化方向,范围:[0,1],0:短路径方向,1:长路径方向。
reserve2:位置有效轴掩码,0:所有轴的位置都生效,非0:按位生效, 对应指定位的轴的终点位置pos生效。
reserve3:起点位置模式,范围:[0,1],0:默认模式,1:执行到该指令时,根据当前的位置作为起点位置进行插补运动,仅在指令流模式下生效。
pListInfo 指令流信息结构体指针。详情说明请参照TListInfo
TListInfo
typedef struct  
{
    short list; 
    short reserve1[2];
    short modal;
    long segNum;
    long reserve2[3];
    double reserve3[4];
} TListInfo;
list:指令压入的指令流号,取值范围:[0, 4]。
当pListInfo为空或者list=0时,指令为立即指令,调用后立即生效。
当list>0时,指令为list指令,调用后被发送到指令流中,在启动指令流后顺序执行到该指令才生效。
modal:为1时表示阻塞指令流,等待当前指令完成。本指令不需要设置此参数。
segNum:指令段号,取值范围:[-2147483648, 2147483647]。
reserve1:保留参数,必须为0。
reserve2:保留参数,必须为0。
reserve3:保留参数,必须为0。

指令返回值:

请参照通用返回值说明

注意事项: