固高运动控制卡学习1--运动模式介绍(1)--点位,Gear,Jog,插补

        运动模式是指规划一个或多个轴运动的方式。 运动控制器支持的运动模式有点位运动模式、 Jog运动模式、电子齿轮(即 Gear) 运动模式和插补运动模式 GT_PrfTrap 设置指定轴为点位模式GT_PrfJog 设置指定轴为 Jog 模式GT_PrfGear 设置指定轴为电子齿轮模式GT_GetPrfMode 查询指定轴的运动模式        在设置或切换运动模式时,要保证轴处于...
摘要由CSDN通过智能技术生成

        运动模式是指规划一个或多个轴运动的方式。 运动控制器支持的运动模式有点位运动模式、 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

    例程:将第 轴设定为点位运动模式,并且以速度 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 运动模式下的运动参数
  • 29
    点赞
  • 179
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值