學(xué)西門(mén)子S7300 PLC3_第1頁(yè)
學(xué)西門(mén)子S7300 PLC3_第2頁(yè)
學(xué)西門(mén)子S7300 PLC3_第3頁(yè)
學(xué)西門(mén)子S7300 PLC3_第4頁(yè)
學(xué)西門(mén)子S7300 PLC3_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、例二 時(shí)鐘脈沖發(fā)生器使用定時(shí)器實(shí)現(xiàn)自由設(shè)定時(shí)鐘脈沖發(fā)生器功能(脈沖占空系數(shù)1:1)。存儲(chǔ)字節(jié)MB101和MB100的單個(gè)位獲得的頻率:MB101/MB100頻率(Hz)持續(xù)時(shí)間(S)M101.02.00.5M101.11.01M101.20.52M101.30.254M101.40.1258M101.50.062516M101.60.0312532M101.70.01562564M100.00.0078125128M100.10.0039062256M100.20.0019531512M100.30.00097651024M100.40.00048822048M100.50.000244140

2、96M100.60.0001228192M100.70.00006116384存儲(chǔ)字節(jié)MB101各位的信號(hào)狀態(tài):掃描周期存儲(chǔ)字節(jié)MB101各位的信號(hào)狀態(tài)7 6 5 4 3 2 1 0時(shí)間值(MS)000000000250100000001250200000010250300000011250400000100250500000101250600000110250700000111250800001000250900001001250100000101025011000010112501200001100250M101.1的信號(hào)狀態(tài):練習(xí):當(dāng)按啟動(dòng)按鈕時(shí),L1燈以0.5s的周期閃爍,L2燈以1s

3、的周期閃爍,L3燈以2s的周期閃爍,L4燈以4s的周期閃爍,按下停止按鈕,所有燈熄滅。參考答案: 字邏輯運(yùn)算指令 字邏輯指令將兩個(gè)字(16位)或雙字(32位)逐位進(jìn)行邏輯運(yùn)算.每個(gè)字或雙字都必須分別存放在2個(gè)累加器中.操作的結(jié)果被存放在累加器1中,原有的內(nèi)容被覆蓋.1. 字邏輯語(yǔ)句表指令指令說(shuō)明AW兩個(gè)字逐位進(jìn)行與邏輯運(yùn)算OW兩個(gè)字逐位進(jìn)行或邏輯運(yùn)算XOW兩個(gè)字逐位進(jìn)行異或邏輯運(yùn)算AD兩個(gè)雙字逐位進(jìn)行與邏輯運(yùn)算OD兩個(gè)雙字逐位進(jìn)行或邏輯運(yùn)算XOD兩個(gè)雙字逐位進(jìn)行異或邏輯運(yùn)算2. 字邏輯方塊指令例一 加熱爐操作員按啟動(dòng)按鈕開(kāi)始加熱如下所示的加熱爐.操作員能夠使用如圖所示的撥碼開(kāi)關(guān)設(shè)定加熱時(shí)間.操

4、作員設(shè)定的值以BCD格式用秒單位顯示.加熱系統(tǒng)的元件和相應(yīng)的絕對(duì)地址系統(tǒng)元件絕對(duì)地址啟動(dòng)按鈕I0.7個(gè)位數(shù)撥碼開(kāi)關(guān)I1.0I1.3十位數(shù)撥碼開(kāi)關(guān)I1.4I1.7百位數(shù)撥碼開(kāi)關(guān)I0.0I0.3開(kāi)始加熱Q4.0梯形圖程序: 移位和循環(huán)移位指令移位指令將累加器1低字中或整個(gè)累加器1的內(nèi)容左移或右移.移動(dòng)的次數(shù)在累加器2中或直接在指令中以常數(shù)給出.累加器1移位后空出的位,填以0或符號(hào)位(0代表正,1代表負(fù)),被移動(dòng)的最后一位保存在狀態(tài)字中的CC1里,CC0和OV被復(fù)位為0.循環(huán)移位指令與一般移位指令的差別:循環(huán)移位指令的空位填以從累加器中移出的位.1. 無(wú)符號(hào)數(shù)移位指令指令說(shuō)明SLW將累加器1低字中的

5、內(nèi)容逐位左移,空出位填以0SRW將累加器1低字中的內(nèi)容逐位右移,空出位填以0SLD將累加器1整個(gè)內(nèi)容逐位左移,空出位填以0SRD將累加器1整個(gè)內(nèi)容逐位右移,空出位填以02. 有符號(hào)數(shù)移位指令指令說(shuō)明SSI將累加器1低字中的內(nèi)容逐位右移,空出位填以符號(hào)位(正填0,負(fù)填1)SSD將累加器1整個(gè)內(nèi)容逐位右移,空出位填以符號(hào)位(正填0,負(fù)填1)3. 循環(huán)移位指令指令說(shuō)明RLD將累加器1整個(gè)內(nèi)容逐位左移,空出位填以從累加器1移出的位RRD將累加器1整個(gè)內(nèi)容逐位右移,空出位填以從累加器1移出的位RLDA將累加器1整個(gè)內(nèi)容帶CC1位逐位左移一位,空出位填以從CC1移出的位RRDA將累加器1整個(gè)內(nèi)容帶CC1位

