西門子S7-200通過自由口和英威騰變頻器通訊_第1頁(yè)
西門子S7-200通過自由口和英威騰變頻器通訊_第2頁(yè)
西門子S7-200通過自由口和英威騰變頻器通訊_第3頁(yè)
西門子S7-200通過自由口和英威騰變頻器通訊_第4頁(yè)
西門子S7-200通過自由口和英威騰變頻器通訊_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、西門子S7-200通過自由口需要控制英威騰變頻器的正負(fù)轉(zhuǎn)停止和故障復(fù)位,運(yùn)行頻率控制以及分二次讀取運(yùn)行速度等12條變頻器信息。程序略微變動(dòng)適應(yīng)所有Modbus RTU需要控制。下面是程序,可以直接導(dǎo)入程序后寫入PLC試驗(yàn)ORGANIZATION_BLOCK 主程序:0B1TITLE=BEGINNetwork 1/主程序,初始化并查執(zhí)各變頻器指令/ 一功能介紹/該程序?qū)橛⑼v CHF系列變頻器編寫。英威騰 CHF系列變頻器內(nèi)置國(guó)際標(biāo)準(zhǔn)的 MODBUS 通信協(xié)議。程序運(yùn)行時(shí),變頻器作為 MODBUS協(xié)議從站接收來自 CPU224 PLC的通信指令,實(shí) 現(xiàn)起停、頻率給定、監(jiān)控等功能。/ CHF系列

2、矢量變頻器在與 CPU224通信前須做好以下準(zhǔn)備工作:/ 1 .確認(rèn)己安裝好 CHF系列變頻器的通訊卡,并將卡上的端口跳線置于RS485端; 2 .用一根帶9針陽性插頭的串口通信電纜連接在 CPU224 PLC 的自由通信口端,電纜另一端 的第5、3、8線分別接在 CHF變頻器RS485通訊卡的GND、485+、485 一端子上,其余線屏 敝不用;/ 3 .預(yù)先設(shè)置變頻器以下參數(shù):/ PC.00 = 1 /變頻器通訊地址為 1/ PC.01 = 3 /通訊波特率 9 . 6KII PC.02 = 1 II通訊數(shù)據(jù)偶校驗(yàn) 8位數(shù)據(jù)位1位停止位/ P0.03 = 2 II變頻器的運(yùn)行指令采用通訊方

3、式II P3.01 = 7 II變頻器的A頻率設(shè)定采用通訊方式(注意 P3.04IP3.05對(duì)P3.01通訊頻率的影響)II二.程式結(jié)構(gòu)說明II該程序由1個(gè)主程序3個(gè)子程序及2個(gè)中斷程序組成。子程序里包含了變頻器的起停、復(fù)位、 查詢功能指令,由主程序調(diào)用。中斷程序?yàn)榘l(fā)送及接收指令提供中斷支持。/ main /主程式,初始化并查執(zhí)各變頻器指令/ sbrO /CRC 校驗(yàn)子程序/ sbrl /通訊端口初始化子程序/ sbr2 /發(fā)送變頻器寫入 06/讀取03指令,共8個(gè)字節(jié)/into /接收完成中斷程序/ i nt1 /發(fā)送完成中斷程序LD SM0.1CALL SBR1 /調(diào)用初始化子程序,使能P

4、ORT0自由口模式Network 2/接收完成后延時(shí)10mS M4.4接通,運(yùn)行下一次發(fā)送數(shù)據(jù)LDN M4.0AN M4.1TON T35, 1 / 通訊完成后延時(shí) 10mS M4.4 = 1,允許下一次通訊,A T35=M4.4 /主要是為了 Modbus RTU 二次通訊中間3.5字符間隔時(shí)間Network 3/如果發(fā)送或接收超時(shí),延時(shí)0.2秒復(fù)位M4.0/M4.1,這里暫時(shí)設(shè)置 5秒是為了方便調(diào)試LD M4.0O M4.1TON T199, 50A T199R M4.0, 2 /發(fā)送或接收超過 0.2秒沒有完成,復(fù)位發(fā)送/接收Network 4 /調(diào)用Modbus06寫入指令,通訊成功,

