1、產品的市場背景
在自動化控制領域,隨著分布式控制系統的發展,在產業上的分布式控制系統中,經常需要采用串行通訊來達到遠程信息交換的目的。目前,用于串行通訊的接口標準包括RS232、RS422、RS423和RS485。RS232是最早的串行接口標準,廣泛應用在短間隔、較低波特率串行通訊中。其后發展起來的RS422、RS485是平衡傳送的電氣標準,比起RS232非平衡的傳送方式在電氣指標上有了大幅度的進步。RS485串行接口的電氣標準實際上是RS422的變型,它屬于七層OSI(open system interconnection,開放系統互連)模型物理層的協議標準。由于性能優異、結構簡單、組網輕易,RS485總線標準得到了越來越廣泛的應用。下面是關于昌暉YR-GF系列智能顯示控制儀在RS485通信中的應用。
2、產品的技術原理
①系統技術方案
工業場合中,經常要用一些儀表去控制如溫度、液位、流量等。在某些場合,需要1臺PLC靈活地控制多臺儀表,以達到設計控制目的。本文利用標準的MODBUS RTU通訊協議與RS485通信指令,方便的實現與多臺YR-GF系列儀表的串行通信,成功的實現了用單臺PLC對多臺儀表的靈活控制。PLC允許在一個RS485通信接口上連接多達100臺昌暉儀表,儀表大于60臺時,需加一個RS485中繼器,RS485通信距離長達1km以上。
②RS485總線的硬件設計
考慮到此控制系統中網絡節點數較多,整個網絡超過100個節點,為保證通訊的可靠性和通訊效率按照儀表在系統中實現的不同功能、數據流量、實時性要求把各儀表分布到兩條總線上,而且所選器件中的RS485芯片驅動能力均達到255點,通訊速率選9.6kbps,離主站最遠的節點不超過50m。
③網絡協議
為了能使具體的命令、數據在網絡上正確地傳輸,在數據鏈路層必須提供一定的網絡協議,保證在物理層的比特流出現錯誤時進行檢測和校正,同時實現數據幀和命令幀的功能。然而,為保證數據傳輸質量,對每個字節進行校驗的同時,應盡量減少特征字和校驗字,而常用的數據包格式由引導碼、長度碼、地址碼、命令碼、數據、校驗碼、尾碼組成,每個數據包長度達20-30字節,在RS485系統中顯得又有些繁雜。由于MODBUS協議是公然的通訊協議,而且被很多的工控產品生產廠家支持,該協議已廣泛應用于水利、水文、電力等行業設備及系統的國際標準中,因此,本系統采用MODBUS協議作為此控制系統的網絡協議。
在此控制中由于對PLC和變頻器的通訊數據量小而且實時性要求不高,因此采用MODBUS ASCII方式,而對單片機的數據通訊量較大且實時性要求高,因此采用MODBUS RTU方式。

3、應用
考慮到100臺儀表在RS485總線上的實時性、有效性、正確性,現將100臺昌暉YR-GF系列智能顯示控制儀通訊組網分為兩條總線,分別由PLC的串口擴展口分別定義為A1、B1和A2、B2;下面是昌暉YR-GF系列智能顯示控制儀與PLC主機連接圖,見圖1、圖2:

圖1 昌暉儀表與PLC組網圖

圖2 昌暉儀表與PLC組網圖
①昌暉YR-GF系列智能顯示控制儀通信參數配置
a、通信方式為RS485(1個起始位,1個或2個停止位,8位數據,無奇偶校驗)
b、通信傳輸數據的波特率(1.2k/2.4k/4.8k/9.6k/19.2k)可在儀表叁數baud中設定
c、通信協議為標準Modbus RTU模式
這里重點突出PLC與昌暉YR-GF系列智能顯示控制儀RS485接口部分。在工業現場,RS485通信是應用較多的一種通信方式,圖中PLC器通過RS485通信接口與多個YR-GF系列顯示控制儀相連接,最多可達到100臺,每臺儀表被賦予各自的地址碼,用以識別身份(地址碼可在儀表叁數Addr中設定),子單元和主單元采用地址輪詢方式。這樣PLC的RS485通信口便能通過RS485總線對掛在下面的所有儀表進行控制操作。
②昌暉YR-GF系列智能顯示控制儀通信數據流解析
本通信協議采用標準ModBus協議,采用RTU(十六進制數)傳輸模式。ModBus協議是一種主-從式協議。任何時刻只有一個設備能夠在線路上進行發送。由主站管理信息交換,且只有主站能發起。主站會依次對從站進行輪流查詢。只有當從站地址與輪詢地址相匹配,從站才能回復消息。從站之間不能進行直接通信。協議楨中不包含任何消息報頭及消息結束符,消息的開始和結束依靠間隔時間來識別,當間隔時間長于或等于3.5個字符時,即作為檢測到楨結束。如果網絡內沒有與查詢地址相一致的從站或從站接收時CRC校驗出錯,主站將不會接收到返回楨,這時主站根據超時設定判斷是否超時,如超時,作出重發或彈出異常錯誤窗口動作。
協議楨定義如下:

從站地址:地址必須在1-247之間。
在同個主站網絡中每個從站地址必須唯一。
0為廣播地址,從站接收消息并作相應處理,但不能回復消息。
功能代碼:包含讀、寫寄存器。
數據:以二進制代碼傳輸。
CRC16:循環冗余校驗,校驗從從站地址到數據區最后一個字節,計算多項式碼為A001(hex)。
◆通訊口設置
通訊方式:異步串行通訊接口,如RS-485,RS-232等。
波特率:2400-9600bps(可由設定儀表二級參數自由更改,設定儀表二級參數BT,默認4800)。
◆字節數據格式HEX
一位起始位、八位數據位、一位停止位、無校驗

◆消息楨格式(讀、寫功能是從主站角度定義的)
讀寄存器楨

讀寄存器返回楨

寫寄存器楨

寫寄存器返回楨

錯誤返回楨

功能代碼表:1

錯誤代碼表:2

本文利用標準的MODBUS協議和昌暉YR-GF系列智能顯示控制儀進行RS485通信,實現了單臺PLC控制多臺顯示控制儀的任務,并能實時檢測各儀表的運行狀態,整個系統控制靈活方便,方案結構簡單,開發成本低,周期短,既使在惡劣的工業環境下也能穩定工作。