6、逐位右移一位,空出位填以從CC1移出的位4. 移位和循環(huán)方塊指令使用移位指令將輸入IN中的數(shù)向左或右逐位移動(dòng),將輸入IN中的內(nèi)容左移相當(dāng)于完成乘2加權(quán),將輸入IN中的內(nèi)容右移相當(dāng)于完成除以2加權(quán)的運(yùn)算.例一 彩燈控制當(dāng)按下啟動(dòng)按鈕時(shí),彩燈L1、L2同時(shí)亮;過(guò)1s后,L1熄滅,L2保持亮;過(guò)1s后,L1、L2同時(shí)滅;過(guò)1s后,L1亮,L2保持滅;再過(guò)1s后,L1、L2又同時(shí)亮,如此循環(huán)閃爍,直到按下停止按鈕,彩燈工作終止。例二 雙缸順序動(dòng)作回路A1B1B0A0練習(xí)一:霓虹燈廣告屏控制器的設(shè)計(jì) 用PLC對(duì)霓虹燈廣告屏實(shí)現(xiàn)控制,其具體要求如下: 該廣告屏中間8個(gè)燈管亮滅的時(shí)序?yàn)榈?根亮第2根亮第3根

7、亮第8根亮,時(shí)間間隔為1s,全亮后,顯示10s,再反過(guò)來(lái)從871順序熄滅。全滅后,停亮2s,再?gòu)牡?根燈管開(kāi)始亮起,順序點(diǎn)亮761,時(shí)間間隔為1s,顯示20s,再?gòu)?8順序熄滅。全熄滅后,停亮2s,再?gòu)念^開(kāi)始運(yùn)行,周而復(fù)始。參巧梯形圖程序: 練習(xí)二:十字路口的交通指揮信號(hào)燈布置如下圖:一、控制要求(1)信號(hào)燈系統(tǒng)由一個(gè)啟動(dòng)開(kāi)關(guān)控制,當(dāng)啟動(dòng)開(kāi)關(guān)接通時(shí),該信號(hào)燈系統(tǒng)開(kāi)始工作,當(dāng)啟動(dòng)開(kāi)關(guān)關(guān)斷時(shí),所有信號(hào)燈都熄滅。(2)南北綠燈和東西綠燈不能同時(shí)亮。如果同時(shí)亮應(yīng)關(guān)閉信號(hào)燈系統(tǒng),并立刻報(bào)警。(3)南北紅燈亮維持25s。在南北紅燈亮的同時(shí)東西綠燈也亮,并維持20s。到20s時(shí),東西綠燈閃亮,閃亮3s后熄滅

8、,此時(shí),東西黃燈亮,并維持2s。到2s時(shí),東西黃燈熄滅,東西紅燈亮。同時(shí),南北紅燈熄滅,南北綠燈亮。(4)東西紅燈亮維持30s。南北綠燈亮維持25s,然后閃亮3s后熄滅。同時(shí)南北黃燈亮,維持2s后熄滅,這時(shí)南北紅燈亮,東西綠燈亮。(5)以上南北、東西信號(hào)燈周而復(fù)始地交替工作狀態(tài),指揮著十字路口的交通,其時(shí)序如下所示。二、PLC接線三、梯形圖程序 練習(xí)(1):編制智力競(jìng)賽搶答器控制程序K0為開(kāi)始/復(fù)位控制開(kāi)關(guān)(斷開(kāi)為復(fù)位,閉合為開(kāi)始),L0為搶答開(kāi)始指示,K1,K2,K3,K4,K5,K6為六組搶答按鈕,L1,L2,L3,L4,L5,L6為六組搶答指示。K7,K8,K9分別為時(shí)間控制開(kāi)關(guān)。KA為

9、手控時(shí)間到按鈕。L7為搶答時(shí)間到指示。當(dāng)K7,K8,K9全為斷開(kāi)時(shí)為手控時(shí)間控制(此時(shí)由人工記時(shí)間到時(shí)按下KA),當(dāng)開(kāi)關(guān)K7,K8,K9處于其它不同狀態(tài)時(shí),對(duì)應(yīng)于搶答設(shè)定時(shí)間分別為5S,10S,15S,20S,25S,30S,35S。當(dāng)K0處于復(fù)位狀態(tài)時(shí),如有某個(gè)按鈕最先按下,該組的指示燈就“閃亮”,表示該組違例(其他組被鎖定)。當(dāng)K0處于開(kāi)始狀態(tài)時(shí),如有某個(gè)按鈕最先按下,該組的指示燈就“常亮”,表示該組搶答有效(其他組被鎖定)。如在設(shè)定時(shí)間到未有人搶答,則L7燈亮,各組搶答按鈕被鎖定,直到開(kāi)關(guān)K0復(fù)位。練習(xí)(2):依次按8次按鈕I 0.1時(shí),8盞指示燈依次亮,再依次按8次按鈕I 0.1時(shí),8

