艾默生 PLC在變頻器網(wǎng)絡(luò)控制中的通信程序設(shè)計
三、 艾默生變頻器通信協(xié)議
艾默生公司生產(chǎn)的EV系列變頻器都集成MODBUS協(xié)議,且提供RS232C和RS485通信口供用戶選擇,所以通過PLC和變頻器通信的方式完成控制比較簡單經(jīng)濟,而且顯得系統(tǒng)比較高檔,下面簡單介紹其協(xié)議:
1. 支持MODBUS RTU和ASCII格式;
2. 參數(shù)的MODBUS協(xié)議地址影射規(guī)則:變頻器的功能碼參數(shù)、控制參數(shù)和狀態(tài)參數(shù)都映射為Modbus的讀寫寄存器。變頻器功能碼的組號映射為寄存器地址的高字節(jié),組內(nèi)索引映射為寄存器地址的低字節(jié)。變頻器的控制參數(shù)和狀態(tài)參數(shù)均虛擬為變頻器功能碼組。功能碼組號與其映射的寄存器地址高字節(jié)的對應(yīng)關(guān)系如下:F0組:0x00;F1組:0x01;F2組:0x02;F3組:0x03;F4組:0x04;F5組:0x05;F6組:0x06;F7組:0x07;F8組:0x08;F9組:0x09;FA組:0x0A;Fb組:0x0B;FC組:0x0C;Fd組:0x0D;FE組:0x0E;FF組:0x0F;FH組:0x10;FL組:0x11;Fn組:0x12;FP組:0x13;FU組:0x14;變頻器控制參數(shù)組:0x32;變頻器狀態(tài)參數(shù)組:0x33。例如變頻器功能碼參數(shù)F3.02的寄存器地址為0x302,變頻器功能碼參數(shù)FF.01的寄存器地址為0xF01。
3. 支持的功能碼如下:
4. 具體的協(xié)議介紹請參考艾默生變頻器用戶手冊;
四、 程序流程圖
主設(shè)備對從設(shè)備的消息查詢命令主要分為2大類,連續(xù)命令序列和隨機命令序列。
連續(xù)命令序列: 主設(shè)備需要定時或連續(xù)向從設(shè)備發(fā)送的命令序列。特點是周期性,連續(xù)性。如PLC對變頻器讀取運行頻率命令,運行狀態(tài)命令等。
隨機命令序列: 主設(shè)備不定時或隨機向從設(shè)備發(fā)送的命令序列。特點是不定時性,隨機性。如PLC對變頻器的啟??刂?,改寫頻率或其他參數(shù)等。
五、程序清單:( 子程序和主程序 )
本程序主要介紹1臺EC20PLC(作為主站)按照MODBUS協(xié)議網(wǎng)絡(luò)對3臺變頻器(從站號分別是2,3,4)進行通信控制的簡單范例,本例中:
連續(xù)命令序列 包括對2,3,4號變頻器的運行頻率的讀??;
隨機命令序列 包括對2,3,4號變頻器進行啟動,停止,更改頻率的命令操作;
1) “變頻器正轉(zhuǎn)”子程序清單如下:
//主程序中用M1993作為各發(fā)送輔助使能,主要用于 MODBUS指令的上升沿觸發(fā)無其他用
LD LM0 //位輸入?yún)?shù)型—發(fā)送輔助使能
RST SM135 //復(fù)位成功標(biāo)志
RST SM136 //復(fù)位失敗標(biāo)志
LD SM0 //運行標(biāo)志
MOV Z0 V9 //保存Z0值到V9
LD SM0 //運行標(biāo)志
MOV V0 V10 //從機地址
MOV 16#6 V11 //功能碼
MOV 16#32 V12 //寄存器地址高字節(jié)
MOV 16#0 V13 //寄存器地址低字節(jié)
MOV 1 V14 //寫入數(shù)據(jù)高字節(jié)
MOV 16#C7 V15 //寫入數(shù)據(jù)低字節(jié)
//以下把發(fā)送數(shù)據(jù)轉(zhuǎn)移到D7940-D7945里
LD SM0
MOV 0 Z0
LD SM0
FOR 6
LD SM0
MOV V10Z0 D7940Z0
LD SM0
INC Z0
NEXT
//發(fā)送接收數(shù)據(jù),數(shù)據(jù)放在D7970開始區(qū)域
LD LM0
MODBUS 1 D7940 D7970
RST LM0 //馬上復(fù)位發(fā)送輔助使能
//無論成功失敗都還原Z0值
//當(dāng)然這里省略了錯誤報告的處理
LD SM135
OR SM136
EU //上升沿
MOV V9 Z0










