伺服扭矩模式怎么控制_CANOPEN伺服电机位置模式控制方法

3b2ba3d9e06a5e4dfb9cf99a72bec41a.png

在工业现场,伺服电机常被用于处理进行定位控制的场景。这也是伺服电机最基本的使用方式。那么CANOPEN总线型伺服电机是如何通过总线实现电机的定位控制的呢?这里就其实现方法分析给大家。当然,在进行控制使用之前,还应该对电机的参数进行匹配计算,这里不详说,主要分享进行定位控制的过程如何实现。和前面的速度模式一致,进行位置控制模式也需要通过以下操作实现。

  • 设置电机模式
  • 读取电机模式进行模式确认
  • 操作控制字控制电机
  • 读取电机状态字

设置电机模式

电机模式设置通过设置6060h实现。给操作模式6060h设置为1,则将伺服电机的操作模式切换为位置模式。

读取电机模式进行模式确认

对电机操作模式设置完成后,通过读取6061h来确认电机模式是否设置成功。同时,电机的模式仅能通过读取6061h来确认。

操作控制字控制电机

controlword位(6040h)说明如下图所示:

5e63118bf6310321f75fc2c573b608a2.png

控制字的Bit4、5、6、8: 这4位在不同控制模式下,定义不同。位置模式下这4位的释义如下:

36758257d6902d354b3d4154ab073e5f.png

控制字的详细使用方法,请查阅前面分享文章。这里不再累述。

读取电机状态字

电机在位置模式下的状态字(6041h)的有效反馈位分别如下:

103fdb5082dcc60cc6f63ef5f6f4430c.png

给状态位的释义如下表释义:

396c771a70b710da5735dda21bdf51cf.png

电机位置控制相关参数

01c02516751dee674a5842d075da542d.png

target_position:target_position是给定目标位置,该位置可以是相对值,也可以是绝对值,取决于controlword的bit6。

profile_velocity:profile_velocity是指位置启动后,完成加速后最终到达的速度。

end_velocity:end_velocity是到达给定位置(target_ position)时的速度。通常为了在到达给定位置时停止驱动器,该参数设置为0;但在连续多点位置时,该值可以设置成非零值。

profile_acceleration:profile_acceleration是到达给定位置期间的加速度。

profile_deceleration:profile_deceleration是到达给定位置期间的加速度。

quick_stop_deceleration:quick_stop_deceleration是急停(Quick Stop)的减速度。

motion_profile_type:motion_profile_type被用来选择何种速度曲线。目前位置下支持梯形速度曲线(设为0)和固定加加速度的S曲线(设为2)。

profile_jerk1:profile_jerk1被用来设定速度曲线为S形时的加加速度,值越小加减速过程越平稳。

位置模式功能说明

在速度曲线选择为梯形时(motion_profile_type=0),给定目标位置有两种方法:

单步设定: 电机到达目标位置后,驱动器通知主机“目标位置到达”,然后获取新的目标位置并开始运动。在获取新的目标位置前,电机速度通常为零。

af33ef466c10415e342d80c45e51942a.png

单步设定方法的步骤:

1、首先设置网络管理(NMT)状态为“操作(Operational)”,并且设置控制模式参数(6060 h)为1。

2、根据实际需要设置给定目标位置(target_ position :607A h)等参数;

3、将控制字controlword的bit4(new_set_point)设为“1”;bit5(change_set_immediately)设为“0”;bit6(绝对/相对)则由目标位置类型(绝对或相对)而定;

4、在状态字statusword的bit12(set_point_acknowledge)设置好驱动器应答,然后开始执行位置控制;

5、到达目标位置后,驱动器通过状态字statusword的bit10(target_reached)应答。然后依照程序继续运动或接受新的目标位置。

连续设定: 电机到达目标位置后,立即继续朝下一个事先设置好的目标位置运动。这样可达到无停顿的连续运动效果,在两个目标位置之间,电机可以无需减速到零。 以上两种方法都可被控制字(controlword)的bit4、bit5和状态字statusword的bit12 (set_point_acknowledge)实时改变。通过握手机制,可中断正在执行中的位置控制,利用这几个字位重设目标位置并启动执行。

308be5e06a256578a4cad72e9f8f725a.png

连续设定方法的步骤:

1、首先设置网络管理(NMT)状态为“操作(Operational)”,并且设置控制模式参数(6060 h)为1。

2、根据实际需要设置第1个给定目标位置(target_ position :607A h)、目标速度、加/减速等相关参数;

3、将控制字controlword的bit4(new_set_point)设为“1”;bit5(change_set_immediately)设为“0”;bit6(绝对/相对)则由目标位置类型(绝对或相对)而定;

4、在状态字statusword的bit12(set_point_acknowledge)设置好驱动器应答,然后开始执行位置控制;

5、设置第2个给定目标位置(target_ position :607A h)、目标速度、加/减速等相关参数;

6、将控制字controlword的bit4(new_set_point)设为“1”;bit5(change_set_immediately)设为“0”;bit6(绝对/相对)则由目标位置类型(绝对或相对)而定;

7、到达第1个目标位置后,驱动器不停机继续走第2个目标位置控制;当到达第2个目标位置后,驱动器通过状态字statusword的bit10(target_reached)应答。然后依照程序继续运动或接受新的目标位置。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值