CMC5401-M4PLUS 基于TC6014的四轴运动控制器的部分写函数(二)

2.8 输出脉冲数/插补结束点设定

输出脉冲数设置:设定在定长脉冲驱动时总的输出脉冲数。该值为绝对无符号数。驱动方向由命令绝对。输出脉冲数可以在驱动过程中改变。

函数原型

u8 TC6014_SetOutputPulseNumber(u8 axis,u32 data)

说明

设置指定轴在定长脉冲输出时的脉冲数

参数

axis:AXIS_X--X轴,AXIS_Y--Y轴,AXIS_Z--Z轴,AXIS_U--U轴,AXIS_ALL--所有轴

data:要设置的脉冲数。范围:0~4,294,967,295

返回值

返回0表示data大于最大范围值,返回1表示参数正确

示例

设置X轴的输出脉冲数为20000:

TC6014_SetOutputPulseNumber(AXIS_X,20000);

函数原型

u8 TC6014_SetInpFinishPoint(u8 axis,s32 data)

说明

设置指定轴的插补终点

参数

axis:AXIS_X--X轴,AXIS_Y--Y轴,AXIS_Z--Z轴,AXIS_U--U轴,AXIS_ALL--所有轴

data:要设置的插补终点。范围: −2,147,483,646 ~ +2,147,483,646

返回值

返回0表示data大于最大范围值,返回1表示参数正确

示例

设置X轴的插补终点为10000:

TC6014_SetInpFinishPoint(AXIS_X,10000);

2.9 手动减速点设定

    在定长脉冲驱动设定手动减速模式并设定手动减速点。

手动减速点计算:

手动减速点=输出脉冲数-减速脉冲数

函数原型

u8 TC6014_SetManualDecelPoint(u8 axis,s32 data)

说明

设置指定轴手动减速点, 手动减速模式下设置定长脉冲加/减速驱动减速点。

参数

axis:AXIS_X--X轴,AXIS_Y--Y轴,AXIS_Z--Z轴,AXIS_U--U轴,AXIS_ALL--所有轴

data:要设置的手动减速点,范围:-2,147,483,646 ~ +2,147,483,646

返回值

返回0表示data小于最小范围值,返回1表示参数正确,返回2表示data大于最大范围值

示例

设置X轴的手动减速点为15000:

TC6014_SetManualDecelPoint(AXIS_X,15000);//输出了15000个脉冲后减速

2.10 圆心设定

在进行圆弧插补时要设定圆弧插补的圆心。当前位置的坐标为(0,0),圆心的坐标是基于当前位置的相对值。因为圆弧插补是2轴的,圆心是由2个坐标点确定的。所以在写入圆心坐标时要先指定相应的轴。

函数原型

u8 TC6014_SetInpCenterPoint(u8 axis,s32 Center)

说明

设置指定轴的圆心点

参数

axis:AXIS_X--X轴,AXIS_Y--Y轴,AXIS_Z--Z轴,AXIS_U--U轴

Center:要设置的圆心点坐标,范围:-2,147,483,646 ~ +2,147,483,646

返回值

返回0表示Center小于最小范围值,返回1表示参数正确,返回2表示Center大于最大范围值

示例

设置X轴、Y轴的圆心点为(500,0),当前位置为(0,0),则此半径为500:

TC6014_SetInpCenterPoint(AXIS_X,500);

TC6014_SetInpCenterPoint(AXIS_Y,0);

2.11 逻辑位置计数器设定

逻辑位置计数器的值随正/反方向脉冲增加/减少。可以随时改变逻辑位置计数器值,也可以随时获取逻辑位置计数器值。 

函数原型

u8 TC6014_SetLogicPosition(u8 axis,s32 data)

说明

设置指定轴逻辑位置计数器值

参数

axis:AXIS_X--X轴,AXIS_Y--Y轴,AXIS_Z--Z轴,AXIS_U--U轴,AXIS_ALL--所有轴

data:要设置的逻辑位置值,范围 -2,147,483,646 ~ +2,147,483,646

返回值

返回0表示data小于最小范围值,返回1表示参数正确,返回2表示data大于最大范围值

示例

设置X轴的逻辑位置计数器为10000:

TC6014_SetLogicPosition(AXIS_X,10000) ;

2.12 实际位置计数器设定

实际位置计数器的值随编码器输入脉冲的反馈值而曾加/减少。可以随时改变逻辑位置计数器值,也可以随时获取逻辑位置计数器值。

函数原型

u8 TC6014_SetRealPosition(u8 axis,s32 data)

说明

设置指定轴实际位置计数器值

参数

axis:AXIS_X--X轴,AXIS_Y--Y轴,AXIS_Z--Z轴,AXIS_U--U轴,AXIS_ALL--所有轴

data:要设置的实际位置值,范围 -2,147,483,646 ~ +2,147,483,646

返回值

返回0表示data小于最小范围值,返回1表示参数正确,返回2表示data大于最大范围值

示例

设置X轴的实际位置计数器为10000:

TC6014_SetRealPosition(AXIS_X,10000) ;

2.13 COMP+寄存器设定

  • COMP+寄存器函数

函数原型

u8 TC6014_SetPosCompReg(u8 axis,s32 data)

说明

设置指定轴正向比较寄存器COMP+值。比较寄存器值一般用于软限位,轴中断,同步触发条件

参数

axis:AXIS_X--X轴,AXIS_Y--Y轴,AXIS_Z--Z轴,AXIS_U--U轴,AXIS_ALL--所有轴

data:要设置的COMP+值,范围 -2,147,483,646 ~ +2,147,483,646

返回值

返回0表示data小于最小范围值,返回1表示参数正确,返回2表示data大于最大范围值

示例

设置X轴的正向比较器值为2000:

TC6014_SetPosCompReg(AXIS_X,2000) ;

2.14 COMP-寄存器设定

  • COMP-寄存器函数

函数原型

u8 TC6014_SetNegCompReg(u8 axis,s32 data)

说明

设置指定轴负向比较寄存器COMP-值。比较寄存器值一般用于软限位,轴中断,同步触发条件

参数

axis:AXIS_X--X轴,AXIS_Y--Y轴,AXIS_Z--Z轴,AXIS_U--U轴,AXIS_ALL--所有轴

data:要设置的COMP-值,范围 -2,147,483,646 ~ +2,147,483,646

返回值

返回0表示data小于最小范围值,返回1表示参数正确,返回2表示data大于最大范围值

示例

设置X轴的负向比较器值为2000:

TC6014_SetNegCompReg(AXIS_X,2000) ;

2.15 加速度偏移计数器设定

函数原型

u8 TC6014_SetAccelOffset(u8 axis,s32 Offset)

说明

设置指定轴加速度计数器偏移值

参数

axis:AXIS_X--X轴,AXIS_Y--Y轴,AXIS_Z--Z轴,AXIS_U--U轴,AXIS_ALL--所有轴

Offset:要设置的偏移脉冲值,范围: -32767~32767

返回值

返回0表示data小于最小范围值,返回1表示参数正确,返回2表示data大于最大范围值

示例

设置X轴的加速度偏移计数器值为2000:

TC6014_SetAccelOffset(AXIS_X,2000) ;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值