1、PLC的基本邏輯指令及舉例 2、程序控制指令 3、PLC編程指導(dǎo) 4、典型的簡(jiǎn)單電路編程 5、PLC程序簡(jiǎn)單設(shè)計(jì)法及應(yīng)用舉例 梯形圖語(yǔ)言編程主要特點(diǎn)及格式有以下幾點(diǎn):(1)梯形圖按行從上至下編寫,每一行從左至右順序編寫,即PLC程序執(zhí)行順序與梯形圖的編寫順序一致。 (2)梯形圖左、右邊垂直線分別稱為起始母線和終止母線。每一邏輯行必須從起始母線開始畫起。(終止母線??梢允÷裕?/p> (3)梯形圖中的觸點(diǎn)有兩種,即常開觸點(diǎn)和常閉觸點(diǎn),這些觸點(diǎn)可以是PLC的輸入觸點(diǎn)或輸出繼電器觸點(diǎn),也可以是內(nèi)部繼電器、定時(shí)器/計(jì)數(shù)器的狀態(tài)。與傳統(tǒng)的繼電器控制圖一樣,每一觸點(diǎn)都有自己的特殊標(biāo)記(編號(hào)),以示區(qū)別。同一標(biāo)記的觸點(diǎn)可以反復(fù)使用,次數(shù)不限。這是因?yàn)槊恳挥|點(diǎn)的狀態(tài)存入PLC內(nèi)的存儲(chǔ)單元中,可以反復(fù)讀寫。傳統(tǒng)繼電器控制中的每個(gè)開關(guān)均對(duì)應(yīng)一個(gè)物理實(shí)體,故使用次數(shù)有限。這是PLC優(yōu)于傳統(tǒng)控制其中的一點(diǎn)。 (4)梯形圖最右側(cè)必須接輸出元素,PLC的輸出元素用括號(hào)表示,并標(biāo)出輸出變量的代號(hào)。同一標(biāo)號(hào)輸出變量只能使用一次。 (5)梯形圖中的觸點(diǎn)可以任意串、并聯(lián),而輸出線圈只能并聯(lián),不能串聯(lián)。每行最多觸點(diǎn)數(shù)由PLC型號(hào)不同而不同。 (6)內(nèi)部繼電器、計(jì)數(shù)器、移位寄存器等均不能直接控制外部負(fù)載,只能作中間結(jié)果供PLC內(nèi)部使用。 總之,梯形圖結(jié)構(gòu)沿用繼電器控制原理圖的形式,采用了常開觸點(diǎn)、常閉觸點(diǎn)、線圈等圖形語(yǔ)言,對(duì)于同一控制電路,繼電控制原理與梯形圖輸入、輸出信號(hào)基本相同,控制過(guò)程等效。 (1)LD、LDN指令不僅用于網(wǎng)絡(luò)塊邏輯計(jì)算開始時(shí)與母線相連的常開和常閉觸點(diǎn),在分支電路塊的開始也要使用LD、LDN指令; (2)并聯(lián)的=指令可連續(xù)使用任意次; (3)在同一程序中不能使用雙線圈輸出,即同一元器件在同一程序中只使用一次=指令; (4)LD、LDN、=指令的操作數(shù)為:I、Q、M、SM、T、C、V、S和L。T、C也作為輸出線圈,但在S7-200PLC中輸出時(shí)不是以使用=指令形式出現(xiàn)。 置位和復(fù)位指令S(Set):置位指令 、R(Reset):復(fù)位指令。 置位即置1,復(fù)位即置0。置位和復(fù)位指令可以將位存儲(chǔ)區(qū)的某一位開始的一個(gè)或多個(gè)(最多可達(dá)255個(gè))同類存儲(chǔ)器位置1或置0。 這兩條指令在使用時(shí)需指明三點(diǎn):操作性質(zhì)、開始位和位的數(shù)量。 (1)S,置位指令 將位存儲(chǔ)區(qū)的指定位(位bit)開始的N個(gè)同類存儲(chǔ)器位置位。 用法:S bit, N 例: S Q0.0, 1 (2)R,復(fù)位指令 將位存儲(chǔ)區(qū)的指定位(位bit)開始的N個(gè)同類存儲(chǔ)器位復(fù)位。當(dāng)用復(fù)位指令時(shí),如果是對(duì)定時(shí)器T位或計(jì)數(shù)器C位進(jìn)行復(fù)位,則定時(shí)器位或計(jì)數(shù)器位被復(fù)位,同時(shí),定時(shí)器或計(jì)數(shù)器的當(dāng)前值被清零。 用法: R bit, N 例: R Q0.2, 3 立即指令是為了提高PLC對(duì)輸入/輸出的響應(yīng)速度而設(shè)置的,它不受PLC循環(huán)掃描工作方式的影響,允許對(duì)輸入輸出點(diǎn)進(jìn)行快速直接存取。 立即指令的名稱和類型如下: (1)立即觸點(diǎn)指令 (立即取、取反、或、或反、與、與反) (2)=I,立即輸出指令 (3)SI,立即置位指令 (4)RI,立即復(fù)位指令 上圖5-10中,t為執(zhí)行到輸出點(diǎn)處程序所用的時(shí)間,Q0.0、Q0.1、Q0.2的輸入邏輯是I0.0的普通常開觸點(diǎn)。 Q0.0為普通輸出,在程序執(zhí)行到它時(shí),它的映像寄存器的狀態(tài)會(huì)隨著本掃描周期采集到的I0.0狀態(tài)的改變而改變,而它的物理觸點(diǎn)要等到本掃描周期的輸出刷新階段才改變; Q0.1、Q0.2為立即輸出,在程序執(zhí)行到它們時(shí),它們的物理觸點(diǎn)和輸出映像寄存器同時(shí)改變;而對(duì)Q0.3來(lái)說(shuō),它的輸入邏輯是I0.0的立即觸點(diǎn),所以在程序執(zhí)行到它時(shí),Q0.3的映像寄存器的狀態(tài)會(huì)隨著I0.0即時(shí)狀態(tài)的改變而立即改變,而它的物理觸點(diǎn)要等到本掃描周期的輸出刷新階段才改變。 邏輯堆棧操作指令S7-200系列PLC使用一個(gè)9層堆棧來(lái)處理所有邏輯操作。堆棧是一組能夠存儲(chǔ)和取出數(shù)據(jù)的暫存單元,其特點(diǎn)是“先進(jìn)后出”。每一次進(jìn)行入棧操作,新值放入棧頂,棧底值丟失;每一次進(jìn)行出棧操作,棧頂值彈出,棧底值補(bǔ)進(jìn)隨機(jī)數(shù)。邏輯堆棧指令主要用來(lái)完成對(duì)觸點(diǎn)進(jìn)行的復(fù)雜連接。 S7-200中把ALD、OLD、LPS、LRD、LPP指令都?xì)w納為棧操作指令。 定時(shí)器的刷新方式和正確使用(1)定時(shí)器的刷新方式 1、1ms定時(shí)器:由系統(tǒng)每隔1ms刷新一次,與掃描周期及程序處理無(wú)關(guān)。它采用中斷刷新方式。 2、10ms定時(shí)器:由系統(tǒng)在每個(gè)掃描周期開始時(shí)自動(dòng)刷新。在一個(gè)掃描周期內(nèi)定時(shí)器位和定時(shí)器的當(dāng)前值保持不變。 3、100ms定時(shí)器:在定時(shí)器指令執(zhí)行時(shí)被刷新。它僅用在定時(shí)器指令在每個(gè)掃描周期執(zhí)行一次的程序中。 (2)定時(shí)器的正確使用 圖5-22為正確使用定時(shí)器的一個(gè)例子。它用來(lái)在定時(shí)器計(jì)時(shí)時(shí)間到時(shí)產(chǎn)生一個(gè)寬度為一個(gè)掃描周期的脈沖。 計(jì)數(shù)器指令計(jì)數(shù)器用來(lái)累計(jì)輸入脈沖的次數(shù),在實(shí)際應(yīng)用中用來(lái)對(duì)產(chǎn)品進(jìn)行計(jì)數(shù)或完成復(fù)雜的邏輯控制任務(wù)。 1.幾個(gè)基本概念 (1)種類:計(jì)數(shù)器指令有3種:增計(jì)數(shù)CTU、增減計(jì)數(shù)CTUD和減計(jì)數(shù)CTD。 (2)編號(hào):計(jì)數(shù)器的編號(hào)用計(jì)數(shù)器名稱和數(shù)字(最大255)組成。 計(jì)數(shù)器的編號(hào)包含兩方面信息:計(jì)數(shù)器的位和計(jì)數(shù)器當(dāng)前值。 計(jì)數(shù)器位:計(jì)數(shù)器位和繼電器一樣是個(gè)開關(guān)量,表示計(jì)數(shù)器是否發(fā)生動(dòng)作的狀態(tài),當(dāng)計(jì)數(shù)器的當(dāng)前值達(dá)到設(shè)定值時(shí),該位被置位為ON。 計(jì)數(shù)器當(dāng)前值:其值是個(gè)存儲(chǔ)單元,用來(lái)存儲(chǔ)計(jì)數(shù)器當(dāng)前所累計(jì)的脈沖個(gè)數(shù),用16位符號(hào)整數(shù)表示,最大數(shù)值為32767。 (3)減計(jì)數(shù)器CTD脈沖輸入端CD用于遞減計(jì)數(shù)。首次掃描,計(jì)數(shù)器位OFF,當(dāng)前值為等于預(yù)設(shè)值PV。計(jì)數(shù)器檢測(cè)到CD輸入的每個(gè)上升沿時(shí),計(jì)數(shù)器當(dāng)前值減小1個(gè)單位,當(dāng)前值減到0時(shí),計(jì)數(shù)器位ON。 復(fù)位輸入有效或執(zhí)行復(fù)位指令,計(jì)數(shù)器自動(dòng)復(fù)位,即計(jì)數(shù)器位OFF,當(dāng)前值復(fù)位為預(yù)設(shè)值,而不是0。 指令格式:CTD Cxxx,PV 例:CTD C40,4 程序?qū)嵗?/strong>:圖5-26為減計(jì)數(shù)器的程序片斷和時(shí)序圖。 3. 應(yīng)用舉例1)循環(huán)計(jì)數(shù) 以上三種類型的計(jì)數(shù)器如果在使用時(shí),將計(jì)數(shù)器位的常開觸點(diǎn)作為復(fù)位輸入信號(hào),則可以實(shí)現(xiàn)循環(huán)計(jì)數(shù)。 2)用計(jì)數(shù)器和定時(shí)器配合增加延時(shí)時(shí)間,如圖5-27所示。試分析以下程序中實(shí)際延時(shí)為多長(zhǎng)時(shí)間。 程序控制類指令使程序結(jié)構(gòu)靈活,合理使用該類指令可以優(yōu)化程序結(jié)構(gòu),增強(qiáng)程序功能。這類指令主要包括:結(jié)束、暫停、看門狗、跳轉(zhuǎn)、子程序、循環(huán)和順序控制等指令。 5.2.1 結(jié)束指令結(jié)束指令分為有條件結(jié)束指令END和無(wú)條件結(jié)束指令MEND。兩條指令在梯形圖中以線圈形式編程。指令不含操作數(shù)。執(zhí)行完結(jié)束指令后,系統(tǒng)結(jié)束主程序,返回到主程序起點(diǎn)。 使用說(shuō)明: (1)結(jié)束指令只能用在主程序中,不能在子程序和中斷程序中使用。 (2)在調(diào)試程序時(shí),在程序的適當(dāng)位置插入無(wú)條件結(jié)束指令可實(shí)現(xiàn)程序的分段調(diào)試。 (3)可以利用程序執(zhí)行的結(jié)果狀態(tài)、系統(tǒng)狀態(tài)或外部設(shè)置切換條件來(lái)調(diào)用有條件結(jié)束指令,使程序結(jié)束。 (4)使用Micro/Win32編程時(shí),不需手工輸入無(wú)條件結(jié)束指令,該軟件自動(dòng)在內(nèi)部加上一條無(wú)條件結(jié)束指令到主程序的結(jié)尾。 所屬圈子 (此處已添加圈子卡片,請(qǐng)到今日頭條客戶端查看) |
|