分享一个运动控制器带伺服马达作随动的半成品的运行情况

2019-12-15 10:59发布

本帖最后由 coleyao 于 2018-11-23 08:40 编辑

  分享一个运动控制器的半成品的视频,做过步进电机PID控制和温度PID控制,本来以为做伺服电机随动的运动控制器是手到擒来,没想到还是费了很多周折(伺服电机驱动器MR-J2S-40A和电机是三菱的,运动控制器的单片机是stm32F103):
    一、一开始,板子焊好,写好程序,排除掉编译错误后运行发现马达只能往一边运行,并且零位时有蠕动现象,这个找马达驱动器资料,上官网(这里编码器的差分驱动转单端驱动是个坑);
    二、解决了马达只能单方向转动和零位蠕动之后发现,用EXcel数据表仿真好的PID参数实际运行时完全不对,具体表现是运行跟随模式时可以较好地跟随,但本应静止时高速抖动,并且一开机就会抖动,感觉像自激,但是和仿真结果不符,找不到原因(思路:读取一路编码器,计算其位置和速度,再读取另外一路编码器的位置和速度,让一路编码器的位置始终跟随另一路编码器的位置,误差越小越好,按理说只要做位置PID伺服就可以了,结果使用Excel表格数据仿真效果较理想如附图,但实际运行时马达运动时正常,本应静止的时候却总是剧烈抖动,仿真与实际运行完全不符,有谁知道原因的,麻烦告知一下,虽然我不一定听得懂);
    三、最终只能改变PID调节策略,由单独的位移PID伺服改成位移PID伺服加上速度PID伺服双重PID伺服,改完后效果如附件内动画所示(驱动器上后2-3位数闪是因为马达自带的编码器线数很高,是131072脉冲每圈)。
以上作为一个阶段笔记,也是想感慨一下每一个小东西看起来简单,其实或多或少都有它的独特的难点需要花时间和精力去克服!
  另外,附件中mp4文件没有转成gif文件是因为转换后文件太大,传不上来,最终只能压缩后传附件!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
coleyao
1楼-- · 2019-12-16 14:19
jswd0810 发表于 2018-11-23 10:39
静止时剧烈抖动是不是因为你的伺服刚性调得太大了,你可以把伺服的位置增益和速度增益调小一点,像安川的伺 ...

  伺服大多数参数用的默认参数,没有调整,另外也不想调低刚性,避免发生其它如随动性能变差等情形。
jswd0810
2楼-- · 2019-12-16 15:31
 精彩回答 2  元偷偷看……
coleyao
3楼-- · 2019-12-16 20:33
本帖最后由 coleyao 于 2018-11-23 09:43 编辑
colinzhao 发表于 2018-11-23 09:00
本身伺服已经有PID ,还外部来个PID有什么作用呢?若是补偿用,那就随便调就好了,速度慢就行,这涉及稳定 ...


  只借用驱动器的电流伺服,另外两个位置伺服和速度伺服无视电机驱动器本身的伺服,由运动控制器控制,电机驱动器调成兼容步进电机的方向+脉冲控制方式,主要目的是用控制器取代PLC,并没有想做驱动器,另外虽然三菱电机驱动器可以直接使用编码器跟随方式,但切换不方便,还是带一个运动控制器或PLC使用起来更方便些.
coleyao
4楼-- · 2019-12-16 21:40
本帖最后由 coleyao 于 2018-11-23 10:00 编辑
marshallemon 发表于 2018-11-23 09:01
静止时不发脉冲,电机还会抖动?


  伺服电机和不带编码器反馈的步进电机不同,停止时是不间断地正反转的,因为正反转的脉冲少并且慢(伺服调好后应该是正负一个脉冲,并且静止时脉冲频率应该尽量低),看起来像是静止一样。
marshallemon
5楼-- · 2019-12-16 23:50
coleyao 发表于 2018-11-23 08:52
stm32做的运动控制器,只发脉冲,控制运行方向,不是电机驱动器。

静止时不发脉冲,电机还会抖动?
colinzhao
6楼-- · 2019-12-17 01:57
本身伺服已经有PID ,还外部来个PID有什么作用呢?若是补偿用,那就随便调就好了,速度慢就行,这涉及稳定性的问题,零极点,但事实上不知道伺服的带宽,所以靠调。

一周热门 更多>