5、這里暫時(shí)不用,可以作打手頻率設(shè)定,不知道是否支持廣播寫入,廣播寫入主要是變頻器故障復(fù)位和三個(gè)打手頻率設(shè)定.給棉變頻器如果需要用PID控制沒有必要用 PLC的PID/ 當(dāng) VW11労 VW300 時(shí)把 VW110 寫入變頻器,VW110 范圍(+10000 -10000 ) - 10000 X 50HZ地址為變頻器地址;字節(jié)為發(fā)送的字節(jié)數(shù)量=8個(gè)字節(jié);指令=03為讀取指令,06為寫入指令;數(shù)據(jù)地址=2000H為英威騰變頻器設(shè)置頻率的地址;數(shù)據(jù)內(nèi)容為寫入2000H的內(nèi)容,范圍+10000 0-10000/運(yùn)行命令權(quán)限最高,如果運(yùn)行命令沒有完成,程序?qū)?huì)一直執(zhí)行下去,直到運(yùn)行命令完成LDN M8.1

6、 /沒有發(fā)送運(yùn)行命令,當(dāng)運(yùn)行命令發(fā)送過程中不能夠發(fā)送頻率寫通訊AW<> VW300, VW110 / 發(fā)送的數(shù)據(jù) VW110與通訊完成返回的數(shù)據(jù)不等A M4.4 /允許發(fā)送S M8.0, 1 /發(fā)送為寫運(yùn)行速度命令,為了接收信息時(shí)保存到VW300用CALL SBR3, 1,8, 6, 16#2000, VW110 / 把VW110數(shù)據(jù)寫入到變頻器地址 1的2000H 寄存器Network 5/控制變頻器正負(fù)轉(zhuǎn)停止和故障復(fù)位同時(shí)有幾個(gè)輸入時(shí)執(zhí)行最后的指令LD SM0.0LPSA I5.1 /運(yùn)行命令MOVW 1, VW304LRDA I5.3 /反轉(zhuǎn)命令MOVW 2, VW304LR

7、DA 15.2 /停車命令MOVW 5, VW304LPPA I5.4 /故障復(fù)位命令MOVW 7, VW304Network 6 /設(shè)定英威騰變頻器 1000H通信控制命令,來控制變頻器正負(fù)轉(zhuǎn)和停止等操作命令控制變頻器運(yùn)轉(zhuǎn)英威騰變頻器地址 1000H 01正轉(zhuǎn)運(yùn)行02反轉(zhuǎn)運(yùn)行03正轉(zhuǎn)點(diǎn)動(dòng)04反轉(zhuǎn)點(diǎn) 動(dòng)05停車06自由停車07故障復(fù)位08點(diǎn)動(dòng)停車LDW<> VW304, VW302 / 運(yùn)行命令VW304與接收的返回信息比較,不相等將一直發(fā)送下去A M4.4S M8.1, 1 /為了把返回信息的保存到VW302寄存器CALL SBR3, 1,8, 6, 16#1000, VW304

8、 /把命令內(nèi)容 VW304寫入到英威騰變頻器的1000H地址Network 7 /調(diào)用Modbus讀取,不要讀取范圍以外的內(nèi)容,不然會(huì)報(bào)錯(cuò)誤/讀取變頻器狀態(tài)3000H運(yùn)行速度3001H設(shè)定速度3002H母線電壓3003H輸出電壓3004H輸出電流 3005H運(yùn)轉(zhuǎn)速度/當(dāng)有其他重要的讀寫命令時(shí)該通訊暫停/分2次讀取英威騰變頻器 3000H3005H 3008H3013H信息,本來英威騰變頻器說明書說 可以連續(xù)讀取16條信息,不過我讀取16條信息返回?cái)?shù)據(jù)沒有 CRC校驗(yàn)內(nèi)容,不知為何,本來是試驗(yàn)程序,有時(shí)需要連續(xù)讀取多條信息,就試驗(yàn)讀取2次12條信息LDN M8.0AN M8.1 /程序沒有發(fā)送寫

9、頻率和運(yùn)行命令時(shí)才能夠讀取變頻器數(shù)據(jù)A M4.4LPS /調(diào)用查詢變頻器INCB VB270 /啟動(dòng)T37延時(shí)斷開計(jì)時(shí)器A V270.0S M8.2, 1MOVW 16#3000, VW272 / 讀取3000H開頭的連續(xù) 6條信息LRDAN V270.0S M8.3, 1MOVW 16#3008, VW272 / 讀取3008H開頭的連續(xù) 6條信息LPPCALL SBR3, 1,8, 16#03, VW272, 6END_ORGANIZATION_BLOCKSUBROUTINE_BLOCK 初始化:SBR1TITLE=通訊端口初始化子程序/該程序在PLC的第一個(gè)掃描周期運(yùn)行,主要是設(shè)置CPU

