[MOXA] MGate MB3660 Agent Mode介紹與設定說明

MB3660是MOXA可備援的Modbus Gateway,主要的功能是Modbus TCP和Modbus RTU/ASCII協定轉換,並提供了不同的模式提高傳輸的效能,本文是MB3660介紹的系列文之一,其餘的介紹可參考以下文章:
MGate MB3660 Intelligent Mode介紹與設定說明
[MOXA] MGate MB3660 Transparent Mode介紹與設定說明
[MOXA] MGate MB3660 備援機制介紹與各模式效能比較

AGENT MODE

代理模式的設計概念是藉由MGate MB3660分割Modbus輪詢的負載,將要向Modbus終端設備請求的命令事先輸入在MGate MB3660中,由MGate MB3660負責去向Modbus終端設備輪詢,將回應的資料儲存在MGate MB3660的記憶體中;而SCADA對MGate MB3660發出請求時,MGate MB3660就會以記憶體中的資料回應給SCADA。
image030.png-MGate MB3660 Agent Mode介紹與設定說明

代理模式改善了透明模式下獲取資料效率,但需要自行輸入大量的Modbus命令與配置資料儲存的記憶體位置;MGate MB3660每個序列埠口可以設定32個Modbus命令,所以對序列設備最多可以有512個命令;而且MGate MB3660對每個命令分配了1bit的記憶體位置,去儲存每個命令的執行狀況,0表示命令運行成功,1表示命令運行失敗。

在代理模式中,Modbus TCP master可透過命令讀取MGate MB3660 Modbus TCP slave的狀態,以了解Modbus RTU / ASCII slave設備的狀態,透過以下資訊:
Slave ID [MB3660’s Modbus TCP slave ID]
Function 0x03 or 0x04
Address 40001~
Quantity 32 words for MB3660-16, 16 words for MB3660-8

同樣的Modbus RTU / ASCII master也可透過命令讀取MGate MB3660 Modbus RTU / ASCII slave的狀態,,以了解Modbus TCP slave設備的狀態,透過以下資訊:
Slave ID [MB3660’s Modbus TCP slave ID]
Function 0x03 or 0x04
Address 41001~
Quantity 16 words

Modbus TCP

此分頁中設定Modbus TCP端(乙太網路端)於系統中的Modbus腳色(master / slave)。
image032.png-MGate MB3660 Agent Mode介紹與設定說明

Mode selection(MGate role)
選擇Modbus TCP端的Modbus腳色。

Initial delay(Master)
某些Modbus設備啟動的時間可能較長,若在設備尚未啟動前便開始發送請求可能導致設備異常,可以透過設定Initial Delay設定MGate MB3660在啟動後等待一段時間再開始發送第一個請求。

Max. retry(Master)
設定MGate MB3660嘗試與Modbus slave通訊的最大重試次數。

Response timeout(Master)
設定等待Modbus slave回應的逾時時間。

Modbus Commands(Master)
點擊Add可以新增命令,選擇現有命令再點擊Edit可編輯命令,選擇現有命令再點擊Copy可複製命令,選擇現有命令再點擊Delete可刪除命令。
image034.png-MGate MB3660 Agent Mode介紹與設定說明

Enable
啟用或停用該命令。

Name
命令名稱,可以辨識命令用途等。

Slave IP address
遠端TCPslave設備的IP位置。

Port
遠端TCP slave設備的TCP埠口。

Slave ID
遠端TCP slave設備的slave ID。

Function
Modbus命令的function code,支援01、02、03、04、05、06、15、16、23。

Trigger
選擇Disable時,該命令將不會被發送至TCP slave設備;Cyclic會依照poll interval設定的間隔時間循環發送命令;Data change會依照poll interval間隔輪詢數據,並在檢測到數據改變時發送命令。

Poll interval
腳色為Modbus TCP master時的輪詢間隔時間。

