搜索
bottom↓
回复: 9

请各位大佬来看看这个PID参数该怎么继续调整。

[复制链接]

出0入18汤圆

发表于 2019-8-22 10:43:55 | 显示全部楼层 |阅读模式
用增量式PID来控制一个电机转速, 控制目标是PWM脉宽(0~800)
反应滞后很多是因为对输出做了限幅,希望电机转速变化平稳一点。这个可以不去管它。
问题是
1. 每次速度上调,实际转速的波形有一段保持水平,这个是何缘故。
2. 达到设定值后,转速还有一点上下波动。
3. 在低转速时,输出PWM非常小,可调量也非常小,会出现转速突然拉高很多,这个如何解决。
我PID参数调来调去,依然不是很理想,请各位大佬来指点一下方向。







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出235入235汤圆

发表于 2019-8-22 11:25:23 | 显示全部楼层
上位机自己写的吗?挺好看的。

出0入18汤圆

 楼主| 发表于 2019-8-22 11:42:18 | 显示全部楼层
lyping1987 发表于 2019-8-22 11:25
上位机自己写的吗?挺好看的。

上位机用LABVIEW随便糊弄了一个,自己用起来倒比较方便。

出100入85汤圆

发表于 2019-8-22 11:47:45 | 显示全部楼层
上位机不错

出0入18汤圆

 楼主| 发表于 2019-8-22 11:55:12 | 显示全部楼层
PID代码用的是网上比较常用的

iError = ((s16)iTargetSpd - (s16)iMeasuredSpd);
Ep = iError - iLastError;
Ed = iError - 2 * iLastError + iPrevError;
       
iIncPID = (s16)(Kp * (float)Ep + Ki * (float)iError + Kd * (float)Ed);
iPrevError = iLastError;
iLastError = iError;

出0入0汤圆

发表于 2019-8-22 14:18:34 | 显示全部楼层
从图上看,响应时间有点长,适当调大KP,设定值附近波动明显,有可能是积分KI过大导致,适当减小,也可以通过调大KD减缓波动。

出0入0汤圆

发表于 2019-8-22 14:20:27 | 显示全部楼层
补充一点,PID调节肯定存在设定值附近波动的,不然就不叫PID调节了,只是把这个波动调节到能接受范围

出0入0汤圆

发表于 2019-8-22 14:25:55 | 显示全部楼层
第三张图,KP过大,KI不够。出现的速度尖峰,也有可能是其它的原因导致,比如低转速的时候,你测转速的方式有问题,没有测到转速为0,也会出现这种情况

出0入0汤圆

发表于 2019-8-22 14:31:03 | 显示全部楼层
唉, 我现在就卡在PID自整定上,想了很多方案都不行,,,

出0入18汤圆

 楼主| 发表于 2019-8-24 09:28:01 | 显示全部楼层
hubeinifei1987 发表于 2019-8-22 14:25
第三张图,KP过大,KI不够。出现的速度尖峰,也有可能是其它的原因导致,比如低转速的时候,你测转速的方式 ...

谢谢大佬,分析下可能是如你所说,在低速下,有可能PWM过低,电机会暂时停转,然后转速突然蹿上去。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 07:29

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表