如何使用python製作OPC UA服務器客戶端程序。 我發現這個鏈接-https://github.com/FreeOpcUa/python-opcua/tree/master/examples 但我無法獲得代碼流。請給出你的建議,如果有人有任何相關的支持文件。請分享它。使用OPC UA協議在python中進行服務器端客戶端編程
1
A
回答
0
你想要完成什麼?結構是相當重要的問題,因爲你可以擺脫它。 Onces它的安裝運行的服務器並檢查它witth他的命令行
opcua-client
這個GUI可能會幫助很多見的服務器的結構。
opcua服務器存在於節點組合之外。他們中的一些標準節點,你會在你運行 編程時許多這些基本的節點可以接收使用最基本的OPC服務器看到:
server.nodes#.<some node use your IDE>
對於你需要找到他們所有自定義節點,你可以通過打電話給孩子來做到這一點。例如:
# To get the root node ALL other nodes are a child fro; this one eventually
root = server.get_root_node()
# To get a child:
root.get_child("0:Objects") #Objects is one of those basic nodes
# You can get a child from a path
# Once again first study the tree with the opcua-client gui
# This gui is installed automatically and under the commane opcua-client
root.get_child(["0:Objects", "0:Server"])
# The above will get the child of Objects called Server
# directly starting at the root node
現在你可以自己創建子節點。你去你想要添加孩子的節點通常:
# The Objects node
# Later you'll probably want to put that all in 1 line
objects = server.nodes.objects
id, name, type = 2, "testName", None
test = objects.add_object(id, name, type)
# This will add a object named testName to the objects node
# To acces this node again we can use it's id
server.get_node(test.nodeid)
# I know this will return test again.
# However the ua methods "parent' parameter is this nodeid so can come in very handy
創建ua方法可能也將成爲您的服務器的一項重要任務。
@uamethod
def methode(parent, input):
print(input) # You can do all things here offcourse
server.nodes.objects.add_method(0, "myMethod", methode, ua.VariantType.ByteString, None)
這將方法添加到對象節點
0是你想給它的ID。我不能真正解釋你應該選擇什麼號碼...我通常只是選擇2 ...
「mymethod」將是它的瀏覽名稱,它允許您使用節點
的get_child和call_method方法找到它方法不合適您的方法
ua.VariantType。需要解析inputargs的數據
無同上,但outputargs ...這我functiond沒有
希望這有助於你一點理解,你可以用做最基礎知識freeopcua庫
相關問題
- 1. OPC UA客戶端 - BadCertificateHostNameInvalid - opcfoundation.org
- 2. 樹莓派pi2上的OPC UA服務器客戶端
- 3. OPC UA客戶端數據訪問服務器
- 4. 強制bazaar客戶端協議使用服務器協議2?
- 5. 客戶端服務器,設計協議
- 6. 使用Python進行網絡編程 - TCP客戶端/服務器
- 7. 關於流行的客戶端/服務器協議的建議
- 8. OPC客戶端 - 如何從遠程OPC服務器讀取
- 9. 最佳Python支持的服務器/客戶端協議?
- 10. 用Python進行服務器端客戶端推送通知
- 11. python服務器的客戶端改進
- 12. 西門子OPC UA和.NET C#客戶端無法連接到服務器?
- 13. 如何將OPC UA節點紅色客戶端連接到本地服務器?
- 14. 強制一個OPC客戶端讀取OPC服務器緩存
- 15. MySQL協議客戶端/服務器Authenication - 令牌生成從客戶端
- 16. Java OPC-UA客戶端Eclipse Milo端點URL更改爲localhost
- 17. 進行服務器端編程時需要多少客戶端編程?
- 18. C客戶端在服務器客戶端應用程序中的進程ID
- 19. 編寫一個具有客戶端和服務器端軟件的協議
- 20. 使用進程在客戶端服務器上執行utl_recomp
- 21. Android中的客戶端服務器協議
- 22. 使用RESTful API進行客戶端和服務器端驗證
- 23. 客戶端服務器socket編程
- 24. android - 客戶端服務器編程
- 25. Netbeans 7+協作客戶端/服務器
- 26. c使用TCP/IP協議的服務器客戶端應用程序
- 27. Android客戶端服務器編程。
- 28. Java客戶端服務器編程
- 29. UDP客戶端和服務器緩衝區協議
- 30. 更改客戶端到服務器的協議
嗨。我指的是你提到的同一個鏈接。你運行了嗎? –