1 引言
現代工業控制系統通常以PC機為上位機,通過與現場工控設備如PLC的數據交換與處理,實現對生產過程的自動控制。對于小型控制系統,采用專門的組態軟件成本太高,用VB設計監控系統則可以降低成本,但首先要解決上">

欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

技術頻道

基于OPC技術的上位機與PLC之間的通信

基于OPC技術的上位機與PLC之間的通信

1 引言
現代工業控制系統通常以PC機為上位機,通過與現場工控設備如PLC的數據交換與處理,實現對生產過程的自動控制。對于小型控制系統,采用專門的組態軟件成本太高,用VB設計監控系統則可以降低成本,但首先要解決上位機與PLC之間通信問題。以往使用較多的進程間通信方式是DDE(動態數據交換)方式,隨著OPC技術的發展和普及,它已成為工業過程控制的通信標準。OPC服務器有兩類接口,其中自動化接口主要用于VB、Delphi等開發工具。本文利用羅克韋爾公司提供的OPC接口,用VB編寫了客戶端應用程序,實現了上位機與AB可編程控制器之間的數據交換。

2 OPC技術簡介


OPC(OLE for Process Control—用于過程控制的對象連接與嵌入)是一套以微軟對象連接與嵌入OLE、組件對象模型COM、分布式組件對象模型DCOM(Distributed COM)技術為基礎,基于Windows操作平臺,為工業應用程序之間提供高效的信息集成和交互功能的組件對象模型接口標準。OPC實際上是提供了一種機制,通過這種機制,系統能夠以服務器/客戶端標準方式從服務器獲取數據并將其傳遞給任何客戶應用程序。這樣,只要生產商開發一套遵循OPC規范的服務器與數據進行通信,其他任何客戶應用程序便能通過服務器訪問設備。

OPC服務器有兩類接口:定制接口和自動化接口。定制接口為C++程序服務,自動化接口為VB這一類可使用自動化對象的程序服務。定制接口是服務商必須提供的,而自動化接口則是可選的,不過OPC基金會提供了一個叫做“自動化包裝器”的動態連接庫,用于在兩者間轉換。
OPC數據存取規范規定的基本對象有三類:服務器(server)、組(group)和數據項(item)。服務器對象包含服務器的所有信息,也是組對象的容器,一個服務器對應于一個OPC server,即一種設備的驅動程序。組對象除了包含它自身信息外,還負責管理數據項。每一個數據項代表到數據源的一個連接,但它沒有提供外部接口,客戶端程序無法對數據項直接進行操作,應用程序必須依靠數據項的容器組對象來對它進行操作。

3 通信實現
3.1 RSLinx的配置
RSLinx是AB可編程控制器在Windows環境下建立工廠所用通信方案的工具,它不僅提供了多種網絡驅動程序,而且提供了最快速的OPC、DDE和Custom C/C++接口。本設計中上位機與Logix5550控制器采用RS-232串口方式連接,在RSLinx中要對DF1網絡驅動程序組態,設置串口特性:COM1、波特率19200bps、一個停止位、無奇偶校驗、全雙工、BCC校驗碼。此外要使用RSLinx的OPC接口作為服務器,還要在RSLinx中對OPC進行配置。

3.2 安裝OPC自動化接口服務
若要用VB開發OPC應用程序,必須安裝OPC自動化接口服務,保證計算機系統目錄下有OPCDAAuto.dll。OPC基金會提供了一個叫做“自動化包裝器”的動態連接庫,從OPC基金會的網站(www.opcfoundation.org)可下載。在VB環境中,按“工程”的子菜單“引用…”后,彈出對話框,選擇其中的“RSLinx OPC Automation 2.0”項,這樣才能使用自動化接口。

3.3 程序設計
用VB編寫了OPC客戶端應用程序,實現了上位機與Logix5550控制器之間的通信。主要程序代碼如下:

(1) 連接OPC服務器
Dim WithEvents MyOPCServer As OPCServer ‘定義服務器對象變量MyOPCServer
Dim WithEvents MyOPCGroup As OPCGroup ‘定義OPC組對象變量MyOPCGroup
Set MyOPCServer = New OPCServer
MyOPCServer.Connect "RSLinx OPC Server" ‘連接RSLinx 的OPC服務器

(2) 添加OPC組對象
Set MyOPCGroup=MyOPCServer.OPCGroups.Add("Group1")
‘添加OPC組對象MyOPCGroup.IsSubscribed= True
‘設置該組數據為后臺刷新
MyOPCGroup.IsActive = True
‘設置該組為激活狀態


