![S7200PLC的基本指令及程序設(shè)計_第1頁](http://file4.renrendoc.com/view/234f0779c088d6cb95b056e8cceef912/234f0779c088d6cb95b056e8cceef9121.gif)
![S7200PLC的基本指令及程序設(shè)計_第2頁](http://file4.renrendoc.com/view/234f0779c088d6cb95b056e8cceef912/234f0779c088d6cb95b056e8cceef9122.gif)
![S7200PLC的基本指令及程序設(shè)計_第3頁](http://file4.renrendoc.com/view/234f0779c088d6cb95b056e8cceef912/234f0779c088d6cb95b056e8cceef9123.gif)
![S7200PLC的基本指令及程序設(shè)計_第4頁](http://file4.renrendoc.com/view/234f0779c088d6cb95b056e8cceef912/234f0779c088d6cb95b056e8cceef9124.gif)
![S7200PLC的基本指令及程序設(shè)計_第5頁](http://file4.renrendoc.com/view/234f0779c088d6cb95b056e8cceef912/234f0779c088d6cb95b056e8cceef9125.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
S7200PLC的基本指令及程序設(shè)計第1頁/共183頁第5章S7-200PLC的基本指令及程序設(shè)計5.1S7-200PLC的編程語言
5.2S7-200PLC的數(shù)據(jù)類型與存儲區(qū)域
5.3S7-200PLC的編程元件
5.4尋址方式
5.5程序結(jié)構(gòu)和編程規(guī)約
5.6S7-200PLC的基本指令
5.7典型控制環(huán)節(jié)的PLC程序設(shè)計
5.8梯形圖編寫規(guī)則第2頁/共183頁5.1S7-200PLC的編程語言
國際電工委員會(IEC)制定的IEC61131—3是關(guān)于PLC語言的國際標準。IEC61131—3提供了三種圖形化語言和兩種文本語言。三種圖形化語言是:梯形圖(LAD)、功能塊圖(FBD)和順序功能圖(SFC);兩種文本語言:指令表(IL)和結(jié)構(gòu)化文本(ST)。在我國,大多數(shù)使用者習慣用梯形圖編程。
S7-200
PLC支持兩類指令集:IEC61131—3指令集、SIMATIC指令集。
IEC1131—3指令集支持系統(tǒng)完全數(shù)據(jù)類型檢查,通常指令執(zhí)行時間較長。第3頁/共183頁5.1S7-200PLC的編程語言
SIMATIC指令集是西門子公司為S7-200PLC設(shè)計的專用指令集,該指令集中的大多數(shù)指令符合IEC1131—3標準,但不支持系統(tǒng)完全數(shù)據(jù)類型檢查。SIMATIC指令集的指令具有專用性強、執(zhí)行速度快的優(yōu)點。使用SIMATIC指令集,可以使用梯形圖(LAD)、功能塊圖(FBD)和語句表(STL)三種編程語言編程。本書主要介紹SIMATIC指令集,基于梯形圖和語句表這兩種編程語言介紹S7-200PLC的基本指令。1.梯形圖(LAD)
2.功能塊圖(FBD)
3.語句表(STL)第4頁/共183頁1.梯形圖(LAD)梯形圖(LAD)是與電氣控制電路相對應的圖形語言。它沿用了繼電器、觸點、串并聯(lián)等術(shù)語和類似的圖形符號,并簡化了符號,還增加了一些功能性的指令。梯形圖按自上而下,從左到右的順序排列,最左邊的豎線稱為起始母線也叫左母線,然后按一定的控制要求和規(guī)則連接各個接點,最后以繼電器線圈(或再接右母線)結(jié)束,稱為一邏輯行或叫一“梯級”。通常一個梯形圖中有若干邏輯行(梯級),形似梯子。各PLC生產(chǎn)商都把梯形圖作為第一用戶語言。第5頁/共183頁1.梯形圖(LAD)▲梯形圖(LAD)與電氣控制電路圖相呼應?!赜昧死^電器、觸點、串并聯(lián)等術(shù)語▲簡化了圖形符號▲增加了特殊功能的指令▲信號流向清楚、簡單、直觀、易懂。第6頁/共183頁2.功能塊圖(FBD)
功能塊圖(FBD)類似于普通邏輯功能圖,它沿用了半導體邏輯電路的邏輯框圖的表達方式。一般用一種功能方框表示一種特定的功能,框圖內(nèi)的符號表達了該功能塊圖的功能。功能塊圖通常有若干個輸入端和若干個輸出端。輸入端是功能塊圖的條件,輸出端是功能塊圖的運算結(jié)果。
功能圖有基本邏輯功能、計時和計數(shù)功能、運算和比較功能及數(shù)據(jù)傳送功能等。第7頁/共183頁2.功能塊圖(FBD)圖中所示的FBD,沒有梯形圖中的觸點和線圈,也沒有左右母線。程序邏輯由功能框之間的連接決定,“能流”自左向右流動。一個功能框的輸出端連接到另一個功能框的允許輸入端。
功能塊圖和梯形圖可以互相轉(zhuǎn)換。第8頁/共183頁3.語句表(STL)
S7系列PLC將指令表(IL)稱為語句表(STL)。
語句表是用助記符來表達PLC的各種控制功能的。它類似于計算機的匯編語言,但比匯編語言更直觀易懂,編程簡單,因此也是應用很廣泛的一種編程語言。這種編程語言可使用簡易編程器編程,但比較抽象,一般與梯形圖語言配合使用,互為補充。
目前大多數(shù)PLC都有語句表編程功能,但各廠家生產(chǎn)的PLC語句表的助記符不相同,也不兼容。編程簡單直觀、易懂第9頁/共183頁有條件地相互轉(zhuǎn)換通常梯形圖(LAD)程序、功能塊圖(FBD)程序、語句表(STL)程序可有條件的方便地轉(zhuǎn)換(以網(wǎng)絡為單位轉(zhuǎn)換),比如用S7系列PLC的STEP7-Micro/WIN軟件可以實現(xiàn)程序的轉(zhuǎn)換。
語句表可以編寫梯形圖和功能塊圖無法編寫的程序。熟悉PLC和邏輯編程的有經(jīng)驗的程序員適合用語句表編程。熟悉邏輯電路的經(jīng)驗豐富的設(shè)計人員,使用功能塊圖編程也是很方便的。對于大多數(shù)人來說,用梯形圖編程還是比較簡單的。第10頁/共183頁5.2S7-200PLC的數(shù)據(jù)類型與存儲區(qū)域5.2.1位、字節(jié)、字、雙字和常數(shù)
位:計算機內(nèi)部的數(shù)據(jù)都以二進制形式存儲,二進制數(shù)的1位(bit)只有“1“和“0”兩種取值,可以用來表示開關(guān)量或數(shù)字量兩種不同的狀態(tài),比如觸點的接通或斷開、線圈的通電或斷電。若位為1,表示常開觸點通,常閉觸點斷。位的數(shù)據(jù)類型是布爾型(BOOL)。
字節(jié):BYTE,8位二進制數(shù)組成1個字節(jié)。其中,第0位是最低位(LSB),第7位是最高位(MSB).
字:WORD,兩個字節(jié)組成1個字。
雙字:DWORD,2個字組成1個雙字。
常數(shù):CPU以二進制形式存儲常數(shù),常數(shù)的數(shù)據(jù)長度有字節(jié)、字、雙字。常數(shù)的表示可以是二進制、十進制、十六進制、ASCII或?qū)崝?shù),見下表。第11頁/共183頁5.2S7-200PLC的數(shù)據(jù)類型與存儲區(qū)域5.2.1位、字節(jié)、字、雙字和常數(shù)進制書寫格式舉例二進制2#二進制數(shù)值2#0101011100010十進制十進制數(shù)值2010十六進制16#十六進制數(shù)值16#4AE8ASCII‘ASCII文本’‘file’浮點數(shù)按照ANSI/IEEE754—1985標準(單精度)格式125.2或1.252×1常數(shù)的幾種表示形式:注意:”“#”是常數(shù)的進制格式說明符,如果沒有,系統(tǒng)默認是十進制數(shù)。浮點數(shù)的書寫必須有小數(shù)點。第12頁/共183頁5.2.2數(shù)據(jù)類型及范圍
S7-200PLC的指令參數(shù)所用的基本數(shù)據(jù)類型有:1位布爾型(BOOL)
8位字節(jié)型(BYTE)
16位無符號整數(shù)型(WORD)
16位有符號整數(shù)型(INT)
32位無符號雙字整數(shù)型(DWORD)
32位有符號雙字整數(shù)型(DINT)
32位實數(shù)型(REAL)。實數(shù)型(REAL)是按照ANSI/IEEE754—1985標準(單精度)的表示格式規(guī)定。第13頁/共183頁5.2.2數(shù)據(jù)類型及范圍基本數(shù)據(jù)類型數(shù)據(jù)的位數(shù)表示范圍十進制十六進制布爾型(BOOL)10,1無符號數(shù)字節(jié)型B(BYTE)80~2550~FF字型W(WORD)160~655350~FFFF雙字型D(DWORD)320~(232-1)0~FFFFFFFF有符號數(shù)字節(jié)型B(BYTE)8-128~+12780~7F整型(INT)16-32768~+327678000~7FFF雙整型(DINT)32-231~(231-1)80000000~7FFFFFFF實數(shù)型(REAL)32±1.75495×1~±3.402823×1第14頁/共183頁5.2.3數(shù)據(jù)的存儲區(qū)1.存儲區(qū)的分類
PLC的存儲區(qū)分為程序存儲區(qū)、系統(tǒng)存儲區(qū)、數(shù)據(jù)存儲區(qū)。
程序存儲區(qū)用于存放用戶程序,存儲器為EEPROM(可電擦除可編程的只讀存儲器,電信號寫入,電信號擦除)。
系統(tǒng)存儲區(qū)用于存放有關(guān)PLC配置結(jié)構(gòu)的參數(shù),如PLC主機及擴展模塊的I/O配置和編址、PLC站地址的配置,設(shè)置保護口令、停電記憶保持區(qū)、軟件濾波功能等,存儲器為EEPROM。第15頁/共183頁5.2.3數(shù)據(jù)的存儲區(qū)1.存儲區(qū)的分類
PLC的存儲區(qū)分為程序存儲區(qū)、系統(tǒng)存儲區(qū)、數(shù)據(jù)存儲區(qū)。
數(shù)據(jù)存儲區(qū)是S7-200CPU提供給用戶的編程元件的特定存儲區(qū)域。它包括輸入映象寄存器(I)、輸出映像寄存器(Q)、變量存儲器(V)、內(nèi)部標志位存儲器(M)、順序控制繼電器存儲器(S)、特殊標志位存儲器(SM)、局部存儲器(L)、定時器存儲器(T)、計數(shù)器存儲器(C)、模擬量輸入映像寄存器(AI)、模擬量輸出映像寄存器(AQ)、累加器(AC)、高速計數(shù)器(HC)。存儲器為EEPROM和RAM。第16頁/共183頁2.數(shù)據(jù)區(qū)存儲器的編址格式可分為:位地址字節(jié)地址字地址雙字地址存儲器是由許多存儲單元組成,每個存儲單元都有惟一的地址,可以依據(jù)存儲器地址來存取數(shù)據(jù)。
S7-200PLC的存儲單元按字節(jié)進行編址。
但數(shù)據(jù)區(qū)存儲器地址的表示格式有位、字節(jié)、字、雙字地址格式。第17頁/共183頁
(1)位地址格式數(shù)據(jù)區(qū)存儲器區(qū)域的某一位的地址格式為:Ax.y。A:存儲器區(qū)域標識符x:字節(jié)地址y:位號。例:I4.5表示圖5-3中黑色標記的位地址。I是變量存儲器的區(qū)域標識符,4是字節(jié)地址,5是位號,在字節(jié)地址4與位號5之間用點號“.”隔開。2.數(shù)據(jù)區(qū)存儲器的編址格式第18頁/共183頁圖5-3位尋址格式MSB表示最高位
LSB表示最低位(1)位地址格式第19頁/共183頁(2)字節(jié)、字、雙字地址格式
數(shù)據(jù)區(qū)存儲器區(qū)域的字節(jié)、字、雙字地址格式由區(qū)域標識符、數(shù)據(jù)長度以及該字節(jié)、字或雙字的起始字節(jié)地址構(gòu)成。例如,IB2表示輸入字節(jié),由I2.0~I2.7這8位組成。第20頁/共183頁圖中,用VB100、VW100、VD100分別表示字節(jié)、字、雙字的地址。VW100表示由VB100、VB101相鄰的兩個字節(jié)組成的一個字,VD100表示由VB100~VB103四個字節(jié)組成的一個雙字,100為起始字節(jié)地址。(2)字節(jié)、字、雙字地址格式第21頁/共183頁(3)其他地址格式數(shù)據(jù)區(qū)存儲器區(qū)域中,還包括定時器存儲器(T)、計數(shù)器存儲器(C)、累加器(AC)、高速計數(shù)器(HC)等,它們是模擬相關(guān)的電器元件的。它們的地址格式為:Ay。
由區(qū)域標識符A和元件號組成,例T24表示某定時器的地址,T是定時器的區(qū)域標識符,24是定時器號,同時T24又可表示此定時器的當前值。元件號區(qū)域標識符T24定時器:T24計數(shù)器:C45累加器:AC3第22頁/共183頁5.3S7-200PLC的編程元件PLC的數(shù)據(jù)區(qū)存儲器區(qū)域在系統(tǒng)軟件的管理下,劃分出若干小區(qū),并將這些小區(qū)賦予不同的功能,由此組成了各種內(nèi)部元件,這些內(nèi)部元件就是PLC的編程元件。每一種PLC提供的編程元件的數(shù)量是有限的,其數(shù)量和種類決定了PLC的規(guī)模和數(shù)據(jù)處理能力。
在PLC內(nèi)部,這些具有一定功能的編程元件,不是真正存在的物理器件,而是由電子電路、寄存器和存儲器單元等組成,有固定的地址。例如,輸入繼電器是由輸入電路和輸入映像寄存器構(gòu)成,雖有繼電器特性,卻沒有機械觸點。為了將這些編程元件與傳統(tǒng)的繼電器區(qū)別開來,有時又稱做軟元件或軟繼電器,其特點是
:第23頁/共183頁5.3S7-200PLC的編程元件1)軟繼電器是看不見、摸不著的,沒有實際的物理觸點。
2)每個軟繼電器可提供無限多個常開觸點和常閉觸點,可放在同一程序的任何地方,即其觸點可以無限次地使用。
3)體積小、功耗低、壽命長。
第24頁/共183頁5.3.1編程元件1.輸入繼電器(I)
2.輸出繼電器(Q)
3.輔助繼電器(M)
4.變量存儲器(V)
5.局部存儲器(L)
6.順序控制繼電器(S)
7.特殊繼電器(SM)
8.定時器(T)
9.計數(shù)器(C)
10.模擬量輸入映像寄存器(AI)
11.模擬量輸出映像寄存器(AQ)
12.累加器(AC)
13.高速計數(shù)器(HC)第25頁/共183頁1.輸入繼電器(I)
輸入繼電器就是位于PLC數(shù)據(jù)存儲區(qū)的輸入映像寄存器。
PLC外部的輸入端子用于接收來自現(xiàn)場的開關(guān)信號,每一個輸入端子在PLC內(nèi)部與輸入映像寄存器(I)的相應位相對應?,F(xiàn)場輸入信號的狀態(tài),在每個掃描周期的輸入采樣階段讀入,并將采樣值存于輸入映像寄存器,供程序執(zhí)行時使用。當外部常開按鈕閉合時,則對應的輸入映像寄存器的位狀態(tài)為1,在程序中其常開觸點閉合,常閉觸點打開。
注意:輸入映像寄存器的狀態(tài)只能由外部輸入信號驅(qū)動,而不能在內(nèi)部由程序指令來改變?,F(xiàn)場實際輸入點數(shù)不能超過PLC能提供的具有外部接線端子的輸入繼電器的數(shù)量,具有地址而未使用的輸入映像寄存器區(qū)可能剩余,未避免出錯,建議空著這些地址,不作他用。第26頁/共183頁1.輸入繼電器(I)輸入繼電器(I)的地址格式為:位地址:I[字節(jié)地址].[位地址],如I0.1、I3.6。字節(jié)、字、雙字地址:I[數(shù)據(jù)長度][起始字節(jié)地址],如IB4、IW6、ID10。CPU226模塊輸入映像寄存器的有效地址范圍為:
I(0.0~15.7);IB(0~15);IW(0~14);ID(0~12)。第27頁/共183頁2.輸出繼電器(Q)
輸出繼電器就是位于PLC數(shù)據(jù)存儲區(qū)的輸出映像寄存器。
PLC外部的輸出端子可連接各種現(xiàn)場被控負載,每一個輸出端子與輸出映像寄存器的相應位相對應。CPU將輸出的結(jié)果存放在輸出映象寄存器Q中,在掃描周期的結(jié)尾,CPU以批處理方式將輸出映象寄存器的數(shù)值送到輸出鎖存器,對相應的輸出端子刷新,作為控制外部負載的開關(guān)信號。當程序使得輸出映像寄存器的某位狀態(tài)為1,相應的輸出端子開關(guān)閉合,外部負載通電。
注意:輸出繼電器使用時不能超過PLC能提供的具有外部輸出模塊接線端子的數(shù)量,具有地址而未使用的輸出映像寄存器區(qū)可能剩余,未避免出錯,建議空著這些地址,不作他用。第28頁/共183頁輸出繼電器(Q)地址格式為:位地址:Q[字節(jié)地址].[位地址],如Q0.0、Q1.1;字節(jié)、字、雙字地址:Q[數(shù)據(jù)長度][起始字節(jié)地址],如QB5、QW8、QD11。CPU226模塊輸出映像寄存器的有效地址范圍為:Q(0.0~15.7);QB(0~15);QW(0~14);QD(0~12)。2.輸出繼電器(Q)第29頁/共183頁S7-200CPU輸入、輸出的操作I/O映像區(qū)實際上就是外部輸入輸出設(shè)備狀態(tài)的映像區(qū),PLC通過I/O映像區(qū)的各個位與外部物理設(shè)備建立聯(lián)系。I/O映像區(qū)每個位都可以映像輸入、輸出模塊上的對應端子狀態(tài)。
在程序執(zhí)行過程中,對輸入和輸出的讀寫是通過映像寄存器,不是實際的輸入輸出端子。提高了抗干擾性,加快了運算速度,存取可按位、字節(jié)、字、雙字,操作更靈活。第30頁/共183頁也稱中間繼電器,是模擬繼電器控制系統(tǒng)中的中間繼電器,它存放中間操作狀態(tài),或存儲其他相關(guān)的數(shù)據(jù)。內(nèi)部標志位存儲器(M)以位為單位使用,也可以字節(jié)、字、雙字為單位使用。輔助繼電器(M)的地址格式為:位地址:M[字節(jié)地址].[位地址],如M0.2、M12.7、M3.5等。字節(jié)、字、雙字地址:M[數(shù)據(jù)長度][起始字節(jié)地址],如MB11、MW23、MD26。CPU226模塊輔助繼電器的有效地址范圍為:M(0.0~31.7);MB(0~31);MW(0~30);MD(0~28)。沒有外部的輸入/輸出端子與之對應,因此不能收外部信號的直接控制,其觸點也不能直接驅(qū)動外部負載。3.輔助繼電器(M)第31頁/共183頁4.變量存儲器(V)變量存儲器用于存放全局變量、存放程序執(zhí)行過程中控制邏輯操作的中間結(jié)果或其它相關(guān)的數(shù)據(jù)。變量存儲器是全局有效。全局有效是指同一個存儲器可以在任一程序分區(qū)(主程序、子程序、中斷程序)被訪問。地址格式為:位地址:V[字節(jié)地址].[位地址],如V10.2、V100.5。字節(jié)、字、雙字地址:V[數(shù)據(jù)長度][起始字節(jié)地址],如VB20、VW100、VD320。CPU226模塊變量存儲器的有效地址范圍為:V(0.0~5119.7);VB(0~5119);VW(0~5118);VD(0~5116)。第32頁/共183頁5.局部變量存儲器(L)
局部存儲器用來存放局部變量。局部存儲器是局部有效的。局部有效是指某一局部存儲器只能在某一程序分區(qū)(主程序或子程序或中斷程序)中使用。常用于帶參數(shù)的子程序調(diào)用過程中。
S7-200PLC提供64個字節(jié)局部存儲器,可用作暫時存儲器或為子程序傳遞參數(shù)。主程序、子程序、中斷程序都有64個字節(jié)的局部存儲器使用,不同程序的局部存儲器不能互相訪問??梢园次?、字節(jié)、字、雙字訪問局部存儲器。可以把局部存儲器作為間接尋址的指針,但是不能作為間接尋址的存儲器區(qū)。
第33頁/共183頁5.局部變量存儲器(L)
其地址格式為:位地址:L[字節(jié)地址].[位地址],如L0.0、L50.4。字節(jié)、字、雙字:L[數(shù)據(jù)長度][起始字節(jié)地址],如LB33、LW44、LD55。CPU226模塊局部存儲器的有效地址范圍為:L(0.0~63.7);LB(0~63);LW(0~62);LD(0~60)。
第34頁/共183頁6.順序控制繼電器(S)
順序控制繼電器(S)用于順序控制(或步進控制)。主要用于順序控制繼電器指令(SCR)。SCR指令提供控制程序的邏輯分段,從而實現(xiàn)順序控制。順序控制繼電器存儲器(S)的地址格式為:位地址:S[字節(jié)地址].[位地址],如S3.1、S2.5。字節(jié)、字、雙字地址:S[數(shù)據(jù)長度][起始字節(jié)地址],如SB4、SW10、SD21。CPU226模塊順序控制繼電器存儲器的有效地址范圍為:S(0.0~31.7);SB(0~31);SW(0~30);SD(0~28)。
第35頁/共183頁7.特殊繼電器(SM)■
為用戶提供一些特殊的控制功能及系統(tǒng)信息,用戶對操作的一些特殊要求也通過特殊標志位(SM)通知系統(tǒng)。特殊標志位區(qū)域分為只讀區(qū)域(SM0.0~SM29.7,頭30個字節(jié)為只讀區(qū))和可讀寫區(qū)域,在只讀區(qū)特殊標志位,用戶只能利用其觸點,不能改變其狀態(tài)。
特殊內(nèi)部線圈(SpecialMemory)■用戶程序與系統(tǒng)程序之間的界面■提供特殊的控制功能及系統(tǒng)信息■用戶通知系統(tǒng)特殊要求包括只讀區(qū)域,只能用其觸點;如SM0.0
可讀寫區(qū),用于特殊控制功能
第36頁/共183頁7.特殊繼電器(SM)SMB0有8個狀態(tài)位SM0.0-SM0.7,部分含義如下:SM0.0:CPU在RUN時,SM0.0總為1,即該位始終接通為ON;SM0.1:PLC由STOP轉(zhuǎn)為RUN時,SM0.1接通一個掃描周期,常用做初始化脈沖;SM0.2:當RAM中保存的數(shù)據(jù)丟失時,SM0.2接通一個掃描周期;SM0.3:PLC上電進入RUN方式時,SM0.3接通一個掃描周期,可在不斷電的情況下代替SM0.1的功能;SM0.4:分時鐘脈沖,占空比為50%,30s閉合、30s斷開,周期為1min的脈沖串;SM0.5:秒時鐘脈沖,占空比為50%,0.5s閉合、0.5s斷開,周期為1s的脈沖等。以上是只讀特殊繼電器。第37頁/共183頁7.特殊繼電器(SM)可讀寫特殊繼電器用于特殊控制功能,例如:附錄B列出了特殊繼電器的詳細信息。*SMB30
用于自由通信口設(shè)置*SMB34/SMB35
用于定時中斷間隔時間設(shè)置特殊繼電器可以按位存取,也可以按字節(jié)、字、雙字存取。特殊標志位存儲器(SM)的地址表示格式為:
位地址:SM[字節(jié)地址].[位地址],如SM0.1。
字節(jié)、字、雙字地址:SM[數(shù)據(jù)長度][起始字節(jié)地址],如SMB86、SMW100、SMD12。
CPU226模塊特殊標志位存儲器的有效地址范圍為:
SM(0.0~549.7);SMB(0~549);SMW(0~548);
SMD(0~546)。第38頁/共183頁8.定時器(T)定時器(T)是累計時間增量的內(nèi)部元件。S7-200PLC定時器有三種類型:接通延時定時器TON,斷開延時定時器TOF,保持型接通延時定時器TONR。定時器的定時時基有三種:1ms、10ms、100ms。使用時需要提前設(shè)置時間設(shè)定值。與定時器相關(guān)的有兩個變量:定時器當前值和定時器狀態(tài)位。定時器地址表示格式為:T[定時器號],如T24、T37、T38等。S7-200PLC定時器的有效地址范圍是T(0-255)。第39頁/共183頁9.計數(shù)器(C)計數(shù)器用來累計其計數(shù)輸入端脈沖電平由低到高的次數(shù),常用來對產(chǎn)品進行計數(shù)或進行特定功能的編程。S7-200PLC有三種類型計數(shù)器:增計數(shù)、減計數(shù)、增減計數(shù)。使用時需要提前設(shè)定計數(shù)設(shè)定值。與計數(shù)器相關(guān)的有兩個變量:計數(shù)器當前值和計數(shù)器狀態(tài)位。計數(shù)器地址表示格式為:C[計數(shù)器號],如C3、C22。S7-200PLC計數(shù)器的有效地址范圍是C(0-255)。第40頁/共183頁10.模擬量輸入映像寄存器(AI)模擬量輸入模塊電路將外部輸入的模擬信號轉(zhuǎn)換成1個字長(16位)的數(shù)字量,存放在模擬量輸入映像寄存器(AI)中,供CPU運算處理。AI中的值為只讀值,只能進行讀取操作。AI的地址格式為:AIW[起始字節(jié)地址],如AIW4。AI的地址必須用偶數(shù)字節(jié)地址(如AIW0,AIW2…)來讀取。有效地址的范圍為:AIW(0~62)
第41頁/共183頁11.模擬量輸出映像寄存器(AQ)CPU運算的相關(guān)結(jié)果存放在模擬量輸出映像寄存器(AQ)中,供D/A轉(zhuǎn)換器將1個字長的數(shù)字量轉(zhuǎn)換為模擬量,以驅(qū)動外部模擬量控制的設(shè)備。AQ中的數(shù)字量為只寫值,用戶不能讀取模擬量輸出值。AQ的地址格式為:AQW[起始字節(jié)地址],如AQW10。同樣,AQ的也必須使用偶數(shù)字節(jié)地址(如AQW0,AQW2,AQW4…)來存放。AQ有效地址范圍為:AQW(0~62)。
第42頁/共183頁12.累加器(AC)
累加器是用來暫時存儲計算中間值的存儲器,也可向子程序傳遞參數(shù)或返回參數(shù)。S7-200CPU提供了4個32位累加器(AC0、AC1、AC2、AC3)。累加器的地址格式為:AC[累加器號],如AC0。
CPU226模塊累加器的有效地址范圍為:AC(0~3)。
累加器是可讀寫單元,可以按字節(jié)、字、雙字存取累加器中的數(shù)值。由指令標識符決定存取數(shù)據(jù)的長度,例如,MOVB指令存取累加器的字節(jié),MOVW指令存取累加器的字,MOVD指令存取累加器的雙字。按字節(jié)、字存取時,累加器只存取存儲器中數(shù)據(jù)的低8位、低16位;以雙字存取時,則存取存儲器的32位。
第43頁/共183頁按字節(jié)、字、雙字存取累加器中數(shù)據(jù)的示例第44頁/共183頁13.高速計數(shù)器(HC)高速計數(shù)器(High-speedCounter)用來累計比CPU掃描速率更快的高速脈沖信號,計數(shù)過程與掃描周期無關(guān)。高速計數(shù)器的當前值為雙字(32位)整數(shù),且為只讀值。讀取高速計數(shù)器當前值應以雙字來尋址。高速計數(shù)器地址格式為:HC[高速計數(shù)器號],如HC1、HC2。CPU226模塊高速計數(shù)器的有效地址范圍為:HC(0~5)。第45頁/共183頁5.3.2編程元件及操作數(shù)的尋址范圍存取方式元件名稱CPU221CPU222CPU224、CPU226CPU226XM位存取V0.0~2047.70.0~5119.70.0~10239.7I、Q0.0~15.7M、S0.0~31.7SM0.0~179.70.0~299.70.0~549.7T、C0~255L0.0~63.7S7-200PLC提供的編程元件及有效地址范圍見下表。編程時應注意各類編程元件的地址范圍和數(shù)據(jù)類型。第46頁/共183頁字節(jié)存取VB0~20470~51190~10239IB、QB0~15MB、SB0~31SMB0~1790~2990~549LB0~63AC0~3字存取VW0~20460~51180~10238IW、QW0~14MW、SW0~30SMW0~1780~2980~548T、C0~255LW0~62AC0~3AIW、AQW0~300~625.3.2編程元件及操作數(shù)的尋址范圍第47頁/共183頁雙字存取VD0~20440~51160~10236ID、QD0~12MD、SD0~28SMD0~1760~2960~546LD0~60AC0~3HC0,3,4,50~55.3.2編程元件及操作數(shù)的尋址范圍第48頁/共183頁5.4尋址方式1.立即尋址
2.直接尋址
3.間接尋址PLC編程時,無論采用何種哪種語言,都需要給出每條指令的操作碼和操作數(shù)。操作碼指出這條指令的功能是什么,操作數(shù)指明操作碼需要的數(shù)據(jù)。
指令中如何提供操作數(shù)或操作數(shù)地址,稱為尋址方式。S7-200PLC的尋址方式有:第49頁/共183頁1.立即尋址
指令直接給出操作數(shù),操作數(shù)緊跟著操作碼,在取出指令的同時也就取出了操作數(shù),所以稱為立即操作數(shù)或立即尋址。立即尋址方式可用來提供常數(shù)、設(shè)置初始值等。指令中常常使用常數(shù)。例如,傳送指令“MOVD256,VD100”的功能就是將十進制常數(shù)256傳送到VD100單元,這里256就是源操作數(shù),直接跟在操作碼后,不用再去尋找源操作數(shù)了,所以這個操作數(shù)稱為立即數(shù),這種尋址方式就是立即尋址方式。第50頁/共183頁1.立即尋址
指令中立即數(shù)常使用常數(shù)。常數(shù)值可以是字節(jié)、字、雙字類型。CPU以二進制方式存儲所有常數(shù)。指令中可用十進制、十六進制、ASCII碼或浮點數(shù)形式來表示。表示格式舉例如下:十進制常數(shù):30112十六進制常數(shù):16#42FASCII常數(shù):‘INPUT’實數(shù)或浮點常數(shù):+1.1E-10二進制常數(shù):2#0101
1110第51頁/共183頁2.直接尋址△指令直接給出操作數(shù)地址的尋址方式△操作數(shù)的存儲器地址應按規(guī)定的格式表示,可以采用位地址,或字節(jié)、字、雙字地址尋址。使用時指出數(shù)據(jù)存儲區(qū)的區(qū)域標識符、數(shù)據(jù)長度及起始地址。△指令中,數(shù)據(jù)類型應與指令標識符相匹配例:位尋址:LDI3.4邏輯取指令字節(jié)尋址:MOVBVB50,VB100數(shù)據(jù)長度是字節(jié),用字節(jié)傳送指令字尋址:MOVWVW50,VW100雙字尋址:MOVDVD50,VD100將起始地址是50的變量存儲器中的雙字數(shù)據(jù)傳送到起始地址為100的變量存儲器中,即將VB50-VB53中的數(shù)據(jù)傳送到VB100-VB103中。第52頁/共183頁2.直接尋址
可以進行位尋址的編程元件有:輸入繼電器I、輸出繼電器Q、輔助繼電器M、特殊繼電器SM、局部存儲器L、變量存儲器V、順序控制繼電器S。
PLC存儲區(qū)中還有些編程元件,比如說定時器T、計數(shù)器C、高速計數(shù)器HC、累加器AC,不指出字節(jié)地址,而是在區(qū)域標識符后直接寫編號。如T39、C20、HC1、AC1。其中,T39、C20既指當前值,又可做位狀態(tài),根據(jù)指令進行區(qū)分。第53頁/共183頁3.間接尋址★指令給出了存放操作數(shù)地址的存儲單元的地址★操作數(shù)地址的地址稱為地址指針★指針用“*”號表示,例*AC1可作為地址指針的存儲器有:V、L、AC(1~3)可間接尋址的存儲器區(qū)域有:I、Q、V、M、S、T(僅當前值)、C(僅當前值)。對獨立的位(BIT)值或模擬量值不能進行間接尋址。使用間接尋址存取數(shù)據(jù)的步驟:第54頁/共183頁(1)建立指針使用間接尋址對某個存儲單元讀寫前,應先建立地址指針。
地址指針為雙字長,存放要訪問的存儲單元的32位物理地址??勺鳛橹羔樀拇鎯ζ饔校鹤兞看鎯ζ鳎╒)、局部存儲器(L)或累加器(AC1、AC2、AC3),AC0不能用作間接尋址的指針。
建立指針時,必須使用雙字傳送指令(MOVD),將所要訪問的存儲器單元的地址裝入用來作為指針的存儲器單元或累加器。注意:裝入的是地址而不是數(shù)據(jù)本身,格式如下:MOVD&VB200,AC1表示:把VB200的地址送入AC1建立指針,注意:“VB200”只是一個直接地址編號,并不是它的物理地址。
“&”表示取的是存儲器地址,而不是存儲器內(nèi)容。指令中的第二個地址數(shù)據(jù)長度必須是雙字長,如:AC、LD和VD。這里地址“VB200”要用32位表示,因而必須使用雙字傳送指令(MOVD)。第55頁/共183頁(1)建立指針將存儲器某個位置的地址移入另一存儲器或累加器中作為指針“&”符號表示某存儲單元的地址必須使用雙字傳送指令建立指針!第56頁/共183頁(2)使用指針來存取數(shù)據(jù)
編程時在指令的操作數(shù)前加“*”,表示該操作數(shù)為一指針,并依據(jù)指針中的內(nèi)容值作為地址存取數(shù)據(jù)。使用指針可存取字節(jié)、字、雙字型的數(shù)據(jù)。下面兩條指令是建立指針和間接存取的應用方法:
MOVD&VB200,AC1MOVW*AC1,AC0
執(zhí)行指令MOVW*AC1,AC0,把指針中的內(nèi)容值(VB200)作為地址,由于指令MOVW的標識符是“W”,因而指令操作數(shù)的數(shù)據(jù)長度應是字型,把地址VB200、VB201處2個字節(jié)的內(nèi)容(1234)傳送到AC0,如圖5-7所示。操作數(shù)(AC1)前面的“*”號表示該操作數(shù)(AC1)為指針。第57頁/共183頁圖5-7
間接尋址把VB200的地址送入AC1建立指針
把指針處的值送到AC0
本指令是MOVW,為字型長度,則AC0的高16位空閑未用;若是MOVD雙字型指令,則將VB200~VB203的內(nèi)容(即12345678)送到AC0這里給出的是起始字節(jié)地址,而并不表示數(shù)據(jù)長度(由隨后間接存取指令類型決定)為字型。所以,如果改為&VB200或&VD200效果完全相同。(2)使用指針來存取數(shù)據(jù)第58頁/共183頁
存取連續(xù)地址的存儲單元中數(shù)據(jù)時,通過修改指針可以非常方便地存取數(shù)據(jù)。
在S7-200PLC中,指針的內(nèi)容不會自動改變,可用自增或自減等指令修改指針值。這樣就可連續(xù)地存取存儲單元中的數(shù)據(jù)。
圖5-8中,用兩次自增指令I(lǐng)NCDAC1,將AC1指針中的值(VB200)修改為VB202后,指針即指向新地址VB202。執(zhí)行指令MOVW*AC1,AC0,這樣就可在變量存儲器(V)中連續(xù)地存取數(shù)據(jù),將VB202、VB203二個字節(jié)的數(shù)據(jù)(5678)傳送到AC0。
(3)修改指針第59頁/共183頁修改指針值時,應根據(jù)存取的數(shù)據(jù)長度來進行調(diào)整。若對字節(jié)進行存取,指針值加1(或減1);若對字進行存取、或?qū)Χ〞r器、計數(shù)器的當前值進行存取,指針值加2(或減2);若對雙字進行存取,則指針值加4(或減4)。圖5-8中,存取的數(shù)據(jù)長度是字型數(shù)據(jù),因而指針值加2。
圖5-8
修改指針
把指針增加兩次,指向下一個字把AC1(VW202)所指向的字數(shù)值送到AC0
(3)修改指針第60頁/共183頁使用指針間接尋址第61頁/共183頁5.5程序結(jié)構(gòu)和編程規(guī)約5.5.1程序結(jié)構(gòu)
5.5.2編程的一般規(guī)約用戶程序
數(shù)據(jù)塊參數(shù)塊
主程序(程序的主體)子程序(可選)中斷程序(可選)網(wǎng)絡
梯形圖(LAD)、功能塊圖(FBD)
允許輸入端(EN)、允許輸出端(ENO)
條件輸入、無條件輸入第62頁/共183頁5.5.1程序結(jié)構(gòu)S7-200PLC的程序結(jié)構(gòu)一般由三部分構(gòu)成:用戶程序、數(shù)據(jù)塊和參數(shù)塊。1、用戶程序用戶程序在存儲器空間也稱為組織塊,處于最高層,可以管理其他塊。用戶程序一般由一個主程序、若干個子程序和若干個中斷程序組成,子程序和中斷程序的有無和多少是可選的。
主程序是用戶程序的主體,每個項目必須有且僅有一個主程序。CPU在每個掃描周期都要執(zhí)行一次主程序指令。
子程序是用戶程序的可選部分,只有被其他程序調(diào)用時,才能夠執(zhí)行。在重復執(zhí)行某項功能時,使用子程序非常有用。同一子程序可以在不同的地方被多次調(diào)用。合理使用子程序,可以優(yōu)化程序結(jié)構(gòu),減少掃描時間。
中斷程序也是用戶程序的可選部分,用來處理預先規(guī)定的中斷事件。中斷程序不是被主程序調(diào)用,而是當中斷事件發(fā)生時,由PLC的操作系統(tǒng)調(diào)用。第63頁/共183頁5.5.1程序結(jié)構(gòu)S7-200PLC的程序結(jié)構(gòu)一般由三部分構(gòu)成:用戶程序、數(shù)據(jù)塊和參數(shù)塊。2、數(shù)據(jù)塊(可以點擊左邊軟件界面瀏覽條上的“數(shù)據(jù)塊”按鈕)數(shù)據(jù)塊是可選部分,數(shù)據(jù)塊不一定在每個控制系統(tǒng)的程序設(shè)計中都使用,使用數(shù)據(jù)塊可以完成一些有特定數(shù)據(jù)處理功能的程序設(shè)計,如為變量存儲器指定初始值。如果編輯了數(shù)據(jù)塊,就需要將數(shù)據(jù)塊下載至PLC。3、參數(shù)塊(系統(tǒng)塊)
參數(shù)塊存放的是CPU組態(tài)數(shù)據(jù),如果在編程軟件上沒有進行CPU的組態(tài),則系統(tǒng)以默認值進行自動配置。除非有特殊要求的輸入/輸出設(shè)置、掉電保持設(shè)置等,一般情況下使用默認值。第64頁/共183頁5.5.2編程的一般規(guī)約1、網(wǎng)絡網(wǎng)絡是S7-200PLC編程軟件中的一個特殊標記。網(wǎng)絡由觸點、線圈和功能框組成,每個網(wǎng)絡就是完成一定功能的最小的、獨立的邏輯塊。一個梯形圖程序就是由若干個網(wǎng)絡組成,程序被網(wǎng)絡分成了若干個程序段。
程序不分段,則編譯有誤。使用STEP7-Micro/WIN編程軟件,可以網(wǎng)絡為單位給程序添加注釋和標題,增加可讀性。
只有對梯形圖、功能塊圖、語句表使用網(wǎng)絡進行程序分段后,才能通過編程軟件實現(xiàn)相互轉(zhuǎn)換。圖5-9電動機起停控制梯形圖程序第65頁/共183頁2.梯形圖(LAD)
梯形圖中的左、右垂直線稱為左、右母線,通常將右母線省略。
在左、右母線之間是由觸點、線圈或功能框組合的有序網(wǎng)絡。梯形圖的輸入總是在圖形的左邊,輸出總是在圖形的右邊。從左母線開始,經(jīng)過觸點和線圈(或功能框),終止于右母線,從而構(gòu)成一個梯級。在一個梯級中,左、右母線之間是一個完整的“電路”,“能流”只能從左到右流動,不允許“短路”、“開路”,也不允許“能流”反向流動。第66頁/共183頁2.梯形圖(LAD)梯形圖中的基本編程元素有:觸點、線圈和功能框。
觸點:代表邏輯控制條件。觸點閉合時表示能流可以流過。觸點有常開觸點和常閉觸點兩種。
線圈:代表邏輯輸出的結(jié)果。能流到,線圈被激勵。
功能框:代表某種特定功能的指令。能流通過功能框時,執(zhí)行功能框所代表的功能。如定時器、計數(shù)器。功能塊圖中,輸入總是在功能框的左邊,輸出總是在功能框的右邊。第67頁/共183頁3.允許輸入端(EN)、允許輸出端(ENO)
允許輸入端(EN):在梯形圖、功能塊圖中,功能框的EN端是允許輸入端。允許輸入端(EN)必須存在“能流”(EN=1),才能執(zhí)行該功能框的功能。
在語句表(STL)程序中沒有EN允許輸入端,但是允許執(zhí)行STL指令的條件是棧頂?shù)闹当仨毷恰?”。
允許輸出端(ENO):在梯形圖、功能塊圖中,功能框的ENO端是允許輸出端。允許功能框的布爾量輸出。用于指令的級聯(lián)。第68頁/共183頁3.允許輸入端(EN)、允許輸出端(ENO)如果允許輸入端(EN)存在“能流”,且功能框準確無誤地執(zhí)行了其功能,那么允許輸出端(ENO)將把“能流”傳到下一個功能框。(此時ENO=1,實現(xiàn)級聯(lián))如果執(zhí)行過程中存在錯誤,那么“能流”就在出現(xiàn)錯誤的功能框終止,即ENO=0。ENO可作為下一個功能框的EN輸入,將幾個功能框串聯(lián)在一起。只有前一個功能框被正確執(zhí)行,后一個功能框才可能被執(zhí)行。
EN和ENO的操作數(shù)都是能流,數(shù)據(jù)類型為布爾型。第69頁/共183頁4.條件輸入、無條件輸入必須有“能流”通過才能執(zhí)行的線圈或功能框稱為條件輸入指令。它們不允許直接與左母線連接,如SHRB、MOVB、SEG等指令。如果需要無條件執(zhí)行這些指令,可以在左母線上連接SM0.0(該位始終為1)的常開觸點來驅(qū)動它們。無須“能流”就能執(zhí)行的線圈或功能框稱為無條件輸入指令。與“能流”無關(guān)的線圈或功能框可以直接與左母線連接,如LBL(跳轉(zhuǎn)和標號)、NEXT、SCR(順序控制繼電器指令)、SCRE等指令。
無允許輸出端(ENO)的功能框,不能用于級聯(lián)。如CALLSBRN(N1,…)子程序調(diào)用指令和LBL、SCR等。第70頁/共183頁5.6S7-200PLC的基本指令5.6.1位邏輯指令
5.6.2立即I/O指令
5.6.3邏輯堆棧指令
5.6.4取反指令和空操作指令
5.6.5正/負跳變觸點指令
5.6.6定時器指令
5.6.7計數(shù)器指令
5.6.8比較指令
5.6.9移位寄存器指令
5.6.10順序控制繼電器指令
S7-200PLC使用西門子公司的SIMATIC指令集。本書主要介紹SIMATIC指令集中的主要指令,包括最基本的邏輯控制指令和完成特殊任務的功能指令。第71頁/共183頁5.6.1位邏輯指令1.標準觸點指令
2.輸出指令
3.置位和復位指令
基本邏輯指令以位邏輯操作為主,在位邏輯指令中,除另有說明外,可用作操作數(shù)的編程元件有:I、Q、M、SM、T、C、V、S、L,并且數(shù)據(jù)類型是布爾型(如I0.0、Q0.0)。第72頁/共183頁1.標準觸點指令梯形圖(LAD)中常開和常閉觸點指令用觸點表示,常閉觸點帶/符號;當存儲器某地址的位(bit)值為1時,則與之對應的常開觸點是閉合的,位(bit)值也為1;而與之對應的常閉觸點是斷開的,位(bit)值為0。在語句表中,觸點指令有LD、LDN、A、AN、O、ON,見表5-4。第73頁/共183頁語句功能描述LDbit取指令,表示一個邏輯梯級的編程開始,用于常開觸點與左母線的連接(包括在分支點用處的母線)Abit與指令,用于串聯(lián)單個常開觸點,可以連續(xù)使用Obit或指令,用于并聯(lián)單個常開觸點,可以連續(xù)使用LDNbit取非指令,用于邏輯梯級開始的常閉觸點與左母線的連接ANbit與非指令,用于串聯(lián)單個常閉觸點ONbit或非指令,用于并聯(lián)單個常閉觸點1.標準觸點指令第74頁/共183頁語句表(STL)LD(Load)棧裝載指令A(And)邏輯“與”指令O(or)邏輯“或”指令LDNANON對常閉觸點編程第75頁/共183頁2.輸出指令
輸出指令又稱為線圈驅(qū)動指令。
在梯形圖(LAD)中,用“()”表示線圈。當執(zhí)行輸出指令時,“能流”到,則線圈被“激勵”,輸出映像寄存器或其他存儲器的相應位為“1”,反之為“0”。
輸出指令放在梯形圖的最右邊。
不同編址的繼電器線圈可以采用并聯(lián)輸出結(jié)構(gòu)。
在語句表中,用=表示輸出指令。當執(zhí)行輸出指令時,將棧頂值復制到由操作數(shù)地址指定的存儲器位。第76頁/共183頁3.置位和復位指令置位和復位指令的梯形圖和語句表見下表。第77頁/共183頁圖5-13置位、復位指令的使用舉例能流到,就執(zhí)行置位(或復位)指令執(zhí)行置位指令時,把從指令操作數(shù)指定的地址開始的N個點都被置位且保持,置位后即使能流斷,仍保持置位,除非對它復位執(zhí)行復位指令時,把從指令操作數(shù)指定的地址開始的N個點都被復位且保持,復位后即使能流斷,仍保持復位3.置位和復位指令第78頁/共183頁3.置位和復位指令使用置位和復位指令時要注意以下幾點:置位或復位的元件數(shù)N的常數(shù)范圍為1~255。N也可為VB、IB、QB、MB等,一般情況下均使用常數(shù)。當用復位指令對定時器位(T)或計數(shù)器位(C)復位時,定時器或計數(shù)器被復位,同時定時器或計數(shù)器的當前值將被清零。由于PLC采用循環(huán)掃描工作方式,程序中寫在后面的指令有優(yōu)先權(quán)。如上例中,若I0.0和I0.1同時為0,則Q0.0和Q0.1處于復位狀態(tài),因為結(jié)果總是顯示后面指令執(zhí)行完的狀態(tài)。第79頁/共183頁5.6.2立即I/O指令★為了加快輸入輸出響應速度★采用直接處理方式包括:1.立即觸點指令
2.立即輸出指令
3.立即置位和立即復位指令
立即指令允許對輸入和輸出點進行快速和直接存取。可以用立即指令直接讀取輸入點的狀態(tài),相應的輸入映像寄存器中的值并不發(fā)生更新;可以用立即指令訪問輸出點,訪問的同時,相應的輸出寄存器的內(nèi)容也被刷新。只有輸入繼電器I和輸出繼電器Q可以使用立即指令。第80頁/共183頁1.立即觸點指令※執(zhí)行立即觸點指令時,直接讀取物理輸入點的值※輸入映象寄存器內(nèi)容不更新※指令操作數(shù)僅限于物理輸入點的值第81頁/共183頁1.立即觸點指令
在梯形圖中,立即觸點指令用常開立即觸點和常閉立即觸點表示。“I”表示立即。當某物理輸入點的觸點閉合時,常開立即觸點的位值為1,常閉立即觸點的位值為0。
在語句表中,立即觸點指令就是在每個標準觸點指令的后面加“I”。這類指令包括:LDI、LDNI、AI、ANI、OI和ONI。第82頁/共183頁2.立即輸出指令直接把結(jié)果傳送到物理輸出點,以驅(qū)動實際輸出。不等待程序執(zhí)行階段結(jié)束后,轉(zhuǎn)入輸出刷新階段時才把結(jié)果傳送到物理輸出點,將結(jié)果也寫入輸出映象寄存器。=I,立即輸出指令。用立即指令訪問輸出點時,把棧頂值立即復制到指令所指定的物理輸出點,同時,相應的輸出映像寄存器的內(nèi)容也被刷新。指令格式:=Ibit(bit只能是Q類型)例:
=IQ0.2第83頁/共183頁3.立即置位和立即復位指令
當執(zhí)行立即置位(SI)或立即復位(RI)指令時,從指令操作數(shù)指定的位地址開始的N個連續(xù)的物理輸出點將被立即置位或立即復位且保持。即使能流斷,仍保持置位/復位)。N的常數(shù)范圍為1~128。該指令只能用于輸出繼電器。執(zhí)行該指令時,新值被同時寫到物理輸出點和相應的輸出映像寄存器。第84頁/共183頁必須指出立即I/O指令是直接訪問物理輸入/輸出點的,比一般指令訪問輸入/輸出映象寄存器占用CPU時間要長。不能盲目地使用立即指令,否則,會加長掃描周期時間,反而對系統(tǒng)造成不利影響,應利弊權(quán)衡。
第85頁/共183頁5.6.3邏輯堆棧指令
S7-200PLC使用一個9層的邏輯堆棧(Stack)來處理所以邏輯操作。該邏輯堆棧是一組能夠存儲和取出數(shù)據(jù)的暫存單元,棧頂用來存儲邏輯運算結(jié)果,下面的8層用來存儲中間運算結(jié)果。堆棧中的數(shù)據(jù)按照“先進后出”的原則存取。每一次進行入棧操作,新值放入棧頂,棧底值丟失;每一次進行出棧操作,棧頂值彈出,棧底值補進隨機數(shù)。表5-6
邏輯堆棧結(jié)構(gòu)堆棧結(jié)構(gòu)名稱說明S0STACK0第一個堆棧
S1STACK1第二個堆棧S2STACK2第三個堆棧S3STACK3第四個堆棧S4STACK4第五個堆棧S5STACK5第六個堆棧S6STACK6第七個堆棧S7STACK7第八個堆棧S8STACK8第九個堆棧棧頂?shù)?6頁/共183頁5.6.3邏輯堆棧指令▲邏輯堆棧指令只用于語句表編程。▲使用梯形圖編程時,梯形圖編輯器會自動插入相關(guān)的指令處理堆棧操作。棧裝載與(ALD)指令棧裝載或(OLD)指令
邏輯入棧(LPS)、邏輯讀棧(LRD)、邏輯出棧(LPP)、裝入堆棧(LDS)指令第87頁/共183頁邏輯堆棧指令語句功能描述ALD棧裝載“與”,用于兩個或兩個以上的觸點組(并聯(lián)電路塊)的串聯(lián)連接OLD棧裝載“或”,用于兩個或兩個以上的觸點組(串聯(lián)電路塊)的并聯(lián)連接LPS邏輯入棧,用于分支電路的開始LRD邏輯讀棧,將堆棧中第2層的值復制到棧頂,第2~9層的數(shù)據(jù)不變,用于開始第二個以后的從邏輯塊編程LPP邏輯出棧,用于分支電路的結(jié)束LDS裝入堆棧,用于復制堆棧中的第n層的值到棧頂?shù)?8頁/共183頁棧裝載與(ALD)指令2.棧裝載或(OLD)指令
ALD指令,棧裝載與指令(與塊)。兩條以上支路并聯(lián)形成的電路叫并聯(lián)電路塊。
ALD指令用于將并聯(lián)電路塊進行串聯(lián)連接。執(zhí)行ALD指令時,將堆棧中的第1層和第2層的值進行邏輯“與”操作,結(jié)果置于棧頂(堆棧第1層),并將堆棧中的第3~9層的值依次上彈一層。OLD指令,棧裝載或指令(或塊)。兩個以上觸點串聯(lián)形成的支路叫串聯(lián)電路塊。
OLD指令用于將串聯(lián)電路塊進行并聯(lián)連接。執(zhí)行時,將堆棧中的第一級和第二級的值進行邏輯或操作,結(jié)果放入棧頂,并將堆棧中其余各級的內(nèi)容依次上彈一級。第89頁/共183頁棧裝載ALD、OLD指令操作過程第90頁/共183頁ALD、OLD指令的使用舉例
注意:觸點的串、并聯(lián)指令只能將單個觸點與別的觸點或電路串、并聯(lián),而ALD、OLD指令用于將兩個或兩個以上的觸點組的串、并聯(lián)。
在觸點組開始時要使用LD、LDN指令,每完成一次觸點組的串或并聯(lián)操作,要寫上一個ALD或OLD指令。
ALD和OLD指令無操作數(shù)。第91頁/共183頁1.邏輯入棧指令
2.邏輯讀棧指令
LPS,邏輯入棧指令(分支電路開始指令)。用于復制棧頂?shù)闹挡⑦@個值壓入棧頂下一層,原堆棧中各級棧值依次下壓一級,棧底值丟失。用于分支電路的開始,即用于生成一條新的左母線。
LRD,邏輯讀棧指令。把堆棧中第二級的值復制到棧頂。原棧頂值被新的復制值取代,第2-9層的數(shù)據(jù)不變。在梯形圖的分支結(jié)構(gòu)中,當母線左側(cè)為主控邏輯塊時,LPS開始右側(cè)的第一個從邏輯塊編程。LRD開始第二個和后邊更多的從邏輯塊編程。應注意,第一個和最后一個從邏輯塊不用本指令。
返回3.邏輯入棧(LPS)、邏輯讀棧(LRD)、邏輯出棧(LPP)、裝入堆棧(LDS)指令第92頁/共183頁3.邏輯出棧指令
4.裝入堆棧指令
LPP,邏輯出棧指令(分支結(jié)束指令)。將原堆棧中各級棧值依次上彈一級,堆棧第二級的值成為新的棧頂值,原來棧頂?shù)闹祻臈V邢?。用于分支電路的結(jié)束,即新母線結(jié)束,返回原母線。應注意,LPS與LPP必須配對使用。
LDS,裝入堆棧指令。復制堆棧中的第n級的值到棧頂。原棧中各級棧值依次下壓一級,棧底值丟失。3.邏輯入棧(LPS)、邏輯讀棧(LRD)、邏輯出棧(LPP)、裝入堆棧(LDS)指令第93頁/共183頁LPS、LRD、LPP、LDS指令的操作過程第94頁/共183頁邏輯堆棧指令的使用舉例1:第95頁/共183頁邏輯堆棧指令的使用舉例2:第96頁/共183頁3.邏輯入棧(LPS)、邏輯讀棧(LRD)、邏輯出棧(LPP)、裝入堆棧(LDS)指令使用這幾個指令需注意以下幾點:1)由于受堆??臻g的限制(9層堆棧),LPS、LPP指令連續(xù)使用時應少于9次。
2)LPS與LPP指令必須成對使用,它們之間可以使用LRD指令。
3)LPS、LRD、LPP指令均無操作數(shù)。第97頁/共183頁5.6.4取反指令和空操作指令取反(NOT)指令
用來改變能流的狀態(tài);能流到達取反觸點時,能流就停止;能流未到達取反觸點時,能流就通過;
在梯形圖中,取反指令用取反觸點表示,將她左邊的邏輯運算結(jié)果取反。在語句表中,取反指令對堆棧的棧頂作取反操作,改變棧頂值。
取反指令無操作數(shù)。第98頁/共183頁2.空操作(NOP)指令空操作(NOP)指令主要是為了方便對程序的檢查和修改,預先在程序中設(shè)置了一些NOP指令,在修改和增加其他指令時,可使程序地址的更改量減小。NOP指令對程序的執(zhí)行和運算結(jié)果沒有影響。其指令格式為:NOPN,操作數(shù)N是一個0~255之間的常數(shù)。第99頁/共183頁正負跳變指令在梯形圖中以觸點形式使用。用于檢測脈沖的正跳變(上升沿)或負跳變(下降沿),利用跳變讓能流接通一個掃描周期,即可以產(chǎn)生一個掃描周期長度的脈沖。(1)正跳變指令:EU正跳變觸點檢測到脈沖的每一次正跳變后,產(chǎn)生一個寬度為一個掃描周期的脈沖。(2)負跳變指令:ED
負跳變觸點檢測到脈沖的每一次負跳變后,產(chǎn)生一個寬度為一個掃描周期的脈沖。
返回5.6.5正/負跳變觸點指令第100頁/共183頁5.6.5正/負跳變觸點指令指令名稱LADSTL功能正跳變觸點指令
EU在上升沿產(chǎn)生一個寬度為一個掃描周期的脈沖負跳變觸點指令
ED在下降沿產(chǎn)生一個寬度為一個掃描周期的脈沖檢測上升沿(由off到on),讓能流通過一個掃描周期的時間;檢測下升沿(由on到off),讓能流通過一個掃描周期的時間;可以用正/負跳變觸點指令檢測上升沿或下降沿信號。第101頁/共183頁正/負跳變觸點指令編程舉例:第102頁/共183頁5.6.6定時器指令
通過對PLC內(nèi)部的時鐘脈沖進行計數(shù)來工作的。定時器編程時要預設(shè)定時值,在運行過程中當定時器的輸入條件滿足(輸入端接通或有負跳變)時,當前值從0開始按一定單位(分辨率)增加;當前值到達預設(shè)值時,定時器觸點動作。S7-200PLC為用戶提供了三種類型的定時器:1.接通延時定時器(TON)
2.有記憶接通延時定時器(TONR)
3.斷開延時定時器(TOF)
4.應用定時器指令的注意事項第103頁/共183頁類型接通延時定時器有記憶接通延時定時器斷開延時定時器LAD
STLTONT***,PTTONRT***,PTTOFT***,PT定時器指令的表示形式
IN:輸入端PT:預設(shè)值端???ms:分辨率T???:定時器號第104頁/共183頁定時器及定時器指令—操作數(shù)輸入接點設(shè)定值:1~327671)編號:用定時器的名稱和它的常數(shù)編號來表示,即Txxx,如:T4。S7-200PLC共有256個定時器,定時器號是T0-T255。2)預設(shè)值PT:使用定時器時,必須給出設(shè)定值PT,設(shè)定值是16位有符號整數(shù)(INT),其常數(shù)范圍是1-32767。操作數(shù)還可以是VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常數(shù)。其中,常數(shù)最常用。3)使能輸入(只對LAD和FBD):BOOL型,可以是I、Q、M、SM、T、C、V、S、L和能流。TON:接通延時定時器
TOF:斷開延時定時器
TONR:有記憶接通延時定時器類型INPTT37TONI0.0定時器號(0~255)定時器指令操作數(shù)有3個:編號、預設(shè)值和使能輸入。第105頁/共183頁定時器及定時器指令—分辨率輸入接點設(shè)定值:1~32767分辨率:單位時間的時間增量。S7-200PLC定時器分辨率(時基)有三種:1ms、10ms、100ms。定時器的分辨率由定時器號決定。定時器的實際設(shè)定時間T=設(shè)定值PT×分辨率,例如T37
TON:接通延時定時器
TOF:斷開延時定時器
TONR:有記憶接通延時定時器類型INPTT37TONI0.0定時器號(0~255)第106頁/共183頁每個定時器號包含兩個變量信息:當前值:存儲定時器當前所累計的時間,存放在定時器的當前值寄存器。數(shù)據(jù)類型是16位有符號整數(shù)(INT),故最大計數(shù)值為32767。定時器位:當定時器的當前值等于或大于設(shè)定值時,定時器觸點動作(置位或復位)。可以通過使用定時器號(T+定時器編號)存取這些變量。定時器位或當前值的存取取決于使用的指令:位操作數(shù)指令存取計時器位,字操作數(shù)指令存取當前值。定時器編號表示兩種變量IN第107頁/共183頁1.接通延時定時器(TON)
用于單一時間間隔的計時。當輸入端(IN)接通或“能流”通過時,定時器位為OFF,定時器當前值從0開始計時,當定時器的當前值等于或大于設(shè)定值時,該定時器位被置位為ON,當前值仍繼續(xù)計數(shù),一直計到最大值32767。輸入端(IN)一旦斷開,定時器立即復位,定時器位為OFF,當前值為0。
指令格式:TONTxxx,PT例:TONT120,8第108頁/共183頁2.有記憶接通延時定時器(TONR)有記憶,用于對許多間隔的累計計時。當輸入端(IN)接通或“能流”通過時,定時器當前值從上次的保持值開始再往上累計時間,繼續(xù)計時,當累計當前值等于或大于設(shè)定值時,該定時器的位被置位為ON。當前值可繼續(xù)計數(shù),一直計數(shù)到最大值32767。當輸入端(IN)斷開時,定時器當前值保持不變,定時器位不變。當輸入端(IN)再次接通,定時器當前值從原保持值開始再往上累計時間,繼續(xù)計時??梢杂枚〞r器(TONR)累計多次輸入信號的接通時間。
TONR定時器只能用復位指令進行復位操作,使當前值清零。指令格式:TONRTxxx,PT;例:TONRT20,63第109頁/共183頁TONR使用舉例
第1個網(wǎng)絡實現(xiàn)有記憶接通延時繼電器T3的上電清0。第110頁/共183頁3.斷開延時定時器(TOF)
用于斷電后的單一時間間隔計時。上電初期或首次掃描時,定時器位為OFF,當前值為0。當輸入端(IN)接通(ON)時,定時器位立即為“1”,當前值為0。當輸入端由接通到斷開時,定時器開始計時,當前值達到預設(shè)值時,定時器位OFF,當前值等于預設(shè)值,停止計時。輸入端再次有從OFF到ON時,TOF復位,這時定時器位為ON,當前值為0。
啟動計時必須用有負跳變(由ON到OFF)的輸入信號。
第111頁/共183頁4.應用定時器指令的注意事項1)不能把一個定時器號同時用作TOF和TON。
2)使用復位(R)指令對定時器復位后,定時器位為“0”,定時器當前值為“0”。
3)對于斷開延時定時器(TOF),需在輸入端有一個負跳變(由ON到OFF)的輸入信號啟動計時。
4)不同分辨率的定時器,它們當前值的刷新周期是不同的,具體情況如下:
①1ms分辨率定時器。1ms分辨率定時器啟動后,定時器對1ms的時間間隔(即時基信號)進行計時。定時器的當前值每隔1ms刷新一次,在一個掃描周期中可能要刷新多次,而不和掃描周期同步。第112頁/共183頁②10ms分辨率定時器。10ms分辨率定時器啟動后,定時
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球游戲QA和測試服務行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國三維木質(zhì)墻板行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國電儲水熱水器行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025-2030全球加厚防爆高壓鍋行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國鋁箔膠囊行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國工作站用橋式起重機行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025-2030全球法務技術(shù)服務行業(yè)調(diào)研及趨勢分析報告
- 2025合同模板房地產(chǎn)收購合同昆山某國際廣場整體購買協(xié)議
- 借款合同擔保書范本
- 合同范本餐飲廚師勞動合同
- 2025年山西國際能源集團限公司所屬企業(yè)招聘43人高頻重點提升(共500題)附帶答案詳解
- 青海省海北藏族自治州(2024年-2025年小學六年級語文)統(tǒng)編版隨堂測試(上學期)試卷及答案
- 外研版(三起)小學英語三年級下冊Unit 1 Animal friends Get ready start up 課件
- 江蘇省無錫市2023-2024學年高三上學期期終教學質(zhì)量調(diào)研測試語文試題(解析版)
- 銅礦隱蔽致災普查治理工作計劃
- 《民航安全檢查(安檢技能實操)》課件-第一章 民航安全檢查員職業(yè)道德
- 學校食品安全教育學習活動食品安全講座課件
- DB34T4826-2024畜禽養(yǎng)殖業(yè)污染防治技術(shù)規(guī)范
- 腰麻課件教學課件
- 石油化工企業(yè)環(huán)境保護管理制度預案
- 2024年甘肅省高考歷史試卷(含答案解析)
評論
0/150
提交評論