回收西門子模塊6ES75401AD000AA0 回收西門子模塊6ES75401AD000AA0
Address Decl. Symbol Data Type Initial Value Comment
0.0 In PIW_Addr INT
模入模塊通道起始地址
2.0 In CH_LEN INT
要讀入的通道數(shù)
4.0 In DB_No INT
存儲(chǔ)數(shù)據(jù)塊號(hào)
6.0 In DBW_Addr INT
存儲(chǔ)在數(shù)據(jù)塊中的字地址
Network 1
L #DB_No
T LW0
OPN DB[LW 0] 打開存儲(chǔ)數(shù)據(jù)塊
L #PIW_Addr
SLD 3 形成模入模塊地址指針
T LD4 在臨時(shí)本地?cái)?shù)據(jù)雙字LD 4中存儲(chǔ)模入模塊地址指針
L #DBW_Addr
SLD 3 形成數(shù)據(jù)塊存儲(chǔ)地址指針
T LD8 在臨時(shí)本地?cái)?shù)據(jù)雙字LD 8中存入數(shù)據(jù)塊存儲(chǔ)地址指針
L #CH_LEN 以要讀入的通道數(shù)為循環(huán)次數(shù),裝入累加器1
2.讀模擬輸入量程序
一些S7-300的應(yīng)用系統(tǒng)中,使用8通道模擬量模塊采集信號(hào),當(dāng)模塊數(shù)量較多時(shí),讀模擬輸入量就很繁瑣。下面給出一個(gè)通用程序FC100,利用它可以方便地把模擬量讀回并順序存入數(shù)據(jù)塊,因?yàn)槟H肽K的起始地址、通道數(shù)、存儲(chǔ)數(shù)據(jù)塊號(hào)及數(shù)據(jù)在數(shù)據(jù)塊中的存儲(chǔ)起始位置均是可變的,所以可在調(diào)用FC100時(shí)靈活確定。
Address Decl. Symbol Data Type Initial Value Comment
0.0 In PIW_Addr INT
模入模塊通道起始地址
2.0 In CH_LEN INT
要讀入的通道數(shù)
4.0 In DB_No INT
存儲(chǔ)數(shù)據(jù)塊號(hào)
6.0 In DBW_Addr INT
存儲(chǔ)在數(shù)據(jù)塊中的字地址
Network 1
L #DB_No
T LW0
OPN DB[LW 0] 打開存儲(chǔ)數(shù)據(jù)塊
L #PIW_Addr
SLD 3 形成模入模塊地址指針
T LD4 在臨時(shí)本地?cái)?shù)據(jù)雙字LD 4中存儲(chǔ)模入模塊地址指針
L #DBW_Addr
SLD 3 形成數(shù)據(jù)塊存儲(chǔ)地址指針
T LD8 在臨時(shí)本地?cái)?shù)據(jù)雙字LD 8中存入數(shù)據(jù)塊存儲(chǔ)地址指針
L #CH_LEN 以要讀入的通道數(shù)為循環(huán)次數(shù),裝入累加器1
NEXT:T LW 0
將累加器1的值,裝入循環(huán)次數(shù)計(jì)數(shù)器LW0(臨時(shí)本地?cái)?shù)據(jù)字)
L LD4
LARl 將模入模塊地址指針裝入地址寄存器1
L PIW[ARl,P#0.0] 讀模入模塊裝入累加器1
T LW2 將累加器1的內(nèi)容暫存入緩沖器LW2