10、盞指示燈依次滅,按I 0.0開(kāi)始新的循環(huán)操作,任何時(shí)候按I 0.2時(shí)所有的燈滅。練習(xí)(3):按下開(kāi)關(guān)I0.0,L1、L2、L3、L4依次亮滅,周而復(fù)始,時(shí)間間隔為1S(即L1亮1S后滅,接著L2亮,如此循環(huán))。練習(xí)(4):試編寫(xiě)用PLC控制三個(gè)霓虹燈閃爍的程序。工作要求如下:(1) 首先A燈亮;(2) 1S后A燈滅,B燈亮;(3) 再過(guò)1S后B燈滅,C燈亮;(4) 再過(guò)1S后C燈滅;(5) 再過(guò)1S后,A、B、C三燈全亮;(6) 再過(guò)1S后,A、B、C三燈全滅;(7) 再過(guò)1S后,A、B、C三燈全亮;(8) 再過(guò)1S后,A、B、C三燈全滅。然后(1)(8)步重復(fù)循環(huán)。要求用一個(gè)開(kāi)關(guān)控制,當(dāng)它閉

11、合接通時(shí)霓虹燈工作,斷開(kāi)時(shí)停止工作。 打開(kāi)數(shù)據(jù)塊指令 例如:4.4 控制指令 邏輯控制指令 邏輯控訴指令是指邏輯塊內(nèi)的跳轉(zhuǎn)和循環(huán)指令,這些指令中止程序原有的線性邏輯流,跳到另一處執(zhí)行程序。跳轉(zhuǎn)或循環(huán)指令的操作數(shù)是地址標(biāo)號(hào),該地址標(biāo)號(hào)指出程序要跳往何處,標(biāo)號(hào)最多為4個(gè)字符,第一個(gè)字符必須是字母,其余字符可為字母或數(shù)字。與它相同的標(biāo)號(hào)還必須寫(xiě)在程序跳轉(zhuǎn)的目的地前,稱為目標(biāo)地址標(biāo)號(hào)。在一個(gè)邏輯塊內(nèi),目標(biāo)地址標(biāo)號(hào)不能重名。在語(yǔ)句表中,目標(biāo)標(biāo)號(hào)與目標(biāo)指令用冒號(hào)分隔。在梯形圖中目標(biāo)標(biāo)號(hào)必須在一個(gè)網(wǎng)絡(luò)的開(kāi)始。由于STEP7的跳轉(zhuǎn)指令只能在邏輯塊內(nèi)跳轉(zhuǎn),所以,在不同邏輯塊中的目標(biāo)標(biāo)號(hào)可以重名。1. 無(wú)條件跳轉(zhuǎn)

12、指令指令說(shuō)明JU無(wú)條件跳轉(zhuǎn)JL跳轉(zhuǎn)表格無(wú)條件跳轉(zhuǎn)指令(JU)無(wú)條件中斷正常的程序邏輯流,使程序跳轉(zhuǎn)到目標(biāo)處繼續(xù)執(zhí)行。跳轉(zhuǎn)表格指令(JL)實(shí)質(zhì)上是多路分支跳轉(zhuǎn)語(yǔ)句,它必須與無(wú)條件跳轉(zhuǎn)指令一起使用。多路分支的路徑參數(shù)存放于累加器1中。例:累加器中的值為2,則程序執(zhí)行時(shí)跳到sub2,這時(shí)Q0.2燈亮。2. 條件跳轉(zhuǎn)指令指令說(shuō)明JC當(dāng)RLO1時(shí)跳轉(zhuǎn)JCN當(dāng)RLO0時(shí)跳轉(zhuǎn)JCB當(dāng)RLO1且BR1時(shí)跳轉(zhuǎn),指令執(zhí)行時(shí)將RLO保存在BR中JNB當(dāng)RLO0且BR0時(shí)跳轉(zhuǎn),指令執(zhí)行時(shí)將RLO保存在BR中JBI當(dāng)BR1時(shí)跳轉(zhuǎn),指令執(zhí)行時(shí),OR、FC清0,STA置1JNBI當(dāng)BR0時(shí)跳轉(zhuǎn),指令執(zhí)行時(shí),OR、FC清0,

