PID控制如何改善输出的平滑度?-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2456|回复: 8

[未解决] PID控制如何改善输出的平滑度?

[复制链接]
发表于 2020-9-26 14:42 | 显示全部楼层 |阅读模式
背景介绍:最近做一个温度控制的,设定温度是室外温度T1,波动比较大。需要控制的是一个自带冷却功能的金属板,使金属板温度T2和室外温度T1保持一致。金属板背面贴加热膜,通过改变加热电流I大小来改变加热功率。当金属板温度低于室外温度时(T2<T1),对金属板进行加热(I>0);当金属板温度高于室外温度时(T2>T1),金属板停止加热(I=0),依靠自身冷却功能进行降温。依靠PID算法实现。

存在问题:
现在如果单单做到控温的话问题不大,控制的温差也比较小,但是加热电流会在一个较大的范围内波动,极端的可能会出现开关式的加热,对我的计算结果有较大影响。我需要的是加热电流是一个相对平滑些的渐变过程,当然相对地会牺牲一些温差控制的精度。
已尝试过先对温度T1做移动平均处理,对结果略有改善,但对温度响应会产生少许延迟影响。另外对PID参数的整定也没有好的办法,可能参数的设定也并不合适;用分段PID的话也还使需要PID参数整定。

走过路过的各位望不吝赐教和交流!
发表于 2020-9-28 12:02 | 显示全部楼层
每次有人提问这个,我就送一张网上淘来的图给TA
PID控制器的三个最基本的参数:kP,kI,kD.gif
发表于 2020-9-26 15:08 | 显示全部楼层
我觉得,是否可以在加热条件触发后,做个加热标准延时,标准延时时间*系数,通过调整系数来调整总延时时间,达到间隔均匀加温的状态。
 楼主| 发表于 2020-9-26 15:47 | 显示全部楼层
qqkkdok 发表于 2020-9-26 15:08
我觉得,是否可以在加热条件触发后,做个加热标准延时,标准延时时间*系数,通过调整系数来调整总延时时间 ...

嗯,这是一个思路。我的采样时间间隔是1s,需要记录每一时刻的加热电流,所以每个延时也都是1s。按照你的延时方法,下一循环估计得加很多判断条件,我试试看。
发表于 2020-9-26 17:09 | 显示全部楼层
你既然已经用pid来计算了,那就不要想其他东西了,关键是把pid的3个系数调整好。

如果按照你说的“加热电流会在一个较大的范围内波动”,那就代表d这个系数偏小了。反应到实际情况中,就是当温度上升速度较快的时候,d这个系数可以减小电流,不至于让温度上升太过头。
 楼主| 发表于 2020-9-26 18:51 | 显示全部楼层
开在边缘 发表于 2020-9-26 17:09
你既然已经用pid来计算了,那就不要想其他东西了,关键是把pid的3个系数调整好。

如果按照你说的“加热电 ...

我用matlab建模模拟了下,理论效果还行,到实际中去测又跳的厉害。根据实测结果去调真的是考研耐心和技术,调了很久也不是很理想。这个微分项的系数我再按你说的试试,希望能改善些
发表于 2020-9-27 11:56 | 显示全部楼层
Nathan_Mr 发表于 2020-9-26 15:47
嗯,这是一个思路。我的采样时间间隔是1s,需要记录每一时刻的加热电流,所以每个延时也都是1s。按照你的 ...

实际上,测量有时也会有误差,如果只测量一次,测量结果会有跳动偏差,不如高速测量多次,求平均值,这样测量的结果才相对准确和稳定,对后面PID也才会比较可靠和准确。
 楼主| 发表于 2020-9-28 06:07 | 显示全部楼层
qqkkdok 发表于 2020-9-27 11:56
实际上,测量有时也会有误差,如果只测量一次,测量结果会有跳动偏差,不如高速测量多次,求平均值,这样 ...

恩是的,之前用的热敏电阻,热容小,随温度跳动厉害,1s采样6次然后取了平均,会好很多。热敏电阻准确度低,后面准备换成PT100,准确度会高些。
 楼主| 发表于 2020-9-28 13:10 | 显示全部楼层
上海老王 发表于 2020-9-28 12:02
每次有人提问这个,我就送一张网上淘来的图给TA

谢谢,这个很直观。原理是懂的,就是具体调起来比较麻烦,这种设定值是固定的还好一些。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-30 01:49 , Processed in 0.083382 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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