本帖最后由 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文件是因为转换后文件太大,传不上来,最终只能压缩后传附件!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
伺服电机和不带编码器反馈的步进电机不同,停止时是不间断地正反转的,因为正反转的脉冲少并且慢(伺服调好后应该是正负一个脉冲,并且静止时脉冲频率应该尽量低),看起来像是静止一样。
一周热门 更多>