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

如何實現(xiàn)EtherNet/IP與Modbus協(xié)議之間轉(zhuǎn)換?
串口屏Modbus通訊協(xié)議詳解
Profibus PA轉(zhuǎn)Modbus RTU協(xié)議網(wǎng)關(guān)

Modbus、樓宇自控、電力協(xié)議轉(zhuǎn)Modbus協(xié)議網(wǎng)關(guān)BL120ML支持一鍵對接LabVIEW

如何通過Modbus、樓宇自控與電力協(xié)議轉(zhuǎn)Modbus協(xié)議網(wǎng)關(guān)實現(xiàn)樓宇設(shè)備集成至MES?

使用Modbus、樓宇自控、電力協(xié)議轉(zhuǎn)Modbus協(xié)議網(wǎng)關(guān)實現(xiàn)生產(chǎn)設(shè)備的遠程監(jiān)控和管理

鋇錸協(xié)議網(wǎng)關(guān)輕松實現(xiàn)Modbus轉(zhuǎn)MQTT協(xié)議

鋇錸如何實現(xiàn)Modbus轉(zhuǎn)OPC UA協(xié)議?

Modbus協(xié)議轉(zhuǎn)Profibus協(xié)議網(wǎng)關(guān)模塊連PLC與激光發(fā)射器通訊

Modbus協(xié)議轉(zhuǎn)Profibus協(xié)議網(wǎng)關(guān)接溫控表與PLC通訊

Profibus轉(zhuǎn)Modbus網(wǎng)關(guān)幫助PLC實現(xiàn)智能激光設(shè)備通訊

評論