A. 如何使用Excel通過OPC訪問WinCC的實時數據
OPC(OLE for process control)作為標准軟體介面,可以使各個生產商的設備和應用程序就能以統一的方式連接起來。WinCC 既可以用作 OPC 伺服器提供數據,又可以作為 OPC 客戶機訪問其他OPC 伺服器中的數據。WinCC集成的OPC伺服器使得過程數據可由其它應用程序(OPC客戶機)訪問。在Excel中可以通過VBA腳本建立OPC 客戶端,並通過OPC介面讀取WinCC中的數據,並將修改的數據寫入WinCC。
1 OPC規范及功能
OPC是一種一致的獨立於製造商的軟體介面。OPC 介面基於 Microsoft Windows 的 COM(組件對象模型)和 DCOM(分布式組件對象模型)技術。 另一方面,OPC XML 則基於 Internet 標准 XML、SOAP 和 HTTP。
> COM
COM 是位於同一計算機上且屬於不同程序的對象之間進行通訊時採用的標准協議。服務端是提供服務的對象,比如提供數據。客戶端是使用由服務端提供的服務的應用程序。
> DCOM
DCOM 代表 COM 功能的擴展,從而允許對遠程計算機上的對象的訪問。
該介面允許在企業、管理辦公室和生產的應用程序之間進行標准化的數據交換。以前,訪問過程數據的應用程序受限於通訊網路的訪問協議。使用 OPC 標准軟體介面,各個生產商的設備和應用程序就能以一致的方式連接起來。
OPC 客戶端是訪問過程數據、消息和 OPC 服務端歸檔歷史數據的應用程序。訪問需要通過 OPC 軟體介面。
OPC 服務端是一個程序,它為不同製造商的應用程序提供一個標準的軟體介面。OPC 服務端是在處理過程數據的應用程序、各種網路協議和用於訪問這些數據的介面之間的中間層。
只有當設備的操作系統是基於 Windows COM 和 DCOM 技術時,才能使用 OPC 軟體介面進行數據交換。 目前,Windows 2000、Windows XP、Windows 2003 Server 和 Windows VISTA 具有這些軟體介面。
> XML
通過 DCOM 的通訊僅限於區域網。通過 XML 的數據交換使用 SOAP(簡單對象訪問協議)。SOAP 是獨立於平台的、基於 XML 的協議。SOAP 可用於允許應用程序依靠 HTTP(超文本傳送協議),通過 Internet 或在多機種計算機網路內相互進行通訊。
OPC 標准軟體介面由 OPC 基金會定義。OPC 基金會是工業自動化領域中處於領先地位的各公司的聯盟。WinCC 的 OPC 服務端支持下列規范。
OPC 數據訪問 1.0、2.05a 和 3.0
OPC 歷史數據訪問 1.20
OPC 報警和事件 1.10
OPC XML 數據訪問 1.01
OPC 數據訪問 (OPC DA) 是針對管理過程數據的規范。 WinCC OPC DA 服務端符合 OPC DA 規范 1.0、2.05a 和 3.0。
OPC 歷史數據訪問 (OPC HDA) 是針對管理歸檔數據的規范。該規范是 OPC 數據訪問規范的擴充。 WinCC V6.2 或更高版本的 WinCC OPC HDA 服務端符合 OPC HDA 規范 1.20。
OPC 報警和事件是發送過程報警和事件的補充規范。 WinCC V6.0 或更高版本的 WinCC OPC A&E 服務端符合 OPC A&E 規范 1.10。
OPC XML 標准支持通過 Internet 採用獨立於平台的協議進行通訊。 客戶端不再局限於 Windows 環境 (DCOM)。 其它操作系統(如 LINUX)可以使用 HTTP 協議和 SOAP 介面在 Internet 上監視和交換 OPC 數據。
要使用 WinCC OPC HDA、WinCC-OPC-XML-DA 伺服器和 WinCC OPC A&E 伺服器,必須購買Connectivity Pack「連通性軟體包」授權。 「連通性軟體包」 授權必須安裝在用作 WinCC OPC HDA 伺服器、WinCC OPC XML DA 伺服器或 WinCC OPC A&E 伺服器的 WinCC 伺服器上。
2 在Excel中通過OPC DA訪問本地WinCC
WinCC OPC DA 伺服器為其它應用程序提供 WinCC 項目的實時數據。 應用程序能夠在同一台計算機上運行或在已聯網的遠程計算機上運行。 以這種方法,將WinCC 變數的實時數據提供給 Microsoft Excel。
在Microsoft Excel 中用VBA腳本語言建立OPC 客戶端,並通過OPC介面讀取WinCC中的數據,並將修改的數據寫入WinCC。通過OPC介面,Microsoft Excel作為OPC 客戶端發起通訊並發送讀/寫請求到OPC伺服器,OPC伺服器執行這些讀/寫請求。對於WinCC OPC DA 伺服器功能,需要將WinCC項目運行系統激活即可。
為了能夠運行Excel中的VBA宏腳本,首先需要調整安全性設置。如圖1在「工具->宏->安全性」中,將Excel的安全級別設置為「中」。
圖1 安全性設置
打開文件excel_opc .xls,在「安全警告」中選擇「啟用宏」。
圖2啟用宏
在A1單元格輸入運行WinCC的計算機名稱。A3/A4單元格輸入WinCC中變數的名稱。點擊按鈕「啟動 WinCC OPC」,對應WinCC變數的當前值即可讀入到Excel單元格中。直接在B3/B4單元格中修改數值,對應WinCC中的變數值也會隨之修改。點擊按鈕「停止 WinCC OPC」,停止Excel與WinCC的OPC數據訪問。
以下為Microsoft Excel 作為客戶端的配置說明。
在Excel中創建一個介面,在VisualBasic 編輯器中的「工具->引用」中,選中「Siemens OPC DA Automation 2.0」組件,使VisualBasic能夠識別OPC對象。
圖3 OPC引用組件
創建所需的所有對象,如:「MyOPCGroup」對象
Dim: 創建一個變數
WithEvents: 這個對象可以提供事件(如 DataChange)
MyOPCGroup: 對象名
As OPCGroup: 變數類型
圖4
Sub StartClient() 』Microsoft Excel建立與OPC伺服器的連接;
Set MyOPCServer = New OpcServer 』為「MyOPCServer」對象分配內存;
MyOPCServer.Connect ServerName, NodeName
ServerName :WinCC OPC DA 伺服器的名稱為 "OPCServer.WinCC"
NodeName:激活WinCC運行系統的計算機名稱
Set MyOPCGroupColl = MyOPCServer.OPCGroups
Microsoft Excel與OPC伺服器的連接一旦建立,OPC組即被創建。這個通過集合對象來實現;
Set MyOPCGroup = MyOPCGroupColl.Add(GroupName)
創建的組通過「MyOPCGroup」變數來定址。設置MyOPCGroup.IsSubscribed = True,以便OPC組能夠提供DataChange等事件。
Set MyOPCItemColl = MyOPCGroup.OPCItems 』創建OPC項
MyOPCItemColl.AddItems 2, ItemIDs, ClientHandles, ServerHandles, Errors
ItemIDs 存儲在單元格A3/A4中,把指定的ItemIDs 傳送給集合對象"MyOPCItemColl.AddItems"
Private Sub MyOPCGroup_DataChange()
在Microsoft Excel中,調用如下用於OPC組事件處理的程序,它是OPC伺服器的DataChange 事件,DataChange()這個事件處理程序提供了許多參數,如ItemValue(OPC項的值),客戶端句柄等。通過DataChange事件,當OPC項的值變化時,數據會自動發送。OPC項的當前值顯示在單元格B3/B4中。讀出值的質量代碼和時間戳顯示在C/D列單元格中。
Private Sub worksheet_change()
如果在Microsoft Excel的單元格B3/B4中輸入一個值,通過函數MyOPCGroup.SyncWrite將OPC項寫入到WinCC,寫入值和伺服器句柄以參數形式傳遞給此函數。
Sub StopClient()
最後,斷開與OPC伺服器的連接。
3 在Excel中通過OPC DA遠程訪問WinCC
可以通過DCOM從OPC客戶端遠程訪問OPC伺服器WinCC OPC DA。但在A1單元格需要輸入的是遠程激活WinCC運行系統的計算機名稱。
圖5在Excel中通過OPC DA遠程訪問WinCC
由於遠程OPC的使用是作為一個DCOM在使用,所以OPC客戶端可以在網路上任何一台計算機運行,但是必須要配置DCOM的訪問許可權。一個簡單的方法就是,在伺服器與客戶端都使用相同的用戶名與密碼登錄。如果想配置DCOM,請參考DCOM配置的相關資料及下載中心文檔:A0265 如何配置OPC DCOM。
WinCC在安裝時提供了OPC的客戶端控制項: Siemens OPC DAAutomation 2.0( SOPCDAAuto.dll),這個控制項就是在VBA中引用到的控制項。如果運行Excel的計算機上沒有安裝WinCC,可以使用批處理文件注冊dll文件。將整個文件夾 \Reg拷貝到C:盤下,雙擊reg opc即可。
B. 求助,opc客戶端怎麼遠程連接服務端
WINDOWS2000系統中PROFESSIONAL版本是不能開啟遠程桌面功能讓別人訪問的,但SERVER版可以開啟,不過需要我們安裝相應的WINDOWS組件。方法如下:
第一步:通過任務欄的「開始->設置->控制面板」,選擇里頭的「 添加/刪除程序」。
第二步:在左邊選擇「添加/刪除WINDOWS組件」。
第三步:稍後會出現添加刪除WINDOWS組件窗口,我們從中選擇「終端服務」,然後點「下一步」進行安裝。這里要注意一點的是在安裝過程中需要我們插入WINDOWS 2000SERVER系統光碟到光碟機中。
第四步:安裝完畢後需要重新啟動計算機,重啟後就完成了在WINDOWS 2000SERVER下的遠程桌面連接功能的安裝工作。
C. office如何訪問opc里的數據
可以使用office里的Excel進行改變,具體方法如下:
OPC(OLE for process control)作為標准軟體介面,可以使各個生產商的設備和應用程序就能以統一的方式連接起來。WinCC既可以用作OPC伺服器提供數據,又可以作為OPC客戶機訪問其他OPC伺服器中的數據。WinCC集成的OPC伺服器使得過程數據可由其它應用程序(OPC客戶機)訪問。在Excel中可以通過VBA腳本建立OPC客戶端,並通過OPC介面讀取WinCC中的數據,並將修改的數據寫入WinCC。
辦公軟體是指可以進行文字處理、表格製作、幻燈片製作、圖形圖像處理、簡單資料庫的處理等方面工作的軟體。辦公軟體朝著操作簡單化,功能細化等方向發展。辦公軟體的應用范圍很廣,大到社會統計,小到會議記錄,數字化的辦公,離不開辦公軟體的鼎力協助。另外,政府用的電子政務,稅務用的稅務系統,企業用的協同辦公軟體,這些都屬於辦公軟體。
D. 我用opc client 可以讀到 另一台電腦的 opc sever,可是連接不上,只是能看到,怎麼解決,求大神幫忙
OPC介面指的是OPC伺服器提供的一種訪問OPC SERVER 數據的一種方法!你能讀取到另一台的opc server,但是連接不上。你首先要做的就是確定opc server是不是需要密碼才能訪問
E. Kepware連接OPC伺服器設置
<meta name="source" content="lake">
1、打開Kepware軟體
2、右鍵連接性,新建通道,添加通道向導中選擇OPC DA Client或者OPC UA Client均可,選擇下一步。
3、通道名字起個自己可以識別的名字,如果是工業互聯網現場實施需要預先制定驅動命名規范。
4、Server Browse中選擇需要連接的OPC服務
5、添加設備,設備名字按照要求設置,其他默認,在Import Items中選擇需要連接的點位。
6、到這一步OPC服務的連接就建好了,下一步可以用OPC Client監視模擬的點位的狀態了。
F. opc 客戶端訪問伺服器問題
這個問題我也遇到過,終極解決辦法是禁用當前用戶,啟用administrator,重啟,在運行opc相關就沒問題了
G. wincc如何通過opc與外部設備連接
通過 OPC scout實現。
是從opc server中獲得相關plc數據,用於監控指定的數據 ,是專門針對西門子PLC的OPC伺服器。
當然也可以用其他的OPC伺服器,在OPC伺服器上載入相關的驅動,連接即可。
然後在wincc的變數連接里,添加OPC連接,就可以看到你OPC伺服器上發布的變數了。
需要注意的是:OPC伺服器連接相關的設備是需要這些設備的OPC驅動的。
H. OPC客戶端訪問伺服器
opctest
OPC(OLE for Process Control, 用於過程式控制制的OLE)是一個工業標准,管理這個標准國際組織是OPC基金會,OPC基金會現有會員已超過220家。遍布全球,包括世界上所有主要的自動化控制系統、儀器儀表及過程式控制制系統的公司。
基於微軟的OLE(現在的Active X)、COM (部件對象模型)和DCOM (分布式部件對象模型)技術。OPC包括一整套介面、屬性和方法的標准集,用於過程式控制制和製造業自動化系統。