10、224自由端口的通信格式、數(shù)據(jù)接收格式及復(fù)位各寄存區(qū)(參見西門子S7-200編程手冊(cè))。/通信格式內(nèi)容包括:波特率9.6K、每字節(jié)位數(shù)8位、偶校驗(yàn)等(注意與變頻器一致)。數(shù)據(jù)接收格式完全參照 MODBUS RTU 格式設(shè)定,以不少于 3.5個(gè)字節(jié)傳輸時(shí)間的通信口空閑 間隔作為數(shù)據(jù)接收的開始及結(jié)束信號(hào)。根據(jù)協(xié)議,PLC在準(zhǔn)備接收數(shù)據(jù)前會(huì)先監(jiān)測(cè)通信口是否空閑,如連續(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é)束。(參

11、見MODBUS協(xié)議標(biāo)準(zhǔn)及CHF系列矢量變頻器通訊卡使用說明書)/對(duì)9.6K的通信波特率來說,3.5個(gè)字節(jié)傳輸時(shí)間約為 5ms左右。因該程式的每個(gè)指令只準(zhǔn)備 接收一個(gè)數(shù)據(jù)幀的回饋信息,所以接收數(shù)據(jù)前的空閑檢測(cè)時(shí)間可設(shè)為0,即PLC在發(fā)出數(shù)據(jù)后立即開始接收數(shù)據(jù),但一個(gè)數(shù)據(jù)幀的傳輸結(jié)束空閑檢測(cè)時(shí)間仍需設(shè)為5ms以上。BEGINNetwork 1LD SM0.0MOVB 16#49, SMB30 / 設(shè)置自由通信口格式MOVW +0, SMW90 / 空閑行間隔檢測(cè)時(shí)間 0msMOVW +5, SMW92 /字符問定時(shí)器超時(shí)檢測(cè)時(shí)間5msMOVB 20, SMB94 / 接收信息的最大緩沖區(qū) 20字節(jié)

12、MOVB 148, SMB87 /設(shè)置自由通信口的數(shù)據(jù)接收格式FILL +0, MW8, 1 /輸出印象寄存區(qū)復(fù)位FILL +0, MW9, 1 /標(biāo)志寄存區(qū)復(fù)位FILL +0, VW100, 5 / 發(fā)送緩沖區(qū)復(fù)位FILL +0, VW200, 5 / 接收緩沖區(qū)復(fù)位ATCH INT2, 23 /接收完成中斷ATCH INT1,9 /發(fā)送完成中斷ENI /在全局啟用中斷END_SUBROUTINE_BLOCKSUBROUTINE_BLOCK CRC校驗(yàn):SBR2TITLE= CRC校驗(yàn)子程序/英威騰CHV系列矢量變頻器內(nèi)置的 MODBUS協(xié)議采用RTU傳輸格式,該格式使用CRC校驗(yàn)方式對(duì)每次

13、發(fā)出或接收的數(shù)據(jù)幀進(jìn)行校驗(yàn)。因此,該子程序使用了多個(gè)局部變量,以方便其它 子程序調(diào)用。/在西門子STEP 7-Micro/win 編程環(huán)境下(如圖一),需要在該子程序的局部變量表中預(yù)先設(shè)定以 下局部變量:輸入型局部變量(VAR INPUT)/ ld 0 : DWORD : /待發(fā)送數(shù)據(jù)地址指針變量/ 1w 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)/ 1w 8 : WORD ;待發(fā)送數(shù)據(jù)字節(jié)個(gè)數(shù)計(jì)數(shù)變量/ 1w

14、 10 : WORD ; 待發(fā)送數(shù)據(jù)每字節(jié) 8位二進(jìn)制數(shù)計(jì)數(shù)變量VAR_INPUTLD_0:DWORD; /待發(fā)送數(shù)據(jù)地址指針變量LW_4:W0RD; / 待發(fā)送數(shù)據(jù)字節(jié)個(gè)數(shù)變量END_VARVAR_0UTPUTIB_6:BYTE; / CRC 校驗(yàn)值高位變量LB_7:BYTE; II CRC 校驗(yàn)值低位變量END_VARVARLW_8:W0RD; II 待發(fā)送數(shù)據(jù)字節(jié)個(gè)數(shù)計(jì)數(shù)變量LW_10:WORD; II待發(fā)送數(shù)據(jù)每字節(jié) 8位二進(jìn)制數(shù)計(jì)數(shù)變量END_VARBEGINNetwork 1II II將16位CRC校驗(yàn)寄存器LW6全置為1LD SM0.0MOVW 16#FFFF, LW6 II 將

