新聞中心
PRESS CENTER本文主要實現(xiàn)的功能是:使用EG系列網(wǎng)關(guān)完成Modbus協(xié)議與IEC104從站協(xié)議之間的雙向協(xié)議轉(zhuǎn)換。其中Modbus協(xié)議包括:Modbus TCP主站 / Modbus RTU主站 / Modbus TCP從站 / Modbus RTU從站。IEC104從站協(xié)議指的是網(wǎng)關(guān)作為IEC104從站和其它電力網(wǎng)關(guān)作為IEC104主站之間的通信協(xié)議。
Modbus RTU與Modbus TCP協(xié)議的區(qū)別在網(wǎng)關(guān)上的體現(xiàn)僅僅是一個配置項,因此不單獨區(qū)分介紹,案例演示過程中會有說明。
綜上所述,案例演示分為兩個部分:
Modbus主站與IEC104從站
本章節(jié)主要實現(xiàn)一個需求:使用EG系列網(wǎng)關(guān)實現(xiàn)Modbus主站和IEC104從站之間的雙向協(xié)議轉(zhuǎn)換。適用場景是:EG系列網(wǎng)關(guān)作為Modbus主站讀取傳感器的數(shù)據(jù),然后將讀到的數(shù)據(jù)映射成IEC104從站的遙信遙測數(shù)據(jù),等待IEC104主站來讀取;同時也能接收IEC104主站的遙調(diào)遙控命令,并將遙調(diào)遙控數(shù)據(jù)寫入到Modbus傳感器。
1. Modbus點位表
功能碼0x03 | ||
寄存器地址 | 讀寫權(quán)限 | 解析方式 |
00001 | 只寫 | Bool |
00002 | 只寫 | Bool |
40001 | 只讀 | 浮點數(shù) |
40003 | 只讀 | 浮點數(shù) |
2. 104點位表
元素地址 | 讀寫權(quán)限 | 解析方式 |
24577 | 只寫(遙控) | 0分閘/1合閘 |
24578 | 只寫(遙控) | 0分閘/1合閘 |
16385 | 只寫(遙測) | 浮點數(shù) |
16386 | 只寫(遙測) | 浮點數(shù) |
3. 點位映射關(guān)系
Modbus寄存器地址 | 數(shù)據(jù)流向 | 104點表地址 |
00001 | <- | 24577(遙控) |
00002 | <- | 24578(遙控) |
40001 | -> | 16385(遙測) |
40003 | -> | 16386(遙測) |
遙控104從站寫入Modbus從站:
通過寫104的地址24577,將值寫入Modbus的00001寄存器
通過寫104的地址24578,將值寫入Modbus的00002寄存器
讀取Modbus從站數(shù)據(jù)寫入104從站(外部104主機可通過遙測讀取):
讀取Modbus的40001,將值寫入104的地址16385
讀取Modbus的40002,將值寫入104的地址16386
網(wǎng)關(guān)配置:
第一步:采集Modbus數(shù)據(jù)
第二步:添加104從站
第三步:Modbus主站數(shù)據(jù)映射到104從站
第四步:104主站數(shù)據(jù)寫入Modbus從站
第五步:自動運行
第一步:采集Modbus數(shù)據(jù)
采集Modbus請參考其他案例,此處不做重點介紹。下圖為采集到Modbus RTU數(shù)據(jù)后,將數(shù)據(jù)打印輸出:
此處為語雀內(nèi)容卡片,點擊鏈接查看:https://iotrouter.yuque.com/zn3vdn/eg8000/hn4q2114580z53bu
第二步:添加104從站
104從站詳細配置請參考其它案例,此處不做重點介紹。此處僅展示本示例所需配置:
此處為語雀內(nèi)容卡片,點擊鏈接查看:https://iotrouter.yuque.com/zn3vdn/eg8000/drq7xo13npfrqk5v
第三步:Modbus主站數(shù)據(jù)映射到104從站
點擊注入節(jié)點 1,啟動Modbus數(shù)據(jù)采集流程,通過Modbus主站請求節(jié)點讀取寄存器數(shù)據(jù)(電腦端Modbus Slave軟件模擬從站),經(jīng)Modbus主站解析節(jié)點解析后,將數(shù)據(jù)寫入104從站。
第四步:104主站數(shù)據(jù)寫入Modbus從站
網(wǎng)關(guān)通過IEC104 Server節(jié)點,接收外部104主站遙控指令并解析后,將數(shù)據(jù)傳遞至Modbus 主站請求節(jié)點,將數(shù)據(jù)寫入到Modbus從站。
第五步:自動運行
配置注入節(jié)點為周期性觸發(fā),周期設(shè)為每 5 秒執(zhí)行一次。
為保證數(shù)據(jù)轉(zhuǎn)換有序進行,采集周期依據(jù)實際情況而定。
流程源碼:https://iotrouter.yuque.com/zn3vdn/eg8000/mhsbhmwylcvyhdt1
Modbus 從站與IEC104從站
本章節(jié)主要實現(xiàn)一個需求:使用EG系列網(wǎng)關(guān)實現(xiàn)Modbus從站和IEC104從站之間的雙向協(xié)議轉(zhuǎn)換。適用場景是:EG系列網(wǎng)關(guān)作為IEC104從站接收IEC104主站的遙調(diào)遙控命令,然后將遙調(diào)遙控的數(shù)據(jù)映射為Modbus寄存器,并作為Modbus從站供外部Modbus主站讀取;同時網(wǎng)關(guān)也能接收外部Modbus主站的寫數(shù)據(jù)命令,并將數(shù)據(jù)映射成IEC104從站的遙信遙測數(shù)據(jù),等待IEC104主站來讀取。
這樣即實現(xiàn)了,外部Modbus主站可以采用Modbus協(xié)議和IEC104主站實現(xiàn)數(shù)據(jù)雙向通信。
1. Modbus點位表
寄存器地址 | 解析方式 |
00001 | Bool |
00002 | Bool |
40001 | 浮點數(shù) |
40003 | 浮點數(shù) |
2. 104點位表
元素地址 | 解析方式 |
24577 | 0分閘/1合閘 |
24578 | 0分閘/1合閘 |
16385 | 浮點數(shù) |
16386 | 浮點數(shù) |
3. 點位映射關(guān)系
Modbus寄存器地址 | 數(shù)據(jù)流向 | 104點表地址 |
00001 | <- | 24577(遙控) |
00002 | <- | 24578(遙控) |
40001 | -> | 16385(遙測) |
40003 | -> | 16386(遙測) |
遙控104從站寫入Modbus從站:
外部104主站下發(fā)遙控指令,寫入104從站的遙控點24577,104從站節(jié)點將值輸出映射到Modbus從站的00001寄存器
外部104主站下發(fā)遙控指令,寫入104從站的遙控點24578,104從站節(jié)點將值輸出映射到Modbus從站的00002寄存器
控制Modbus從站寫入104從站:
外部Modbus主站下發(fā)寫指令,寫入Modbus從站的40001寄存器,Modbus從站節(jié)點將值輸出映射到104從站的遙測點16385
外部Modbus主站下發(fā)寫指令,寫入Modbus從站的40003寄存器,Modbus從站節(jié)點將值輸出映射到104從站的遙測點16386
網(wǎng)關(guān)配置:
第一步:添加Modbus從站
第二步:添加串口節(jié)點
第三步:添加104從站
第四步:Modbus從站和104從站數(shù)據(jù)交互
第一步:添加Modbus從站
Modbus從站詳細配置請參考其它案例,此處不做重點介紹。此處僅展示本示例所需配置:
此處為語雀內(nèi)容卡片,點擊鏈接查看:https://iotrouter.yuque.com/zn3vdn/eg8000/ez6ci1bzet4og5gl
第二步:添加串口節(jié)點
串口節(jié)點用于外部Modbus主站與網(wǎng)關(guān)Modbus從站通信,詳細配置請參見其他案例,此處僅展示本示例所需配置:
此處為語雀內(nèi)容卡片,點擊鏈接查看:https://iotrouter.yuque.com/zn3vdn/eg8000/aa5zmwb55m6dbzzz
第三步:添加104從站
104從站詳細配置請參考其它案例,此處不做重點介紹。此處僅展示本示例所需配置:
此處為語雀內(nèi)容卡片,點擊鏈接查看:https://iotrouter.yuque.com/zn3vdn/eg8000/drq7xo13npfrqk5v
第四步:Modbus從站和104從站數(shù)據(jù)交互
流程源碼:https://iotrouter.yuque.com/zn3vdn/eg8000/mhsbhmwylcvyhdt1