關注官方微信

EN

EN.

產品中心

產品中心

Modbus網關的四種類型

發布時間:2019-09-11 作者:上海卓嵐 瀏覽量:10216
1.概述

Modbus網關是一種能夠將Modubs TCP協議轉化為Modbus RTU協議的設備。Modbus廣泛應用于儀表和傳感器領域,可以獲得儀表和傳感器的數據,但是傳統的基于RS485的Modbus RTU(或ASCII)速度和擴展性較差,所以后來出現了Modbus TCP這種基于網絡的協議。所以Modbus網關這種轉換器就應運而生了。

四種Modbus網關從簡單協議轉換到多主機網關,再到存儲型網關,再到ZLMB這種可配置網關。從簡單到復雜也是反映了它的發展過程,了解他們的優缺點有助于工程師更好掌握它們的使用方法。

這里特別推薦的是ZLMB可配置網關,它可以預先配置需要讀取的多個從站的多個寄存器列表,然后網口可以用一條指令一次性讀取所有寄存器,讀取效率非常高。且讀取速度很快。具體參考《可配置Modbus網關ZLMB》。

2.四類Modbus網關
2.1.簡單協議轉化

最初的Modubs網關,只不過是需要解決數據格式的轉化。舉一個例子,Modbus RTU(RS485端)中03功能碼,讀取00開始的1個寄存器的指令為:01 03 00 00 00 01 84 0a,其中84 0a是CRC校驗。而一個Modbus TCP指令(網絡端)為00 00 00 00 00 06 01 03 00 00 00 01。我們知道普通的串口服務器是“透傳”的,也就是發送串口發送01 03 00 00 00 01 84 0a,網口也是01 03 00 00 00 01 84 0a。為了實現這個RTU轉Modbus TCP功能,對比發現只要去掉CRC校驗84 0a加上開頭的00 00 00 00 00 06即可。

簡單協議轉化的多主機沖突

這種簡單的格式轉化確實能夠初步地滿足要求。但是缺點是:

1.無法多主機訪問:不能實現多個Modbus TCP主機去訪問網關,因為主機A和主機B發送的數據在RS485總線上會產生搶占總線沖突,引起數據錯亂。

2.返回數據干擾:設備對主機A的應答不僅會返回給主機A也會返回給主機B,這樣主機B的返回數據中就會有干擾數據。

雖然簡單協議轉化進本已經被淘汰,這里也簡要介紹一下它的設置方法:在ZLVircom配置工具的“設備編輯”界面中選擇轉化協議為“Modbus TCP轉RTU”,在高級選項中去掉“多主機”和“RS485防沖突”兩個勾。

2.2.多主機模式

多主機模式的Modbus網關正是為解決“簡單協議轉化”模式的缺點設計的。如上圖所示,當主機A和主機B同時訪問是Modbus網關會進行總線的占用調度,從而解決總線沖突問題,另外主機A訪問的數據也不會再發送給主機B,解決了返回數據干擾問題。

數據通訊步驟如下:

1.當網關收到主機A的查詢請求時,檢查總線是否有在使用,如果空閑則發送到RS485總線上,否則等待到總線空閑。

2.網關記錄下來當前查詢的主機,這里是主機A。

3.當數據從RS485總線返回時,網關將其轉化為Modbus TCP格式轉發給相應的主機(這里是主機A)。

多主機模式的優點是,實現了多臺主機的同時訪問,解決了總線沖突和返回數據干擾問題,但是仍然存在不足之處:

1.數據返回慢:從以上的數據通訊步驟可以看出,一臺主機獲得數據需要數據線從網絡轉發到RS485總線,等待設備返回后再從RS485轉發到網絡。由于RS485總線本身是慢速通信方式,主機一般需要等待50~100ms才能獲得一個數據。

2.主機數量很多時,等待容易超時:這也是數據返回慢引起的另外一個問題。

對于早期的ZLAN5142默認即“多主機模式”;對于ZLAN5143(1.565之前版本)不支持“多主機模式”,只支持“存儲型”;對于于ZLAN5143(1.565及其之后版本)支持“多主機模式”,設置方法為:在ZLVircom配置工具的“設備編輯”界面中選擇轉化協議為“Modbus TCP轉RTU”,在高級選項中將RS485總線沖突最多等待時間改為2秒即可。

2.3.存儲型網關

存儲型網關正是為了解決“多主機模式”的缺點而設計的,由于“多主機模式”的慢速問題主要是由于RS485總線返回數據太慢引起的,“存儲型”的思路就是通過預先獲得某些需要的數據,事先存儲起來,等網絡端需要數據時可以立即提供,從而減少數據查詢時間。

存儲型網關有兩個特點:

1.自學習:存儲型網關無需配置,因為它可以在主機索要一個查詢數據的時候就會將這個記錄保存一起,網關內部會自動學習當前網口需要的數據。

2.事先查詢:當網關獲悉所有主機索要的所有的寄存器之后,網關會事先進行逐條查詢,并把結果存儲到網關的內部。

如此一來,當主機A想要之前要過的數據的時候,網關會從自己的內存中調取數據,并立即返回給主機A,由于沒有轉發到RS485總線的過程,這個時間大約在1~2ms,比之前的50~100ms大大提高。

存儲型網關的優點:

1.返回速度快:主機A查詢返回數據時間大大提高。

2.無需配置:由于采用自學習方式,無需配置,操作起來和“多主機模式”并沒有差別。