MyOPCGroup.UpdateRate=1000
‘設置數據刷新時間為1000

(3) 添加數據項
Dim abItemIDs() As String
‘項標識符
Dim abClientHandles() As Long
‘客戶端句柄
Dim abServerHandles() As Long
‘服務器端句柄
Dim abErrors() As Long
Dim i As Long
ItemCount=5
Dim oOPCItem As RSLinxOPCAutomation.OPCItem
For i = 1 To 5
abItemIDs(i) = "[" & txtTopic & "]" & txtItem(i) ‘將Topic名和標簽名賦給項標識符
abClientHandles(i) = i
‘給客戶端句柄賦值
Next i
MyOPCGroup.OPCItems.AddItems ItemCount, abItemIDs, abClientHandles, abServerHandles, abErrors
‘添加數據項操作

(4) 同步數據讀寫
OPC數據存取有同步方式和異步方式兩種。異步讀寫數據復雜,需要與事件結合使用,與同步相比速度慢但準確性高。同步讀寫數據簡單,直接使用OPCItem的方法即可。
Dim One As OPCItem
Dim Index As Long
‘Index為標簽順序號
Dim OneRead As String
Dim Xie As String
Set One = MyOPCGroup.OPCItems(Index)
One.Read OPCCache
OneRead = One.Value
‘讀數據
One.Write (Xie)
‘寫數據
若只讀取數據,可以使用DataChange事件,當控制器中所要訪問的數據一旦發生改變時將會觸發該事件,并將該數據自動讀到TxtValue文本框。
Private Sub MyOPCGroup_DataChange(ByVal TransactionID As Long, ByVal NumItems As Long, ClientHandles() As Long, ItemValues() As Variant, Qualities() As Long, TimeStamps() As Date)
‘自動刷新數據
Dim i As Long
For i = 1 To NumItems
txtValue(ClientHandles(i)) = ItemValues(i)
‘獲取項的值
txtTime(ClientHandles(i)) = TimeStamps(i)
‘獲取項的時間戳
txtQuantity(ClientHandles(i))=GetQualityString(Qualities(i))
‘獲取項的品質
Next i
End Sub

(5) 斷開OPC服務器
MyOPCServer.OPCGroups.RemoveAll
‘移除所有OPC Group,空出資源
Set MyOPCGroup = Nothing
MyOPCServer.Disconnect
‘斷開連接

4 結束語
利用本文介紹的方法,在實驗室實現了上位機和PLC之間的通信,圖1是OPC客戶端設置界面。此外我們還設計了城市供水監控系統,鑒于篇幅,監控界面不再一一列出。

文章版權歸西部工控xbgk所有,未經許可不得轉載。

欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

      亚洲一区二区三区在线观看视频| 国模私拍一区二区三区| 久久九九99| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 亚洲国产高清自拍| 国产美女诱惑一区二区| 欧美刺激性大交免费视频| 欧美一级一区| 亚洲图片在区色| 亚洲精品一区二区三区不| 好吊一区二区三区| 国产亚洲va综合人人澡精品| 欧美日韩精品免费观看视一区二区| 久久久久欧美精品| 欧美专区在线观看一区| 亚洲视频网站在线观看| 99精品视频网| 亚洲看片免费| 夜夜嗨av色综合久久久综合网| 在线播放中文字幕一区| 狠狠干综合网| 在线播放中文一区| 伊人一区二区三区久久精品| 红桃视频一区| 伊人久久婷婷| 精品电影一区| 亚洲国产精品久久人人爱蜜臀| 尤物精品在线| 亚洲全部视频| 一区二区三区欧美在线观看| 一二三四社区欧美黄| 99热这里只有精品8| 一区二区三区高清在线观看| 一区二区电影免费在线观看| 亚洲视频一区在线| 亚洲女女女同性video| 欧美一级视频免费在线观看| 午夜伦欧美伦电影理论片| 久久福利视频导航| 美女尤物久久精品| 欧美精品一区二区三区蜜桃| 欧美欧美在线| 国产精品卡一卡二卡三| 国产情人节一区| 精品96久久久久久中文字幕无| 亚洲第一综合天堂另类专| 亚洲精品女av网站| 亚洲欧美日韩国产另类专区| 久久久久久久久蜜桃| 欧美第一黄色网| 国产精品视频导航| 136国产福利精品导航网址应用| 亚洲伦理网站| 欧美一区91| 欧美日韩国产天堂| 国产日韩欧美制服另类| 亚洲人成绝费网站色www| 亚洲一区二区三区欧美| 久久久久九九视频| 欧美视频一区二区| 亚洲国产日韩欧美在线图片| 亚洲影院免费| 欧美激情亚洲另类| 国产日韩欧美三区| 一区二区三区视频观看| 久久一区国产| 国产精品一区二区在线观看不卡 | 欧美一区久久| 欧美日韩成人一区| 在线不卡欧美| 欧美在线观看日本一区| 欧美日韩另类视频| 一区二区三区在线观看视频| 亚洲男人的天堂在线| 欧美77777| 国内揄拍国内精品少妇国语| 一本久久综合亚洲鲁鲁五月天 | 国产欧美一区二区精品性色| 亚洲经典在线看| 久久免费少妇高潮久久精品99| 国产精品啊啊啊| 一本大道久久a久久精品综合| 久久色中文字幕| 国产日韩亚洲欧美综合| 亚洲特级片在线| 欧美日韩中文字幕在线| 亚洲激情图片小说视频| 久久综合影音| 精品9999| 蜜桃av噜噜一区二区三区| 国内精品久久久久久久影视蜜臀 | 午夜精品久久久久久久99水蜜桃 | 欧美日韩第一页| 日韩午夜精品| 欧美精品久久久久久久久老牛影院| 极品日韩av| 免费不卡亚洲欧美| 在线欧美影院| 欧美激情精品| 中国女人久久久| 国产精品久久久久久福利一牛影视| 一本色道久久99精品综合| 欧美日韩在线精品| 国产精品99久久久久久白浆小说 | 欧美日韩四区| 一本久道久久综合狠狠爱| 欧美日韩国产首页| 亚洲亚洲精品三区日韩精品在线视频| 国产精品jizz在线观看美国 | 国产精品美女在线观看| 亚洲永久免费观看| 国产亚洲综合在线| 毛片av中文字幕一区二区| 亚洲人成人一区二区三区| 欧美日韩精品免费| 午夜欧美电影在线观看| 国内免费精品永久在线视频| 欧美成人精品高清在线播放| 99视频精品免费观看| 国产伦精品一区二区三区四区免费| 亚洲欧美在线看| 亚洲丰满在线| 国产精品福利片| 久久天天狠狠| 这里只有精品在线播放| 国模大胆一区二区三区| 欧美日韩国产电影| 久久国产日本精品| 亚洲精品欧美在线| 国产亚洲午夜| 欧美三级在线播放| 久久午夜精品一区二区| 亚洲视频在线观看一区| 激情成人在线视频| 国产精品国产自产拍高清av王其 | 免费成人av在线| 亚洲女人av| 日韩午夜激情av| 在线看成人片| 国产精品亚洲综合久久| 欧美激情成人在线| 久久久久久久久久久成人| 中文网丁香综合网| 在线成人中文字幕| 国产日韩在线一区| 欧美性猛片xxxx免费看久爱 | 亚洲毛片在线| 亚洲高清免费| 韩国成人理伦片免费播放| 国产精品人人做人人爽人人添| 欧美成人精品| 久久婷婷国产综合尤物精品 | 欧美一区二区三区视频免费| 一区二区三区久久| 亚洲精品中文字幕在线| 亚洲第一色在线| 在线日韩欧美| 狠狠色综合网站久久久久久久| 国产精品夜夜嗨| 国产精品一区二区三区免费观看 | av72成人在线| 日韩视频精品| 99伊人成综合| 99精品国产热久久91蜜凸| 136国产福利精品导航网址| 好吊色欧美一区二区三区四区| 国产日韩欧美日韩| 国产日韩综合一区二区性色av| 国产精品捆绑调教| 国产精品乱码| 国产精品久久久久毛片软件| 国产精品伦理| 国产亚洲激情| 亚洲第一色在线| 亚洲狼人综合| 亚洲在线日韩| 先锋影院在线亚洲| 久久久国产成人精品| 裸体丰满少妇做受久久99精品| 久久综合九色99| 欧美精品一区二区高清在线观看| 欧美日韩国产精品专区| 国产精品大全| 一区二区三区在线观看视频| 亚洲国产中文字幕在线观看| 亚洲精品视频啊美女在线直播| 夜夜嗨av一区二区三区网页| 亚洲欧美日本视频在线观看| 久久国产精品久久w女人spa| 欧美不卡激情三级在线观看| 欧美日韩视频第一区| 国产午夜久久久久| 亚洲巨乳在线| 欧美亚洲日本国产| 欧美激情精品久久久久久变态| 欧美日一区二区在线观看 | 国产精品一区二区三区免费观看| 樱桃成人精品视频在线播放| 99这里有精品| 老司机一区二区三区|