13、STA置1JO當(dāng)OV1時(shí)跳轉(zhuǎn)JOS當(dāng)OS1時(shí)跳轉(zhuǎn),指令執(zhí)行時(shí),OS清0JZ累加器1中的計(jì)算結(jié)果為0跳轉(zhuǎn)JN累加器1中的計(jì)算結(jié)果為非0跳轉(zhuǎn)JP累加器1中的計(jì)算結(jié)果為正跳轉(zhuǎn)JM累加器1中的計(jì)算結(jié)果為負(fù)跳轉(zhuǎn)JMZ累加器1中的計(jì)算結(jié)果小于等于0跳轉(zhuǎn)JPZ累加器1中的計(jì)算結(jié)果大于等于0跳轉(zhuǎn)JUO實(shí)數(shù)溢出跳轉(zhuǎn)3. 循環(huán)指令使用循環(huán)指令(LOOP)可以多次重復(fù)執(zhí)行特定的程序段,重復(fù)執(zhí)行的次數(shù)存在累加器1中,即以累加器1為循環(huán)計(jì)數(shù)器。LOOP指令執(zhí)行時(shí),將累加器1低字中的值減1,如果不為0,則回到循環(huán)體開(kāi)始處繼續(xù)循環(huán)過(guò)程,否則執(zhí)行LOOP指令后面的指令。循環(huán)體是指循環(huán)標(biāo)號(hào)和LOOP指令間的程序段。由于循環(huán)次數(shù)

14、不能是負(fù)數(shù),所以程序應(yīng)保證循環(huán)計(jì)數(shù)器中的數(shù)為正整數(shù)(數(shù)值范圍:032767)或字型數(shù)據(jù)(數(shù)值范圍:W160000W16FFFF)4. 梯形圖邏輯控制指令指令說(shuō)明<地址>(JMP)用于無(wú)條件跳轉(zhuǎn)或以RLO=1為跳轉(zhuǎn)條件。無(wú)條件跳轉(zhuǎn)時(shí)不影響狀態(tài)字,條件跳轉(zhuǎn)時(shí),清OR、FC;置位STA,RLO<地址>(JMPN)當(dāng)RLO0時(shí)跳轉(zhuǎn),清OR、FC;置位STA、RLO在S7中,沒(méi)有根據(jù)算術(shù)運(yùn)算結(jié)果直接轉(zhuǎn)移的梯形邏輯指令。但通過(guò)使用反映字各位狀態(tài)的常開(kāi)常閉觸點(diǎn),并使用前面兩條跳轉(zhuǎn)指令,即可實(shí)現(xiàn)根據(jù)運(yùn)算結(jié)果的跳轉(zhuǎn)功能。狀態(tài)位常開(kāi)常閉觸點(diǎn):例: 程序控制指令 程序控制指令是指功能塊(FB

15、、FC、SFB、SFC)調(diào)用指令和邏輯塊(OB、FB、FC)結(jié)束指令。調(diào)用塊或結(jié)束塊可以是有條件的或無(wú)條件的。STEP 7中的功能塊實(shí)質(zhì)上就是子程序。 1. STL程序控制指令指令說(shuō)明CALL該指令在程序中無(wú)條件執(zhí)行,調(diào)用FB,F(xiàn)C,SFB,SFCUC該指令在程序中無(wú)條件調(diào)用功能塊(一般是FC或SFC),但不能傳遞參數(shù)CCRLO1,調(diào)用功能塊(一般是FC),但不能傳遞參數(shù)BEU該指令無(wú)條件結(jié)束當(dāng)前塊的掃描,將控制返還給調(diào)用塊BECRLO1,結(jié)束當(dāng)前塊的掃描,將控制返還給調(diào)用塊,若RLO0,則將RLO置1,程序繼續(xù)在當(dāng)前塊內(nèi)掃描CALL指令可以調(diào)用用戶編寫(xiě)的功能塊或操作系統(tǒng)提供的功能塊,CALL

16、指令的操作數(shù)是功能塊類型及其編號(hào),當(dāng)調(diào)用的功能塊是FB塊時(shí)還要提供相應(yīng)的背景數(shù)據(jù)塊DB,使用CALL指令可以為被調(diào)用功能塊中的形參賦以實(shí)際參數(shù),調(diào)用時(shí)應(yīng)保證實(shí)參與形參的數(shù)據(jù)類型一致。例如:CALL FB 40,DB 41 /調(diào)用FB40,并指明背景數(shù)據(jù)塊為DB41IN1: = I 1.0 /將實(shí)參I1.0分配給形參IN1IN2: = MW 2/將實(shí)參MW 2分配給形參IN2OUT1: = MD 20/給形參OUT1分配給實(shí)參MD20L MD 20/調(diào)用結(jié)束后,F(xiàn)B40的運(yùn)行結(jié)果在MD20中. UC和CC指令用于不需傳遞參數(shù)的場(chǎng)合,如:CC FC 12 /當(dāng)RLO=1時(shí)調(diào)用FC 12UC FC

17、12 /不管RLO結(jié)果,調(diào)用FC 122. 梯形圖程序控制指令 梯形圖調(diào)用塊有兩種方式:一是用線圈驅(qū)動(dòng)指令調(diào)用功能塊,這種方式相當(dāng)于STL指令UC和CC,不能實(shí)現(xiàn)參數(shù)傳遞;二是用方塊指令調(diào)用功能塊,相當(dāng)于STL指令CALL,可以傳遞參數(shù)。 主控繼電器指令 主控繼電器是一種美國(guó)梯形圖邏輯主控開(kāi)關(guān),用來(lái)控制信號(hào)流(電流路徑)的通斷。 在STEP 7中與主控繼電器相關(guān)的指令: STL指令LAD指令說(shuō)明MCRA(MCRA)激活MCR區(qū),該指令表明一個(gè)按MCR方式操作區(qū)域的開(kāi)始MCRD(MCRD)激活MCR區(qū)(應(yīng)與MCRA成對(duì)使用),該指令表明一個(gè)按MCR方式操作區(qū)域的結(jié)束MCR(MCR<)主控繼