15、16位CRC校驗(yàn)寄存器 LW6全置為1Network 2II II對(duì)待發(fā)送數(shù)據(jù)字節(jié)個(gè)數(shù)(Lw4)計(jì)數(shù)(Lw8)循環(huán)LD SM0.0FOR LW8, +1, LW4 II對(duì)待發(fā)送數(shù)據(jù)字節(jié)個(gè)數(shù)(Lw4)計(jì)數(shù)(Lw8)循環(huán)Network 3II II使待發(fā)送數(shù)據(jù)的第一個(gè)字節(jié) (*LDO)與CRC校驗(yàn)寄存器低位字節(jié)(LB7)進(jìn)行異或運(yùn)算LD SM0.0XORB *LD0, LB7 II使待發(fā)送數(shù)據(jù)的第一個(gè)字節(jié) (*LDO)與IICRC校驗(yàn)寄存器低位字節(jié)(LB7)進(jìn)行異或運(yùn)算Network 4II IIld 0指向待發(fā)送數(shù)據(jù)的下一個(gè)地址LD SM0.0INCD LD0 IIld 0 指向待發(fā)送數(shù)據(jù)的下一

16、個(gè)地址Network 5II II對(duì)每字節(jié)8位二進(jìn)制數(shù)計(jì)數(shù)(LW10)循環(huán)LD SM0.0FOR LW10, +1, +8 II對(duì)每字節(jié)8位二進(jìn)制數(shù)計(jì)數(shù)(LW10)循環(huán)Network 6II IICRC校驗(yàn)寄存器LW6右移一位LD SM0.0SRW LW6, 1 IICRC 校驗(yàn)寄存器 LW6右移一位Network 7II II若移位后的溢出值 SMl.1為1,則使值16#A001與LW6進(jìn)行異或運(yùn)算LD SM1.1 II若移位后的溢出值 SMl . 1為1XORW 16#A001, LW6 / 則使值16#A001與LW6進(jìn)行異或運(yùn)算Network 8/ /結(jié)束每字節(jié)8位二進(jìn)制數(shù)計(jì)數(shù)循環(huán)NE

17、XT /結(jié)束每字節(jié)8位二進(jìn)制數(shù)計(jì)數(shù)循環(huán)Network 9/ /結(jié)束每數(shù)據(jù)幀字節(jié)個(gè)數(shù)計(jì)數(shù)循環(huán)NEXT /結(jié)束每數(shù)據(jù)幀字節(jié)個(gè)數(shù)計(jì)數(shù)循環(huán)END_SUBROUTINE_BLOCKSUBROUTINE_BLOCK Modbus 讀寫:SBR3TITLE=三.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)/

18、VB102 /modbus 功能碼(06/03)/ VW103 /變頻器被寫地址/變頻器被讀起始地址/ VW105 /被寫數(shù)據(jù)/被讀數(shù)據(jù)字個(gè)數(shù)/ VB107 /被發(fā)送數(shù)據(jù)CRC低位/ VB108 /被發(fā)送數(shù)據(jù)CRC高位VAR_INPUT地址:BYTE; /變頻器地址,字節(jié)字節(jié):BYTE; /發(fā)送字節(jié)數(shù)指令:BYTE; / 讀 16#03 寫 16#06數(shù)據(jù)地址:WORD; /需要寫的變頻器參數(shù)地址數(shù)據(jù)內(nèi)容:WORD;END_VARBEGINNetwork 1LD SM0.0MOVB LB1, VB100 /XMT指令要發(fā)送的字節(jié)個(gè)數(shù)MOVB LB0, VB101 / 變頻器地址(01)MOVB

19、 LB2, VB102 /modbus寫功能碼(06)MOVW LW3, VW103 / 變頻器頻率設(shè)定值地址MOVW LW5, VW105 / 頻率設(shè)定值CALL SBR2, &VB101,6, VB108, VB107 / 調(diào)用 CRC 校驗(yàn)子程序XMT VB100, 0 /將緩沖區(qū)(VBI00VBI08)數(shù)據(jù)由0端口發(fā)送S M4.0, 1INCW VW4004END_SUBROUTINE_BLOCKINTERRUPT_BLOCK發(fā)送完成:INT1TITLE=發(fā)送完成中斷子程序BEGINNetwork 1IIII數(shù)據(jù)接收開始LD SM0.0RCV VB200, 0 II數(shù)據(jù)接收開始

