在上一篇的速度PID控制的文章中,我們已經介紹了關于PID指令以及相關參數的具體應用。所以本篇文章,主要是給出程序部分。
三菱PLC模擬量實例三菱FX3U系列—FX3U-4AD模擬量,FX3U-4AD模擬量輸入模塊簡介
www.shkcfs.com/Article/MITSUBISHI/9849.html
三菱FX3U-4AD模塊如何讀出模擬量數據?三菱FX3U-4AD模擬量電壓輸入采集實例
www.shkcfs.com/Article/MITSUBISHI/10080.html
三菱plc模擬量編程 FX3U-4AD模塊的使用方法
www.shkcfs.com/Article/tixingtu/9585.html
首先在給出程序之前,我們先了解一下以下幾個概念:
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模塊參數設置:
#0:由于我的溫度變送器是4-20ma的量程,因此我們將4號通道設置成3。
#5:我們選擇平均次數,平均次數根據需求來,可以設的大點,這樣溫度變化就能穩定一些。
#13:通道4的實時溫度數據。
硬件接線:主要是4AD和溫度變送器的接線。固態繼電器的太簡單,就不畫出來了。
FX3U-4AD模塊的端子定義
模擬量算法:
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種自整定的方法:
對了,提一句:加熱是逆動作,制冷是正動作!
DEMUL為浮點數乘法運算指令;DEDIV為浮點數除法運算指令;
INT用于將其他數據類型(如浮點數)轉換為整數類型;
首先是極限循環法:
最后是階躍響應法:
最后,這只是一個溫控PID的框架,具體PID參數的設置,還是得依靠自己的經驗,再結合自整定參數,根據現場情況進行修改。
附PID參數調整口訣:
參數整定找最佳,從小到大順序查;
先是比例后積分,最后再把微分加;
曲線振蕩很頻繁,比例度盤要放大;
曲線漂浮繞大灣,比例度盤往小扳;
曲線偏離回復慢,積分時間往下降;
曲線波動周期長,積分時間再加長;
曲線振蕩頻率快,先把微分降下來;
動差大來波動慢。微分時間應加長;
理想曲線兩個波,前高后低四比一;
一看二調多分析,調節質量不會低;
若要反應增快,增大P減小I;
若要反應減慢,減小P增大I;
如果比例太大,會引起系統震蕩;
如果積分太大,會引起系統遲鈍。