找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 11778|回復(fù): 3
打印 上一主題 下一主題
收起左側(cè)

迪文串口屏中關(guān)于MODBUS的接口配置詳解

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:502741 發(fā)表于 2019-4-1 20:36 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
MODBUS是工業(yè)協(xié)議中比較歡迎的一種,它簡單、通用性強并且使用方便,MODBUS的另一個優(yōu)點是它可以通過任何傳輸媒介進行通訊,其中包括雙絞線、無線通訊、光導(dǎo)纖維、以太網(wǎng)、電話調(diào)制調(diào)解器、移動電話以及微波等。它已經(jīng)成為通用的工業(yè)標(biāo)準(zhǔn),通過它不同廠商生產(chǎn)的控制設(shè)備可以連成工業(yè)網(wǎng)絡(luò),進行集中監(jiān)控。此協(xié)議定義了一個控制器能認(rèn)識使用的消息結(jié)構(gòu),支持傳統(tǒng)的Rs-232、Rs-485和以太網(wǎng)設(shè)備。PLC、DCS、智能儀表都在使用MODBUS協(xié)議作為他們之間的通訊標(biāo)準(zhǔn)。迪文作為以提供客戶高品質(zhì)人機交互產(chǎn)品和相關(guān)系統(tǒng)集成服務(wù)為主的高新技術(shù)企業(yè),其產(chǎn)品中也有相關(guān)的MODBUS配置操作,以下分別對MINI_DGUS、DGUS、DGUSII產(chǎn)品的MODBUS接口配置進行說明。

  • MINI_DGUSMODBUS接口配置
   (1)用戶接口指令集為 Modbus RTU 主機模式和Modbus RTU從機模式,同時支持 DGUS 指令集(同時支持串口圖片、字庫下載)。通過 22.BIN 字庫文件的 0x600~0x7FF 位置(1KB 空間大小,定義如下)。
注:通過UltraEdit打開22號文件,DGUS變量地址與UltraEdit上的地址存在2倍的關(guān)系,例如:DGUS 變量地址是:0X7F8,對應(yīng)到UltraEdit軟件上的地址是:0X7F8*2=0XFF0。

DGUS
UltraEdit(22地址)
定義
說明
0X7F8
0XFF0
Modbus啟用標(biāo)記
主機啟用:0X5AA5
從機啟用:0X5BB5
0x7F9-0X7FF
0XFF2-0XFFE
未定義
全部寫0
0X600-0X607
0XC00-0XC0E
第1條 MODBUS 指令(16 字節(jié))
詳細(xì)說明見表2
0X608-0X60F
0XC10-0XC1E
第2條 MODBUS 指令(16 字節(jié))


.....
......
......
......
0X7F0-0X7F7
0XFE0-0XFEE
第63條 MODBUS 指令(16 字節(jié))










                                    表1


UltraEdit(22地址)
定義
說明
0XC00
第1個字節(jié)
0x5A=本條指令有效,其它=本條指令無效
0XC01
第2個字節(jié)
讀寫的 modbus 設(shè)備地址
0XC02
第3個字節(jié)
讀/寫使用的 modbus 指令
0XC03
第4個字節(jié)
讀寫數(shù)據(jù)長度,0x00 表示本條指令無效,最多一次性讀取120個字節(jié)
0XC04-0XC05
第5字節(jié)-第6字節(jié)
本條指令處理定時時間,4 位整數(shù),單位為 ms,最大 9999ms
0XC06
第7字節(jié)
應(yīng)答 CRC 校驗錯誤,0xFF 應(yīng)答 CRC 校驗正確。
0XC07
第8字節(jié)
modbus 讀寫指令的發(fā)送方式,0x00:**** 所有頁面下均執(zhí)行指令;
0x01:Page_ID 僅在指定的頁面下執(zhí)行指令;
0x02:VP 僅在 VP 指向的變量緩沖區(qū)低字節(jié)內(nèi)容為 0x5A 才執(zhí)行指令;
0XC08-0XC09
第9字節(jié)-第10字節(jié)
根據(jù)第8字節(jié)的填寫01或者是02,添加頁碼或者DGUS變量地址
0XC0A-0XC0B
第11字節(jié)-第12字節(jié)
DGUS 屏變量存儲區(qū)的起始地址。如果地址高字節(jié)為 0xFF,表示讀取的數(shù)據(jù)將寫入 DGUS 曲線緩沖區(qū),此時低字節(jié)地址表示為曲線數(shù)據(jù)格式
0XC0C-0XC0D
第13字節(jié)-第14字節(jié)
本條指令讀寫的數(shù)據(jù)在modbus 設(shè)備上的數(shù)據(jù)起始地址。
0XC0E-0XC0F
第15字節(jié)-第16字節(jié)
保留寫0X00
                                     表2

                                         圖1
  • MOSBUS操作指令對應(yīng)表