20、Network 2II發(fā)送完成中斷中復(fù)位M4.0,置位M4.1監(jiān)控程序是否因發(fā)送超時(shí)還是接收超時(shí)LD SM0.0R M4.0, 1S M4.1, 1END_INTERRUPT_BLOCKINTERRUPT_BLOCK接收完成:INT2TITLE=接收完成中斷程序II利用西門子S7_200系列PLC提供的系統(tǒng)中斷事件,使發(fā)送指令XMT及接收指令RCV完成時(shí)自動(dòng)產(chǎn)生程序中斷,以便及時(shí)完成其它必要的程序操作。II這里程序只利用 VB205來反映變頻器工作狀態(tài)。II 2 .接收指令RCV緩沖區(qū)II VB200 IIrcv指令要接收的字節(jié)個(gè)數(shù)II VB201 II變頻器地址(01)II VB202 II

21、modbus 功能碼(06I03)II VW203 II變頻器被寫地址I被讀數(shù)據(jù)字節(jié)個(gè)數(shù)II VW205 II被寫數(shù)據(jù)/被讀數(shù)據(jù)II VB207 II被接收數(shù)據(jù)CRC低位II VB208 II被接收數(shù)據(jù) CRC高位II VB217 II被接收數(shù)據(jù)CRC驗(yàn)算低位II VB218 II被接收數(shù)據(jù)CRC驗(yàn)算高位BEGINNetwork 1 II 網(wǎng)絡(luò)標(biāo)題II M8.2 = 0是8位字節(jié)寫指令,返回?cái)?shù)據(jù)也是 8個(gè)字節(jié),校驗(yàn)數(shù)據(jù)有 6個(gè)字節(jié)VB201VB206 , VB257 VB258 ( VW257 )是校驗(yàn)碼。同時(shí)比較校驗(yàn)碼與實(shí)際計(jì)算校驗(yàn)碼是否正確,正確后M10.1置位1LDN M8.2 II非讀

22、取信息時(shí),因讀取信息返回?cái)?shù)據(jù)字節(jié)數(shù)因信息不一樣而不同LPS II寫信息返回字節(jié)數(shù)固定不變,均為8字節(jié)接收信息R M4.1, 1CALL SBR2, &VB201,6, VB258, VB257 II接收接收到的信息 VB201開頭連續(xù) 6個(gè)字節(jié)的 CRC值,見過保存到 VW257AW= VW257, VW207 II比較接收信息的 CRC位VW207與實(shí)際計(jì)算的 CRC是否相等,相等說明 信息正確S M10.1, 1 II信息正確,M10.1置位1LPPAW<> VW257, VW207R M10.1, 1 II信息校驗(yàn)錯(cuò)誤,M10.1 = 0Network 2II如果是讀

23、取信息命令(2次讀取均是讀取6條信息,返回信息數(shù) 17字節(jié))LD M8.2 II第一條讀取命令O M8.3 II第二條讀取命令LPSR M4.1, 1CALL SBR2, &VB201, 15, VB258, VB257 II 校驗(yàn) VB201開頭連續(xù)15字節(jié)接收信息的 CRC校驗(yàn) 值A(chǔ)W= VW216, VW257S M10.2, 1LPPAW<> VW216, VW257 II接收信息CRC校驗(yàn)位與實(shí)際接收的信息計(jì)算的CRC結(jié)果比較,如果相等說明計(jì)算信息正確R M10.2, 1Network 3II如果是第一條讀取信息,則返回信息保存到VW1000開頭的連續(xù)6字LD M

24、8.2A M10.2MOVW VW204, VW1000MOVW VW206, VW1002MOVW VW208, VW1004MOVW VW210, VW1006MOVW VW212, VW1008MOVW VW214, VW101OR M8.2, 1Network 4II如果是第二條讀取信息,則接收到的信息保存到VW1012開頭的連續(xù)6個(gè)字LD M8.3A M10.2MOVW VW204, VW1012MOVW VW206, VW1014MOVW VW208, VW1016MOVW VW210, VW1018MOVW VW212, VW1020MOVW VW214, VW1022R M8.

25、3, 1Network 5II寫英威騰變頻器 H2000數(shù)據(jù),如果返回?cái)?shù)據(jù)正確,M8.0復(fù)位0, VB310清零LD M10.1A M8.0MOVW VW205, VW300R M8.0, 1Network 6LD M10.1MOVW VW203, VW312MOVW VW205, VW302R M8.1, 1Network 7/END_INTERRUPT_BLOCK主程序梯形圖主程序,初始化#查執(zhí)各變頻器指令一*功麗介紹該程序?qū)橛⑼懾蜨F系列變頻器編寫.英閾膚匚HF丟列變頻器內(nèi)置國(guó)師標(biāo)準(zhǔn)的M0DBU5J1信也濃理序運(yùn)行時(shí) 喪頻卷作FMODBUSMA站接收來自CPU224PLC的通信指令*

