运动模式是指规划一个或多个轴运动的方式。 运动控制器支持的运动模式有点位运动模式、 Jog运动模式、电子齿轮(即 Gear) 运动模式和插补运动模式
GT_PrfTrap | 设置指定轴为点位模式 |
GT_PrfJog | 设置指定轴为 Jog 模式 |
GT_PrfGear | 设置指定轴为电子齿轮模式 |
GT_GetPrfMode | 查询指定轴的运动模式 |
在设置或切换运动模式时,要保证轴处于规划静止状态。如果轴正在运动,请先调用GT_Stop 指令停止一个或多个轴的运动,然后再调用上表中的指令切换到想要的运动模式下。
一·、点位模式(PT)
每一个轴在规划静止时都可以设置为点位运动。在点位运动模式下,各轴可以独立设置目标位置、目标速度、加速度、减速度、起跳速度、平滑时间等运动参数,能够独立运动或停止。
GT_PrfTrap | 设置指定轴为点位运动模式 |
GT_SetTrapPrm | 设置点位运动模式下的运动参数 |
GT_GetTrapPrm | 读取点位运动模式下的运动参数 |
GT_SetPos | 设置目标位置 |
GT_GetPos | 读取目标位置 |
GT_SetVel | 设置目标速度 |
GT_GetVel | 读取目标速度 |
GT_Update | 启动点位运动 |
JOG模式关键程序步骤:
(1)配置运动控制器 --GT_LoadConfig
(2)将 AXIS 轴设为点位模式 --GT_PrfTrap
(3)设置需要修改的运动参数 --GT_GetTrapPrm
public struct TTrapPrm
{
public double acc;//加速度
public double dec;//减速度
public double velStart;//起始速度
public short smoothTime;//平滑时间
}
(4)设置 AXIS 轴的目标位置 --GT_SetPos
(5)设置 AXIS 轴的目标速度 --GT_SetVel
(6)启动AXIS轴运动 --GT_Update
(7)等待AXIS轴规划停止
(8)电机伺服关闭 --GT_AxisOff
例程:将第 1 轴设定为点位运动模式,并且以速度 50pulse/ms,加速度 0.25pulse/ms2,减速度0.125pulse/ms2,平滑时间为 25ms 的运动参数正向运动 50000 个脉冲。
int main(int argc, char* argv[])
{
short sRtn;
TTrapPrm trap;
long sts;
double prfPos;
// 1、打开运动控制器
sRtn = GT_Open();
//2、复位运动控制器
sRtn = GT_Reset();
commandhandler("GT_Reset", sRtn);
//3、 配置运动控制器
// 注意:配置文件取消了各轴的报警和限位
sRtn = GT_LoadConfig("test.cfg");
// 4、清除各轴的报警和限位
sRtn =GT_ClrSts(1, 8);
///5、伺服使能
sRtn =GT_AxisOn(AXIS);
// 位置清零
sRt6、n = GT_ZeroPos(AXIS);
//7、将 AXIS 轴设为点位模式
sRtn = GT_PrfTrap(AXIS);
//8、读取点位运动参数(需要读取所有运动参数到上位机变量)
sRtn = GT_GetTrapPrm(AXIS, &trap);
//9、设置需要修改的运动参数
trap.acc = 0.25;
trap.dec = 0.125;
trap.smoothTime = 25;
//10、设置点位运动参数
sRtn = GT_SetTrapPrm(AXIS, &trap);
//11、设置 AXIS 轴的目标位置
sRtn = GT_SetPos(AXIS, 50000L);
//12、设置AXIS轴的目标速度
sRtn = GT_SetVel(AXIS, 50);
//13、启动AXIS轴的运动
sRtn = GT_Update(1<<(AXIS-1));
do
{
// 读取AXIS轴的状态
sRtn = GT_GetSts(AXIS, &sts);
// 读取AXIS轴的规划位置
sRtn = GT_GetPrfPos(AXIS, &prfPos);
printf("sts=0x%-10lxprfPos=%-10.1lf\r", sts, prfPos);
}while(sts&0x400);
//14、等待AXIS轴规划停止
//15、伺服关闭
sRtn = GT_AxisOff(AXIS);
printf("\nGT_AxisOff()=%d\n", sRtn);
getch();
return 0;
}
二、JOG运动模式
在 Jog 运动模式下,各轴可以独立设置目标速度、加速度、减速度、平滑系数等运动参数,能够独立运动或停止
GT_PrfJog | 设置指定轴为 Jog 运动模式 |
GT_SetJogPrm | 设置 Jog 运动模式下的运动参数 |