Endian swap
數據字節交換,選擇None不啟用交換;Byte會將0x0A, 0x0B, 0x0C, 0x0D變為 0x0B, 0x0A, 0x0D, 0x0C;Word會將0x0A, 0x0B, 0x0C, 0x0D變為0x0C, 0x0D, 0x0A, 0x0B;ByteWord會將0x0A, 0x0B, 0x0C, 0x0D變為0x0D, 0x0C, 0x0B, 0x0A。

Read starting address
讀取數據的起始位置。

Read quantity
讀取數據的數量,讀取單位依照Function選項不同而分為bit與16bits。

Write starting address
寫入數據的起始位置。

Write quantity
寫入數據的數量,寫入單位依照Function選項不同而分為bit與16bits。

Read / Write memory address
設定MGate MB3660讀取或寫入數據的記憶體起始位置,設為空值系統會自動定址。

Opposite side’s(Serial side’s) command fault
當遠端序列master設備斷線時,MGate MB3660的序列端就無法收到master的命令,但是MGate MB3660的TCP端依舊會發送寫入命令給TCP salve設備,為了避免序列端故障所可能造成的問題,當MGate MB3660的序列端失效時,MGate MB3660的TCP端可以有三種處理方式,Keep latest data會持續對TCP slave端寫入與最後一筆數據相同的數據;Clear data to zero會對TCP slave端寫入0;User-define value會對TCP slave端寫入使用者自定義的值。

Timeout for opposite side’s(Serial side’s) data update
設定判斷序列端逾時的時間。
image036.png-MGate MB3660 Agent Mode介紹與設定說明

Slave ID(Slave)
當MGate role為Slave,設定MGate MB3660 TCP端的slave ID。

TCP port(Slave)
設定MGate MB3660的Modbus TCP port。

Modbus RTU/ASCII

此分頁中設定Modbus RTU / ASCII端(乙太網路端)於系統中的Modbus腳色(master / slave)。
image040.png-MGate MB3660 Agent Mode介紹與設定說明

