使用绝对式编码器控制电机无限旋转

使用绝对式编码器控制电机无限旋转

工具

使用松下MINAS A6B 系列驱动器,可以通过PANATERM ver.6.0设置对象。
使用绝对式编码器要安装电池。安装电池后,需要在设备初次启动时进行多圈数据清零。

绝对式编码器设定

3015h对象,绝对式编码器设定说明:

说明
0绝对式模式
1增量模式
2绝对式模式(无视多圈计数溢出)
3绝对式模式(1 圈绝对值)
4绝对式模式(无限圈绝对值)

把3015h对象设置为4,绝对式模式(无限圈绝对值)

上限值设定

3688h对象,绝对式编码器多圈数据上限值(Absolute encoder multi-turn data upper-limit value)

单圈数据,数据宽度为23bit,范围为0~8388607.
多圈数据,数据宽度为16bit,范围为0~65535.
因为单圈数据和多圈数据都有范围,一直往一个方向旋转,总有溢出的时候,不可能无限旋转。
旋转轴是在0~360°之间,所以我们配置下限和上限值。当移动达到上限值时,再移动1个脉冲,当前位置就变为下限值。如图:
Wrap-aroud 处理事例(无限旋转绝对式模式)

607Bh-01h(Min position range limit) = 0h
607Bh-02h(Max position range limit) = 8388608 / 电子齿轮比 × (3688h+ 1)-1 – 公式1

我设置的电机转1°,需要1188386.13333333333个脉冲,电子齿轮比为1,所以转一圈需要1188386.13333333333 * 360 = 427819007.9999999个脉冲,即607Bh-02h=427819007(0 ~ 427819007之间有427819008个脉冲),根据公式1,计算出3688h=50.

所以把3688h对象设置为50.
注:607Bh-02h无限旋转绝对式模式下自动设定内部处理的计算值。所以我们设置3688h为50后,607Bh-02h自动设置为427819007.

重启驱动器

设置好后,掉电重启驱动器才生效。

总结

设置好3015h和3688h后,0 ~ 427819007(指令单位)之间对应0 ~ 360°,1个脉冲对应8.414e-7度,也就是精度。这样就可以无限旋转了。
运动时,有正负,也有大于360°,要把其映射到0 ~ 360°之间;再把度转换为脉冲后,脉冲值在0 ~ 427819007范围内;最后把脉冲值传给607Ah(Target position)。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值