S7-200PLC在變電站用交流配電盤上的應用
應用S7-200PLC升級過后的變電站站用配電盤(智能配電屏),改變了以前電能數據采集麻煩、運行方式單一、必須現場手動操作等問題,現在除了保留必須的手動操作方式外,根據運行方式PLC能控制ATS開關任意切換在電源I或II上運行,當運行電源進線失壓時,另一電源進線能可靠自投或恢復,同時可進行遠程操作,解決了目前ATS產品控制投切不準確,操作方式單一和遠程控制的問題。改造以前的配電盤上有著各種電能儀表,現在只需一塊多功能儀表就能完成電壓、電流、頻率、有功功率、無功功率等各種電能參數的監測、采集和數據分析,還有諧波分析、模擬量和報警輸出等功能。站用配電屏還能監控每一饋電回路的電流和工作狀態,整個配電盤的任何一個動作、操作和故障報警都及時顯示并儲存在TP270上,通過MODBUS總線可以把這些數據傳到附近的控制中心,也可以通過以太網將數據傳到數公里之外的調度中心,以便于進行更好的運行維護和管理。
在設計過程中 大的問題就是如何將智能儀表的數據通過S7-200PLC讀到TP270上。本系統中的智能儀表用的是MODBUS_RUT協議,只能做從站使用,也就是說S7-200PLC必須做主站去讀取儀表的數據,在現行的資料中只有S7--200PLC做MODBUS從站的資料,要S7-200PLC做主站就只有自己編寫用自由口做MODBUS主站的程序,由于儀表提供的數據較多且數據地址分散,再加上要求每秒刷新一次,還要做數據的CRC校驗,編寫這樣的通訊程序是有一定難度的,如果逐一地址的編寫程序,那么程序就會過長,會影響總循環時間,不但做不到1秒鐘刷新一次,可能還會引起端口發送、接收沖突和CRC校驗出錯,經過反復的研究實驗, 后在程序中采用了用計數器來輪詢地址的方法,從而減少了程序量和總循環時間。部分程序如下:(OB1主要功能為初始化端口為自由口,初始化發送和接收的數據格式,設定輪詢時間,輪詢和中斷連接;SBR5和SBR6做發送和接收數據的CRC校驗,CRC檢驗主要通過字節異或循環,移位循環和公式異或做發送數據的CRC校驗;中斷1為接收數據;中斷2對接收CRC校驗結果驗證)
OB1
LD SM0.1 初始化端口
MOVB 16#09, SMB30
MOVB 16#9C, SMB87
MOVW +150, SMW92
MOVW +0, SMW90
MOVB 50, SMB94
LD SM0.1 初始化發送數據
MOVB 16#08, VB2100
MOVB 16#05, VB2101
MOVB 16#03, VB2102
MOVB 16#03, VB2103
MOVB 16#0, VB2104
MOVB 16#0, VB2105
MOVB 16#02, VB2106
LD SM0.1 初始化接收數據
MOVB 16#09, VB1200
MOVB 16#05, VB1201
MOVB 16#03, VB1202
MOVB 16#04, VB1203
LD SM0.0 設定輪詢時間
AN T96
TON T32, +150
LD SM0.0
A T32
TON T96, +150
LD T32
EU
LD C1
CTU C1, 16#10
LD SM0.0
AW= 16#0, C1
EU
MOVW 16#0300, VW2103 發送輪詢數據
CALL CRC:SBR5
XMT VB2100, 0
LD SM0.0
AW= 16#1, C1
EU
MOVW 16#0302, VW2103
CALL CRC:SBR5
XMT VB2100, 0
LD SM0.0
AW= 16#02, C1
EU
MOVW 16#0304, VW2103
CALL CRC:SBR5
XMT VB2100, 0
…… ……
LD SM0.7 中斷連接
ATCH INT_0:INT0, 9
ATCH INT_1:INT1, 23
ENI
SRB6(SBR5同SBR6)
LD Always_On:SM0.0 讀出數據長度 ,初始化CRC字
MOVB VB1200, VB1301
MOVW VW1300, VW1302
-I 16#02, VW1302
MOVW 16#FFFF, VW1306
MOVD &VB1200, VD1400
FOR VW1304, 16#1, VW1302
LD Always_On:SM0.0 字節異或循環
+D 16#1, VD1400
MOVB *VD1400, VB1410
XORB VB1410, VB1307
FOR VW1310, 16#1, 16#08
LD Always_On:SM0.0 移位循環
MOVW VW1306, VW1420
SRW VW1306, 1
LD SM1.1 公式異或
XORW 16#A001, VW1306
NEXT
NEXT
LD Always_On:SM0.0 CRC16字傳遞
MOVB VB1307, VB1100
MOVB VB1306, VB1101
INT1
LD Always_On:SM0.0
RCV VB2200, 0
INT2
LD SM86.7
O SM86.6
O SM86.0
CRETI
LD Always_On:SM0.0
MOVD VD2204, VD1204
LD Always_On:SM0.0
CALL CRC16:SBR6
LDW《》 VW1100, VW2208
CRETI
LDW= 16#0, C1
MOVD VD2204, VD2500
LDW= 16#1, C1
MOVD VD2204, VD2504
…… ……
經過改造的設備自2005年7月運行以來,系統穩定、功能強大、操作簡單,贏得了用戶的一致好評,為變電站的無人值守和變電站的安全運行提供了有利保障。