跳转至

GTN_SetPosCompareMode

指令原型:

GT_API GTN_SetPosCompareMode(short core,short index,TPosCompareMode *pMode)

指令类型:

立即指令,调用后立即生效。

指令说明:

设置位置比较模式参数。

指令参数说明:

core 核号,正整数,取值范围请参照核号参数范围一栏。
index 位置比较索引号,整数,取值范围请参照位置比较索引号参数范围一栏。
pMode 位置比较模式参数结构体。详情说明请参照TPosCompareMode
TPosCompareMode
typedef struct PosCompareMode
{
    short mode;                       // FIFO模式;Linear模式
    short dimension;                  // 1D,2D
    short sourceMode;                 // 编码器、脉冲计数器
    short sourceX;                    // X轴比较源
    short sourceY;                    // Y轴比较源
    short outputMode;                 // 输出模式:脉冲、电平
    short outputCounter;              // 输出脉冲计数源
    unsigned short outputPulseWidth;  // 输出脉冲宽度,电平模式无效
    unsigned short errorBand;         // 二维位置比较输出误差带
} TPosCompareMode;
mode:位置比较模式。
POS_COMPARE_MODE_FIFO(0):Fifo模式。
由用户压位置比较数据,数据点位置是相对启动位置比较时刻的相对位置。
POS_COMPARE_MODE_LINEAR(1):线性模式。
由用户配置输出间隔、数量和起点位置,起点位置是相对启动位置比较时刻的相对位置。
POS_COMPARE_MODE_EQUIDISTANT_BUFFER_PERMIT(3):pso模式。
在插补缓冲区中压入启动和停止等间距输出指令。
POS_COMPARE_MODE_LINEAR_ABS(8):绝对位置线性模式。
由用户配置输出间隔、数量和起点位置,起点位置是绝对位置。
POS_COMPARE_MODE_LINEAR_PRO(11):高速线性模式。
由用户配置输出间隔、数量和起点位置,起点位置是相对启动位置比较时刻的相对位置。
POS_COMPARE_MODE_PSO_PRO(13):优化pso模式。
如果用户设置了轴平滑,pso启动和停止位置自动适配到平滑后的轨迹。
POS_COMPARE_MODE_FIFO_ABS(14):绝对位置Fifo模式。
由用户压位置比较数据,起点位置是绝对位置。
POS_COMPARE_MODE_FIFO_ABS_STATIC(15):绝对位置静态Fifo模式。
由用户压位置比较数据,起点位置是绝对位置。
dimension:维数,取值范围:1、2、3、5。
sourceMode:位置比较源,取值范围:[0,2]。
0:编码器。
1:脉冲计数器。
2:辅助编码器,目前仅GTM支持。
sourceX:位置比较源x轴索引值。 sourceY:位置比较源y轴索引值。 outputMode:位置比较输出模式。
0:脉冲。
1:电平。
2:电平自动翻转。
4:一串脉冲。
outputCounter:输出脉冲个数,正整数,取值范围[1,32]。当outputMode = 4时有效。
outputPulseWidth:输出脉冲宽度,单位:us。
当outputMode = 0时,每次到位输出一个脉冲,脉宽为设定值。
当outputMode = 4时,每次到位输出“outputCounter”个脉冲。
                    脉冲低电平时间=高电平时间=outputPulseWidth/2。
当outputMode为其他值时时,该变量无效。
errorBand:误差带。
如果是通用版本,取值范围:[0,511]。
如果是支持16位误差带版本,取值范围:[0,65535]。

指令返回值:

请参照通用返回值说明

相关指令:

GTN_SetPosCompareModeEx
GTN_GetPosCompareMode