MODBUS 指令
功能
讀寫數(shù)據(jù)長
Modbus 起始地址
0x01
讀取輸入線圈狀態(tài)
線圈個數(shù)/8
  起始線圈
0x02
讀取輸入位置量狀態(tài)
位變量個數(shù)/8
起始輸出位置
0x03
讀取保存寄存器數(shù)據(jù)
寄存器個數(shù)*2
保存寄存器首地址
0x04
讀取輸入寄存器數(shù)據(jù)
寄存器個數(shù)*2
輸入寄存器首地址
0x05
強制單個線圈
0x02
線圈地址
0x06
預(yù)制單個寄存器
0x02
寄存器地址
0x07
讀取異常狀態(tài)
0x01
任意值
0x0F
強制多個線圈
線圈數(shù)量
起始線圈位置
0x10
預(yù)制多個寄存器
寄存器個數(shù)*2
  寄存器首地址
0x11
讀取從機標(biāo)識
從機標(biāo)示字節(jié)數(shù)
任意值
                                       表3
  • DGUSMODBUS接口配置
  • 基于Modbus主機接口的DGUS軟件應(yīng)用說明
   升級程序名稱:DGUS_V71_MODBUS.BIN,對應(yīng)的DGUS版本是V71,支持K600+或DGUS內(nèi)核,用戶接口指令集為MODBUS RTU主機模式,串口不再支持標(biāo)準(zhǔn)的DGUS指令集(包括DWIN  OS、串口仿真、串口圖片、字庫下載)。DWIN OS中,以下指令不再支持:

指令
說明
RMODBUS
到COMO_Rx_FIFO讀取MODBUS數(shù)據(jù)幀
COMSET
串口配置
COMTXD
串口數(shù)據(jù)發(fā)送到COM1
CPRTS
串口打印
RDXLEN
檢查COMO_Rx_FIFO
RDXDAT
讀取COMO_Rx_FIFO
COMTXI
直接串口發(fā)送
RD645
到COMO_Rx_FIFO讀取DL/T645數(shù)據(jù)幀
                                      表4
通過22.bin字庫文件的20KW-28KW(16KB空間大小,文件字節(jié)地址0x0A000--0x0DFFF)來定義Modbus運行參數(shù),DGUS上電會自動把這8KW配置文件解碼加載到變量緩沖區(qū)的最后8KW。
DGUS
UltraEdit(22地址)
定義
說明
0X5000
0XA000
Modbus啟用標(biāo)記
主機啟用:0X5AA5

0X5001:H
0XA002
保存配置文件標(biāo)記
0X5A:保存DGUS變量緩沖區(qū)的MODBUS配置文件到22字庫
0X5001:L
0XA002-0XA003
加載配置文件標(biāo)記
0X5A:從22字庫加載MODBUS配置文件到DGUS變量緩沖區(qū)
0X5002
0XA004
串口波特率
3.1格式定點小數(shù)(115200bps=0X480)
單位為kbps,最大999.9kbps
0X5003:H
0XA006
串口模式
0X00=8N1(無校驗)
,0X01=8E1(偶校驗EVEN),0X02=801(奇校驗ODD),0X03=8N2(無校驗,2個停止位)
0X5004:H
0XA008
變量寫標(biāo)記
0X5A表示保存指定DGUS變量空間到22字庫
0X5004:L
0XA009
變量讀標(biāo)記
0X5A表示從22字庫相應(yīng)位置讀數(shù)據(jù)到DGUS指定變量空間
0X5005
0XA00A
變量讀寫起止地址
PS:PE PS、PE是DGUS變量空間開始、結(jié)束地址高字節(jié),低字節(jié)固定為0
0X5006-0X5007
0XA00C-0XA00E
保留
寫0X0000
0X5008-0X500F
0XA010-0XA01F
第一條MODBUS指令
詳細(xì)說明見表6
.....
......
......
......
0X6FF8-0X6FFF
0XFE0-0XFEE
第1023條 MODBUS 指令(16 字節(jié))
最多支持1023條指令








                                    表5

                                      圖2
