SIEMEN西門子2XV9450-1AR88-0AA0
SIEMEN西門子2XV9450-1AR88-0AA0
生成T_TSAP結(jié)構(gòu)
調(diào)用FB420
圖 20: 調(diào)用FB420
? ID: 連接ID
? DEV_ID
DEV_ID = B#16#1 用于本PLC型號(hào)(注意不是通信對(duì)方)為 IM151-8 PN/DP CPU
DEV_ID = B#16#2 用于本PLC型號(hào)(注意不是通信對(duì)方)為 CPU31x-2PN/DP或IM154-8 CPU
DEV_ID = B#16#3 用于本PLC型號(hào)(注意不是通信對(duì)方)為CPU319-3PN/DP
DEV_ID = B#16#5用于本PLC型號(hào)(注意不是通信對(duì)方)為CPU41x-3PN/DP
? ACTIVE: 主動(dòng)或是被動(dòng)建立連接, 通信雙方必須一個(gè)主動(dòng),一個(gè)被動(dòng)
? T_TSAP: 靜態(tài)變量區(qū)的結(jié)構(gòu)變量,用于ISO ON TCP 通信的TSAP地址
? IP_ADDR1 ... IP_ADDR4: 通信伙伴的IP地址
? CON_DB:用UDT65生成的變量
圖21: 調(diào)用FB65 "T_CON"
調(diào)用FB65 ,通過(guò)提供給FB65的輸入?yún)?shù)"REQ"一個(gè)上升沿來(lái)建立連接。 “ID”為連接ID,“CONNECT”參數(shù)填寫用UDT65生成的變量, 連接建立后會(huì)一直保持,直到調(diào)用FB66 "TDISCON"斷開(kāi)連接,CPU停止或者斷電。
3.2.3 調(diào)用發(fā)送和接收程序
圖22: 調(diào)用 FB63,64發(fā)送接收數(shù)據(jù)
FB63 "TSEND" 發(fā)送請(qǐng)求依靠輸入?yún)?shù)"REQ"的上升沿來(lái)實(shí)現(xiàn),如果“BUSY”位為true時(shí)不要觸發(fā)"REQ"。輸出參數(shù) "DONE", "ERROR" 和 "STATUS" 用于評(píng)估工作的情況。
FB64 "TRECV" 用于接收數(shù)據(jù),EN_R始終為true, “ID “填寫連接ID,”DATA”填寫接收數(shù)據(jù)區(qū),輸出參數(shù)"NDR" 用于表示新的數(shù)據(jù)已經(jīng)收到,輸出參數(shù)"LEN" 表示接收的數(shù)據(jù)長(zhǎng)度。
3.2.4斷開(kāi)連接
調(diào)用FB66 "TDISCON",“ID “填寫連接ID,輸入?yún)?shù)"REQ"的上升沿來(lái)實(shí)現(xiàn)斷開(kāi)連接操作。
圖 23: 調(diào)用FB66 "TDISCON"