一、摘要
NHR係列智能顯示控製儀(yi) 表是經過多年開發製造經驗而設計生產(chan) ,集諸多全新功能於(yu) 一身的新一代智能顯示控製儀(yi) 表。針對現場溫度、壓力、液位、速度、流量等各種信號進行采集、顯示、控製、遠傳(chuan) 、通訊、打印等處理,構成數字采集係統及控製係統,廣泛運用於(yu) 電力、石化、冶金、輕工、製藥、航空等諸多領域。產(chan) 品的EMC設計符合GB/T17626.2-11相關(guan) 規定,同時產(chan) 品取得了CE認證。
二、產(chan) 品的市場背景
在自動化控製領域,隨著分布式控製係統的發展,在產(chan) 業(ye) 上的分布式控製係統中,經常需要采用串行通訊來達到遠程信息交換的目的。目前,用於(yu) 串行通訊的接口標準包括:rs-232、rs-422、rs-423和rs-485。rs-232是最早的串行接口標準,廣泛應用在短間隔、較低波特率串行通訊中。其後發展起來的rs-422、rs-485是平衡傳(chuan) 送的電氣標準,比起rs-232非平衡的傳(chuan) 送方式在電氣指標上有了大幅度的進步。rs-485串行接口的電氣標準實際上是rs-422的變型,它屬於(yu) 七層osi(open system interconnection,開放係統互連)模型物理層的協議標準。由於(yu) 性能優(you) 異、結構簡單、組網輕易,rs-485總線標準得到了越來越廣泛的應用。下麵是關(guan) 於(yu) 虹潤NHR 係列智能顯示控製儀(yi) 表在RS-485通信中的應用。
三、產(chan) 品的技術原理
1、係統技術方案
工業(ye) 場合中,經常要用一些儀(yi) 表去控製如溫度、液位、流量等。在某些場合,需要1台控製器靈活地控製多台儀(yi) 表,以達到設計控製目的。
本文利用標準的MODBUS RTU通訊協議與(yu) RS-485通信指令,方便的實現與(yu) 多台虹潤NHR係列儀(yi) 表的串行通信.成功的實現了用單台控製器對多台儀(yi) 表的靈活控製。可編程控製器允許在一個(ge) RS-485通信接口上連接多達100台虹潤儀(yi) 表,儀(yi) 表大於(yu) 60台時,需加一個(ge) RS-485中繼器,RS-485通信口通信距離長達1KM以上。
2、RS-485總線的硬件設計
考慮到此控製係統中網絡節點數較多,整個(ge) 網絡超過100個(ge) 節點,為(wei) 保證通訊的可靠性和通訊效率按照儀(yi) 表在係統中實現的不同功能、數據流量、實時性要求把各儀(yi) 表分布到兩(liang) 條總線上,而且所選器件中的rs-485芯片驅動能力均達到255點,通訊速率選9.6Kbps,離主站最遠的節點不超過50m。
3、網絡協議
為(wei) 了能使具體(ti) 的命令、數據在網絡上正確地傳(chuan) 輸,在數據鏈路層必須提供一定的網絡協議,保證在物理層的比特流出現錯誤時進行檢測和校正,同時實現數據幀和命令幀的功能。然而,為(wei) 保證數據傳(chuan) 輸質量,對每個(ge) 字節進行校驗的同時,應盡量減少特征字和校驗字,而常用的數據包格式由引導碼、長度碼、地址碼、命令碼、數據、校驗碼、尾碼組成,每個(ge) 數據包長度達20~30字節,在rs-485係統中這顯得又有些繁雜。由於(yu) modbus協議是公然的通訊協議,而且被很多的工控產(chan) 品生產(chan) 廠家支持,該協議已廣泛應用於(yu) 水利、水文、電力等行業(ye) 設備及係統的國際標準中,因此,本係統采用modbus協議作為(wei) 此控製係統的網絡協議。
在此控製中由於(yu) 對plc和變頻器的通訊數據量小而且實時性要求不高,因此采用modbus ascii方式,而對單片機的數據通訊量較大且實時性要求高,因此采用modbus rtu方式。
四、產(chan) 品的應用
考慮到100台儀(yi) 表在RS485總線上的實時性、有效性、正確性,現將100台虹潤NHR係列智能控製儀(yi) 表通訊組網分為(wei) 兩(liang) 條總線,分別由PLC的串口擴展口分別定義(yi) 為(wei) A1、B1和A2、B2 ;下麵是虹潤NHR係列智能控製儀(yi) 表與(yu) PLC主機連接圖,見圖1、圖2:
從(cong) 站地址 | 功能代碼 | 數據區 | CRC16 |
從(cong) 站地址:地址必須在1---247之間。
在同個(ge) 主站網絡中每個(ge) 從(cong) 站地址必須。
0為(wei) 廣播地址,從(cong) 站接收消息並作相應處理,但不能回複消息。
功能代碼:包含讀、寫(xie) 寄存器。
數據: 以二進製代碼傳(chuan) 輸。
CRC16: 循環冗餘(yu) 校驗,校驗從(cong) 從(cong) 站地址到數據區最後一個(ge) 字節,計算多項式碼為(wei) A001(hex)。
(1)、通訊口設置
通訊方式 異步串行通訊接口,如RS-485,RS-232等
波特率 2400~9600bps(可由設定儀(yi) 表二級參數自由更改,設定儀(yi) 表二級參數BT,默認4800)
(2)、字節數據格式HEX
一位起始位、八位數據位、一位停止位、無校驗
1 | * | * | * | * | * | * | * | * | 1 |
起始位 數據位(從(cong) 低到高) 停止位
(3)、消息楨格式(讀、寫(xie) 功能是從(cong) 主站角度定義(yi) 的)
讀寄存器楨
從(cong) 站地址 | 功能代碼 | 首寄存器地址 | 寄存器數N | CRC16 |
1字節 | 1字節 | 2字節 | 2字節 | 2字節 |
0---247 | 03H | AddrH, AddrL | NH, NL (1---24) | CrcL, CrcH |
讀寄存器返回楨
從(cong) 站地址 | 功能代碼 | 字節數 | 寄存器數據 | CRC16 |
1字節 | 1字節 | 1字節 | N*2字節 | 2字節 |
1---247 | 03H | N*2 | DataH, DataL | CrcL, CrcH |
寫(xie) 寄存器楨
從(cong) 站地址 | 功能代碼 | 首寄存器地址 | 寄存器數N | 字節數 | 寄存器數據 | CRC16 |
1字節 | 1字節 | 2字節 | 2字節 | 1字節 | N*2字節 | 2字節 |
0---247 | 10H | AddrH, AddrL | NH, NL 1---24 | N*2 | DataH, DataL | CrcL, CrcH |
寫(xie) 寄存器返回楨
從(cong) 站地址 | 功能代碼 | 首寄存器地址 | 寄存器數N | CRC16 |
1字節 | 1字節 | 2字節 | 2字節 | 2字節 |
1---247 | 10H | AddrH, AddrL | NH, NL 1---24 | CrcL, CrcH |
錯誤返回楨
從(cong) 站地址 | 功能代碼 | 錯誤代碼 | CRC16 |
1字節 | 1字節 | 1字節 | 2字節 |
1---247 | 查詢功能代碼+80H | 見表2 | CrcL, CrcH |
功能代碼表:1
功能代碼 | ModBus名 | 功能名 | 廣播 | 一次連續的N的最大值 |
03H | Read Holding Registers | 讀N個(ge) 寄存器值 | No | 24 |
10H | Write Multiple Registers | 寫(xie) N個(ge) 寄存器值 | No | 24 |
錯誤代碼表:2
錯誤代碼 | 說明 |
1 | 寄存器長度超限 |
2 | 寄存器地址超限 |
3 | 從(cong) 站密碼保護 |
4 | 讀或寫(xie) 不允許 比如有的寄存器隻讀,就不可以發寫(xie) 命令 |
3 、產(chan) 品圖片
五、結論
本文利用標準的MODBUS協議和虹潤NHR係列智能顯示控製儀(yi) 表進行RS-485通信,實現了單台控製器控製多台NHR儀(yi) 表的任務,並能實時檢測各儀(yi) 表的運行狀態,整個(ge) 係統控製靈活方便, 方案結構簡單,開發成本低,周期短,既使在惡劣的工業(ye) 環境下也能穩定工作。