我惯的女人 发表于 2013-1-18 20:01:38

新手求助帖,关于PID模拟温控的一个思路,希望各位不吝...

刚刚学习PID算法,最开始用红外对管和直流电机,基本上能做到输入一个转速,然后稳定在这个转速附近。感觉再学不到什么了就准备模拟温控。
基本设想是单片机+18B20+电热丝+自制一个带继电器的板子,作为整个系统。继电器控制电热丝的通电,18B20采集温度,反馈给单片机,然后用PID算法程序来控制继电器的通断,达到调节温度的目的。具体细节还不太清楚,就是温度的变化怎样能转变为继电器的导通。其他的看,各位还有什么要指点的,本人不胜感激。谢谢

lcw_swust 发表于 2013-1-18 21:00:52

本帖最后由 lcw_swust 于 2013-1-18 21:04 编辑

温度低于设定值就让继电器接通加热
高于设定值就断开继电器
为了不让继电器通断过于频繁,可加入回差

想加入PID?那就在继电器上加一个低频的PWM信号就是了.
只是这样对继电器不好
如果把继电器换作可控硅,PID控制导通角,那就好办了

我惯的女人 发表于 2013-1-19 08:17:40

lcw_swust 发表于 2013-1-18 21:00 static/image/common/back.gif
温度低于设定值就让继电器接通加热
高于设定值就断开继电器
为了不让继电器通断过于频繁,可加入回差


好的,谢谢你了。可控硅我还没接触过,我在查查资料看看。

coleyao 发表于 2013-1-19 08:39:33

本帖最后由 coleyao 于 2013-1-19 08:43 编辑

5秒钟的PWM周期,继电器完全可以胜任,做试验没问题,如果做产品的话必须用固态继电器或光耦隔离的可控硅,原因是继电器触点的寿命不够。
5秒的PWM总时间,均分为5000份,最小导通时间为1毫秒,继电器开关时间会比该时间略长,但考虑到固态继电器一般是过零触发的,实际导通时间的误差也会在10毫秒左右,不比普通继电器更有优势,因此平时的导通时间为n*1mS(n=0~5000),不过继电器的额定电流一定要大于电热丝的额定电流,否则出现触点粘连或触点打火烧糊了就没法调了!
你要做的就是把n和PID控制拉上关系:温度高了,n减小,温度低了,n增加,其实就是一个负反馈调节过程,注意不要搞成正反馈了,至于调节效果可以改变PID系数慢慢调试,温控调节很费时间的,观察一个过程就要几十分钟!
调节得好,用18B20把温度的稳态精度控制在正负0.5度内是没有问题的(实际显示大多时候是正负0.1度的样子,18B20本身分辨率是0.0625度)。

我惯的女人 发表于 2013-1-19 08:47:21

coleyao 发表于 2013-1-19 08:39 static/image/common/back.gif
5秒钟的PWM周期,继电器完全可以胜任,做试验没问题,如果做产品的话必须用固态继电器或光耦隔离的可控硅, ...

哦,非常感谢。我想着是用有机玻璃围一个密封的空间,(留一个小孔用于散热)温度采集那块放里边。类似于保温箱那种感觉。现在是冬天嘛,我想温度差大,交换的快,对采集这一块应该比较有好处吧

song77 发表于 2013-7-25 10:46:31

首先要有一个加温周期,PID算出的是在一个加温周期中的所占的时间比例。

wt418995874 发表于 2013-7-25 12:18:38

请教下楼主,PID得怎么学习。{:smile:}
页: [1]
查看完整版本: 新手求助帖,关于PID模拟温控的一个思路,希望各位不吝...