<rt id="m4md3"></rt>
  • <bdo id="m4md3"><meter id="m4md3"></meter></bdo>
  • <label id="m4md3"></label>
      <center id="m4md3"><optgroup id="m4md3"></optgroup></center>
      產(chǎn)品分類

      當(dāng)前位置: 首頁(yè) > 工業(yè)電氣產(chǎn)品 > 工業(yè)安全產(chǎn)品 > 安全觸邊

      類型分類:
      科普知識(shí)
      數(shù)據(jù)分類:
      安全觸邊

      如何使用Excel通過(guò)OPC訪問(wèn)WinCC的實(shí)時(shí)數(shù)據(jù)

      發(fā)布日期:2022-04-27 點(diǎn)擊率:747 品牌:組態(tài)王_Kingview

      OPC(OLE for process control)作為標(biāo)準(zhǔn)軟件接口,可以使各個(gè)生產(chǎn)商的設(shè)備和應(yīng)用程序就能以統(tǒng)一的方式連接起來(lái)。WinCC 既可以用作 OPC 服務(wù)器提供數(shù)據(jù),又可以作為 OPC 客戶機(jī)訪問(wèn)其他OPC 服務(wù)器中的數(shù)據(jù)。WinCC集成的OPC服務(wù)器使得過(guò)程數(shù)據(jù)可由其它應(yīng)用程序(OPC客戶機(jī))訪問(wèn)。在Excel中可以通過(guò)VBA腳本建立OPC 客戶端,并通過(guò)OPC接口讀取WinCC中的數(shù)據(jù),并將修改的數(shù)據(jù)寫(xiě)入WinCC。

      1 OPC規(guī)范及功能

      OPC是一種一致的獨(dú)立于制造商的軟件接口。OPC 接口基于 Microsoft Windows 的 COM(組件對(duì)象模型)和 DCOM(分布式組件對(duì)象模型)技術(shù)。 另一方面,OPC XML 則基于 Internet 標(biāo)準(zhǔn) XML、SOAP 和 HTTP。

      > COM

      COM 是位于同一計(jì)算機(jī)上且屬于不同程序的對(duì)象之間進(jìn)行通訊時(shí)采用的標(biāo)準(zhǔn)協(xié)議。服務(wù)端是提供服務(wù)的對(duì)象,比如提供數(shù)據(jù)??蛻舳耸鞘褂糜煞?wù)端提供的服務(wù)的應(yīng)用程序。

      > DCOM

      DCOM 代表 COM 功能的擴(kuò)展,從而允許對(duì)遠(yuǎn)程計(jì)算機(jī)上的對(duì)象的訪問(wèn)。

      該接口允許在企業(yè)、管理辦公室和生產(chǎn)的應(yīng)用程序之間進(jìn)行標(biāo)準(zhǔn)化的數(shù)據(jù)交換。以前,訪問(wèn)過(guò)程數(shù)據(jù)的應(yīng)用程序受限于通訊網(wǎng)絡(luò)的訪問(wèn)協(xié)議。使用 OPC 標(biāo)準(zhǔn)軟件接口,各個(gè)生產(chǎn)商的設(shè)備和應(yīng)用程序就能以一致的方式連接起來(lái)。

      OPC 客戶端是訪問(wèn)過(guò)程數(shù)據(jù)、消息和 OPC 服務(wù)端歸檔歷史數(shù)據(jù)的應(yīng)用程序。訪問(wèn)需要通過(guò) OPC 軟件接口。

      OPC 服務(wù)端是一個(gè)程序,它為不同制造商的應(yīng)用程序提供一個(gè)標(biāo)準(zhǔn)的軟件接口。OPC 服務(wù)端是在處理過(guò)程數(shù)據(jù)的應(yīng)用程序、各種網(wǎng)絡(luò)協(xié)議和用于訪問(wèn)這些數(shù)據(jù)的接口之間的中間層。

      只有當(dāng)設(shè)備的操作系統(tǒng)是基于 Windows COM 和 DCOM 技術(shù)時(shí),才能使用 OPC 軟件接口進(jìn)行數(shù)據(jù)交換。 目前,Windows 2000、Windows XP、Windows 2003 Server 和 Windows VISTA 具有這些軟件接口。

      > XML

      通過(guò) DCOM 的通訊僅限于局域網(wǎng)。通過(guò) XML 的數(shù)據(jù)交換使用 SOAP(簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議)。SOAP 是獨(dú)立于平臺(tái)的、基于 XML 的協(xié)議。SOAP 可用于允許應(yīng)用程序依靠 HTTP(超文本傳送協(xié)議),通過(guò) Internet 或在多機(jī)種計(jì)算機(jī)網(wǎng)絡(luò)內(nèi)相互進(jìn)行通訊。

      OPC 標(biāo)準(zhǔn)軟件接口由 OPC 基金會(huì)定義。OPC 基金會(huì)是工業(yè)自動(dòng)化領(lǐng)域中處于領(lǐng)先地位的各公司的聯(lián)盟。WinCC 的 OPC 服務(wù)端支持下列規(guī)范。

      OPC 數(shù)據(jù)訪問(wèn) 1.0、2.05a 和 3.0

      OPC 歷史數(shù)據(jù)訪問(wèn) 1.20

      OPC 報(bào)警和事件 1.10

      OPC XML 數(shù)據(jù)訪問(wèn) 1.01

      OPC 數(shù)據(jù)訪問(wèn) (OPC DA) 是針對(duì)管理過(guò)程數(shù)據(jù)的規(guī)范。 WinCC OPC DA 服務(wù)端符合 OPC DA 規(guī)范 1.0、2.05a 和 3.0。

      OPC 歷史數(shù)據(jù)訪問(wèn) (OPC HDA) 是針對(duì)管理歸檔數(shù)據(jù)的規(guī)范。該規(guī)范是 OPC 數(shù)據(jù)訪問(wèn)規(guī)范的擴(kuò)充。 WinCC V6.2 或更高版本的 WinCC OPC HDA 服務(wù)端符合 OPC HDA 規(guī)范 1.20。

      OPC 報(bào)警和事件是發(fā)送過(guò)程報(bào)警和事件的補(bǔ)充規(guī)范。 WinCC V6.0 或更高版本的 WinCC OPC A&E 服務(wù)端符合 OPC A&E 規(guī)范 1.10。

      OPC XML 標(biāo)準(zhǔn)支持通過(guò) Internet 采用獨(dú)立于平臺(tái)的協(xié)議進(jìn)行通訊。 客戶端不再局限于 Windows 環(huán)境 (DCOM)。 其它操作系統(tǒng)(如 LINUX)可以使用 HTTP 協(xié)議和 SOAP 接口在 Internet 上監(jiān)視和交換 OPC 數(shù)據(jù)。

      要使用 WinCC OPC HDA、WinCC-OPC-XML-DA 服務(wù)器和 WinCC OPC A&E 服務(wù)器,必須購(gòu)買Connectivity Pack“連通性軟件包”授權(quán)。 “連通性軟件包” 授權(quán)必須安裝在用作 WinCC OPC HDA 服務(wù)器、WinCC OPC XML DA 服務(wù)器或 WinCC OPC A&E 服務(wù)器的 WinCC 服務(wù)器上。

      2 在Excel中通過(guò)OPC DA訪問(wèn)本地WinCC

      WinCC OPC DA 服務(wù)器為其它應(yīng)用程序提供 WinCC 項(xiàng)目的實(shí)時(shí)數(shù)據(jù)。 應(yīng)用程序能夠在同一臺(tái)計(jì)算機(jī)上運(yùn)行或在已聯(lián)網(wǎng)的遠(yuǎn)程計(jì)算機(jī)上運(yùn)行。 以這種方法,將WinCC 變量的實(shí)時(shí)數(shù)據(jù)提供給 Microsoft Excel。

      在Microsoft Excel 中用VBA腳本語(yǔ)言建立OPC 客戶端,并通過(guò)OPC接口讀取WinCC中的數(shù)據(jù),并將修改的數(shù)據(jù)寫(xiě)入WinCC。通過(guò)OPC接口,Microsoft Excel作為OPC 客戶端發(fā)起通訊并發(fā)送讀/寫(xiě)請(qǐng)求到OPC服務(wù)器,OPC服務(wù)器執(zhí)行這些讀/寫(xiě)請(qǐng)求。對(duì)于WinCC OPC DA 服務(wù)器功能,需要將WinCC項(xiàng)目運(yùn)行系統(tǒng)激活即可。

      為了能夠運(yùn)行Excel中的VBA宏腳本,首先需要調(diào)整安全性設(shè)置。如圖1在“工具->宏->安全性”中,將Excel的安全級(jí)別設(shè)置為“中”。

      圖1 安全性設(shè)置

      打開(kāi)文件excel_opc .xls,在“安全警告”中選擇“啟用宏”。

      圖2啟用宏

      在A1單元格輸入運(yùn)行WinCC的計(jì)算機(jī)名稱。A3/A4單元格輸入WinCC中變量的名稱。點(diǎn)擊按鈕“啟動(dòng) WinCC OPC”,對(duì)應(yīng)WinCC變量的當(dāng)前值即可讀入到Excel單元格中。直接在B3/B4單元格中修改數(shù)值,對(duì)應(yīng)WinCC中的變量值也會(huì)隨之修改。點(diǎn)擊按鈕“停止 WinCC OPC”,停止Excel與WinCC的OPC數(shù)據(jù)訪問(wèn)。

      以下為Microsoft Excel 作為客戶端的配置說(shuō)明。

      在Excel中創(chuàng)建一個(gè)接口,在VisualBasic 編輯器中的“工具->引用”中,選中“Siemens OPC DA Automation 2.0”組件,使VisualBasic能夠識(shí)別OPC對(duì)象。

      圖3 OPC引用組件

      創(chuàng)建所需的所有對(duì)象,如:“MyOPCGroup”對(duì)象

      Dim: 創(chuàng)建一個(gè)變量

      WithEvents: 這個(gè)對(duì)象可以提供事件(如 DataChange)

      MyOPCGroup: 對(duì)象名

      As OPCGroup: 變量類型

      圖4

      Sub StartClient() ’Microsoft Excel建立與OPC服務(wù)器的連接;

      Set MyOPCServer = New OpcServer ’為“MyOPCServer”對(duì)象分配內(nèi)存;

      ? MyOPCServer.Connect ServerName, NodeName

      ServerName :WinCC OPC DA 服務(wù)器的名稱為 "OPCServer.WinCC"

      NodeName:激活WinCC運(yùn)行系統(tǒng)的計(jì)算機(jī)名稱

      Set MyOPCGroupColl = MyOPCServer.OPCGroups

      Microsoft Excel與OPC服務(wù)器的連接一旦建立,OPC組即被創(chuàng)建。這個(gè)通過(guò)集合對(duì)象來(lái)實(shí)現(xiàn);

      Set MyOPCGroup = MyOPCGroupColl.Add(GroupName)

      創(chuàng)建的組通過(guò)“MyOPCGroup”變量來(lái)尋址。設(shè)置MyOPCGroup.IsSubscribed = True,以便OPC組能夠提供DataChange等事件。

      Set MyOPCItemColl = MyOPCGroup.OPCItems ’創(chuàng)建OPC項(xiàng)

      MyOPCItemColl.AddItems 2, ItemIDs, ClientHandles, ServerHandles, Errors

      ItemIDs 存儲(chǔ)在單元格A3/A4中,把指定的ItemIDs 傳送給集合對(duì)象"MyOPCItemColl.AddItems"

      Private Sub MyOPCGroup_DataChange()

      在Microsoft Excel中,調(diào)用如下用于OPC組事件處理的程序,它是OPC服務(wù)器的DataChange 事件,DataChange()這個(gè)事件處理程序提供了許多參數(shù),如ItemValue(OPC項(xiàng)的值),客戶端句柄等。通過(guò)DataChange事件,當(dāng)OPC項(xiàng)的值變化時(shí),數(shù)據(jù)會(huì)自動(dòng)發(fā)送。OPC項(xiàng)的當(dāng)前值顯示在單元格B3/B4中。讀出值的質(zhì)量代碼和時(shí)間戳顯示在C/D列單元格中。

      Private Sub worksheet_change()

      如果在Microsoft Excel的單元格B3/B4中輸入一個(gè)值,通過(guò)函數(shù)MyOPCGroup.SyncWrite將OPC項(xiàng)寫(xiě)入到WinCC,寫(xiě)入值和服務(wù)器句柄以參數(shù)形式傳遞給此函數(shù)。

      Sub StopClient()

      最后,斷開(kāi)與OPC服務(wù)器的連接。 

      3 在Excel中通過(guò)OPC DA遠(yuǎn)程訪問(wèn)WinCC

      可以通過(guò)DCOM從OPC客戶端遠(yuǎn)程訪問(wèn)OPC服務(wù)器WinCC OPC DA。但在A1單元格需要輸入的是遠(yuǎn)程激活WinCC運(yùn)行系統(tǒng)的計(jì)算機(jī)名稱。

      圖5在Excel中通過(guò)OPC DA遠(yuǎn)程訪問(wèn)WinCC

      由于遠(yuǎn)程OPC的使用是作為一個(gè)DCOM在使用,所以O(shè)PC客戶端可以在網(wǎng)絡(luò)上任何一臺(tái)計(jì)算機(jī)運(yùn)行,但是必須要配置DCOM的訪問(wèn)權(quán)限。一個(gè)簡(jiǎn)單的方法就是,在服務(wù)器與客戶端都使用相同的用戶名與密碼登錄。如果想配置DCOM,請(qǐng)參考DCOM配置的相關(guān)資料及下載中心文檔:A0265 如何配置OPC DCOM。

      WinCC在安裝時(shí)提供了OPC的客戶端控件: Siemens OPC DAAutomation 2.0( SOPCDAAuto.dll),這個(gè)控件就是在VBA中引用到的控件。如果運(yùn)行Excel的計(jì)算機(jī)上沒(méi)有安裝WinCC,可以使用批處理文件注冊(cè)dll文件。將整個(gè)文件夾 Reg拷貝到C:盤下,雙擊reg opc即可。

      下一篇: PLC、DCS、FCS三大控

      上一篇: 索爾維全系列Solef?PV

      推薦產(chǎn)品

      更多
      主站蜘蛛池模板: 国产成人久久精品77777综合| 亚洲Av综合色区无码专区桃色 | 狠狠色丁香久久婷婷综合_中| 国产成人精品综合网站| 国产成人综合久久精品免费| 国产色综合久久无码有码| 91精品国产综合久久青草| 狠狠综合亚洲综合亚洲色| 久久亚洲精品成人综合| 精品久久综合一区二区| 久久99国产综合精品女同| 亚洲综合区小说区激情区| 日韩亚洲人成在线综合| 亚洲精品综合久久中文字幕| 久久久久亚洲AV综合波多野结衣 | 一本久道久久综合| 香蕉蕉亚亚洲aav综合| 狠狠爱天天综合色欲网| 色婷婷天天综合在线| 色诱久久久久综合网ywww| 99综合电影在线视频好看| 天天做天天爱天天爽综合网| 色综合天天综合网| 天天影视色香欲综合免费| 婷婷四房综合激情五月在线| 久久综合九色综合91| 久久亚洲高清综合| 国产亚洲综合久久| 色欲综合久久躁天天躁| 成人精品综合免费视频| 色偷偷91久久综合噜噜噜噜| 九九综合VA免费看| 熟女少妇色综合图区| 久久综合九色综合97手机观看| 狠狠色丁香婷婷综合激情| 色婷婷综合久久久久中文一区二区 | 亚洲综合久久成人69| 综合欧美五月丁香五月| 色综合久久无码中文字幕| 色欲人妻综合AAAAA网| 亚洲日韩久久综合中文字幕|