GTN_BufWaitDi¶
指令原型:
GT_API GTN_BufWaitDi(short core, short crd, short diType, unsigned short diIndex, unsigned short level, short continueTime, long overTime, short flagMode, long segNum, short fifo)
指令类型:
插补缓冲区指令。
指令说明:
设置缓冲区等待外部输入信号。
1.如果在等待过程中,用户暂停了插补运动,当再继续开始插补运动时,将会继续上一次的等待。
2.如果在等待过程中,用户暂停了插补运动,使用指令GTN_GetBufWaitDiStatus读取的enable仍然为1,以用于标识是否有未结束的等待过程,该标识可以使用指令GTN_ClearBufWaitStatus清除。
指令参数说明:
| core | 核号,正整数,取值范围请参照核号参数范围一栏。 |
|---|---|
| crd | 插补坐标系号,正整数,取值范围请参照插补坐标系号参数范围一栏。 |
| diType | 输入资源类型: |
| diIndex |
输入资源序号,取值范围根据diType而定:MC_GPI(4):通用输入。 取值范围请参照通用输入(MC_GPI)参数范围一栏。 MC_MPG(9):手轮输入。 取值范围请参照手轮DI(MC_MPG)参数范围一栏。 |
| level | 信号有效电平,取值范围:[0, 1]。 |
| continueTime | 信号保持时间,单位:控制器的中断周期。 |
| overTime |
信号超时时间,单位:控制器的中断周期,例如:控制器的中断周期为250μs,则overTime=1表示250μs。 0:一直等待,直到检测到信号才继续运行后面的指令,等待时坐标系运行状态、坐标轴规划运行状态置起,使用指令GTN_GetBufWaitDiStatus读取的enable为1、count为计时的周期次数。 >0:超时后继续运行后面的指令。 |
| flagMode |
模式。
0:立即模式。 执行到这条指令时,停止运动、检测外部输入信号是否满足。 1:标识模式。 a. 执行到这条指令时仅置起检测标识,在执行下一运动段时才进行检测。 b. 如果检测到信号,则继续运行;如果没检测到信号,则减速停止。 c. 在减速停止时,如果本段剩余距离足够停止下来,则停止在本段终点,否则停止到后面运动段内。 d. 如下情况能够停止在本段终点: 1. 本段剩余距离大于减速至零的距离. 2. 本段速度由零开始加速,加速过程中计算剩余距离是否足够减速停止,否则进入减速规划。 e. 如下情况需停止到后面运动段内: 在本段之前,已加速到了一定速度,但本段的全部行程较短,且不足以由该速度降速至零。 |
| segNum | 用户段号。 |
| fifo | 插补缓存区序号。默认值为0,整数,取值范围请参照插补缓存区序号参数范围一栏。 |
指令返回值:
请参照通用返回值说明。
注意事项: