S7-300模擬量,誰能給個小程序
劉玉蓉
發(fā)布于2014-08-28 17:54
252
0
標(biāo)簽:
想找個例如溫度控制之類的小程序,低溫啟動加熱器,高溫斷開加熱器,詳細(xì)的程序,想?yún)⒖紝W(xué)習(xí).
問題補充:
用溫度傳感器,4-20ma
佳答案
譬如 你的模擬量輸入模塊 接入的是標(biāo)準(zhǔn)型的PT100 地址為pi256 讀進(jìn)來的溫度值除以10就可以了
程序:先轉(zhuǎn)換下,讀進(jìn)來的溫度值
A(
A(
L PIW 256
T #TEMP0
SET
SAVE
CLR
A BR
)
JNB _001
L #TEMP0
DTR
T #TEMP1
SET
SAVE
CLR
_001: A BR
)
JNB _002
L #TEMP1
L 1.000000e+001
/R
T DB30.DBD2
_002: NOP 0
根據(jù)工藝,進(jìn)行相應(yīng)的溫度控制,當(dāng)t1<DB30.DBD2<t2 就關(guān)閉 加熱器 q
程序
O(
L #t1
L DB30.DBD2
<R
)
O(
L DB30.DBD2
L #t2
>R
)
= #temp2
當(dāng)DB30.DBD2>T2 或是DB30.DBD2<T1 就打開 加熱器 q
程序
A(
L DB30.DBD2
L #t1
<=R
)
A(
L DB30.DBD2
L #t2
<=R
)
AN #temp2
= #q
把三端程序轉(zhuǎn)化為梯形圖看看就明白了!
問題補充:
接入的是4-20ma的傳感器信號,對應(yīng)的數(shù)字量為0-27648 ,可以進(jìn)行線性轉(zhuǎn)換。
PLC的模擬量輸入模塊把采集到的標(biāo)準(zhǔn)模擬信號(比如4~20mA)轉(zhuǎn)換成0-27648的整數(shù)值,放進(jìn)PIW的緩存區(qū)。這時候,在PLC里監(jiān)視到的PIW數(shù)值,不管它是以什么格式顯示的,(比如實數(shù))。實際上,它都是一個0-27648的整數(shù)。
此時的PIW里存儲的數(shù)值,并不是傳感器采集到的物理量。而是和這個物理量有線性關(guān)系的
一個整數(shù)。需要用一個量程轉(zhuǎn)換才能把它轉(zhuǎn)換成需要顯示的物理量。實際上西門子提供了一個專用的功能塊,就是調(diào)用FC105,只需要輸入模擬量的量程和PIW的地址,就可以直接得到物理量的數(shù)值。
那么這個物理量的值就是你需要的工程值。
編程思路跟上面的加熱控制一樣。用這個工程值根據(jù)工藝,進(jìn)行數(shù)據(jù)的比對,進(jìn)行判別,實現(xiàn)要的工藝控制!