UltraEdit(22地址)
定義
說明
0XA010
第1個字節(jié)
0x5A=本條指令有效,其它=本條指令無效
0XA011
第2個字節(jié)
讀寫的 modbus 設(shè)備地址
0XA012
第3個字節(jié)
讀/寫使用的 modbus 指令
0XA013
第4個字節(jié)
讀寫數(shù)據(jù)長度,0x00 表示本條指令無效,最多一次性讀取120個字節(jié)
0XA014-0XA015
第5字節(jié)-第6字節(jié)
本條指令處理定時時間,4 位整數(shù),單位為 ms,最大 9999ms定時時間是從機響應(yīng)的最長時間
0XA016
第7字節(jié)
0X00
0XA017
第8字節(jié)
modbus 讀寫指令的發(fā)送方式,0x00:**** 所有頁面下均執(zhí)行指令;
0x01:Page_ID 僅在指定的頁面下執(zhí)行指令;
0x02:VP 僅在 VP 指向的變量緩沖區(qū)低字節(jié)內(nèi)容為 0x5A 才執(zhí)行指令;
0XA018-0XA019
第9字節(jié)-第10字節(jié)
根據(jù)第8字節(jié)的填寫01或者是02,添加頁碼或者DGUS變量地址
0XA01A-0XA01B
第11字節(jié)-第12字節(jié)
DGUS 屏變量存儲區(qū)的起始地址。如果地址高字節(jié)為 0xFF,表示讀取的數(shù)據(jù)將寫入 DGUS 曲線緩沖區(qū),此時低字節(jié)地址表示為曲線數(shù)據(jù)格式
0XA01C-0XA01D
第13字節(jié)-第14字節(jié)
本條指令讀寫的數(shù)據(jù)在modbus 設(shè)備上的數(shù)據(jù)起始地址。
0XA01E
第15字節(jié)
總線通信狀態(tài)反饋,寫指令始終為0X00,讀指令返回0X00(失敗)/0XFF(成功)
0XA01F
第16字節(jié)
保留寫0X00
                                  表6
注:MODBUS的位(線圈)變量是按照LSB定義的,而DGUS是按照MSB定義
  • 基于Modbus從機接口的DGUS軟件應(yīng)用說明
     升級程序名稱DGUS_V71_MODBUS_SLAVE.BIN,對應(yīng)的DGUS版本是V71,支持K600+或DGUS內(nèi)核,用戶接口指令集為MODBUS RTU從機模式,串口不再支持標(biāo)準(zhǔn)的DGUS指令集(包括DWIN OS串口仿真、串口圖片、字庫下載)。CONFIG.TXT配置文件的R3寄存器設(shè)置MODBUS從機地址,RA寄存器設(shè)置MODBUS串口格式,0X00=8N1(無校驗) 0X01=8E1(偶校驗,EVEN),0X02=801(奇校驗,ODD),0X03=8N2(無校驗,2個停止位)。串口波特率設(shè)置R1、R5、R9,當(dāng)R1的值在00-10時,R5和R9無效,可以選擇17檔固定波特率之一,如下表7(波特率單位為Kbps)。
R1
00
01
02
03
04
05
06
07
波特率
1.2
2.4
4.8
9.6
19.2
38.4
57.6
115.2
                                  表7

R1
08
09
0A
0B
0C
0D
0E
0F
10
波特率
28.8
76.8
62.5
125
250
230.4
345.6
691.2
921.6

                                  表8
當(dāng)R1取值為11時,此時波特率由R5和R9決定,并由下式計算,R5:R9=6250000/波特率,R5:R9表示一個雙字節(jié)參數(shù),R5為高字節(jié),R9為低字節(jié),比如設(shè)定10000bps,R5:R9=6250000/10000=625=0X0271,R5為02,R9為71。
  • DGUSIIMODBUS接口配置
   主要是T5UID1、T5UID2、T5UID3 平臺的MODBUS配置。MODUS主從機寫在了DWIN OS程序里面了,串口為UART4,使用T5_MODBUS OS程序,OS內(nèi)核程序升級到V21或以上版本。
  • 基于MODBUS的主機接口配置
用戶可通過 22.BIN 字庫文件 0x1C000~0x1FFFF 的 16KB 空間大小來定義 Modbus 運數(shù);也可通過 T5 OS 直接訪問 0xE000~0xFFFF 的 8KW 變量空間來定義 Modbus 參數(shù)。
DGUS
UltraEdit(22地址)
定義
說明
0XE000
0X1C000
Modbus啟用標(biāo)記
0X5AA5

