吳小兵
摘 要:本文通過詳述歐姆龍 CP1H PLC用串口通過Modbus-RTU協議與安川V1000變頻器的通訊。方便大家掌握Modbus-RTU協議的通訊方式,了解CP1H PLC的簡易通訊模式。
關鍵詞:V1000變頻器;CP1H PLC;Modbus-RTU
1 前 言
目前在陶瓷生產線上設備,如窯爐、釉線、進出窯輔機,包裝線等設備使用的變頻,常用的有安川、三菱、匯川等品牌。PLC品牌常用的有歐姆龍、三菱、西門子等。集中控制的變頻器數量較多,用通訊把變頻器與PLC鏈接后,再通過人機界面調整變頻器的常用參數,操作人員在調整參數時就會變得非常方便。Modbus已經成為國家標準GB/T19582-2008,協議廣泛應用于各種工業(yè)控制設備中。陶瓷生產線的控制終端如變頻器、溫控表等都帶有RS485接口,協議為Modbus-RTU。人機界面也可以作為主站直接跟變頻器通訊,但響應速度慢,變頻器數量多時就不太合適。PLC做主站,把有需要寫入和讀取的參數通訊,其它內容屏蔽,可以有效的縮短通訊時間。CP1H 是歐姆龍公司新近推出的功能強大的一體化小型 PLC,該機型擴展能力強,可以帶7 塊擴展,內置 USB 接口,支持編程功能,2 個可選的 RS422/485 和 RS232C 接口。該機型支持功能塊編程和 ST 語言編程。安川V1000是陶瓷生產線應用廣泛相對穩(wěn)定的變頻器,它的通訊直接用端子連接,通訊時穩(wěn)定可靠,能適應比較差的環(huán)境。通過 CP1H 的串行通信接口,簡單經濟。下面就選用陶瓷生產線最常用的PLC 歐姆龍 CP1H跟安川V1000變頻器通訊做詳細分析。
2 系統組成
(1)歐姆龍 CP1H PLC帶串型通訊模塊CP1W-CIF11
(2)安川變頻器V1000
3 系統設定
直接使用 CP1H 的Mosbus-RTU簡易主站功能和支持Modbus-RTU變頻器通信。
該功能只需要在規(guī)定的DM數據區(qū)寫入需要發(fā)送的Modbus命令, 觸發(fā)發(fā)送標志,CP1H,就可以自動發(fā)送添加了CRC16校驗的Modbus命令,CP1H將自動接收變頻器的響應,存儲到特定的DM數據區(qū)。使用這種方法不僅可以和變頻器通信,而且可以和任何支持Modbus-RTU協議的設備通信。
(1)CP1H設定:主要設定串口2為串口網關功能,通信波特率9600,8,1,N
(2)CP1W-CIF11開關設定,1=ON;2,3=ON;5=ON;6=ON變頻器設定:B1-01=2,頻率由通信給定;H5-01通信地址:每臺變頻地址不重復;??H5-02通信波特率選擇3 9600;H5-03奇數偶數效驗? ?選擇無效驗。
4 Modbus-RTU串口通信特點
(1)Modbus-RTU可以通過發(fā)送為,將存儲在特定DM區(qū)的數據按Modbus-RTU方式發(fā)送出去,自動添加CRC校驗。
(2)發(fā)送完成后自動接收RTU從站的響應數據,存儲在特定區(qū)域(但是如果沒有響應,一直會等待接受數據,不能跳出)。
(3)具體地址分配和發(fā)送狀態(tài)位如下:
Modbus-RTU簡易主站用DM固定分配區(qū)域在以下的DM區(qū)域(串行端口1:D32200 ~ D32249、串行端口2:D32300~ D32349)中保存Modbus-RTU命令。
將「Modbus-RTU簡易主站功能執(zhí)行開關」OFF→ON后,應答則被保存到以下的DM區(qū)域(串行端口1:D32250 ~ D32299、D32350~ D32399)。如表1所示。
相關特殊輔助繼電器通過對以下的「Modbus-RTU簡易主站功能執(zhí)行開關」的操作(OFF→ON),按照DM固定分配區(qū)域中設定的內容,Modbus-RTU命令自動發(fā)出,正常結束/異常結束反映到標志上。如表2所示。
這里需要注意通信數據字節(jié)數 D32302和D32202在標準Modbus協議中是沒有該參數的,該數據字節(jié)數是指從該地址以后的所有Modbus命令字節(jié)數,不包括 CRC16 的 2 個字節(jié)數。
在D32300填寫數據如下:0001,0006,0004, 0002,1388,向1號變頻器寫入頻率25 Hz,其中 0004 是標準 Modbus 協議內沒有的數據。指0002,1388,共 4個字節(jié)。
之后觸發(fā)串口2 的發(fā)送位:A640.00,CP1H會自動將標準的Modbus協議發(fā)送出去。然后將接收到的數據存儲在D32350開始的數據區(qū)內。另接受到的實際值在D32354~D32355中,分四個字節(jié)顯示,分別在D32354 中的低位和D3235中的高位,其正確結果需要通過移位整理才能正確顯示,需要注意。
5 程序控制
(1)控制1臺變頻器不間斷讀取變頻器的頻率指令值。
DM32300 ~ DM32304:0001,0003,0004,0023,0002,讀取變頻器1號0023寄存器開始2各字。接受到的實際值在 D32354~D32355 中,分四個字節(jié)顯示,分別在D32354中的低位和D32355中的高位。用XFRB指令傳送以后得到的頻率值在DM606。
注釋:1)只要W0.00不工作時讀繼電器W0.01就工作;
2)W0.01觸發(fā)A640.00發(fā)送開始,發(fā)送數據;
3)發(fā)送失敗時,A640.02將W00.01復位,重新開始發(fā)送;
4)發(fā)送完成后,A640.01將W00.01復位,再次進行發(fā)送。
(2)輪巡讀取多臺變頻器數據,在需要時寫變頻器數據(需要時在寫)。
實際控制中可能讀取命令較多,而寫變頻器參數次數較少,那么將讀寫命令使用一個位區(qū)分,將該位的非串接在讀取傳送前,該位的非串在寫命令的產送前,從而可以決定本次發(fā)送讀命令還是寫命令。具體如下:
D32300的低8位是從站的節(jié)點地址D600;D32301的低8位是命令代碼 例如010是寫多個寄存器命令,006是寫單個寄存器,003是讀寄存器;D32302的通訊數據字節(jié)數指從D32303開始的通訊數據的字節(jié)數,需要用戶根據D32203開始寫入的通訊數據自己算出一共多少個字節(jié)然后寫入該通道中。這里是009,表示以下通訊占用9個字節(jié);D32203:0001 寫操作的起始通道為變頻器內的0001H寄存器;D32204:0002 寫連續(xù)2個寄存器,2個寄存器分別是001H運行方式和0002H設定頻率;D32205的高8位04表示寫4個字節(jié)0400需要拆分開來,D32305高8位04表示通訊的2寄存器是4個字節(jié),低8位00通過傳送位改變,從D601拆分出來的高8位替換,D601的低8位傳送至D32306,D602為設定頻率,也是通過傳送位指令XFRB拆分高低位來傳送。
6 結 語
舉例只是用PLC讀取變頻器的實際頻率,寫入設定頻率。實際應用還可以對變頻器的運行電流,電壓等參數讀取,寫入變頻器的多段速,加減速時間等參數。在需要時寫入變頻器還應該注意可以把0900H寄存器寫入0,用于把修改參數寫入EEPROM,做到參數保存的功能。熟練掌握PLC通訊,可以幫助操作人員減少工作量。
參考文獻
[1] 安川V1000技術手冊.
[2] 歐姆龍CP1H操作手冊和編程手冊.