西門子開放式IE通訊在水電站監(jiān)控系統(tǒng)中的應用
3) 接收數(shù)據(jù)
由開始接收數(shù)據(jù)標志(FB64_EN_R=1)調(diào)用FB64開始接收數(shù)據(jù)。如果上位機系統(tǒng)中操作員工作站發(fā)送了數(shù)據(jù),且被FB64被無錯誤接收后(FB64_BDR=1),則調(diào)用Modbus/TCP協(xié)議處理程序(FB74)對接收到的數(shù)據(jù)進行判斷和處理。如果上位機系統(tǒng)中操作員工作站沒有發(fā)送數(shù)據(jù)或發(fā)生了數(shù)據(jù)FB64執(zhí)行后有錯誤發(fā)生,則程序不做任何處理,還是等待接收數(shù)據(jù)。
4) Modbus/TCP協(xié)議處理
首先判斷接收數(shù)據(jù)數(shù)量、寄存器地址和功能碼是否正確。如果正確,則進行讀/寫數(shù)據(jù)處理,并準備正確響應所需數(shù)據(jù)。如果錯誤,則設置非法數(shù)據(jù)地址或非法功能碼標志,并準備錯誤響應所需數(shù)據(jù)。程序執(zhí)行完成后設置發(fā)送數(shù)據(jù)標志(FB63_REQ=1)和復位開始接收數(shù)據(jù)標志(FB64_EN_R=0)。
5) 發(fā)送數(shù)據(jù)
由開始發(fā)送數(shù)據(jù)標志(FB63_REQ=1)調(diào)用FB63開始發(fā)送數(shù)據(jù)。不管發(fā)送完成是否正確,只要發(fā)送數(shù)據(jù)完成了就設置開始接收數(shù)據(jù)標志(FB64_EN_R=1)和復位發(fā)送數(shù)據(jù)標志(FB63_REQ=0),然后開始等待接收數(shù)據(jù)。
4.3 程序塊
為了實現(xiàn)CPU315-2PN/DP與水電站上位機系統(tǒng)中操作員工作站的數(shù)據(jù)交換,PLC需要下表1所示程序塊:FB64
接收數(shù)據(jù)功能塊,由以太網(wǎng)通訊控制程序(FB73)調(diào)用。
FB65
建立連接功能塊,由以太網(wǎng)通訊控制程序(FB73)調(diào)用。
FB73
以太網(wǎng)通訊控制程序,用于實現(xiàn)以太網(wǎng)的通訊控制。
FB74
Modbus/TCP協(xié)議處理程序,實現(xiàn)對接收到的數(shù)據(jù)進行判斷、處理并準備上傳所需數(shù)據(jù)。
DB1
用于存放遠方遙控數(shù)據(jù),從操作員工作站寫入的遙控數(shù)據(jù)保存在該DB中。
DB2
用于存放遠方遙調(diào)數(shù)據(jù),從操作員工作站寫入的遙調(diào)數(shù)據(jù)保存在該DB中。
DB5
用于存放遙信數(shù)據(jù),操作員工作站讀取的遙信數(shù)據(jù)保存在該DB中。
DB6
用于存放遙測數(shù)據(jù),操作員工作站讀取的遙測數(shù)據(jù)保存在該DB中。
DB7
用于存放定值數(shù)據(jù),操作員工作站讀取/寫入的定值數(shù)據(jù)保存在該DB中。
DB8
用于存放SOE數(shù)據(jù),操作員工作站讀取的SOE數(shù)據(jù)保存在該DB中。
DB83
FB73與操作員工作站1通訊背景數(shù)據(jù)塊。
DB84
FB73與操作員工作站2通訊背景數(shù)據(jù)塊。
DB105
具有2個UDT65連接屬性的數(shù)據(jù)塊,該DB封裝了與操作員工作站1、2通訊的參數(shù)。
DB106
具有300個字節(jié)的字節(jié)數(shù)組的數(shù)據(jù)塊,用于存放與操作員工作站1通訊的臨時數(shù)據(jù)。
DB107
具有300個字節(jié)的字節(jié)數(shù)組的數(shù)據(jù)塊,用于存放與操作員工作站2通訊的臨時數(shù)據(jù)。
UDT65
以太網(wǎng)連接屬性的數(shù)據(jù)結構,包含了組態(tài)連接所必須的參數(shù)。
FB65
建立連接功能塊,由以太網(wǎng)通訊控制程序(FB73)調(diào)用。
FB73
以太網(wǎng)通訊控制程序,用于實現(xiàn)以太網(wǎng)的通訊控制。
FB74
Modbus/TCP協(xié)議處理程序,實現(xiàn)對接收到的數(shù)據(jù)進行判斷、處理并準備上傳所需數(shù)據(jù)。
DB1
用于存放遠方遙控數(shù)據(jù),從操作員工作站寫入的遙控數(shù)據(jù)保存在該DB中。
DB2
用于存放遠方遙調(diào)數(shù)據(jù),從操作員工作站寫入的遙調(diào)數(shù)據(jù)保存在該DB中。
DB5
用于存放遙信數(shù)據(jù),操作員工作站讀取的遙信數(shù)據(jù)保存在該DB中。
DB6
用于存放遙測數(shù)據(jù),操作員工作站讀取的遙測數(shù)據(jù)保存在該DB中。
DB7
用于存放定值數(shù)據(jù),操作員工作站讀取/寫入的定值數(shù)據(jù)保存在該DB中。
DB8
用于存放SOE數(shù)據(jù),操作員工作站讀取的SOE數(shù)據(jù)保存在該DB中。
DB83
FB73與操作員工作站1通訊背景數(shù)據(jù)塊。
DB84
FB73與操作員工作站2通訊背景數(shù)據(jù)塊。
DB105
具有2個UDT65連接屬性的數(shù)據(jù)塊,該DB封裝了與操作員工作站1、2通訊的參數(shù)。
DB106
具有300個字節(jié)的字節(jié)數(shù)組的數(shù)據(jù)塊,用于存放與操作員工作站1通訊的臨時數(shù)據(jù)。
DB107
具有300個字節(jié)的字節(jié)數(shù)組的數(shù)據(jù)塊,用于存放與操作員工作站2通訊的臨時數(shù)據(jù)。
UDT65
以太網(wǎng)連接屬性的數(shù)據(jù)結構,包含了組態(tài)連接所必須的參數(shù)。
關鍵詞:
西門子IE通訊水電站監(jiān)控系
評論