18、電器,該指令將RLO保存于MCR堆棧中,產(chǎn)生一條子母線,其后的指令與子母線相連)MCR(MCR>)恢復(fù)RLO,結(jié)束子母線,返回主母線 注意:在MCRA和MCRD指令之間的指令將根據(jù)MCR位的信號(hào)狀態(tài)進(jìn)行操作;在MCRA和MCRD之外的指令串中,即使有MCR位也不按其操作,而是視主控觸點(diǎn)為閉合進(jìn)行操作.若在MCRA和MCRD之間有BEU指令,則CPU執(zhí)行到BEU指令時(shí)也結(jié)束MCR區(qū)域.若在激活的MCR區(qū)域中有塊調(diào)用指令,則激活狀態(tài)不能繼承到被調(diào)用塊中,必須在被調(diào)用塊中重新激活MCR區(qū),才能使指令根據(jù)MCR位操作.MCR(指令和)MCR指令要成對(duì)使用,以表示受控子母線的形成與終止.MCR指令

19、可以嵌套使用,最大的嵌套深度是8層.在STEP 7中主控繼電器動(dòng)作與否,影響與子母線相連的控制邏輯的操作結(jié)果.MCR信號(hào)狀態(tài)=(輸出線圈或中間輸出)S或R(置位或復(fù)位)T(傳送或賦值)0寫(xiě)入0模仿掉電時(shí)繼電器的靜止?fàn)顟B(tài)不寫(xiě)入模仿掉電時(shí)的自鎖繼電器,使其保持當(dāng)前的狀態(tài)寫(xiě)入0模仿一個(gè)元件,在掉電時(shí)產(chǎn)生0值1正常執(zhí)行正常執(zhí)行正常執(zhí)行監(jiān)控變量和強(qiáng)制變量創(chuàng)建一個(gè)的變量表給變量表命名打開(kāi)變量表,輸入監(jiān)控變量建立CPU連接啟動(dòng)監(jiān)視監(jiān)視情況顯示強(qiáng)制變量表設(shè)置強(qiáng)制值啟動(dòng)強(qiáng)制停止強(qiáng)制PLCSIM的使用:進(jìn)入SIMATIC管理器,點(diǎn)擊“仿真”圖標(biāo)打開(kāi)要仿真的項(xiàng)目(如“WWW”)下載組織塊OB1插入輸入值、輸出值表,

20、并設(shè)定相應(yīng)的輸入值點(diǎn)擊CPU模式表,將CPU工作在“RUN”或“RUNP”模式打開(kāi)程序,監(jiān)控程序的運(yùn)行第五章 程序結(jié)構(gòu)三種編程方法:(一)線性編程 線性編程將整個(gè)用戶程序?qū)懺谝粋€(gè)指令連續(xù)的塊中,處理器線性地或順序地掃描程序的每條指令。(二)分部編程 分部式編程將用戶程序分成相對(duì)獨(dú)立的指令塊、每個(gè)塊包含給定的部件組或作業(yè)組的控制邏輯。(三)結(jié)構(gòu)化編程 結(jié)構(gòu)化編程要求用戶程序提供一些通用的指令塊,以便控制一類相似或相同的部件,給通用指令提供的參數(shù)進(jìn)一步說(shuō)明各部件的控制差異。 為了支持結(jié)構(gòu)化程序設(shè)計(jì),STEP 7將用戶程序分類歸并為不同的塊,根據(jù)程序要求,可選用組織塊(OB)、功能塊(FB)、或功能

21、(FC)三種類型的邏輯塊,而數(shù)據(jù)塊(DB)或(DI)則用來(lái)存儲(chǔ)執(zhí)行用戶程序時(shí)所需的數(shù)據(jù)。5.1 數(shù)據(jù)塊及其數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)塊用戶程序運(yùn)行所需的大量數(shù)據(jù)或變量存儲(chǔ)在數(shù)據(jù)塊中,數(shù)據(jù)塊也是實(shí)現(xiàn)各邏輯塊之間交換、傳遞和共享數(shù)據(jù)的重要途徑。對(duì)于CPU 314,用作數(shù)據(jù)塊的存儲(chǔ)器最多8KB,用戶定義的數(shù)據(jù)總量不能超過(guò)這個(gè)限制。對(duì)于數(shù)據(jù)塊必須遵循先定義后使用的原則。1. 定義數(shù)據(jù)塊定義內(nèi)容包括數(shù)據(jù)塊號(hào)及塊中的變量(包括:變量符號(hào)名,數(shù)據(jù)類型以及初始值等)。數(shù)據(jù)塊在使用前,必須作為用戶程序的一部分下載到CPU中。2. 訪問(wèn)數(shù)據(jù)塊訪問(wèn)時(shí)需要明確數(shù)據(jù)塊號(hào)和數(shù)據(jù)塊中的數(shù)據(jù)類型與位置。根據(jù)明確數(shù)據(jù)塊號(hào)的不同方法,可以用以

