PLC與CHV系列變頻器通信
一.功能介紹
英威騰CHV系列矢量變頻器內(nèi)置國(guó)際標(biāo)準(zhǔn)的MODBUS(從站)通信協(xié)議,配合CHV系列變頻器專(zhuān)用通訊卡,可非常方便的實(shí)現(xiàn)遠(yuǎn)程通訊控制功能。通訊卡上提供RS232及RS485兩種物理通訊端口,用戶可通過(guò)設(shè)置卡上的跳線選擇。
下面以西門(mén)子S7-200系列PLC為例,介紹PLC與CHV矢量變頻器建立通訊并實(shí)現(xiàn)對(duì)變頻器起停、頻率給定、監(jiān)控等功能的控制。
變頻器作為MODBUS協(xié)議從站接收來(lái)自CPU224 PLC的通信指令,。
CHV系列矢量變頻器在與CPU224通信前須做好以下準(zhǔn)備工作:
1.確認(rèn)已安裝好CHV系列矢量變頻器的通訊卡,并將卡上的端口跳線置于RS485端;
2.用一根帶9針陽(yáng)性插頭的串口通信電纜連接在CPU224 PLC的自由通信口端,電纜另一端的第5、3、8線分別接在CHV變頻器RS485通訊卡的GND、485+、485-端子上,其余線屏蔽不用;
3.預(yù)先設(shè)置變頻器以下參數(shù):
PC0.0=1 //變頻器通訊地址為1
PC0.1=3 //通訊波特率9.6K
PC0.2=1 //通訊數(shù)據(jù)偶校驗(yàn)
P0.01=2 //變頻器的運(yùn)行指令采用通訊方式
P0.03=7 //變頻器的A頻率設(shè)定采用通訊方式
二.PLC內(nèi)存使用說(shuō)明
西門(mén)子S7-200系列PLC的自由通訊端口編程必定會(huì)用到兩個(gè)指令,即XMT(發(fā)送)指令和RCV(接收)指令。編寫(xiě)程序時(shí)需要為這兩個(gè)指令指定數(shù)據(jù)緩沖區(qū),一般以最低位數(shù)為0的地址作為數(shù)據(jù)緩沖區(qū)的起始地址。
1.發(fā)送指令XMT緩沖區(qū)(寫(xiě)/讀)
VB100 //xmt指令要發(fā)送的字節(jié)個(gè)數(shù)
VB101 //變頻器通訊地址(01)
VB102 //modbus功能碼(06/03)
VB103 //變頻器被寫(xiě)地址高位/變頻器被讀起始地址高位
VB104 //變頻器被寫(xiě)地址低位/變頻器被讀起始地址低位
VB105 //被寫(xiě)數(shù)據(jù)高位/被讀數(shù)據(jù)字個(gè)數(shù)高位
VB106 //被寫(xiě)數(shù)據(jù)低位/被讀數(shù)據(jù)字個(gè)數(shù)低位
VB107 //被發(fā)送數(shù)據(jù)CRC低位
VB108 //被發(fā)送數(shù)據(jù)CRC高位
2.接收指令RCV緩沖區(qū)
VB200 //rcv指令要接收的字節(jié)個(gè)數(shù)
VB201 //變頻器地址(01)
VB202 //modbus功能碼(06/03)
VB203 //變頻器被寫(xiě)地址高位/被讀數(shù)據(jù)字節(jié)個(gè)數(shù)高位
VB204 //變頻器被寫(xiě)地址低位/被讀數(shù)據(jù)字節(jié)個(gè)數(shù)低位
VB205 //被寫(xiě)數(shù)據(jù)高位/被讀數(shù)據(jù)高位
VB206 //被寫(xiě)數(shù)據(jù)低位/被讀數(shù)據(jù)低位
VB207 //被接收數(shù)據(jù)CRC低位
VB208 //被接收數(shù)據(jù)CRC高位
VB217 //被接收數(shù)據(jù)CRC驗(yàn)算低位
VB218 //被接收數(shù)據(jù)CRC驗(yàn)算高位
2.CRC校驗(yàn)子程序(SBR0)
英威騰CHV系列矢量變頻器內(nèi)置的MODBUS協(xié)議采用RTU傳輸格式,該格式使用CRC校驗(yàn)方式對(duì)每次發(fā)出或接收的數(shù)據(jù)幀進(jìn)行校驗(yàn)。因此,該子程序使用了多個(gè)局部變量,以方便其它子程序調(diào)用。
在西門(mén)子STEP 7-Micro/Win 編程環(huán)境下(如圖一),需要在該子程序的局部變量表中預(yù)先設(shè)定以下局部變量:
?。?)輸入型局部變量(VAR_INPUT)
1d_0:DWORD; // 待發(fā)送數(shù)據(jù)地址指針變量
lw_4:WORD; // 待發(fā)送數(shù)據(jù)字節(jié)個(gè)數(shù)變量
(2)輸出型局部變量(VAR_OUTPUT)
lb_6:BYTE; // CRC校驗(yàn)值高位變量
lb_7:BYTE; // CRC校驗(yàn)值低位變量
評(píng)論