0XE001
0X1C002
主從機標(biāo)記
0X0000表示ModbusMaster,其它值表示ModbusSlave
0XE002
0X1C004
串口波特率
單位是Kbps,1位定點小數(shù),例如:115200=0X480
0XE003
0X1C006
串口模式
0X00=8N1(無校驗)
,0X01=8E1(偶校驗EVEN),0X02=801(奇校驗ODD),0X03=8N2(無校驗,2個停止位)
0XE004
0X1C008
從機設(shè)備地址
從機下設(shè)備地址,默認(rèn)為0X005A
0XE005:H
0X1C00A
MODBUS輸出串口
0X04默認(rèn)串口4
0XE005:L
0X1C00B
0S版本號
只讀
0XE006-0XE007
0X1C00C-0X1C00E
保留
寫0X0000
0XE008-0XE00F
0X1C010-0X1C01F
第一條MODBUS指令
詳細(xì)說明見表9
.....
......
......
......




第1023條 MODBUS 指令(16 字節(jié))
最多支持1023條指令
                                      表9

UltraEdit(22地址)
定義
說明
0X1C010
第1個字節(jié)
0x5A=本條指令有效,其它=本條指令無效
0X1C011
第2個字節(jié)
讀寫的 modbus 設(shè)備地址
0X1C012
第3個字節(jié)
讀/寫使用的 modbus 指令
0X1C013
第4個字節(jié)
讀寫數(shù)據(jù)長度,0x00 表示本條指令無效,最多一次性讀取90字節(jié)
0X1C014-0X1C015
第5字節(jié)-第6字節(jié)
本條指令處理定時時間,4 位整數(shù),單位為 ms,最大 9999ms等待時間是從機響應(yīng)的最長時間
0X1C016
第7字節(jié)
0X00
0X1C017
第8字節(jié)
modbus 讀寫指令的發(fā)送方式,0x00:**** 所有頁面下均執(zhí)行指令;
0x01:Page_ID 僅在指定的頁面下執(zhí)行指令;
0x02:VP 僅在 VP 指向的變量緩沖區(qū)低字節(jié)內(nèi)容為 0x5A 才執(zhí)行指令,執(zhí)行完后自動清零VP指向的內(nèi)容
0X1C018-0X1C019
第9字節(jié)-第10字節(jié)
根據(jù)第8字節(jié)的填寫01或者是02,添加頁碼或者DGUS變量地址
0X1C01A-0X1C01B
第11字節(jié)-第12字節(jié)
DGUS 屏變量存儲區(qū)的起始地址(0X0000-0XDFFF)。
0X1C01C-0X1C01D
第13字節(jié)-第14字節(jié)
本條指令讀寫的數(shù)據(jù)在modbus 設(shè)備上的數(shù)據(jù)起始地址。
0X1C01E-0X1C01F
0
第15字節(jié)-第16字節(jié)
總線通信狀態(tài)反饋,0X0000=失敗,0X00FF=成功,OS讀取后需要清零

                                       表10

                                      圖3
  • 基于MODBUS的從機接口配置
在22號文件中配置成從機格式,設(shè)備默認(rèn)地址是0X5A,若設(shè)定值為0,則自動恢復(fù)默認(rèn)ID。22號配置如下圖4。注:主機可讀寫數(shù)據(jù)變量范圍為 0x0000-0xDFFF,若超出此范圍,程序會將功能碼最高位置 1 并返回給主機,表明通信錯誤;主機可讀寫數(shù)據(jù)長度上限為 90 個字,超出范圍則通信失敗;各個平臺的CFG文件,必須設(shè)置為上電加載22文件。

                                              圖4

完整的Word格式文檔51黑下載地址:
迪文屏中關(guān)于MODBUS的接口配置 .doc (127.5 KB, 下載次數(shù): 60)


評分

參與人數(shù) 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:648180 發(fā)表于 2019-11-24 01:04 | 只看該作者
感覺很有幫助,謝謝大神
回復(fù)

使用道具 舉報

板凳
ID:627832 發(fā)表于 2019-12-6 20:17 | 只看該作者
很有用的文件,謝謝分享
回復(fù)

使用道具 舉報

地板
ID:96654 發(fā)表于 2020-2-10 17:26 | 只看該作者
感覺很有幫助,很有用的文件,謝謝分享
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表