西門子S71200 1500的模擬量線性轉換及數據處理

在PLC編程中,只要涉及到數據採集和輸出,都會遇到模擬量的線性變換。在西門子300PLC編程中,系統自帶的兩個線性變換功能塊FC105和FC106是最常用的兩個數據轉換模塊。但是在博圖中,模擬量的線性轉換跟300PLC有一定的差異,本文詳細介紹1200,1500中模擬量的線性轉換問題。

1. 線性變換原理

西門子S71200 1500的模擬量線性轉換及數據處理

線性變換原理公式

線性變換的原理很簡單,比如說,在工程測量中,常會遇到4-20mA的傳感器,如壓力傳感器或位移傳感器等,要轉換為0-50MPa的物理量。用高中學過的直線方程兩點式就可以了。已知兩點(4,20)和(20,50),求(x,y)。

2. 線性變換用到的指令模塊

(1).標準化(NORM_X)指令:

可以使用“標準化”指令,通過將輸入 VALUE 中變量的值映射到線性標尺對其進行標準化。可以使用參數 MIN 和 MAX 定義(應用於該標尺的)值範圍的限值。輸出 OUT 中的結果經過計算並存儲為浮點數,這取決於要標準化的值在該值範圍中的位置。如果要標準化的值等於輸入 MIN 中的值,則輸出 OUT 將返回值“0.0”。如果要標準化的值等於輸入 MAX 的值,則輸出 OUT 需返回值“1.0”。

OUT=(VALUE-MIN)/(MAX-MIN)

上面是PLC幫助文檔的官方解釋:很拗口,理解不了不用去管他。下面直接看應用就會好。

西門子S71200 1500的模擬量線性轉換及數據處理

標準化(NORM_X)指令

西門子S71200 1500的模擬量線性轉換及數據處理

標準化(NORM_X)指令映射關係

西門子S71200 1500的模擬量線性轉換及數據處理

標準化(NORM_X)指令參數

注意這個數據類型就可以了。

(2)SCALE_X:縮放

“縮放”指令,通過將輸入 VALUE 的值映射到指定的值範圍來對其進行縮放。 當執行“縮放”指令時,輸入 VALUE 的浮點值會縮放到由參數 MIN 和 MAX 定義的值範圍。 縮放結果為整數,存儲在 OUT 輸出中。

同樣的,不用去刻意理解這個意思。後面看舉例應用就可以了。

西門子S71200 1500的模擬量線性轉換及數據處理

SCALE_X:縮放指令

西門子S71200 1500的模擬量線性轉換及數據處理

縮放指令映射

西門子S71200 1500的模擬量線性轉換及數據處理

縮放指令參數

同樣的,注意這個數據類型就可以了。

3. 線性變換指令塊的應用舉例

線性變換的原理很簡單,比如說,在工程測量中,常會遇到4-20mA的傳感器,如壓力傳感器或位移傳感器等,要轉換為0-50MPa的物理量。用高中學過的直線方程兩點式就可以了。已知兩點(4,20)和(20,50),求(x,y)。

先熟悉模擬量採集的對應關係,如圖,4-20mA對應0-27648

西門子S71200 1500的模擬量線性轉換及數據處理

PLC電壓測量值對應關係

西門子S71200 1500的模擬量線性轉換及數據處理

PLC電流測量值對應關係

西門子S71200 1500的模擬量線性轉換及數據處理

4-20mA轉換為0-50MPa程序

如圖所示:經過兩步就可以把,採集到的模擬量4-20mA,轉換為0-50MPa。

如果是-10V-10V對應0-50MPa,只需要把min賦值為-27648(查表)即可。

4. 理解

上述兩步,其實就是把線性關係

兩點式分兩步完成了。

理解起來可能有點拗口,應用起來知道怎麼處理就行。

第一步:看是單極性,還是雙極性,單極性對應0-27648,雙極性(-10V到10V)對應-27648—27648,

第二步:調用模塊。

第三步:分別給兩個模塊的MIN,MAX,VALUW賦值即可。注意其數據類型,一般的%IW0為INT,轉換後位REAL。

下一篇小文準備寫模擬量的輸出線性變換。這個需要兩個模塊來轉換得到物理量,再下一篇小文介紹兩點式線性變換程序

的編寫,用一個模塊就可以搞定。

謝謝觀看。

西門子S71200 1500的模擬量線性轉換及數據處理


分享到:


相關文章: