上節(jié)中講到ModBus協(xié)議是工業(yè)應(yīng)用中應(yīng)用最廣泛的協(xié)議。在ModBus協(xié)議系統(tǒng)中,主機(jī)一般為PLC、HMI、組態(tài)軟件等,但是在一個(gè)略微復(fù)雜的系統(tǒng)中,通常會(huì)存在同時(shí)需要多個(gè)主機(jī)的情況。由于通信線纜一般是RS485,半雙工的特性導(dǎo)致多個(gè)主機(jī)同時(shí)采集數(shù)據(jù)時(shí),會(huì)有較大的數(shù)據(jù)延遲。(因?yàn)橥粫r(shí)刻只能有一個(gè)主機(jī)或從機(jī)在發(fā)送數(shù)據(jù),否則會(huì)造成數(shù)據(jù)沖突,形成亂碼)
前文指路《串口服務(wù)器——簡單協(xié)議轉(zhuǎn)換介紹及使用方法》
因此主機(jī)在通信時(shí)一般會(huì)采用網(wǎng)口進(jìn)行,這樣會(huì)保證數(shù)據(jù)的及時(shí)性。上一節(jié)給大家講到串口服務(wù)器可以將網(wǎng)口數(shù)據(jù)轉(zhuǎn)換為串口數(shù)據(jù)進(jìn)行通信,這樣在保證了全雙工通信的同時(shí),又可以將數(shù)據(jù)接入互聯(lián)網(wǎng),這樣大大提高通信距離。
雖然網(wǎng)線上可以做到全雙工(發(fā)送和接收同時(shí)進(jìn)行),但是針對(duì)低延遲的應(yīng)用場(chǎng)景,這樣一對(duì)一的通信優(yōu)勢(shì)不是很明顯,今天給大家講到一個(gè)特色功能——多主機(jī)網(wǎng)關(guān)模式。
ModBus多主機(jī)網(wǎng)關(guān)支持多臺(tái)ModBus TCP主機(jī)同時(shí)操作RTU設(shè)備,利用TCP/IP協(xié)議通訊打破RTU數(shù)據(jù)總線上同時(shí)只能存在一臺(tái)主機(jī)的限制。
簡單協(xié)議轉(zhuǎn)換模式只適用于單一主機(jī)用于與從機(jī)通信的場(chǎng)景,因?yàn)榇诜?wù)器只是將數(shù)據(jù)做了轉(zhuǎn)換,并且串口的數(shù)據(jù)會(huì)廣播給全部主機(jī)。如果遇到多個(gè)主機(jī)同時(shí)發(fā)送數(shù)據(jù)時(shí),串口服務(wù)器會(huì)將數(shù)據(jù)直接進(jìn)行發(fā)送,這樣就會(huì)造成通訊超時(shí)或數(shù)據(jù)異常。
多主機(jī)網(wǎng)關(guān)
多主機(jī)網(wǎng)關(guān)模式與簡單協(xié)議轉(zhuǎn)換比起來,針對(duì)多主機(jī)同時(shí)發(fā)送數(shù)據(jù)場(chǎng)景,做了單獨(dú)的數(shù)據(jù)處理。例如在主機(jī)1、2、3發(fā)送數(shù)據(jù)時(shí)間較短時(shí),串口服務(wù)器將把請(qǐng)求的數(shù)據(jù)攔截在網(wǎng)絡(luò)端,數(shù)據(jù)將會(huì)按照先后順序?qū)⒅噶畎l(fā)送給串口設(shè)備,此時(shí)串口設(shè)備收到數(shù)據(jù)后將數(shù)據(jù)返回給主機(jī),并且是哪個(gè)主機(jī)請(qǐng)求數(shù)據(jù)就會(huì)將數(shù)據(jù)指定發(fā)送給哪個(gè)主機(jī),這樣就會(huì)避免出現(xiàn)通信異常現(xiàn)象,提高通信的可靠性。
下面主要給大家介紹一下多主機(jī)網(wǎng)關(guān)的應(yīng)用方法,優(yōu)于主機(jī)端操作各有各的特色,本處只使用ModBus Pool與ModBus Slave作為展示,PLC/HMI等參照此進(jìn)行鏈路連接。如何配置參數(shù)在上一章中已經(jīng)做出了講解,在本節(jié)不再單獨(dú)介紹。
使用EBYTE網(wǎng)絡(luò)配置工具查看當(dāng)前串口服務(wù)器參數(shù)情況,IP需要修改為與電腦同一網(wǎng)段,設(shè)置串口服務(wù)器為TCP服務(wù)器模式,記錄當(dāng)前本機(jī)IP、本地端口。
打開ModBus Slave軟件模擬從機(jī),連接方式使用串口,選擇串口服務(wù)器的串口號(hào)、連接參數(shù)(波特率、數(shù)據(jù)位、校驗(yàn)位、停止位,這里采用默認(rèn)115200,8N1)
數(shù)據(jù)返回內(nèi)容選擇從機(jī)ID為1,功能碼選擇03,寄存器地址選擇為0,數(shù)量為10(稍后讀取也為這個(gè)參數(shù))。
打開ModBus Pool軟件,連接方式選擇為ModBus TCP/IP,目標(biāo)IP設(shè)置為串口服務(wù)器IP地址,目標(biāo)端口設(shè)置為串口服務(wù)器本地端口(192.168.0.113/8887)超時(shí)時(shí)間可使用默認(rèn)。
讀取參數(shù)也選用從機(jī)ID為1,功能碼選擇03,寄存器地址選擇為0,數(shù)量為10。參照此參數(shù)可以連接6個(gè)主機(jī),如下圖。
串口服務(wù)器——NA111
-
MODBUS
+關(guān)注
關(guān)注
28文章
1805瀏覽量
77003 -
網(wǎng)關(guān)
+關(guān)注
關(guān)注
9文章
4469瀏覽量
51109 -
服務(wù)器
+關(guān)注
關(guān)注
12文章
9160瀏覽量
85425
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論