房華偉
(廣西中煙工業有限責任公司柳州卷煙廠 廣西柳州)
ControlLogix控制系統不僅自帶RS232串行通信端口支持DF1/DH485協議,還提供豐富的通信模塊支持EtherNet、ControlNet、Modbus和Profibus等多種網絡協議,進一步擴展系統應用的靈活性。
廣西中煙柳州卷煙廠煙葉醇化庫采用ControlLogix控制系統調節庫區環境恒溫恒濕,該系統安裝MVI56 ADM通信擴展模塊,基于自定義協議讀取下位TB2X系列總線溫濕度巡檢儀的數據。由于TB2X巡檢儀升級換代,新巡檢儀采用新的Modbus RTU協議,不再支持原有自定義協議,因此需要對ControlLogix控制系統進行改造。
MVI56 ADM模塊是一種C語言開發模塊,允許用戶自己開發通信協議(包括Modbus RTU通信協議),但實施難度非常大,購買Modbus通信專用模塊MVI56 MCMR,雖然編程簡單方便,但價格昂貴。綜合考慮,將3臺TB2X巡檢儀通過總線接到PLC控制站,利用ControlLogix自帶串行口進行Modbus RTU通信,實現對庫區溫濕度數據的遠程讀取和在線校準。
加裝1個有源RS232/485接口轉換器將ControlLogix控制器連接到RS485網絡,實現Modbus RTU一主多從通信(圖1)。主要使用ControlLogix編程軟件RSLogix 5000 V19、PLC通信軟件RSLinx V2.5以及RockWell公司給出的Modbus通信例程ModbusMaster.ACD(存放在RSLogix5000軟件安裝路徑下面的Samples文件夾)。

圖1 改造后的網絡結構
ControlLogix控制器串行口實現Modbus通信支持的功能碼見表1,并且僅支持RTU傳輸模式,不支持ASCⅡ模式,需要注意通信過程中此端口不能再用于編程。

表1 例程支持的Modbus RTU功能碼
(1)從例程ModbusMaster.ACD中復制用戶自定義數據類型、控制器標簽和周期任務到工程文件。①打開ModbusMaster.ACD文件,在左側導航欄中找到“數據類型”,選擇“用戶定義”,然后復制用戶自定義數據類型“Mod_Command_Structure”和“Mod_Status”,粘貼在自建的工程文件同樣位置。②在ModbusMaster.ACD文件左側導航欄中找到“控制器ModbusMaster”,選擇“控制器標簽”,將所有共11個控制器標簽粘貼在自建的工程文件同樣位置。③找到“任務”,選擇“MainTask”,將“Modbus_Interface”程序粘貼到自建的 RSLogix 5000工程中的MainTask任務中。
(2)配置控制器通信端口。在自建的RSLogix5000工程文件中訪問控制器屬性,找到"串行端口"和"用戶協議"選項卡,分別確定本案例通信波特率為19200、數據位8、奇偶校驗無、結束位1和讀/寫緩沖區大小200字,其他選項保持不變。
(3)配置控制器標簽。根據實際需要配置Mod_Commands,例如讀取2#TB2X巡檢儀,起始地址20480,每次讀取16個寄存器,主站從數據表字2開始寫入數據,配置通信命令標簽(圖2)。Modbus主站數據表有4個標簽組:①線圈數據(Mod_Data_Coils0標簽),數據以位格式從讀或寫入這個數組;②觸點數據(Mod_Data_Contacts1標簽),數據以位格式寫入這個數組;③輸入寄存器數據(Mod_Data_InpReg3標簽),數據以字格式寫入這個數組;④保持寄存器數據(Mod_DataHoldReg4標簽),數據以字格式從讀或寫入這個數組。
當Modbus主站需要向從站寫入特定數據時,用戶需要數據被準確放入從站的輸入寄存器中,例如Mod_Commands[1].AddressOffsetinMaster=2,Mod_Commands[1].StartingAddress=3,前一個表示在主站數據表的地址偏移,后一個表示相應從站的起始地址,兩個標簽均以字為單位進行操作。按照上面設置,從、主站保持寄存器數據表分別偏移3個字和5個字(圖3)。按照實際需求配置完成所需的命令標簽后,在控制器標簽Mod_Cmd_Number輸入執行命令的總個數,注意這里要和用戶 實際配置命令標簽的數量一致。

圖2 通信命令標簽配置

圖3 主站向從站寫保持寄存器數據位置

圖4 使能Modbus通信程序
(4)使能程序并校驗下載。用戶還需要編寫程序段對ControlLogix控制器4個標簽組進行讀取寫入操作,即完成與下位TB2X巡檢儀的數據交換。為使能新程序,還必須將控制器標簽Mod_Active的值由0改為1(圖4),然后對新程序進行校驗,最后下載運行。
改造后使用ControlLogix自帶串行口實現了Modbus RTU通信,可對3臺TB2X巡檢儀共54個溫濕度數據進行有效監視和遠程校準,滿足了煙葉庫區恒溫恒濕控制實時性的要求,節省了改造成本,提高了企業管理效率和自動化水平。