22、多種方法訪問(wèn)數(shù)據(jù)塊中的數(shù)據(jù)。(一)直接在訪問(wèn)指令中寫(xiě)明數(shù)據(jù)塊號(hào),如:L DB10.DBW 0L DB10.DBW 2XOWT DB10.DBW 4(二)“先打開(kāi)后訪問(wèn)”O(jiān)PN DB 5L DBW 10OPN DB 10T DBW 20由于有兩個(gè)數(shù)據(jù)塊寄存器(DB和DI寄存器),所以,最多可以同時(shí)打開(kāi)兩個(gè)數(shù)據(jù)塊。一個(gè)作為背景數(shù)據(jù)塊,數(shù)據(jù)塊的起始地址存儲(chǔ)在DI寄存器中;另一個(gè)作為共享數(shù)據(jù)塊,數(shù)據(jù)塊的起始地址存儲(chǔ)在DB寄存器中。打開(kāi)背景數(shù)據(jù)塊,在調(diào)用FB時(shí)可以自動(dòng)實(shí)現(xiàn),由于調(diào)用FB時(shí)使用DI寄存器,所以,一般不在FB程序中用OPN DI n指令打開(kāi)數(shù)據(jù)塊。3. 背景數(shù)據(jù)塊和共享數(shù)據(jù)塊任何FB、FC或

23、OB均可讀寫(xiě)存放在共享數(shù)據(jù)塊中的數(shù)據(jù)。背景數(shù)據(jù)塊是FB運(yùn)行時(shí)的工作存儲(chǔ)區(qū),它存放FB的部分運(yùn)行變量。調(diào)用FB時(shí),必須指定一個(gè)相關(guān)的背景數(shù)據(jù)塊。作為規(guī)則,只有FB塊才能訪問(wèn)存放在背景數(shù)據(jù)塊中的數(shù)據(jù)。一般情況下,每個(gè)FB都有一個(gè)對(duì)應(yīng)的背景數(shù)據(jù)塊,一個(gè)FB也可以使用不同的背景數(shù)據(jù)塊。如果幾個(gè)FB需要的背景數(shù)據(jù)完全相同,為節(jié)省存儲(chǔ)器,則可以定義成一個(gè)背景數(shù)據(jù)塊,供它們分別使用。 數(shù)據(jù)結(jié)構(gòu) 基本數(shù)據(jù)類型數(shù)據(jù)結(jié)構(gòu)形式 復(fù)式數(shù)據(jù)類型復(fù)式數(shù)據(jù)類型名稱類型說(shuō)明日期-時(shí)間DATE_AND_TIME長(zhǎng)度8Byte字符串STRING占用256Byte數(shù)組ARRAY可定義6維數(shù)組構(gòu)造STRUCT由多種數(shù)據(jù)類型組成的數(shù)據(jù)

24、集合 用戶數(shù)據(jù)類型STEP 7允許將基本或復(fù)式組合成“用戶”自已定義的數(shù)據(jù)類型,這種類型稱為用戶數(shù)據(jù)類型(UDT)。用戶數(shù)據(jù)類型必須首先單獨(dú)建立,并存放在稱為UDT的特殊數(shù)據(jù)塊中。建立用戶數(shù)據(jù)類型的目的,是為了將UDT作為一種數(shù)據(jù)類型使用,以方便定義多個(gè)結(jié)構(gòu)相同的構(gòu)造變量。5.2 功能塊編程及調(diào)用一個(gè)程序由許多部分(子程序)組成,STEP 7將這些部分稱為邏輯塊,并允許塊間相互調(diào)用。功能塊由兩個(gè)主要部分組成:一部分是每個(gè)功能塊的變量聲明表,變量聲表聲明此塊的局部數(shù)據(jù);另一部分是邏輯指令組成的程序,程序要用到變量聲明表中給出的局部數(shù)據(jù)。當(dāng)調(diào)用功能塊時(shí),需要提供塊執(zhí)行時(shí)要用到的數(shù)據(jù)或變量,也就是將