26、實(shí)現(xiàn)起快 解給走、監(jiān)控等功能.CHF列矢量變頻鵲在與CPU2羽通信前頂做好以下堆備工作:1 確認(rèn)己安裝好OHF系列費(fèi)頻器的邇訊卡,并將卡上的端口跳線置于RS48SS;2 用根帶梅匕陽性插頭的串口通信電纜連接在CPU224PL助自由通信口端,電就另-端的第名3.戦分別接 在匚打陵頻器RE輛霾詛卡的GND、485*,1端子上,鬼余線屏蔽不用;3預(yù)先設(shè)直吏頻耕以下卷數(shù);PC.O0= 1丿便頻器邇訊也址尙1PC.01=3丿陋訊波特率9,駅PC 02= 1 貝訊數(shù)據(jù)偶校驗(yàn)醯變據(jù)位1位停止位P0.03= 2丿廢頻器的運(yùn)行指令采用通訊方式P3B二7丿役頻器的碩率設(shè)宦采用通訊方式t注意P3.04/P3.0P3

27、.01通訊頻準(zhǔn)的影響)二.程式結(jié)構(gòu)說明該程序由1個(gè)主程序卅子程序及斤中斷程序爼成,子程序里赳含了變頻器的起停、MS.査詢功能指令由主程 序調(diào)用.中斷程序肖發(fā)送艮擡收指零標(biāo)供中斷支持.耐in /哇逞式I初始化井查執(zhí)各變頻黯捋令sbrO ATFI0K驗(yàn)子程序sbfl Ml訊端口初始化子程序站2 /股送變頻器寫入0640-.共師宇節(jié)into /權(quán)收芫成中斷程序麗/後送完成中斷程序SMOJ初 t&化IEN符號(hào)地址itS幵杭初始化SMO9丄由0匸1=轉(zhuǎn)口忖陽辱邁i個(gè)掃描周期網(wǎng)絡(luò)23M4.0M41接收完成后延時(shí)1帥£胡4,儀通,運(yùn)行下一次笈送數(shù)據(jù)INTONPT10T351hT35發(fā)送中接

28、收中M4.0M4.1注釋通迅卷成后延時(shí)10-niS接通茹迭救據(jù)時(shí)該垃=1按迭主畢瓶行接收中鞠時(shí)雹丁蛍進(jìn)完畢后扭U接收程序.該位直位1,接收完成或者超時(shí)境位兩路24符號(hào)I地址注釋發(fā)送中M4.0企送歎據(jù)時(shí)該忙W援匡芫畢執(zhí)行接破審斷時(shí)置0捲收中tM4.1麥透完畢待軌和接收程庫(kù)協(xié)檢置弦1搏收完或或音幅時(shí)舄夜當(dāng)W11 UxW30GQtW/11器WIILq® C +100001UOOO) -1 GOOOxSOHz地址為變頻器地址;字節(jié)為發(fā)送的字書數(shù)星二貳孚節(jié);指令蘭舊為讀取指令I(lǐng)圧為寫入指令:數(shù)據(jù)地址=20匍H為 英威騰鑾顓黠設(shè)置頻率的地址;數(shù)據(jù)內(nèi)容為寫A2000H的內(nèi)容,范g+lOCDQ-G-

29、10CiOOVW300b>4VW11011K s)1Modbu 寫EN1 地址e-芋節(jié)E指令1&tt2D00-數(shù)據(jù)地“WHO-數(shù)據(jù)內(nèi)“M4.41430符號(hào)地址注釋薙允許M4.4b觀僥成后延時(shí)伽錯(cuò)通發(fā)運(yùn)行M9.1疫送繇紐置怪頻率逋rVW30(J抵送設(shè)置孵指會(huì)的遞回值設(shè)置頻率VW110Miiiwooo.對(duì)應(yīng)士幣加 撮丈工作頻率,超復(fù)位岀錯(cuò)I寫頻率MB.0PU遷議楨他KH F蠶爾曙牧馨EH時(shí)復(fù)位1網(wǎng)絡(luò)26存號(hào)i地址瞬I良轉(zhuǎn)15.3變頻器度轉(zhuǎn)指令敵障復(fù)位f5 4頁(yè)頻器故陲壹位指令開機(jī)初始化SM0.1由FFON. 5 M2導(dǎo)通仟掃描周期停機(jī)慮2變頻器停機(jī)摺令適仃衣VW304運(yùn)行爺令發(fā)蓬敎據(jù)

30、1ER15.1吏頻器正轉(zhuǎn)指令網(wǎng)絡(luò)27 設(shè)定英威膳變頻1000H通信控制命令來控制吏頻器正負(fù)轉(zhuǎn)和停止等操佗命令控變煩蠱運(yùn)轉(zhuǎn)英威膳變頻器地ttlOOOH E正轉(zhuǎn)運(yùn)行D皈轉(zhuǎn)運(yùn)行D匹轉(zhuǎn)點(diǎn)動(dòng)04反轉(zhuǎn)點(diǎn)動(dòng)05停車B詛由停車G7故轡 復(fù)位03點(diǎn)動(dòng)停車W3045W3Q2I|-< £ )1Modbusi# 寫ENb地址8-字節(jié)臘令1£tt1 COE數(shù)據(jù)地“VW304-數(shù)據(jù)內(nèi)M4.4M3.1符號(hào)地址注釋發(fā)送允許M4 4'適詡兗戒恬証時(shí)仙就匾發(fā)運(yùn)行M8.1發(fā)送運(yùn)行命令置位運(yùn)行發(fā)W304運(yùn)行命令邊送槪據(jù)運(yùn)行返W302圭制運(yùn)行命令返.回?cái)?shù)拇也址IitmMR2M聲iiim帥伽漑癥i亍MR

