1. Modbus簡介
Modbus是Modicon公司(現在已經被施耐德收購成為了施耐德旗下品牌)為其PLC通訊而開發的一種通訊協議,從1979年問世至今,已經成為工業通訊領域的業界標準(De facto),最初的Modbus通訊協議僅支持串口,分為Modbus RTU和ACSII兩種信號傳輸模式(一般基于RS485串口通信媒介),而隨著時代進步,Modbus也與時俱進,新增了Modbus TCP版本,可以通過以太網進行通訊,此外,Modbus還有一個Modicon專用的Modbus Plus(Modbus +)版本。和其他工業通信協議相比,Modbus主要的優點包括內容公開沒有版權要求,不用支付額外費用、硬件要求簡單容易部署、使用廣泛便于系統集成。Modbus采用半雙工的通訊方式,由1個子站和多個從站組成,允許多個設備連接在同一個網絡上進行通訊。
2. LabVIEW實現Modbus通訊的方式
針對Modbus的串口和TCP兩種不同的方式,在LabVIEW中通??梢酝ㄟ^以下幾種方法實現Modbus通訊。其中一些實現方式需要安裝LabVIEW 數據記錄與監控(DSC)模塊.
Modbus RTU/ASCII的實現方式
通過VISA直接進行串口操作實現
通過LabVIEW DSC模塊中的Modbus模塊實現
通過LabVIEW DSC模塊中的OPC模塊實現
Modbus TCP
通過LabVIEW標準的TCP模塊實現
通過LabVIEW DSC模塊中的Modbus模塊實現
通過LabVIEW DSC模塊中的OPC模塊實現
以下就幾種實現方式進行示例與說明。
3. LabVIEW通過VISA實現Modbus串口通信
VISA( Virtual Instrument Software Architecture,虛擬儀器軟件架構),是美國國家儀器公司(NI)推出的通用串行通訊軟件,最初用于NI公司LabVIEW等軟件與串行設備進行通訊,現在已成為工業通訊的標準之一。通過VISA通訊時,軟件會自動掃描機器中的串口資源供選擇,對于沒有串口的筆記本電腦,則通常需要通過USB-RS485的轉換線來實現虛擬串口。找到串口后,建立必要的VISA資源,然后在此基礎上進行通訊。采用VISA通訊時串口通訊的數據以及CRC校驗值等均需要自行計算并保證準確,否則可能導致通訊失敗。采用LabVIEW的VISA實現Modbus的程序示例如下圖。
4. LabVIEW通過Modbus模塊實現Modbus通訊
在安裝了DSC擴展包后,在LabVIEW下實現Modbus通訊最方便的方法是采用Modbus模塊。這時只需要選擇相應的命令模塊即可實現通訊與命令,而不需要自行寫入相應的字符串命令。采用Modbus模塊的時,可方便地在RTU和TCP兩種協議中轉換,根據需要選擇不同協議。這是LabVIEW多態的一個非常好的示例。程序見下圖。
5.LabVIEW 采用TCP模塊實現Modbus通訊
在沒有DSC模塊的情況下,或是有特殊要求的時候,也可以直接使用LabVIEW內置的TCP模塊編寫Modbus通信程序。其過程與采用Modbus模塊比較相似,只是在第一步建立連接時要指定Modbus通訊端口等參數,默認情況下Modbus TCP使用502端口。如果通訊不上,有必要檢查防火墻是否允許該端口通訊。采用TCP模塊實現Modbus通訊的程序如下。
6. LabVIEW采用OPC協議實現Modbus通信
OPC全稱是OLE for Process Control,用于過程控制的OLE協議。OLE是Object Linking and Embedding,對象連接與嵌入的縮寫,這是基于微軟的COM技術實現數據交換的一個協議。COM指的不是互聯網域名的.com,是Component Object Model(部件對象模型)的縮寫——這一段解釋真拗口,簡言之在OPC協議出現前,工業設備之間的通訊非常繁瑣復雜,而OPC將這一過程大大簡化,通過OPC協議可以將各種基于不同協議的工業設備連接起來。當然,OPC協議也有一定的代價,通訊速度與可靠性、實時性都沒有原生協議好。因此,在可以通過原生協議完成通訊的情況下,應盡量避免采用OPC。
OPC協議的實現要通過兩部分完成。首先是OPC服務器,這是軟件程序與不同協議下工業設備通訊的中間件,相當于網關。在OPC服務器下設置要連接的工業設備,把需要讀/寫的變量設置在其中,供OPC客戶端訪問。通過LabVIEW編程實現的部分相當于OPC客戶端,用于從OPC服務器端讀寫數據。關于LabVIEW下使用OPC協議的通訊辦法,NI官方有詳細的文檔資料。搭建的OPC服務器示意如下。
結語
Modbus協議作為一種通用的工業通訊標準,在業界得到非常廣泛的應用,LabVIEW作為NI公司主力產品,同樣有著相當廣泛的用途,采用LabVIEW實現Modbus通訊協議,在實踐中有著非常重要的意義。
-
LabVIEW
+關注
關注
1964文章
3652瀏覽量
322573 -
MODBUS
+關注
關注
28文章
1765瀏覽量
76850 -
TCP
+關注
關注
8文章
1351瀏覽量
78999
發布評論請先 登錄
相關推薦
評論