S7-300模擬量,誰能給個(gè)小程序
劉玉蓉
發(fā)布于2014-08-28 17:54
252
0
標(biāo)簽:
想找個(gè)例如溫度控制之類的小程序,低溫啟動(dòng)加熱器,高溫?cái)嚅_加熱器,詳細(xì)的程序,想?yún)⒖紝W(xué)習(xí).
問題補(bǔ)充:
用溫度傳感器,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)化為梯形圖看看就明白了!
問題補(bǔ)充:
接入的是4-20ma的傳感器信號(hào),對應(yīng)的數(shù)字量為0-27648 ,可以進(jìn)行線性轉(zhuǎn)換。
PLC的模擬量輸入模塊把采集到的標(biāo)準(zhǔn)模擬信號(hào)(比如4~20mA)轉(zhuǎn)換成0-27648的整數(shù)值,放進(jìn)PIW的緩存區(qū)。這時(shí)候,在PLC里監(jiān)視到的PIW數(shù)值,不管它是以什么格式顯示的,(比如實(shí)數(shù))。實(shí)際上,它都是一個(gè)0-27648的整數(shù)。
此時(shí)的PIW里存儲(chǔ)的數(shù)值,并不是傳感器采集到的物理量。而是和這個(gè)物理量有線性關(guān)系的
一個(gè)整數(shù)。需要用一個(gè)量程轉(zhuǎn)換才能把它轉(zhuǎn)換成需要顯示的物理量。實(shí)際上西門子提供了一個(gè)專用的功能塊,就是調(diào)用FC105,只需要輸入模擬量的量程和PIW的地址,就可以直接得到物理量的數(shù)值。
那么這個(gè)物理量的值就是你需要的工程值。
編程思路跟上面的加熱控制一樣。用這個(gè)工程值根據(jù)工藝,進(jìn)行數(shù)據(jù)的比對,進(jìn)行判別,實(shí)現(xiàn)要的工藝控制!