西門子PLC與英威騰CHV系列變頻器通信
引言:
英威騰CHV系列矢量變頻器內(nèi)置的MODBUS協(xié)議采用RTU傳輸格式今捕,該格式使用CRC校驗(yàn)方式對每次發(fā)出或接收的數(shù)據(jù)幀進(jìn)行校驗(yàn)数屁。因此,該子程序使用了多個(gè)局部變量希咒,以方便其它子程序調(diào)用透格。
一.功能介紹
英威騰CHV系列矢量變頻器內(nèi)置國際標(biāo)準(zhǔn)的MODBUS(從站)通信協(xié)議,配合CHV系列變頻器專用通訊卡涉等,可非常方便的實(shí)現(xiàn)遠(yuǎn)程通訊控制功能搜掸。通訊卡上提供RS232及RS485兩種物理通訊端口,用戶可通過設(shè)置卡上的跳線選擇程挑。
下面以西門子S7-200系列PLC為例酝螃,介紹PLC與CHV矢量變頻器建立通訊并實(shí)現(xiàn)對變頻器起停、頻率給定臊耳、監(jiān)控等功能的控制疾隙。
變頻器作為MODBUS協(xié)議從站接收來自CPU224 PLC的通信指令。
CHV系列矢量變頻器在與CPU224通信前須做好以下準(zhǔn)備工作:
1.確認(rèn)已安裝好CHV系列矢量變頻器的通訊卡颈侈,并將卡上的端口跳線置于RS485端鸯两;
2.用一根帶9針陽性插頭的串口通信電纜連接在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)存使用說明
西門子S7-200系列PLC的自由通訊端口編程必定會(huì)用到兩個(gè)指令酸舍,即XMT(發(fā)送)指令和RCV(接收)指令帅韧。編寫程序時(shí)需要為這兩個(gè)指令指定數(shù)據(jù)緩沖區(qū),一般以最低位數(shù)為0的地址作為數(shù)據(jù)緩沖區(qū)的起始地址啃勉。
1.發(fā)送指令XMT緩沖區(qū)(寫/讀)
VB100 //xmt指令要發(fā)送的字節(jié)個(gè)數(shù)
VB101 //變頻器通訊地址(01)
VB102 //modbus功能碼(06/03)
VB103 //變頻器被寫地址高位/變頻器被讀起始地址高位
VB104 //變頻器被寫地址低位/變頻器被讀起始地址低位
VB105 //被寫數(shù)據(jù)高位/被讀數(shù)據(jù)字個(gè)數(shù)高位
VB106 //被寫數(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 //變頻器被寫地址高位/被讀數(shù)據(jù)字節(jié)個(gè)數(shù)高位
VB204 //變頻器被寫地址低位/被讀數(shù)據(jù)字節(jié)個(gè)數(shù)低位
VB205 //被寫數(shù)據(jù)高位/被讀數(shù)據(jù)高位
VB206 //被寫數(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)方式對每次發(fā)出或接收的數(shù)據(jù)幀進(jìn)行校驗(yàn)。因此淮阐,該子程序使用了多個(gè)局部變量叮阅,以方便其它子程序調(diào)用。
在西門子STEP 7-Micro/Win 編程環(huán)境下(如圖一)枝嘶,需要在該子程序的局部變量表中預(yù)先設(shè)定以下局部變量:
×比摹(1)輸入型局部變量(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)值低位變量
(3)臨時(shí)局部變量(VAR)
lw_8:WORD; // 待發(fā)送數(shù)據(jù)字節(jié)個(gè)數(shù)計(jì)數(shù)變量
lw_10:WORD; // 待發(fā)送數(shù)據(jù)每字節(jié)8位二進(jìn)制數(shù)計(jì)數(shù)變量
Network 1
LD SM0.0
MOVW 16#FFFF, LW6 //將16位CRC校驗(yàn)寄存器LW6全置為1
Network 2
LD SM0.0
FOR LW8, +1, LW4 //對待發(fā)送數(shù)據(jù)字節(jié)個(gè)數(shù)(LW4)計(jì)數(shù)(LW8)循環(huán)
Network 3
LD SM0.0
XORB *LD0, LB7 //使待發(fā)送數(shù)據(jù)的第一個(gè)字節(jié)(*LD0)與
//CRC校驗(yàn)寄存器低位字節(jié)(LB7)進(jìn)行異或運(yùn)算
Network 4
LD SM0.0
INCD LD0 //ld_0指向待發(fā)送數(shù)據(jù)的下一個(gè)地址
Network 5
LD SM0.0
FOR LW10, +1, +8 //對每字節(jié)8位二進(jìn)制數(shù)計(jì)數(shù)(LW10)循環(huán)
Network 6
LD SM0.0
SRW LW6, 1 //CRC校驗(yàn)寄存器LW6右移一位
Network 7
LD SM1.1 //若移位后的溢出值SM1.1為1
XORW 16#A001, LW6 //則使值16#A001與LW6進(jìn)行異或運(yùn)算
Network 8
NEXT //結(jié)束每字節(jié)8位二進(jìn)制數(shù)計(jì)數(shù)循環(huán)
Network 9
NEXT //結(jié)束每數(shù)據(jù)幀字節(jié)個(gè)數(shù)計(jì)數(shù)循環(huán)
3. 初始化子程序(SBR1)
該程序在PLC的第一個(gè)掃描周期運(yùn)行疯煮,主要是設(shè)置CPU224自由端口的通信格式尚稍、數(shù)據(jù)接收格式及復(fù)位各寄存區(qū)(參見西門子S7-200編程手冊)。
通信格式內(nèi)容包括:波特率9.6K特掀、每字節(jié)位數(shù)8位竭珊、偶校驗(yàn)等(注意與變頻器一致)。
數(shù)據(jù)接收格式完全參照MODBUS RTU格式設(shè)定葬聘,以不少于3.5個(gè)字節(jié)傳輸時(shí)間的通信口空閑間隔作為數(shù)據(jù)接收的開始及結(jié)束信號震头。根據(jù)協(xié)議,PLC 在準(zhǔn)備接收數(shù)據(jù)前會(huì)先監(jiān)測通信口是否空閑赖相,如連續(xù)空閑時(shí)間超過了3.5個(gè)字節(jié)的傳輸時(shí)間殊青,則PLC默認(rèn)數(shù)據(jù)接收開始,此后通訊口上出現(xiàn)的信息即被認(rèn)為是一個(gè)數(shù)據(jù)幀的內(nèi)容钳骚。同理酣婶,隨著一個(gè)數(shù)據(jù)幀的最后一個(gè)字節(jié)傳輸完成,又會(huì)出現(xiàn)一個(gè)3.5字節(jié)傳輸時(shí)間的空閑間隔貌嫡,來表示一個(gè)數(shù)據(jù)幀傳輸?shù)慕Y(jié)束比驻。(參見 MODBUS協(xié)議標(biāo)準(zhǔn)及CHV系列矢量變頻器通訊卡使用說明書)
對9.6K的通信波特率來說,3.5個(gè)字節(jié)傳輸時(shí)間約為5ms左右岛抄。因該程式的每個(gè)指令只準(zhǔn)備接收一個(gè)數(shù)據(jù)幀的回饋信息别惦,所以接收數(shù)據(jù)前的空閑檢測時(shí)間可設(shè)為0,即PLC在發(fā)出數(shù)據(jù)后立即開始接收數(shù)據(jù)夫椭,但一個(gè)數(shù)據(jù)幀的傳輸結(jié)束空閑檢測時(shí)間仍需設(shè)為5ms以上掸掸。
Network 1
LD SM0.0
MOVB 16#49, SMB30 //設(shè)置自由通信口格式
MOVW +0, SMW90 //空閑行間隔檢測時(shí)間0ms
MOVW +5, SMW92 //字符間定時(shí)器超時(shí)檢測時(shí)間5ms
MOVB 20, SMB94 //接收信息的最大緩沖區(qū)20字節(jié)
MOVB 148, SMB87 //設(shè)置自由通信口的數(shù)據(jù)接收格式
FILL +0, QW0, 1 //輸出印象寄存區(qū)復(fù)位
FILL +0, MW0, 1 //標(biāo)志寄存區(qū)復(fù)位
FILL +0, VW100, 5 //發(fā)送緩沖區(qū)復(fù)位
FILL +0, VW200, 5 //接收緩沖區(qū)復(fù)位
ATCH INT_0, 23 //接收完成中斷
ATCH INT_1, 9 //發(fā)送完成中斷
ENI //在全局啟用中斷
聲明:本網(wǎng)站所收集的部分公開資料來源于互聯(lián)網(wǎng),轉(zhuǎn)載的目的在于傳遞更多信息及用于網(wǎng)絡(luò)分享蹭秋,并不代表本站贊同其觀點(diǎn)和對其真實(shí)性負(fù)責(zé)猾漫,也不構(gòu)成任何其他建議。本站部分作品是由網(wǎng)友自主投稿和發(fā)布感凤、編輯整理上傳,對此類作品本站僅提供交流平臺(tái)粒督,不為其版權(quán)負(fù)責(zé)陪竿。如果您發(fā)現(xiàn)網(wǎng)站上所用視頻、圖片屠橄、文字如涉及作品版權(quán)問題播窒,請第一時(shí)間告知,我們將根據(jù)您提供的證明材料確認(rèn)版權(quán)并按國家標(biāo)準(zhǔn)支付稿酬或立即刪除內(nèi)容筷资,以保證您的權(quán)益挨这!聯(lián)系電話:010-58612588 或 Email:editor@mmsonline.com.cn袭丛。
- 暫無反饋
編輯推薦
- 2025新年特刊:打造新質(zhì)生產(chǎn)力衔峰,智啟未來新篇章
- 定義制造業(yè)未來的數(shù)控加工中心技術(shù)專題
- 航空航天及交通領(lǐng)域先進(jìn)制造技術(shù)應(yīng)用專題
- 解碼消費(fèi)電子產(chǎn)品生產(chǎn)的數(shù)字化之路技術(shù)專題
- 精密智能機(jī)床,助力制造升級技術(shù)專題
- 汽車輕量化驅(qū)動(dòng)下的零部件加工應(yīng)用專題
- 高性能銑刀實(shí)現(xiàn)高精加工生產(chǎn)技術(shù)專題
- 航空航天發(fā)動(dòng)機(jī)解決方案專題
- 高效齒輪加工生產(chǎn)技術(shù)方案專題
- 金屬加工液的性能不止?jié)櫥夹g(shù)應(yīng)用專題