宋寶宇,巴 鵬,李 巖
在PLC 與變頻器的綜合應(yīng)用中, 比較傳統(tǒng)的應(yīng)用一般使用PLC 的開關(guān)量輸出驅(qū)動(dòng)中間繼電器控制變頻器的啟動(dòng)、 停止, 使用多段速度或D/A輸出控制變頻器的轉(zhuǎn)速變化。 在這種應(yīng)用方式中,PLC 與變頻器通過(guò)外部接線完成連接, 不能進(jìn)行內(nèi)部數(shù)據(jù)的傳遞[1]。 而為了保證電機(jī)的穩(wěn)定運(yùn)行,減少故障發(fā)生, PLC 與變頻器的通訊不僅可以控制變頻器使電機(jī)保持穩(wěn)定的運(yùn)轉(zhuǎn)速度, 還可以通過(guò)與PLC 通訊獲得電機(jī)的參數(shù), 減少因電機(jī)而產(chǎn)生的故障, 為工業(yè)生產(chǎn)提供保障。
Modbus 協(xié)議是一種串行通信協(xié)議, 其所需的硬件、 軟件比較簡(jiǎn)單, 大部分儀表設(shè)備及控制設(shè)備都支持M ODBUS 通信協(xié)議, 通訊方式主要有ASCLL 碼和RTU 兩種, RTU 的通訊速度比ASCLL更快, 可以達(dá)到115 kps, 其通訊物理接口為RS232/RS485。
MODBUS RTU 消息發(fā)送最少是以3.5 個(gè)字符間隔時(shí)間表示開始和結(jié)束, 而消息幀是由設(shè)備地址、功能碼、 數(shù)據(jù)與CRC 校驗(yàn)構(gòu)成, 所有字符位由16進(jìn)制0-9、 A-F 組成(見表1)。
表1 RTU 消息幀格式 [5]
(1) 設(shè)備地址 指定報(bào)文的目的地址, 包括8 bit, 單個(gè)設(shè)備的地址范圍是1~247。
(2) 功能代碼 當(dāng)消息從主設(shè)備發(fā)往從設(shè)備時(shí), 功能代碼域?qū)⒏嬷畯脑O(shè)備需要執(zhí)行哪些行為。
(3) 數(shù)據(jù) 數(shù)據(jù)域由兩個(gè)十六進(jìn)制數(shù)集合構(gòu)成, 范圍00~FF。 從主設(shè)備發(fā)給從設(shè)備消息的數(shù)據(jù)域包含從機(jī)執(zhí)行主機(jī)功能代碼中所需的參數(shù)。
(4) CRC 校驗(yàn) CRC 域檢測(cè)整個(gè)消息的內(nèi)容,包括兩個(gè)字節(jié), 包含一個(gè)16 位的二進(jìn)制值。
在PLC 與變頻器Modbus RTU 通訊時(shí), 使用不同的功能碼可以達(dá)到對(duì)變頻器不同的控制效果( 見表2)。
表2 由主到從的控制代碼
(1) 通訊系統(tǒng)結(jié)構(gòu)
整個(gè)通訊系統(tǒng)由計(jì)算機(jī)、 GCAN PLC、 丹佛斯變頻器與電動(dòng)機(jī)構(gòu)成( 見圖1) 。 其中, 變頻器通過(guò)RS485 串行通訊線與計(jì)算機(jī)通訊, 設(shè)置變頻器的參數(shù), 同時(shí)將編好的程序下載到PLC 中, PLC根據(jù)MODBUS RTU 協(xié)議與變頻器通訊, 實(shí)現(xiàn)對(duì)變頻器的控制。
圖1 通訊系統(tǒng)結(jié)構(gòu)設(shè)計(jì)圖
(2) 通訊硬件介質(zhì)選取
實(shí)驗(yàn)采用GCANPLC, 它是一款集成有總線控制功能的可編程邏輯控制器, 由總線通信模塊與供電模塊組成。 總線通信模塊上集成了一路以太網(wǎng)接口、 一路RS232/485 復(fù)用接口、 一路CAN 總線接口, 支持CANOPEN、 MODBUS RTU/TCP 等通信協(xié)議[2]。 在PLC、 變頻器中, 可使用端子雙絞線進(jìn)行連接, 也可用水晶頭RJ45, 由于雙絞線及接頭制作方便, 通訊效果較好, 所以通訊介質(zhì)采用雙絞線。 在硬件連接時(shí), PLC 側(cè)為RJ45 接口, 采用其中的1 號(hào)引腳與8 號(hào)引腳( 見圖2) , 變頻器側(cè)為68、 69 號(hào)端子接口( 見圖3) , 根據(jù)變頻器說(shuō)明書選取通訊介質(zhì)與接口將通訊設(shè)備連接[3]。
圖2 PLC RJ485 接口樣式
圖3 變頻器端子接口
GCAN-PLC與變頻器通訊采用Open PCS 編程軟件進(jìn)行程序設(shè)計(jì), 該軟件支持符合IEC-61131-3標(biāo)準(zhǔn)中規(guī)定的五種標(biāo)準(zhǔn)編程語(yǔ)言, 程序采用SCL結(jié)構(gòu)化文本語(yǔ)言編寫, 將數(shù)字量輸入模塊作為觸發(fā)信號(hào), 執(zhí)行讀與寫的操作。
使用GCAN PLC 通訊時(shí), 執(zhí)行MODBUS 初始化, 成功后將不再執(zhí)行初始化步驟。 如果有數(shù)字量輸入, 執(zhí)行數(shù)字量輸入模塊8 個(gè)通道對(duì)應(yīng)的功能碼, 執(zhí)行MODBUS 執(zhí)行功能塊(見圖4)。
圖4 程序流程圖
以下為PLC 與變頻器通訊編程。
(1) 變量聲明部分
(1) 通訊格式設(shè)定
在通訊連接前需要設(shè)定PLC 與變頻器的通訊參數(shù), 確定發(fā)送與接收內(nèi)容, 只要滿足準(zhǔn)確的通訊速率、 發(fā)送方式及通訊接口即可實(shí)現(xiàn)通訊控制, 即可在PLC 程序中設(shè)定, 變頻器可在面板中設(shè)定,根據(jù)丹佛斯變頻器設(shè)計(jì)指南, 通訊波特率設(shè)置為9600 bps, 數(shù)位位數(shù)為8 位, 偶校驗(yàn), 1 個(gè)停止位。
(2) 確定發(fā)送接收內(nèi)容
PLC 與變頻器的通訊要求為: 在不同情況下給定頻率啟動(dòng)變頻器( 正轉(zhuǎn)) , 同時(shí)讀取變頻器頻率及電動(dòng)機(jī)的電壓、 電流、 轉(zhuǎn)速等參數(shù), 而要達(dá)到通訊要求需要了解變頻器的功能碼, 以及PLC、 變頻器的寄存器地址( 見圖5) , 相關(guān)參數(shù)地址由丹佛斯變頻器設(shè)計(jì)指南查得[3]。
圖5 PLC、變頻器寄存器地址
PLC、 變頻器、 上位機(jī)硬件連接后, PLC 為主站, 變頻器作為從站, PLC 控制變頻器以50 Hz 正轉(zhuǎn)啟動(dòng)操作步驟如下:
(1) 變頻面板設(shè)置通訊參數(shù): 參數(shù)8-30 協(xié)議MODBUS RTU、 參數(shù)8-31 變頻器從站地址01、 參數(shù)8-32 波特率9 600、 參數(shù)8-33 奇偶校驗(yàn)/停止位為偶校驗(yàn), 1 個(gè)停止位[4]。
(2) 向變頻器發(fā)送兩條指令, 一條為正轉(zhuǎn)啟動(dòng)指令, 一條為總線參考值, 保持寄存器對(duì)應(yīng)控制字的地址為50000, 但寫入MOUDBUS RTU 報(bào)文值需要減1, 即49999 對(duì)應(yīng)C34FH, 正轉(zhuǎn)啟動(dòng)的控制字047CH, 功能碼選取06( 寫單個(gè)寄存器) , 即發(fā)送的報(bào)文01 06 C3 4F 04 7C 87 78, 7887 為CRC 校驗(yàn), 低位在前, 高位在后, 另一條給定頻率指令同理, 保持寄存器對(duì)應(yīng)總線參考值的地址為50010,給定頻率50 Hz 對(duì)應(yīng)4000H, 即發(fā)送報(bào)文為01 06 C3 5A 40 00 A4 5D, 分別在PLC 程序輸入控制字、總線參數(shù)地址, 運(yùn)行程序后接24 V 電源觸發(fā)數(shù)字量輸入模塊第7 個(gè)通道, 執(zhí)行06 功能碼寫單個(gè)寄存器(見圖6)。
圖6 變頻器面板顯示
在完成PLC 給定頻率啟動(dòng)變頻器后, 需要進(jìn)行讀取變頻器數(shù)據(jù)的步驟, 具體步驟如下:
(1) 根據(jù)丹佛斯變頻器設(shè)計(jì)指南獲得變頻器頻率(1613)、 電動(dòng)機(jī)電壓(1612) 等參數(shù)地址[4]。
( 2) 將獲得的參數(shù)乘十轉(zhuǎn)換成16 進(jìn)制輸入PLC 程序地址中, 運(yùn)行程序后接24 V 電源觸發(fā)數(shù)字量輸入模塊第3 個(gè)通道, 執(zhí)行03 功能碼讀保持型寄存器, 觸發(fā)后得到變頻器回復(fù)的數(shù)據(jù)( 見圖7)。
圖7 變頻器數(shù)據(jù)回復(fù)
變頻器數(shù)據(jù)回復(fù)數(shù)組內(nèi)的值為1 和244, 變換成01F4 Hex, 轉(zhuǎn)換成500 Dec, 對(duì)應(yīng)頻率為50 Hz,而值123 與15 16 進(jìn)制轉(zhuǎn)換0F7BHex, 10 進(jìn)制3963, 對(duì)應(yīng)電動(dòng)機(jī)電壓為396.3 V。
通過(guò)GCAN PLC 與變頻器通訊實(shí)驗(yàn)證明, 由GCAN PLC 控制變頻器給定頻率啟動(dòng)并讀取變頻器參數(shù), 完成讀與寫的操作, 能夠?qū)崿F(xiàn)PLC 與變頻器的正常通訊, 此次通訊系統(tǒng)基于MODBUS 協(xié)議,以GCAN PLC 與丹佛斯變頻器為研究載體, 對(duì)于其他工業(yè)自動(dòng)化設(shè)備通訊應(yīng)用具有一定的參考價(jià)值, 以此為基礎(chǔ), 可開發(fā)出更多的工業(yè)控制系統(tǒng)。