在上一篇的速度PID控制的文章中,我们已经介绍了关于PID指令以及相关参数的具体应用。所以本篇文章,主要是给出程序部分。

首先在给出程序之前,我们先了解一下以下几个概念:

1.市电电压的过零性:我们平常在用的市电电压为交流220V,它的频率是50HZ,因此1秒种内,它会出现50个正弦波形,得出每个波形的周期是20ms,而过零性的现象就是:当在每个上半波形或者下半波形内,如果此时固态继电器需要关断或者导通,那么是不能马上关断或者导通的,必须等到过了下一个零点后,才能关断或者导通。因此,我们当我们用固态继电器控制市电时,必须考虑将导通时间大于10ms。

2.PWM指令:PWM S1 S2 D,其中S1是脉宽,S2是周期,它们的单位都是ms。所以根据上面说的过零性,S1的值必须大于10才行。S1➗S2✖️额定功率实时输出功率,当S1S2时,就是全功率运行。另外,S2不能过长,因为它是以ms为单位,比如,将S1设置为1000,S2设置为10000,看似很合理,输出功率10%,感觉能把水加热,但是实际情况是,1秒加热,99秒不加热,那你说,这能加热到目标温度吗?显然不行。所以,一般我们将S2设置成1000。

好了,我们言归正传,下面是FX3U-4AD模块参数设置:

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(1)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(2)

#0:由于我的温度变送器是4-20ma的量程,因此我们将4号通道设置成3。

#5:我们选择平均次数,平均次数根据需求来,可以设的大点,这样温度变化就能稳定一些。

#13:通道4的实时温度数据。

硬件接线:主要是4AD和温度变送器的接线。固态继电器的太简单,就不画出来了。

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(3)

模拟量算法:

4AD输入的是4ma-20ma,对应量程是0-16000。

温度变送器也是4ma-20ma,对应量程是-50°到400°。

因此我们直接略过4ma-20ma这组数据,直接让0-16000和-50°-400°进行耦合。

根据斜率方程式y=kx b,然后得到两组列算式:

-50=0*k b

400=16000*k b

最后得出温度的计算公式:当前温度=(#13号数据*9)/320-50

有了上面的公式,我们就可以进行编程了,下面会贴出2种自整定的方法:

对了,提一句:加热是逆动作,制冷是正动作!

首先是极限循环法:

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(4)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(5)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(6)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(7)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(8)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(9)

最后是阶跃响应法:

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(10)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(11)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(12)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(13)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(14)

三菱fx3u系列plc的pid(FX3U-4AD模块进行恒温PID控制)(15)

最后,这只是一个温控PID的框架,具体PID参数的设置,还是得依靠自己的经验,再结合自整定参数,根据现场情况进行修改。

附PID参数调整口诀:

参数整定找最佳,从小到大顺序查;先是比例后积分,最后再把微分加;曲线振荡很频繁,比例度盘要放大;曲线漂浮绕大湾,比例度盘往小扳;曲线偏离回复慢,积分时间往下降;曲线波动周期长,积分时间再加长;曲线振荡频率快,先把微分降下来;动差大来波动慢。微分时间应加长;理想曲线两个波,前高后低四比一;一看二调多分析,调节质量不会低;

若要反应增快,增大P减小I;

若要反应减慢,减小P增大I;

如果比例太大,会引起系统震荡;

如果积分太大,会引起系统迟钝。

,