西門子S7-1200PLC模塊浙江代理價格

西門子S7-300/400 PLC順序控制的特點
與傳統(tǒng)的按經(jīng)驗設(shè)計并有很大隨意性的系統(tǒng)設(shè)計相比,順序控制具有一些顯著的特性。當(dāng)系統(tǒng)的各輸出時序圖以及各控制信號確定時,順序控制的程序就基本確定了。順序控制的設(shè)計思想有如下兩點:
◇ 根據(jù)系統(tǒng)的各種輸出狀態(tài)可將系統(tǒng)分為若干步,在每一步中各個輸出狀態(tài)保持恒
定,其中每一步都有確切的動作,并且相鄰步的動作不全相同。根據(jù)系統(tǒng)輸出狀
態(tài)可把系統(tǒng)分為8步,如圖5-3所示。
◇ 確定每一步的轉(zhuǎn)換條件,即步與步之間轉(zhuǎn)換的條件。當(dāng)條件成立時,當(dāng)前步結(jié)束
并激活下一步,使下一步動作。

圖5-3 系統(tǒng)步的劃分
由上述順序控制的設(shè)計特點可以看出,順序控制具有一定的確定性,即使系統(tǒng)很復(fù)雜,其結(jié)構(gòu)也大致相近,具有很強的可閱讀性以及交互性、實用性,初學(xué)起來很容易理解,相互之間可以輕松、快捷地交流溝通;不像經(jīng)驗設(shè)計梯形圖設(shè)計起來具有很大的隨意性以及試探性,設(shè)計時考慮的因素較多,容易漏掉,當(dāng)出現(xiàn)故障時不太容易發(fā)現(xiàn)故障所在,設(shè)計圖閱讀起來也比較困難。
通常編寫的程序都不是簡單的順序執(zhí)行,例如一些指令需要多次執(zhí)行,這就必須用到循環(huán);一條指令執(zhí)行完畢后,下面要執(zhí)行的指令會根據(jù)條件進行選擇執(zhí)行,這時就必須要選擇跳轉(zhuǎn)指令……這些程序的具體執(zhí)行過程是比較復(fù)雜的,此時就需要用一些特定的指令對程序的執(zhí)行進行控制。本節(jié)主要介紹跳轉(zhuǎn)指令、主程序中嵌套子程序等的應(yīng)用。
在微機原理中大家都學(xué)習(xí)過指令的跳轉(zhuǎn),知道其主要分為無條件跳轉(zhuǎn)和條件跳轉(zhuǎn),或者分為段內(nèi)跳轉(zhuǎn)和段間跳轉(zhuǎn)。同樣,控制PLC程序執(zhí)行順序的跳轉(zhuǎn)指令也分為無條件跳轉(zhuǎn)和條件跳轉(zhuǎn)。
1.無條件跳轉(zhuǎn)
跳轉(zhuǎn)指令直接連接到梯形圖的左母線上,當(dāng)程序運行到這條指令時必然發(fā)生跳轉(zhuǎn)。無條件跳轉(zhuǎn)指令的具體連接形式如圖4-60所示。

圖4-60 無條件跳轉(zhuǎn)指令的應(yīng)用
JMP是跳轉(zhuǎn)指令的代碼,上面的L1是跳轉(zhuǎn)標(biāo)簽,用來指示跳轉(zhuǎn)指令將轉(zhuǎn)到的位置。

2.條件跳轉(zhuǎn)
條件跳轉(zhuǎn),即當(dāng)某條指令執(zhí)行完畢時使跳轉(zhuǎn)的條件滿足了,然后才進行跳轉(zhuǎn);這種跳轉(zhuǎn)方式可以更好地按照用戶的需求選擇性地執(zhí)行下面的指令。
在PLC系統(tǒng)中,如邏輯控制、數(shù)據(jù)傳送的使能端等都是點位控制。在跳轉(zhuǎn)中也不例外,它主要根據(jù)PLC系統(tǒng)中具體標(biāo)志位的狀態(tài)來進行判斷是否執(zhí)行跳轉(zhuǎn)。作為條件跳轉(zhuǎn)的基礎(chǔ),下面先介紹PLC的標(biāo)志位。
在PLC的CPU存儲器中有一個16位的寄存器,用作標(biāo)志位。如圖4-61所示,低9位分別標(biāo)識一種相關(guān)的狀態(tài),而高7位為空,沒有其內(nèi)容。條件跳轉(zhuǎn)就是依據(jù)對這些標(biāo)志位的讀取與寫入進行執(zhí)行的。