25、外部數(shù)據(jù)傳遞給功能塊,這稱為參數(shù)傳遞。 變量聲明表(局部數(shù)據(jù))局部數(shù)據(jù)分為參數(shù)和局部變量?jī)纱箢?,局部變量又包括靜態(tài)變量和臨時(shí)變量(暫態(tài)變量)兩種。參數(shù)是在調(diào)用塊和被調(diào)用塊間傳遞的數(shù)據(jù)。靜態(tài)變量和臨時(shí)變量是僅供邏輯塊本身使用的數(shù)據(jù)。局部數(shù)據(jù)類型變量名類型說(shuō)明輸入?yún)?shù)In由調(diào)用邏輯塊的塊提供數(shù)據(jù),輸入給邏輯塊的指令輸出參數(shù)Out向調(diào)用邏輯塊的塊返回參數(shù),即從邏輯塊輸出結(jié)果數(shù)據(jù)IO參數(shù)In_Out參數(shù)的值由調(diào)用塊的塊提供,由邏輯塊處理修改,然后返回靜態(tài)變量Stat靜態(tài)變量存儲(chǔ)在背景數(shù)據(jù)塊中,塊調(diào)用結(jié)束后,其內(nèi)容被保留狀態(tài)變量Temp臨時(shí)變量存儲(chǔ)在L堆棧中,塊執(zhí)行結(jié)束變量的值因被其它內(nèi)容覆蓋而丟失 邏

26、輯塊局部數(shù)據(jù)的數(shù)據(jù)類型 在變量聲明表中,要明確局部數(shù)據(jù)的數(shù)據(jù)類型,這樣操作系統(tǒng)才能給變量分配確定的存儲(chǔ)空間。局部數(shù)據(jù)可以是基本數(shù)據(jù)類型或是復(fù)式數(shù)據(jù)類型,也可以是專門(mén)用于參數(shù)傳遞的所謂“參數(shù)類型”。參數(shù)類型大小說(shuō)明定時(shí)器2 Byte在功能塊中定義一個(gè)定時(shí)器形參,調(diào)用時(shí)賦予定時(shí)器實(shí)參計(jì)數(shù)器2 Byte在功能塊中定義一個(gè)計(jì)數(shù)器形參,調(diào)用時(shí)賦予定時(shí)器實(shí)參塊:Block_FBBlock_FCBlock_DBBlock_SDB2 Byte在功能塊中定義一個(gè)功能塊或數(shù)據(jù)塊形參變量,調(diào)用時(shí)給功能塊類或數(shù)據(jù)塊類形參賦予實(shí)際的功能塊或數(shù)據(jù)塊編號(hào)指針6 Byte在功能塊中定義一個(gè)形參,該形參說(shuō)明的是內(nèi)存的地址指針。

27、例如,調(diào)用時(shí)可給形參賦予實(shí)參:PM50.0,以訪問(wèn)內(nèi)存M500.0ANY10 Byte當(dāng)實(shí)參的數(shù)據(jù)未知時(shí),可以使用該類型STEP 7對(duì)分配給塊局部數(shù)據(jù)(在變量聲明表中)的數(shù)據(jù)類型(基本、復(fù)式、參數(shù))是有一定限制的。聲明類型基本類型復(fù)式類型參數(shù)類型定時(shí)器 計(jì)數(shù)器 塊 指針 ANYOB局部變量有效的數(shù)據(jù)類型Temp可以可以可以FB局部變量有效的數(shù)據(jù)類型In可以可以可以可以可以可以可以O(shè)ut可以可以In-Out可以可以Stat可以可以Temp可以可以可以FC局部變量有效的數(shù)據(jù)類型In可以可以可以可以可以可以可以O(shè)ut可以可以可以可以In-Out可以可以可以可以Temp可以可以可以STEP 7允許用物

28、理地址(絕對(duì)地址)或符號(hào)地址或常數(shù)等形式作為實(shí)參給形參賦值,但對(duì)于不同的形參類型,STEP 7限制了賦值形式。聲明類型絕對(duì)地址符號(hào)地址塊局部符號(hào)常數(shù)基本數(shù)據(jù)類型In可以可以可以可以O(shè)ut可以可以可以不可In-Out可以可以可以不可復(fù)式數(shù)據(jù)類型In不可可以可以不可Out不可可以可以不可In-Out不可可以可以不可 功能塊編程與調(diào)用舉例對(duì)功能塊編程分兩步進(jìn)行:第一步工作是定義局部變量(填寫(xiě)局部變量表);第二步是編寫(xiě)要執(zhí)行的程序。寫(xiě)功能塊程序時(shí),可以兩種方式使用局部變量:使用變量名,此時(shí)變量名前綴“”,以區(qū)別于在符號(hào)表中定義的符號(hào)地址,增量方式下,前綴會(huì)自動(dòng)產(chǎn)生;直接使用局部變量的地址,這種方式只對(duì)

29、背景數(shù)據(jù)塊和L堆棧有效。例一 二分頻器二分頻器是一種具有一個(gè)輸入端和一個(gè)輸出端的功能單元,輸出頻率為輸入頻率的一半。(1)FC1的變量聲明表(2)FC1梯形圖程序(3)OB1調(diào)用梯形圖程序例二 時(shí)鐘脈沖發(fā)生器使用定時(shí)器實(shí)現(xiàn)自由設(shè)定時(shí)鐘脈沖發(fā)生器功能(脈沖占空系數(shù)1:1)。(1)FC1變量聲明表(2)FC1梯形圖程序(3)OB1調(diào)用梯形圖程序第六章 可編程序控制器應(yīng)用設(shè)計(jì)PLC系統(tǒng)設(shè)計(jì)步驟:西門(mén)子自動(dòng)化產(chǎn)品在城市供水中的應(yīng)用城市供水作為城市管理工程的一個(gè)主要設(shè)施,它直接影響著一個(gè)城市正常的生產(chǎn)和生活,隨著科學(xué)的發(fā)展與進(jìn)步,人們對(duì)飲用水的要求越來(lái)越高,相應(yīng)對(duì)供水系統(tǒng)的自動(dòng)化程度要求也越來(lái)越高,所以

