2013-09-27 106 views
1

我是新手。我搜索了各種論壇的opc應用程序。看起來他們正在使用美國的SDK來創建opc客戶端和服務器應用程序。我已經通過了統一自動化SDK,並且我成功地連接,讀取和寫入。但我需要創建自己的opc應用程序。我想知道如何在不使用任何外部SDK或應用程序的情況下連接opc服務器和客戶端。在我的第一步中,我想知道在服務器和客戶端之間建立連接所需的通信數據包。我曾嘗試wireshark查看通信數據包,但我無法弄清楚。OPC連接建立

我想在C++中做一個簡單的程序來建立opc客戶端和服務器之間的連接,最好是一個opc UA。

我也認爲我做錯了opc應用程序的方式。什麼纔是開始開發opc客戶端和opc服務器的正確步驟。

你能幫我嗎。我一直困在這個問題很長一段時間。

問候, 西卡

回答

1

開始深化發展的OPC UA客戶端/服務器有幾種可能性:

首先是使用由OPC基金會提供的Stack之一(.NET,Java或C/C++) 。 1.02版本月剛剛發佈。那麼您可能需要根據您要使用的語言在您的平臺上移植。堆棧只是通信部分,您將需要對其進行編碼(如SessionManager,SubscriptionsManager等)以通過它發送數據。您需要成爲OPC Foundation會員($)才能下載它。

第二種方法是嘗試從第三方購買SDK:Prosys,Unified Automation,Softing,...您可以在搜索引擎上輕鬆找到它們。他們給你幾乎準備好的客戶端/服務器界面,你只需要連接你的數據。這可能會花費你很多錢,但爲你節省一些時間。

第三種方式是加入開源項目之一,例如Open OPC UA,使您可以使用OpenSource代碼庫開發自己的OPC UA客戶端/服務器。

順便提一下,OPC基金會網站上沒有更多的論壇。我建議你使用這個網站,因爲它開始有一些OPC主題

+0

謝謝卡米爾。您能否介紹一下opc連接建立的通信數據包。我的意思是說,當opc客戶端連接到opc服務器時,它會發送一些數據包,如果數據包正確,服務器將提供連接權限。所以我想知道在opc協議中用於連接建立的客戶端和服務器之間傳輸和接收什麼樣的數據包。如果我的概念不正確,請您澄清我的誤解 –

+0

客戶端/服務器連接過程的示例可在此處找到:https://j2eeps.cern.ch/wikis/download/attachments/16023863/OPC-UA-Secure -Channel.JPG?版本= 1&時間modificationdate = 1286181543000 –

1

OPC UA通信數據包的詳細信息可以在規範的第6部分找到。順便說一句,規格現在也可用於註冊用戶(不支付會員)。 SDK在GitHub的GPL許可證下可用。