31、1發(fā)趣笳令戢-M&Ofl譜鱷橢iih堪魄黙粧蒯韓M0VWENENOINOUT16008-MW2?2-初始化子程序,把通訊口o設(shè)置自由口模式通訊端口初始化子程序該程序在PL謝第一個(gè)掃描周期運(yùn)行,主要是設(shè)置匚PU224自由端口的通信格式、數(shù)據(jù)接收將式及復(fù)位備寄存區(qū)勝 見西門子$廣如腐程手冊(cè)b通信稻式內(nèi)容包括:波特?9 &K.每字節(jié)位數(shù)驗(yàn)、偶役驗(yàn)等&主意與變頻盟一致L數(shù)據(jù)接收格式完KMODBUS FHim式設(shè)定,耳不少于工介字節(jié)傳輸時(shí)間的畫f 口空閑間隔恭為數(shù)據(jù)接收的開iww-BanuHQ.C1D1貽層錯(cuò)束信號(hào)°根據(jù)協(xié)諛,PL莖誰備接咬數(shù)據(jù)前會(huì)齊監(jiān)測(cè)通信口星否空閑如

32、連續(xù)空閑時(shí)間超過了 3.瑜字節(jié)的傳 輸時(shí)間 > 則PLC默認(rèn)數(shù)據(jù)接收開賭,社后通訊口上出現(xiàn)的信息即被認(rèn)対是一亍數(shù)據(jù)幀的內(nèi)容"同理j隨著一個(gè)數(shù)據(jù)幀 的最后一亍字節(jié)傳輸完成,又會(huì)出現(xiàn)一個(gè)35?節(jié)傳輸時(shí)間的空閑間隔,來表示個(gè)數(shù)據(jù)幀傳輸?shù)慕Y(jié)束.(參見M ODPUS 標(biāo)準(zhǔn)曲CH鄧系列去雖芟頻器通訊卡使用說明書時(shí)9$逋信波特率來說» 3一泠字節(jié)傳輸時(shí)間約為5m進(jìn)右因該程式的毎乎指令只誰備接收一個(gè)數(shù)據(jù)幀的回饋信 底 > 所以接收數(shù)據(jù)前的空閔檢測(cè)時(shí)間可設(shè)為山即PL氓發(fā)岀數(shù)據(jù)怎立即開賭接收數(shù)據(jù),但一亍數(shù)據(jù)楨的謹(jǐn)輸柱束空 閑檢冏時(shí)間仍需設(shè)為以上口one. com符號(hào)地址注釋&quo

33、t;皿I發(fā)毘完成1NT1發(fā)送完成中霸子程序接收芫成INT2接收完成中斷程序引用|回復(fù)張智勇CRC校驗(yàn)子程符號(hào)翅類型|數(shù)賦型|注釋ENINBOOLLDOLW4LD_OINDWORD待攬送數(shù)據(jù)地址指針變量L&4WORD轉(zhuǎn)發(fā)送數(shù)強(qiáng)字節(jié)個(gè)數(shù)變量恫IN_OUTLB6IB_SOUTBYTE胡歳驗(yàn)值詭通1B7LB_?刎BYTE胡改艷值低唇量OUTLW8LW10LW_8TEMPWORD待發(fā)送數(shù)據(jù)字節(jié)個(gè)數(shù)計(jì)數(shù)孌量LWJOTEMPWORD待叢送數(shù)據(jù)毎字節(jié)耶立二進(jìn)樹數(shù)訃數(shù)變毒CR匚校臉子程序英矢量變頻黠內(nèi)置的MODBUS08釆用BTU樓輸格式該格式便用CRCK®方式対垣次發(fā)岀或捋枝 的齡幀進(jìn)疔校懸