30、,近幾年來(lái)自動(dòng)化產(chǎn)品在供水行業(yè)中的應(yīng)用較為普及。一、工藝描述安徽省六安市第二自來(lái)水廠座落在該項(xiàng)市南郊的淠河旁邊,因第一自來(lái)水廠已經(jīng)停用,所以該廠目前成為六安市唯一的供水廠。該廠原設(shè)計(jì)供水能力10萬(wàn)噸/天,通過(guò)擴(kuò)建改造達(dá)到14萬(wàn)噸/天。同大部分水廠一樣,其工藝流程圖如下圖所示: 源水泵房:用來(lái)將源水送到預(yù)處理的沉淀池中加藥:將配好的礬液添加到源水中進(jìn)行混合平流沉淀池:添加礬液經(jīng)混合后,用于將水中絮凝物沉淀出來(lái)的池子濾池:池內(nèi)的主要物質(zhì)為石英砂,對(duì)從沉淀池來(lái)的水進(jìn)行過(guò)濾,加氯之后,流入清水池加氯:將水中通入氯,主要作用是殺菌、消毒送水泵房:將清水池的水通過(guò)恒壓供水裝置送入自來(lái)水管網(wǎng)二、控制任務(wù)為提

31、高供水系統(tǒng)的安全性、可靠性,采用了以下的改造方案加藥系統(tǒng),使其具有自動(dòng)加藥的功能通過(guò)對(duì)濾池反沖洗的改造,使其具有自動(dòng)反沖洗的功能,省去繁索的人工操作增設(shè)了自動(dòng)加氯機(jī),使其根據(jù)出水余氯值,自動(dòng)控制加氯量改造低壓配電系統(tǒng),使之對(duì)電壓、電流、有功功率、無(wú)功功率及功率因數(shù)具有遠(yuǎn)程監(jiān)測(cè)、記錄、報(bào)警的功能建立水廠中控室,實(shí)現(xiàn)三級(jí)自動(dòng)化監(jiān)控,通過(guò)中控室的通訊工作站一方面將數(shù)據(jù)送到模擬屏上,另一方面通過(guò)無(wú)線數(shù)傳電臺(tái)將數(shù)據(jù)送到市自來(lái)水公司三、控制方式介紹整個(gè)六安二水廠的控制網(wǎng)絡(luò)如下圖 2臺(tái)上位機(jī)監(jiān)控主站通過(guò)5613卡與下面3臺(tái)PLC分站通訊,通訊方式采用PROFIBUS-FMS總線方式,每個(gè)PLC分站選用S7-

32、300,CPU為315-2DP,F(xiàn)MS通訊模塊選用的是CP343-5,并且每個(gè)分站通過(guò)MPI口連接一個(gè)TP27-10”的觸摸屏。濾池分站PLC1通過(guò)集成的PROFIBUS-DP下面連了16個(gè)S7-200濾池子站和1個(gè)S7-200反沖洗子站。每個(gè)濾池子站通過(guò)編程口掛一個(gè)TP070觸摸屏,每個(gè)濾池子站控制每格濾池的運(yùn)行。反沖洗子站的S7-200通過(guò)自由口協(xié)議與反沖洗泵變頻器MM430進(jìn)行通訊。出水泵房分站PLC2通過(guò)接口模塊IM360和IM361擴(kuò)展了兩個(gè)機(jī)架,在CPU的MPI口又連了一臺(tái)工控機(jī),作為泵房的監(jiān)控站,工控機(jī)的通訊卡為CP5611卡。通過(guò)集成的PROFIBUS-DP口連了一個(gè)ET200M分布式I/O和一個(gè)S7-200,ET200M安裝在取水泵站,用以對(duì)取水泵及進(jìn)水閥的控制,S7-200為CPU226,通過(guò)自由口與出水泵的變頻器通訊。CP340模塊利用RS485口與配電中心的電量監(jiān)測(cè)儀表HC6000相連,通過(guò)Modbus協(xié)議進(jìn)行通訊。將采集的電量參數(shù)送給監(jiān)控計(jì)算機(jī)。加藥分站PLC3配置了一塊CP340、一塊CP341及一些I/O模塊。CP340與10臺(tái)電機(jī)保護(hù)儀通過(guò)RS-485口進(jìn)行通訊,CP341與二臺(tái)加氯機(jī)進(jìn)行通訊,加氯機(jī)的通訊波特率為19200

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論