非線性轉成多段線性變送
非線性轉成多段線性變送
目前,很多模擬量的輸入與輸出存在著非線性的關系,而在計算這兩者之間的關系時,總不能找到一個符合或者相近的公式來進行計算。對此常見的解決方法是把非線性的模擬量輸入分割成多段,并將每段進行線性化處理,然后進行相應的模擬量輸出。
下面是用海為PLC編程軟件將頻率與溫度的非線性關系轉成多段線性變送的例子。其多段頻率對應的溫度值如下表所示:
頻率(Hz) |
溫度(℃) |
639.4 |
210.0 |
626.9 |
200.0 |
614.2 |
190.0 |
601.6 |
180.0 |
588.8 |
170.0 |
576.0 |
160.0 |
563.1 |
150.0 |
550.2 |
140.0 |
537.2 |
130.0 |
524.1 |
120.0 |
511.0 |
110.0 |
497.7 |
100.0 |
484.6 |
90.0 |
471.3 |
80.0 |
457.9 |
70.0 |
444.5 |
60.0 |
431.0 |
50.0 |
417.4 |
40.0 |
403.8 |
30.0 |
390.1 |
20.0 |
376.3 |
10.0 |
362.5 |
0.0 |
建立兩個名稱分別為“頻率表”和“溫度表”的初始寄存器表,地址V1100~V1121與上表的頻率值相對應,地址V1200~V1221與上表的溫度值相對應,如下圖所示:
主程序如下圖所示:
子程序如下圖所示:
總結:通過這個例子,我們知道非線性曲線通過多段線性變送可以使輸出逼近非線性曲線。逼近非線性曲線的程度取決于段數的多少,段數越多,就越逼近,反之,則偏離越遠。而段數的多少應如何取決呢?因為當段數較少時,誤差會相對較大;段數較多時,誤差小,但是程序量大,會影響運行的速度。所以段數的多少需要根據工程的實際情況進行分割。使工程在允許的誤差范圍內程序盡可能的小。
文章版權歸西部工控xbgk所有,未經許可不得轉載。