1、 虹潤NHR系列智能顯示控制儀表通信參數(shù)配置 (1)、通信方式為RS-485, (1個起始位,1個或2個停止位,8位數(shù)據(jù),無奇偶校驗) (2)、通信傳輸數(shù)據(jù)的波特率(1.2K 2.4K 4.8K 9.6K 19.2K )可在儀表叁數(shù)baud中設定 (3)、通信協(xié)議為標準Modbus Rtu 模式 這里重點突出可編程控制器與虹潤NHR儀表RS-485接口部分。在工業(yè)現(xiàn)場,RS-485通信是應用較多的一種通信方式,圖中可編程控制器通過RS-485通信接口與多個NHR儀表相連接,最多可達到100臺,每臺儀表被賦予各自的地址碼,用以識別身份,( 地址碼可在儀表叁數(shù)Addr中設定),子單元和主單元采用地址輪詢方式。這樣可編程控制器的RS-485通信口便能通過RS485總線對掛在下面的所有儀表進行控制操作。 2、 虹潤NHR系列智能數(shù)字顯示控制儀通信數(shù)據(jù)流解析 本通信協(xié)議采用標準ModBus協(xié)議,采用RTU(十六進制數(shù))傳輸模式。ModBus協(xié)議是一種主---從式協(xié)議。任何時刻只有一個設備能夠在線路上進行發(fā)送。由主站管理信息交換,且只有主站能發(fā)起。主站會依次對從站進行輪流查詢。只有當從站地址與輪詢地址相匹配,從站才能回復消息。從站之間不能進行直接通信。協(xié)議楨中不包含任何消息報頭及消息結(jié)束符,消息的開始和結(jié)束依靠間隔時間來識別,當間隔時間長于或等于3.5個字符時,即作為檢測到楨結(jié)束。如果網(wǎng)絡內(nèi)沒有與查詢地址相一致的從站或從站接收時CRC校驗出錯,主站將不會接收到返回楨,這時主站根據(jù)超時設定判斷是否超時,如超時,作出重發(fā)或彈出異常錯誤窗口動作。 協(xié)議楨定義如下:
從站地址 | 功能代碼 | 數(shù)據(jù)區(qū) | CRC16 |
從站地址:地址必須在1---247之間。
在同個主站網(wǎng)絡中每個從站地址必須。
0為廣播地址,從站接收消息并作相應處理,但不能回復消息。
功能代碼:包含讀、寫寄存器。
數(shù)據(jù): 以二進制代碼傳輸。
CRC16: 循環(huán)冗余校驗,校驗從從站地址到數(shù)據(jù)區(qū)最后一個字節(jié),計算多項式碼為A001(hex)。
(1)、通訊口設置
通訊方式 異步串行通訊接口,如RS-485,RS-232等
波特率 2400~9600bps(可由設定儀表二級參數(shù)自由更改,設定儀表二級參數(shù)BT,默認4800)
(2)、字節(jié)數(shù)據(jù)格式HEX
一位起始位、八位數(shù)據(jù)位、一位停止位、無校驗
起始位 數(shù)據(jù)位(從低到高) 停止位
(3)、消息楨格式(讀、寫功能是從主站角度定義的)
讀寄存器楨
從站地址 | 功能代碼 | 首寄存器地址 | 寄存器數(shù)N | CRC16 |
1字節(jié) | 1字節(jié) | 2字節(jié) | 2字節(jié) | 2字節(jié) |
0---247 | 03H | AddrH, AddrL | NH, NL (1---24) | CrcL, CrcH |
讀寄存器返回楨
從站地址 | 功能代碼 | 字節(jié)數(shù) | 寄存器數(shù)據(jù) | CRC16 |
1字節(jié) | 1字節(jié) | 1字節(jié) | N*2字節(jié) | 2字節(jié) |
1---247 | 03H | N*2 | DataH, DataL | CrcL, CrcH |
寫寄存器楨
從站地址 | 功能代碼 | 首寄存器地址 | 寄存器數(shù)N | 字節(jié)數(shù) | 寄存器數(shù)據(jù) | CRC16 |
1字節(jié) | 1字節(jié) | 2字節(jié) | 2字節(jié) | 1字節(jié) | N*2字節(jié) | 2字節(jié) |
0---247 | 10H | AddrH, AddrL | NH, NL 1---24 | N*2 | DataH, DataL | CrcL, CrcH |
寫寄存器返回楨
從站地址 | 功能代碼 | 首寄存器地址 | 寄存器數(shù)N | CRC16 |
1字節(jié) | 1字節(jié) | 2字節(jié) | 2字節(jié) | 2字節(jié) |
1---247 | 10H | AddrH, AddrL | NH, NL 1---24 | CrcL, CrcH |
錯誤返回楨
從站地址 | 功能代碼 | 錯誤代碼 | CRC16 |
1字節(jié) | 1字節(jié) | 1字節(jié) | 2字節(jié) |
1---247 | 查詢功能代碼+80H | 見表2 | CrcL, CrcH |
功能代碼表:1
功能代碼 | ModBus名 | 功能名 | 廣播 | 一次連續(xù)的N的最大值 |
03H | Read Holding Registers | 讀N個寄存器值 | No | 24 |
10H | Write Multiple Registers | 寫N個寄存器值 | No | 24 |
錯誤代碼表:2
錯誤代碼 | 說明 |
1 | 寄存器長度超限 |
2 | 寄存器地址超限 |
3 | 從站密碼保護 |
4 | 讀或?qū)懖辉试S 比如有的寄存器只讀,就不可以發(fā)寫命令 |
3 、產(chǎn)品圖片
五、結(jié)論
本文利用標準的MODBUS協(xié)議和虹潤NHR系列智能顯示控制儀表進行RS-485通信,實現(xiàn)了單臺控制器控制多臺NHR儀表的任務,并能實時檢測各儀表的運行狀態(tài),整個系統(tǒng)控制靈活方便, 方案結(jié)構(gòu)簡單,開發(fā)成本低,周期短,既使在惡劣的工業(yè)環(huán)境下也能穩(wěn)定工作。