34、因此,該子程序使用了斜局制變量,以方便茸它子程序調(diào)乩在西門子麻EFAMic伽噸程環(huán)境下閃需要在該子程序的局謹(jǐn)量表中預(yù)先設(shè)定以下歸喪量: (慚入型局制變量W INPUTU0:MRD:臉發(fā)送數(shù)馳址扌謝喪量14: WORD; /墻發(fā)送數(shù)據(jù)序節(jié)午數(shù)變量(2 輛岀型局 a$S(VARUTPUT|tb£: BYTE; "CRC校臉值髙位吏量 lb7:GYTE;/CB®fe®£&5 量 卩脳時(shí)局都喪量(VAR)13: WORD; /帶境送數(shù)據(jù)宇節(jié)個(gè)數(shù)計(jì)墩變量祜TO: WORD; 侮送數(shù)據(jù)毎手¥8E二迸制數(shù)計(jì)數(shù)孌量SM0.0SM0.0WFFF

35、-| /嵋iteZCR誨驗(yàn)寄存鮒醴置為1T igKongxomLW&荀網(wǎng)路5/廂每字節(jié)地二進(jìn)制數(shù)計(jì)gfLWWffl環(huán)SMQ.0FOR11EMENOLW®IKDX+1 :tNtT+.gjFIMAL網(wǎng)絡(luò)6"西承驗(yàn)奇存器山儲(chǔ)隊(duì)一伍SM0.01 1SHR_WENENOmOUTNT4W6" 1LW6-1 *RS 7丿喏移位后的則便道怡SA001與LW適行異或運(yùn)算SM1.1J IWX0R_W¥CM匚kinLliLI1UAimoi-OUTLW6LW6-IN2引用|回復(fù)| 2009-03-02 11:30:265 樓張智勇發(fā)送子程序符號(hào)變墾類型|數(shù)據(jù)類型|ENB

36、OOLLBO地址BYTELB1宇節(jié)BYTELB2扌拎嗣brTELW3數(shù)據(jù)地址INWORDLW5數(shù)據(jù)內(nèi)容WORD變頻器地址,字節(jié)發(fā)送宇節(jié)數(shù)讀疋麗蔔闕-需要弐的孌頻器參數(shù)地址三、PLMJ存使用說明西門子畀200累列吼廊自由通訊端口編程必定會(huì)用到兩個(gè)捋令I(lǐng)即XMTGfe送脂令和 Rcvgm.編寫程序時(shí)需要為這兩個(gè)指令捋定數(shù)據(jù)緩沖區(qū)一最氐雖低位數(shù)為啲地 址作為數(shù)據(jù)緩沖區(qū)的超始地址*VB101 /殘頻器通訊地址蝕莎儀衛(wèi)丿険瀕器祓寫也址嗖頻器被讀起始地址IVBW7 /啟發(fā)送數(shù)據(jù)CRC低位K發(fā)送指令剛T緩沖區(qū)f寫/1棗)VB100要發(fā)送的字節(jié)個(gè)數(shù)VB1D2 /modbusRg碼®即羽WW5 /滋寫

37、數(shù)據(jù),皺讀數(shù)據(jù)字個(gè)數(shù)SM0.0臨曲 號(hào)發(fā)送數(shù)據(jù)CPCB位MOV.BEWENOLB1-OUT-VB10QHOVBENENOOUTLBO-MOV_BENENOvmv.gcINOUTLB2-VB102igxo引用|回復(fù)| 2009-03-02 11:31:476 樓張智勇發(fā)送完成中斷子程序,發(fā)送完成執(zhí)行接收發(fā)送穿成中斷子程序m 1SM00RCVENENOVB200-O'TBLPORT兩貉2發(fā)送完成中阿豐位"46置位恫4,1監(jiān)刪序是晉因發(fā)送超時(shí)還是題輛SMOO1M40R1M4.1i符號(hào)地苴唯釋'發(fā)送中M4H菠送數(shù)據(jù)時(shí)該位日伐:送狂畢執(zhí)行按收中斷阿置0-M4.1i按謎完畢肓執(zhí)行接取程庫(kù)£鑒隹豈隹1撫收完成或薯盈吋壹盤引用I回復(fù)| 2009-03-02 11:36:4

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論