圖4-61 PLC標(biāo)志位
9個標(biāo)志位具體的含義以及影響因素如下。
◇ /FC:*檢查標(biāo)志位,用于二進制邏輯的控制。/FC的狀態(tài)與梯形圖程序中的第
一個觸點的狀態(tài)*,因此要開始執(zhí)行一段程序,/FC必須是高電位“1”;/FC的值會受跳轉(zhuǎn)指令等的影響。
◇ RLO:邏輯運算結(jié)果標(biāo)志位。作為二進制邏輯運算結(jié)果的中間存儲器,RLO為高電位“1”時表示電流接通。*檢查時將對RLO置位,以后每次檢查的結(jié)果都要與前面的結(jié)果進行合成再存入RLO中。可以依據(jù)RLO的狀態(tài)來進行傳送、跳轉(zhuǎn)等指令的控制。RLO的值可以運用以下幾個指令進行操作:SET-將RLO置位;CLR-將RLO復(fù)位;SAVE-將RLO的值保存到BR標(biāo)志位
◇ STA:狀態(tài)標(biāo)志位。STA的值對應(yīng)于檢測的二進制操作數(shù)的狀態(tài);同時,如果是
二進制操作數(shù)的寫入,STA的值與寫入的數(shù)一樣。對于邊沿觸發(fā)指令FP(上升沿)和FN(下降沿),在執(zhí)行指令之前要進行邊沿檢測,而在檢測之前已經(jīng)將RLO的狀態(tài)寫入STA中了。除了上面說明的會對STA的值有影響的情況外,其他的二進制操作都會使STA置位。
◇ OR:狀態(tài)標(biāo)志位,用以存儲前面執(zhí)行串聯(lián)運算或執(zhí)行“AND”運算的結(jié)果。
數(shù)據(jù)塊主要用于存儲程序的數(shù)據(jù)。依據(jù)前面的介紹,根據(jù)一個數(shù)據(jù)塊是否被劃分給一個功能塊支配,可將數(shù)據(jù)塊分為全局?jǐn)?shù)據(jù)塊和背景數(shù)據(jù)塊。全局?jǐn)?shù)據(jù)塊是指沒有被任何功能塊支配的數(shù)據(jù)塊,背景數(shù)據(jù)塊則是指被功能塊支配的數(shù)據(jù)塊。

數(shù)據(jù)塊中存儲的數(shù)據(jù)在程序的運行過程中是需要讀出的,用于程序的執(zhí)行;而程序執(zhí)行完畢又要將數(shù)據(jù)寫進數(shù)據(jù)塊,因此就涉及對數(shù)據(jù)塊的操作。不管是讀出數(shù)據(jù)還是寫進數(shù)據(jù),在對數(shù)據(jù)塊進行操作之前都要打開數(shù)據(jù)塊。
S7系統(tǒng)中有兩個數(shù)據(jù)塊寄存器:全局?jǐn)?shù)據(jù)塊寄存器(DB)和背景數(shù)據(jù)塊寄存器(DI)。很明顯,DB用于打開全局?jǐn)?shù)據(jù)塊,而DI用于打開背景數(shù)據(jù)塊。在PLC系統(tǒng)中,數(shù)據(jù)可以分為位、字節(jié)、字、雙字等類型進行操作;那么用DB或DI打開數(shù)據(jù)塊,進行數(shù)據(jù)的讀出或?qū)懭氩僮鲿r,在指令形式上也要給出數(shù)據(jù)的操作類型。例如,用DB打開一個數(shù)據(jù)塊,然后進行字運算,則表示如DBWy;具體的形式如表4-12所示。
表4-12 數(shù)據(jù)塊的讀寫形式

說明:DB/DI指用于打開數(shù)據(jù)塊的寄存器類型;緊跟在DB/DI后的X、B、W、D分別指位、字節(jié)、字、雙字;y指字節(jié)的地址,x指一個字節(jié)中位的地址。
在具體程序中實現(xiàn)打開數(shù)據(jù)塊的指令是OPEN指令,該指令的具體應(yīng)用如圖4-59所示。用OPEN指令打開的數(shù)據(jù)塊必須是預(yù)先建立好的,對于全局?jǐn)?shù)據(jù)塊和背景數(shù)據(jù)塊都可以用OPEN指令打開。

圖4-59 用OPEN指令打開數(shù)據(jù)塊

西門子S7-1200PLC模塊浙江代理價格