西門子開放式IE通訊在水電站監(jiān)控系統(tǒng)中的應(yīng)用
3) 接收數(shù)據(jù)
由開始接收數(shù)據(jù)標(biāo)志(FB64_EN_R=1)調(diào)用FB64開始接收數(shù)據(jù)。如果上位機(jī)系統(tǒng)中操作員工作站發(fā)送了數(shù)據(jù),且被FB64被無錯(cuò)誤接收后(FB64_BDR=1),則調(diào)用Modbus/TCP協(xié)議處理程序(FB74)對接收到的數(shù)據(jù)進(jìn)行判斷和處理。如果上位機(jī)系統(tǒng)中操作員工作站沒有發(fā)送數(shù)據(jù)或發(fā)生了數(shù)據(jù)FB64執(zhí)行后有錯(cuò)誤發(fā)生,則程序不做任何處理,還是等待接收數(shù)據(jù)。
4) Modbus/TCP協(xié)議處理
首先判斷接收數(shù)據(jù)數(shù)量、寄存器地址和功能碼是否正確。如果正確,則進(jìn)行讀/寫數(shù)據(jù)處理,并準(zhǔn)備正確響應(yīng)所需數(shù)據(jù)。如果錯(cuò)誤,則設(shè)置非法數(shù)據(jù)地址或非法功能碼標(biāo)志,并準(zhǔn)備錯(cuò)誤響應(yīng)所需數(shù)據(jù)。程序執(zhí)行完成后設(shè)置發(fā)送數(shù)據(jù)標(biāo)志(FB63_REQ=1)和復(fù)位開始接收數(shù)據(jù)標(biāo)志(FB64_EN_R=0)。
5) 發(fā)送數(shù)據(jù)
由開始發(fā)送數(shù)據(jù)標(biāo)志(FB63_REQ=1)調(diào)用FB63開始發(fā)送數(shù)據(jù)。不管發(fā)送完成是否正確,只要發(fā)送數(shù)據(jù)完成了就設(shè)置開始接收數(shù)據(jù)標(biāo)志(FB64_EN_R=1)和復(fù)位發(fā)送數(shù)據(jù)標(biāo)志(FB63_REQ=0),然后開始等待接收數(shù)據(jù)。
4.3 程序塊
為了實(shí)現(xiàn)CPU315-2PN/DP與水電站上位機(jī)系統(tǒng)中操作員工作站的數(shù)據(jù)交換,PLC需要下表1所示程序塊:FB64
接收數(shù)據(jù)功能塊,由以太網(wǎng)通訊控制程序(FB73)調(diào)用。
FB65
建立連接功能塊,由以太網(wǎng)通訊控制程序(FB73)調(diào)用。
FB73
以太網(wǎng)通訊控制程序,用于實(shí)現(xiàn)以太網(wǎng)的通訊控制。
FB74
Modbus/TCP協(xié)議處理程序,實(shí)現(xiàn)對接收到的數(shù)據(jù)進(jìn)行判斷、處理并準(zhǔn)備上傳所需數(shù)據(jù)。
DB1
用于存放遠(yuǎn)方遙控?cái)?shù)據(jù),從操作員工作站寫入的遙控?cái)?shù)據(jù)保存在該DB中。
DB2
用于存放遠(yuǎn)方遙調(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個(gè)UDT65連接屬性的數(shù)據(jù)塊,該DB封裝了與操作員工作站1、2通訊的參數(shù)。
DB106
具有300個(gè)字節(jié)的字節(jié)數(shù)組的數(shù)據(jù)塊,用于存放與操作員工作站1通訊的臨時(shí)數(shù)據(jù)。
DB107
具有300個(gè)字節(jié)的字節(jié)數(shù)組的數(shù)據(jù)塊,用于存放與操作員工作站2通訊的臨時(shí)數(shù)據(jù)。
UDT65
以太網(wǎng)連接屬性的數(shù)據(jù)結(jié)構(gòu),包含了組態(tài)連接所必須的參數(shù)。
FB65
建立連接功能塊,由以太網(wǎng)通訊控制程序(FB73)調(diào)用。
FB73
以太網(wǎng)通訊控制程序,用于實(shí)現(xiàn)以太網(wǎng)的通訊控制。
FB74
Modbus/TCP協(xié)議處理程序,實(shí)現(xiàn)對接收到的數(shù)據(jù)進(jìn)行判斷、處理并準(zhǔn)備上傳所需數(shù)據(jù)。
DB1
用于存放遠(yuǎn)方遙控?cái)?shù)據(jù),從操作員工作站寫入的遙控?cái)?shù)據(jù)保存在該DB中。
DB2
用于存放遠(yuǎn)方遙調(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個(gè)UDT65連接屬性的數(shù)據(jù)塊,該DB封裝了與操作員工作站1、2通訊的參數(shù)。
DB106
具有300個(gè)字節(jié)的字節(jié)數(shù)組的數(shù)據(jù)塊,用于存放與操作員工作站1通訊的臨時(shí)數(shù)據(jù)。
DB107
具有300個(gè)字節(jié)的字節(jié)數(shù)組的數(shù)據(jù)塊,用于存放與操作員工作站2通訊的臨時(shí)數(shù)據(jù)。
UDT65
以太網(wǎng)連接屬性的數(shù)據(jù)結(jié)構(gòu),包含了組態(tài)連接所必須的參數(shù)。
關(guān)鍵詞:
西門子IE通訊水電站監(jiān)控系
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號(hào)放大器
評(píng)論