用 VB編寫了 OP C客戶端應用程序,實現了上位管理軟件通過OPC服務器可直接對s7-200控制器進行各種操作。以貨物入庫操作為例說明其實現過程,部分程序代碼如下:
(1) 在公共窗口中聲明相關變量
Di m My OP Cs e r v e r As OPC Se r v e r
Di m My g r o u p s As OP CGr o u ps
Di m W i t h Ev e n t s My Gr o u p As OPCGr o u p ‘
Di m My i t e ms As OP Che ms
Di m Mv I t e mS e r v e r Ha n dl e s ()As Lo n g
(2) 在客戶端軟件載人 MDI 窗體時創建與 OPC服務器的連接
’獲取一個OP C服務器實例
Set My server =New OPC Server
’與s7-200 PC Access的OP C服務器連接
Call Mv OPC server.Connect (“$7-200.OPC Server”)
Set My groups =My server.OPC Groups
My g r o u p s . D e f a u l t Gmu p I s Ac t i v e : T r u e ’ 默認組對象為激活狀態
’ 加入OP C G r o u p對象“ Gr o u p 1 ”
S e t My Gmu p :My g mu p s . Add ( “ Gr o upl ”)
My G r o u p . D e f a u l t G r o u p up d a t a R a t e = 5 0 0 設置數據刷新時間
My G r o u p . I s A c t i v e = T r u e ’ 設置該 G r o u p為激活狀態
My G r o u p . I s S u h s c r i b e d = T r u e ’ 設置該 G r o u p數據為后臺刷新
(3) 在客戶端軟件載人人庫子窗體時創建 O P C項目
Dim i As L o n g
Dim I t e mO b j A s O P C I t e m
Dim he ml Ds ( 7)As S t r i n g
Dim I t e mCl i e n t Ha n d l e s ( 7)As L o n g
’加入 O P CI t e m對象
Set My ltems =My Group . OPC itemS
’設置所要監測的數據對應于 s 7 — 2 0 0中的標簽
itemIDS (1) = “ 2, M1.5, Bo o l ”
itemIDS (2) = “ 2. M2.1 . Bo o l ”
itemIDS (3) = “ 2, M2 .2, Bo o I ”
itemIDS (4) =“ 2, M2.4, Bo o l ”
itemIDS (5) = “ 2, M2.6, Bo o l ”
itemIDS (6) = “ 2, MW0, Wo r d ”
itemIDS (7) = “ 2, MW2. Wo r d ”
For i =1 To 7
ItemClientHandles (i) = i
Next
’ 調用相應方法在數據項組中加入以 定義的數據項
Ca l l My l t e ms . Ad dhe ms ( 2,I t e ml Ds ,
I t e mCl i e n t Ha n dl e s .Mv I t e mS e r v e r Ha n dI e s ,Er r o r s)
( 4 ) 同步數據寫入 P L C
Di m r o w , c o l u mn a s L o n g
Di m Va l u e s ( 7)As Va r i a n t
Va l u e s ( 1 ) :1‘ 使 s 7 — 2 0 0中的變量 M1.5置位
Va l u e s ( 2 ) = 0‘ 使 s 7 — 2 0 0中的變量 M2.1復位
V a l u e s f 3 ) = 1‘ 使s 7 — 2 0 0中的變量 M2.2置位
V a l u e s ( 4) = 1‘ 使s 7 — 2 0 0中的變量 M2.4囂位
V a l u e s ( 5 ) = I‘ 使 S 7 — 2 0 0中的變量 M2.6置位
v ( 6 ) = r o w‘ 0 j 人入庫位置的行值
V a 1 u e s ( 7 ) = c o l u mn‘ 寫入入庫位置的列值
Ca l l My Gr o u 【 y n ( · w r i r e ( 7, My l t e ms e r v e r Ha n ( 1 l e s , Va l u e s , E r r o r s )
6 結 語
本文解決了上位機與下位 s7-200 PLC的通訊問題,并且數據傳輸穩定,實時性好,組態方便靈活,調試簡單由于OPC協議是通用協議,得到很多公司的支持,通用性好,并且可以通過局域網甚至是 Internet 實現多臺上位機參與控管理,極大地擴展了自動監控系統的使用范圍。
評論
查看更多