Port Configuration Import
由本地端匯入csv格式的序列埠設定,詳細格式說明請參考設備原廠使用手冊Port Configuration(page 4-27)。
(download link: https://www.moxa.com/doc/man/MGate_MB3660_Series_UM_e2.0.pdf)

Port Configuration Export
將當前各埠口設定匯出為csv檔。

Mode selection(MGate role)
選擇Modbus RTU / ASCII端的Modbus腳色。

Master Settings(Master)
列出MGate MB3660處於RTU / ASCII master時的各埠口設定,選擇序列埠後點選Edit可進入該埠口設定。
image042.png-MGate MB3660 Agent Mode介紹與設定說明

Initial delay(Master)
某些Modbus設備啟動的時間可能較長,若在設備尚未啟動前便開始發送請求可能導致設備異常,可以透過設定Initial Delay設定MGate MB3660在啟動後等待一段時間再開始發送第一個請求。

Max. retry(Master)
設定MGate MB3660嘗試與Modbus slave通訊的最大重試次數。

Response timeout(Master)
設定等待Modbus slave回應的逾時時間。

Inter-frame delay(Master)
設定Slave設備在回覆資料時的延遲,如果設定為0,MGate MB3660會自動判斷延遲時間。

Inter-character timeout(Master)
設定Modbus RTU設備在回應時,每個字符的間隔逾時時間,若回應字符間隔時間逾時,此次接收的數據將會被丟棄,如果設定為0,MGate MB3660會自動判斷逾時時間。

Modbus Commands(Master)
點擊Add可以新增命令,選擇現有命令再點擊Edit可編輯命令,選擇現有命令再點擊Copy可複製命令,選擇現有命令再點擊Delete可刪除命令。
image044.png-MGate MB3660 Agent Mode介紹與設定說明

Enable
啟用或停用該命令。

Name
命令名稱,可以辨識命令用途等。

Slave ID
遠端TCP slave設備的slave ID。

Function
Modbus命令的function code,支援01、02、03、04、05、06、15、16、23。

Trigger
選擇Disable時,該命令將不會被發送至RTU / ASCII slave設備;Cyclic會依照poll interval設定的間隔時間循環發送命令;Data change會依照poll interval間隔輪詢數據,並在檢測到數據改變時發送命令。

Poll interval
腳色為Modbus RTU / ASCII master時的輪詢間隔時間。

Endian swap
數據字節交換,選擇None不啟用交換;Byte會將0x0A, 0x0B, 0x0C, 0x0D變為 0x0B, 0x0A, 0x0D, 0x0C;Word會將0x0A, 0x0B, 0x0C, 0x0D變為0x0C, 0x0D, 0x0A, 0x0B;ByteWord會將0x0A, 0x0B, 0x0C, 0x0D變為0x0D, 0x0C, 0x0B, 0x0A。

Read starting address
讀取數據的起始位置。

Read quantity
讀取數據的數量,讀取單位依照Function選項不同而分為bit與16bits。

Write starting address
寫入數據的起始位置。

Write quantity
寫入數據的數量,寫入單位依照Function選項不同而分為bit與16bits。

Read / Write memory address
設定MGate MB3660讀取或寫入數據的記憶體起始位置,設為空值系統會自動定址。

Opposite side’s(TCP side’s) command fault
當遠端TCP master設備斷線時,MGate MB3660的TCP 端就無法收到master的命令,但是MGate MB3660的序列端依舊會發送寫入命令給RTU / ASCII salve設備,為了避免TCP端故障所可能造成的問題,當MGate MB3660的TCP端失效時,MGate MB3660的序列端可以有三種處理方式,Keep latest data會持續對RTU / ASCIIslave端寫入與最後一筆數據相同的數據;Clear data to zero會對RTU / ASCIIslave端寫入0;User-define value會對RTU / ASCIIslave端寫入使用者自定義的值。

Timeout for opposite side’s(TCP side’s) data update
設定判斷TCP端逾時的時間。
image046.png-MGate MB3660 Agent Mode介紹與設定說明

Slave Settings(Slave)
列出MGate MB3660處於RTU / ASCII slave時的各埠口設定,選擇序列埠後點選Edit可進入該埠口設定。
image048.png-MGate MB3660 Agent Mode介紹與設定說明

Slave ID(Slave)
設定MGate MB3660 RTU / ASCII端的slave ID。

Apply the above setting to
除了將以上設定套用到該序列埠口,同時也可以套用到其他勾選的序列埠口或者所有埠口。

I/O Data Mapping

在代理模式中,你必須手動輸入每個Modbus命令,並且分配一個MGate MB3660的記憶體去儲存資料,I/O Data Mapping就是用於檢察每個命令的記憶體位置。
image050.png-MGate MB3660 Agent Mode介紹與設定說明

範例1,如果兩個命令卻有相同的記憶體位置,如下圖。
image052.png-MGate MB3660 Agent Mode介紹與設定說明

你可以按下Re-Arrange自動重新排列記憶體位置,更新後會變為下圖。
image054.png-MGate MB3660 Agent Mode介紹與設定說明

範例2,你也可以手動修改記憶體位置,例如兩個命令的記憶體位置重疊時,如下圖。
image056.png-MGate MB3660 Agent Mode介紹與設定說明

修改Command2的記憶體起始位置為20,如此便解決了重複記憶體位置的問題,如下圖。
image058.png-MGate MB3660 Agent Mode介紹與設定說明

Protocol status

MGate MB3660內建通訊監控功能,可在故障排除或設備管理時提供更便利的幫助,可以監測通過MGate MB3660的Modbus RTU / ASCII / TCP數據,以智能,易於理解的格式顯示數據,並指定包括來源,類型,目的地,內容等條件進行過濾,完整的資料日誌可以保存到一個文件中供以後分析。
image068.png-MGate MB3660 Agent Mode介紹與設定說明
image072.png-MGate MB3660 Agent Mode介紹與設定說明
image070.png-MGate MB3660 Agent Mode介紹與設定說明

留言