存儲型網關的問題:

1.首條指令返回慢:由于網關是通過學習來獲得主機索要的寄存器號的,在獲得這個信息前,無法事先查詢。所以主機發送的第一條指令仍然需要通過轉到RS485總線來獲得數據。首條指令返回和多主機模式一樣慢。

2.RS485總線查詢過快可能影響設備工作:由于一般默認情況下RS485總線會以最快速的速度查詢從站設備內部的寄存器內容,而某些儀表可能無法適應這么快速的查詢導致設備工作異常。對于這點實際可以加大“RS485總線空余時間”參數來解決查詢過快的問題,實際是可以解決的。

3.不是最新數據:由于數據是事先查詢獲得,存儲起來的,所以查到的數據可能并不是最新的數據,雖然這個時間也就只有幾百毫秒,對于某些特殊情況也需要考慮到這種延時。

4.時序問題:某些Modbus TCP的讀取和存儲需要按照寫、讀等時序操作的,“存儲型”的這種預先存儲會打亂這種時序,會引起某些設備無法兼容的問題。

這里的缺點2、3、4都可以撤回到“多主機模式”的網關來解決這個問題,注意撤回到“多主機模式”后,數據返回會變慢。注意ZLAN5143的新固件支持“多主機模式”和“存儲型”兩種模式。而上述缺點1(首條指令返回慢),將會在后面的“可配置”網關中解決。

ZLAN5142不支持“存儲型”,ZLAN5143設置為“存儲型”的方法為:在ZLVircom配置工具的“設備編輯”界面中選擇轉化協議為“Modbus TCP轉RTU”即可。

2.4.可配置網關

為了解決“存儲型”網關的首條指令返回慢的問題可以采用可配置網關??膳渲镁W關也采用“存儲型”網關的事先查詢獲得RS485總線從站寄存器內容的辦法。但是它不采用自學習的方法,為了解決首條指令返回慢的問題,必須事先把需要的寄存器列表配置到網關內部。它可以預先配置Modbus RTU端的設備的地址、功能碼和寄存器列表,并存儲到網關內部。網關會自動采集這些配置的RTU設備的數據,然后映射到連續的Modbus TCP寄存器地址,從而允許Modbus TCP端一次性讀取所有的設備的不同寄存器的數據。

卓嵐可配置網關又稱之為ZLMB網關,有如下的優點:

1.所有指令返回速度都快:即使是首條指令也同樣快速。

2.指令合并提高效率:可以將分散的不同的站地址、寄存器映射到同一片寄存器。這樣Modbus TCP端可以用一條指令采集所有數據,包括不同站地址的設備的數據,而不是分為幾條指令分別去采集,提高了Modbus TCP端的傳輸效率。

3.地址重映射:對于某些情況需要將不同分散的寄存器重新映射到整片連續的區域,ZLMB網關可以實現這個要求。

可配置網關的缺點:

1.需要手動配置:如果“存儲型”網關就能夠滿足要求的可以優先選擇“存儲型”,因為“存儲型”無需任何配置。ZLMB方式需要手動使用ZLVircom配置需要的寄存器。

2.事先預讀取引起的問題:和存儲型一樣存在“不是最新數據”和“時序問題”。

卓嵐ZLAN5143、ZLAN7144、ZLAN7146、ZLAN8303等都支持可配置Modbus網關功能。其中ZLAN5143需要固件版本1.579及以上版本,配合ZLVircom5.15及以上版本來使用。7144需要固件版本1.491及以上版本。配置方法是:在ZLVircom配置工具的“設備編輯”界面中點擊“固件和配置”按鈕,然后在彈出的“網頁程序下載工具”對話框中,選擇“網頁目錄下載”,然后點擊“ZLMB”按鈕,設計完畢后點擊“下載”按鈕下載到設備內容。具體內容請參考《可配置Modbus網關ZLMB》的詳細介紹。

3.四類網關比較

綜上分析我們將最后的比較結果列出表格如下:

網關類型 簡單協議轉化 多主機模式 存儲型網關 可配置網關
多主機支持
返回指令快
首條指令返回快
不存在預先讀取引起的問題
無需配置
支持指令和合并和重新映射地址

總的來說,可配置網關是讀取效率最高的,最為先進的Modbus網關,但是配置較為繁瑣;而存儲型網關是默認的模式,也是使用最簡便的模式,同時具有多主機、讀取速度快等特點;而在某些RS485設備不適應“預先讀取”這種的情況下,可以退回到“多主機”模式這種慢速模式。而“簡單協議轉化”模式由于存在多主機時有總線誤碼和丟失,一般情況不會采用。

4.型號和支持的模式

四種Modbus網關模式和對應的型號現列出到如下表:

名稱 型號 簡單協議轉化 多主機模式 存儲型網關 可配置網關
多串口Modbus網關 ZLAN5240、ZLAN5443A、ZLAN5843A、ZLAN5G40A
單串口Modbus網關 ZLAN5142、ZLAN5142-3
新一代多串口Modbus網關 ZLAN5443D、ZLAN5443-232
以太網Modus網關 ZLAN5143
Wifi+以太網Modus網關 ZLAN7144
Wifi Modus網關 ZLAN7146
4G+以太網Modbus網關 ZLAN8303-7
Zigbee Modbus網關 ZLAN9543
Lora Modbus網關 ZLAN9743

江西十一选五骗局