labview建立OPCUA客戶端


1、現在opcUA在自動化領域里應用越來越廣泛,OPC UA客戶端的建立不像以前OPC UA的建立那么復雜,並且OPC UA支持很多平台,拜托了微軟DCOM的束縛。比如NodeRed平台,JS,單片機,labview等等語言都可以開發客戶端。

2、labview在建立OPCUA方面也一如既往的簡單,通過建立連接->讀寫數據或訂閱數據->刪除訂閱->刪除連接等操作就可以完成對OPCUA服務器上標簽點的讀寫於訂閱。

3、查詢相關資料-NI官網資料講解了OPCUA 客戶端函數的詳細用法,當然也可以在安裝OPCUA開發包后查看隨機幫助,那里面還有相關例程

4、軟件版本:labview用的2020版本32位中文,OPCUA開發包從網上下載的也用的是2020版32位的,32位軟件有中文支持,64位沒有中文版

5、OPCUA服務但采用codesys control win

6、軟件架構

(1)采用JKI狀態機,統籌管理界面事件,和數據和UI界面的初始化。

(2)消息隊列(生產者),JKI狀態機內建立OPCUA連接后,產生注冊事件,在消息隊列中通過事件處理函數收到OPCUA訂閱到的數據,並將數據插入消息隊列

(3)消費者,消息隊列有數據后,將隊列內的數據解析放入多列列表框內

7、JKI狀態機中新增內容

 

 (1)新增內容,主要完成了樹形控件顯示OPCUAserver中各個對象的層級關系,完成樹形控件中標簽點到多列列表框中的拖拽功能

 (2)完成OPCUA服務器的連接、訂閱、注銷等工作

8、消息隊列-數據生產者

 

(1)生產者,重新定義了消息隊列傳遞的數據類型,該類型中包括原本數據訂閱傳遞的數據以及增加了一個字符串數據類型,用於傳遞附加消息,生產者循環通過JKI狀態機中控制共享變量的值來停止。

(2)JKI狀態機中在建立OPCUA連接后,產生訂閱事件,這里采用了LV2全局變量將注冊事件引用傳遞出來。

(3)主界面關閉程序后通過JKI狀態機控制StopWhile共享變量,在生產者循環中,產生一個新消息,將停止消息加入其中,傳給消費者循環

9、消費者循環

 

(1)消費者循環負責將接收到的數據更新到多列列表框,同時接收到停止消息后停止循環並銷毀消息隊列

10、通過實現OPCUA客戶端,熟悉了labview樹形控件和多列列表框控件的使用,以及對數組函數、消息隊列、LV2全局變量、JKI狀態機等相關功能的使用,學習labview的使用還是要具體去實現某些功能,才能真正理解函數的使用方法。

 

 

 

 

                                        


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM