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