S系列PLC的基本指令_第1頁
S系列PLC的基本指令_第2頁
S系列PLC的基本指令_第3頁
S系列PLC的基本指令_第4頁
S系列PLC的基本指令_第5頁
已閱讀5頁,還剩77頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第五章S7-200系列PLC的基本指令

5.1S7-200編程的基本概念

5.2基本邏輯指令

5.3程序控制指令

5.4PLC初步編程指導

5.5簡單程序編制5.1 S7-200編程的基本概念

5.1.1編程語言

5.1.2數(shù)據類型

5.1.3用戶程序的結構

5.1.4編程的一般約定

返回5.1.1編程語言可編程控制器的工作過程是依據一連串的控制指令來進行的,這些控制指令就是我們常說的編程語言。可編程控制器的編程語言一般有梯形圖、語句表、功能塊圖和計算機高級語言等幾種。S7-200可編程控制器一般使用梯形圖、語句表和功能塊圖。

梯形圖是一種圖形語言,它任沿用了繼電器的觸點和線圈等符號。它是以繼電器控制系統(tǒng)的電器原理圖為基礎演變而來的,易于初學者使用,圖形表示易于理解,而且全世界通用。PLC的梯形圖使用的內部繼電器,定時器和計數(shù)器等都是通過軟件來實現(xiàn)的,使用方便,修改靈活。例如圖5-1所示,該控制程序具有啟動自鎖、延時斷開的功能。

圖5-1梯形圖編程實例語句表是通過指令助記符控制程序的,類似計算機匯編語言,它適合有經驗的程序員。不同廠家的PLC所采用的指令集往往不同,所以對于同一個梯形圖,書寫的語句表指令形式也不盡相同。語句是用戶程序的基本單元,每條語句都規(guī)定了CPU該如何動作,實現(xiàn)什么功能。PLC的語句表由操作碼和操作數(shù)構成:操作碼

操作數(shù)…操作碼告訴CPU要執(zhí)行的功能,操作數(shù)提供執(zhí)行過程中所需的參數(shù)。應該注意的是,有的操作碼是沒有操作數(shù)的。

5.1.1編程語言與圖5-1相對應的語句表指令如圖5-2所示:圖5-2語句表編程實例功能塊圖又稱邏輯盒指令,它沿用了半導體邏輯電路的邏輯方框圖,沒有像梯形圖中的觸點和線圈,對每種功能都使用一個運算方法,其運算功能由方框圖內的符號確定??刂七壿嫵S谩芭c”、“或”、“非”三種邏輯功能來表達,方框的左邊為輸入,右邊為輸出。與圖5-1相對應的功能塊圖如圖5-3所示:5.1.1編程語言圖5-3功能塊圖編程實例由于各廠家生產的PLC系列各不相同,使用的指令符號也各有差異,不過梯形圖編程基本上大同小異。本書都是基于SimatlcS7-200系列可編程控制器來介紹梯形圖、語句表指令的編程方法。5.1.2數(shù)據類型(1)基本數(shù)據類型S7-200PLC指令系統(tǒng)所用的數(shù)據類型包括:1位布爾型(BOOL)、8位字節(jié)型(BYTE)、16位無符號整數(shù)(WORD)、16位有符號整數(shù)(INT)、32位無符號整數(shù)(DWORD)、32位有符號整數(shù)(DINT)以及32位實數(shù)(REAL)。16位無符號整數(shù)一般稱為“字”,32為無符號整數(shù)一般稱為“雙字”;16位有符號整數(shù)習慣上稱為“整數(shù)”,32為有符號整數(shù)稱為“雙整數(shù)”。實數(shù)REAL類型是按照ANSI/IEEE754-1985的標準的表示格式規(guī)定的。(2)數(shù)據長度與數(shù)值范圍CPU存儲器中存放的數(shù)據類型可以為BOOL、BYTE、WORD、INT、DWORD、DINT和REAL。不同的數(shù)據類型具有不同的數(shù)據長度和數(shù)值范圍。如表5-1所示:表5-1數(shù)據長度與數(shù)值范圍SIMATIC指令集中,不同的指令所需操作數(shù)的數(shù)據類型一般不同,例如傳送操作指令分為字節(jié)傳送、比傳送和雙字傳送等,在編程過程中,要稍加留意。數(shù)據類型數(shù)據長度數(shù)值范圍(十進制表示)位(BOOL)10、1字節(jié)(BYTE)80~255字(WORD)160~65535整數(shù)NT)16-32768~32767雙字WORD)320~4294967295雙整數(shù)NT)32-2147483648~2147483647實數(shù)EAL)32-1038~10385.1.3用戶程序的結構S7-200程序有三種,即主程序OB1、子程序SBR0~SBR63和中斷程序INT0~INT127。主程序只有一個;子程序最多可以有64個,一般在主程序里調用子程序,當然也可以在子程序或中斷程序里面調用子程序;中斷程序最多可以有128個,中斷程序的調用由各種中斷事件觸發(fā),包括輸入中斷、定時中斷、高速計數(shù)器中斷、通信中斷等。S7-200的程序結構可分為兩種,即線性程序結構和分塊程序結構。(1)線性程序結構線性程序是指一個工程的全部控制任務都按照工程控制的順序寫在同一個程序中,一般寫在主程序OB1中。程序執(zhí)行過程中,CPU不斷的掃描主程序OB1,按照編寫好的指令代碼順序地執(zhí)行控制工作,如圖5-4所示。線性程序結構簡單明了,但是僅適合控制量比較小的場合,控制任務越大,線性程序的結構就越復雜,CPU執(zhí)行效率就越低,系統(tǒng)越不穩(wěn)定。(2)分塊程序結構分塊程序是指把一個工程的全部控制任務分成多個任務模塊,每個模塊的控制任務則根據具體情況編寫相應的子程序進行處理,或者放到中斷程序中去。在程序執(zhí)行過程中,CPU不斷的掃描主程序OB1,碰到子程序調用指令就轉移到相應的子程序中去執(zhí)行,遇到中斷請求,就調用相應的中斷程序,如圖5-5所示。分塊程序雖然結構復雜一點,但是可以把一個復雜的控制任務分解成多個簡單的控制任務過。分塊程序有利于程序員編寫代碼,而且程序調試起來也比較簡單。所以,對于一些相對復雜的工程控制,建議使用分塊程序結構。5.1.3用戶程序的結構主程序OB1控制任務1控制任務2控制任務3…………控制任務n圖5-4線性程序結構主程序OB1子程序SBR0子程序SBR1子程序SBR2…………子程序SBRnSBR1任務模塊1SBR0任務模塊0SBR2任務模塊2SBRn任務模塊n圖5-5分塊程序結構5.1.4編程的一般約定(1)網絡在梯形圖中,程序被分成稱為網絡的一個個段。一個網絡就是觸點、線圈和功能框的有順序排列,這些元件連在一起組成一個從左母線到右母線之間的完整電路。梯形圖和功能塊圖中使用網絡這個概念給程序分段和注釋,語句表程序不使用網絡,而是使用關鍵詞“NETWORK”對程序進行分段。STEP-Micro/WIN32允許以網絡為單位給程序建立注釋。(2)執(zhí)行分區(qū)在梯形圖、語句表或功能塊圖中,一個程序包含至少一個必需部分和其他可選部分。必需部分是主程序,可選部分包括一個或多個子程序或者中斷程序。通過選擇STEP-Micro/WIN32的分區(qū)選項,可以方便地切換到程序的各個分區(qū)。(3)EN/ENO定義EN(允許輸入)是梯形圖和功能塊圖中功能框的布爾量輸入。對要執(zhí)行的功能框,這個輸入必須存在能量流。在語句表中,指令沒有EN輸入,但是對于要執(zhí)行的語句表指令,棧頂?shù)闹当仨氈谩?”。ENO(允許輸出)是梯形圖和功能塊圖中功能框的布爾量輸出。如果功能框的EN輸入存在能量流,功能框能夠準確地執(zhí)行其功能,那么ENO輸出將把能量流傳到下一個單元。如果在執(zhí)行過程中出現(xiàn)錯誤,則能量流就在出現(xiàn)錯誤的功能框上終止。(4)條件/無條件輸入在梯形圖和功能塊圖中,與能量流有關的功能框或線圈用不是到左母線的連接表示。與能量流無關的線圈或功能框用一個直接到左母線的連接表示。5.1.4編程的一般約定(5)無輸出的指令不能級聯(lián)的指令盒用不帶布爾輸出來表示。它們是子程序調用、JMP、CRET等。也有只放在左母線的梯形圖線圈。它們包括LBL、NEXT、SCR和SCRE等等。在功能塊圖中,它們表示為指令盒,并把它們與不帶標記的能量輸入相區(qū)別。(6)比較指令盡管比較指令在梯形圖中是一個觸點,但是在功能塊圖中用的是指令盒表示。比較指令的執(zhí)行和能量流的狀態(tài)無關,如果能量流不存在,比較的輸出就是“0”,如果能量流存在,比較的輸出就和比較的結果有關。(7)STEP7-Micor/WIN32的一些規(guī)定1)

一個符合所有的大寫字母(ABC)表示該符號為全局符號。2)

帶有警號的符號名#var1表示該符號是局部符號。3)

符號%指示一個直接地址。4)操作數(shù)符號“?”或“????”指示需要一個值。5.2 基本邏輯指令

5.2.1位邏輯指令

5.2.2定時器和計數(shù)器指令

5.2.3邏輯堆棧指令

5.2.4比較操作指令返回5.2.1位邏輯指令

1.觸點指令(1)標準觸點指令標準觸點分標準常開觸點和標準常閉觸點。標準常開觸點的梯形圖由標準常開觸點及觸點位地址bit構成;語句表形式由操作碼“LD”和標準常開觸點位地址bit構成標準常閉觸點的梯形圖由標準常閉觸點及觸點位地址bit構成;語句表形式由操作碼“LDN”和標準常閉觸點位地址bit構成。標準觸點的梯形圖、語句表形式如圖5-6所示:圖5-6標準觸點指令

標準觸點的功能:常開觸點在其線圈不帶電時是斷開的,觸點狀態(tài)為OFF或0,而其線圈帶電時是閉合的,觸點狀態(tài)為ON或1;常閉觸點在其線圈不帶電時是閉合的,觸點狀態(tài)為ON或1,而其線圈帶電時是斷開的,觸點狀態(tài)為OFF或0。在程序執(zhí)行過程中,標準觸點起開關作用。5.2.1位邏輯指令

(2)立即觸點指令立即觸點分立即常開觸點和立即常閉觸點。立即常開觸點的梯形圖由立即常開觸點及觸點位地址bit地址構成;語句表形式由操作碼“LDI”和立即常開觸點位地址bit構成。立即常閉觸點的梯形圖由立即常閉觸點急觸點位地址bit構成;語句表形式由操作碼“LDNI”和立即常閉觸點位地址bit構成。立即觸點的梯形圖、語句表形式如圖5-7所示:圖5-7立即觸點指令立即觸點的功能:立即觸點的功能基本與標準觸點相同,只是當立即觸點指令被執(zhí)行時,CPU將直接讀取其物理輸入值,而不是更新映像寄存器。在程序執(zhí)行過程中,立即觸點也起開關作用。5.2.1位邏輯指令

2.輸出操作指令(1)輸出操作指令其梯形圖由輸出線圈及線圈位地址bit構成;語句表形式由輸出操作碼“=”及線圈位地址bit構成。如圖5-8所示:

圖5-8輸出操作指令輸出操作指令的功能:輸出操作指令將輸出位的新數(shù)值寫入輸出映像寄存器,當CPU執(zhí)行輸出指令時,S7-200將輸出映像寄存器中的輸出位轉換為線圈驅動的觸點的斷開與接通。(2)立即輸出操作指令其梯形圖由立即輸出線圈及立即輸出線圈位地址bit構成;語句表形式由立即輸出操作碼“=I”及立即輸出線圈位地址bit構成。如圖5-9所示:

圖5-9立即輸出操作指令立即輸出操作指令的功能:當執(zhí)行指令時,立即輸出指令將新數(shù)值寫入到實際輸出和相應的輸出映像寄存器中,這與非立即輸出不同,后者只將新數(shù)值寫進相應的輸出映像寄存器。5.2.1位邏輯指令

3.邏輯操作指令(1)邏輯與操作指令梯形圖由標準觸點或立即觸點串聯(lián)構成;語句表(STL)形式由操作碼“A”和觸點的位地址構成。如圖5-10所示:

圖5-10邏輯與操作指令邏輯與操作指令的功能:邏輯與只有當兩個觸點的狀態(tài)都是1(ON)時才有輸出,兩者只有有一個0(OFF),就無輸出。(2)邏輯或操作指令梯形圖由標準觸點或立即觸點并聯(lián)構成;語句表(形式由操作碼“O”和觸點的位地址構成。如圖5-11所示:

圖5-11邏輯或操作指令邏輯或操作指令的功能:邏輯與只有兩個觸點有一個1(ON)就有輸出,只有當兩個觸點都為0(OFF)時才沒輸出。5.2.1位邏輯指令

(3)取非操作指令取非操作指令的梯形圖是在觸點上加寫個“NOT”字符構成;語句表形式由操作碼“NOT”構成,本身沒有操作數(shù),只能和其他指令聯(lián)合使用。如圖5-12所示:

圖5-12取非操作指令取非操作指令的功能:取非操作就是把源操作數(shù)的狀態(tài)去反后作為目標操作數(shù)輸出。操作數(shù)為1(ON)時,取非后就為0(OFF),操作數(shù)為0(OFF)時,取非后就為1(ON)。

5.2.1位邏輯指令

4.置位操作指令(1)置位操作指令

其梯形圖由置位線圈、置位線圈的位地址及置位線圈數(shù)目n構成;語句表形式由置位操作碼“S”、置位線圈的位地址及置位線圈數(shù)目n構成。如圖5-13所示:圖5-13置位操作指令置位操作指令的功能:當置位信號來臨(1或ON)時,被置位的線圈置1,即使置位信號變?yōu)?以后,被置位線圈的狀態(tài)依然可以保持,直到其復位信號的到來。應當注意的是線圈數(shù)目n是指被置位的線圈共有n個,從被指定的位地址bit開始。(2)立即置位操作指令

其梯形圖由立即置位線圈、立即置位線圈的位地址及立即置位線圈數(shù)目n構成;語句表形式由立即置位操作碼“SI”、立即置位線圈的位地址及立即置位線圈數(shù)目n構成。如圖5-14所示:5.2.1位邏輯指令

圖5-14立即置位操作指令立即置位操作指令的功能:用立即置位指令訪問輸出點時,從指令所指出的位(bit)開始的n個(最多為128個)物理輸出點被立即置位,同時,相應的輸出映像寄存器的內容也被刷新。5.2.1位邏輯指令

5.復位操作指令(1)復位操作指令其梯形圖由復位線圈、復位線圈的位地址及復位線圈數(shù)n構成;語句表形式由復位操作碼“R”、復位線圈的位地址及復位線圈數(shù)n構成。如圖5-15所示:圖5-15復位操作指令復位操作指令的功能:當復位信號為1(ON)時,被復位的線圈置0,即使復位信號變成0,各線圈被復位的信號仍可以保持,直到其置位信號的到來。也應當注意的是線圈數(shù)目n是指被復位的線圈共有n個,從被指定的位地址bit開始。(2)立即復位操作指令其梯形圖(LAD)由立即復位線圈、立即復位線圈的位地址及立即復位線圈數(shù)n構成;語句表形式由復位操作碼“RI”、立即復位線圈的位地址及立即復位線圈數(shù)n構成。如圖5-16所示:

5.2.1位邏輯指令

圖5-16立即復位操作指令立即復位操作指令的功能:用立即復位指令訪問輸出點時,從指令所指出的位(bit)開始的n個(最多為128個)物理輸出點被立即復位,同時,相應的輸出映像寄存器的內容也被刷新。5.2.1位邏輯指令

6.微分操作指令(1)上微分操作指令其梯形圖由常開觸點加微分符“P”構成;語句表形式由上微分操作碼“EU”構成。如圖5-17所示:

圖5-17上微分操作指令上微分操作指令的功能:上微分是指某個操作數(shù)由0變?yōu)?的過程,即出現(xiàn)上升沿的過程。上微分操作指令就是在這個上升沿形成一個ON、一個掃描周期的脈沖。接受該脈沖控制的指令需寫在這一脈沖出現(xiàn)的語句之后。(2)下微分操作指令其梯形圖(LAD)由常開觸點加微分符“N”構成;語句表形式由上微分操作碼“ED”構成。如圖5-18所示:

圖5-18下微分操作指令下微分操作指令的功能:下微分是指某個操作數(shù)由1變?yōu)?的過程,即出現(xiàn)下降沿的過程,下微分指令就是在這個下降沿上形成一個ON、一個掃描周期的脈沖。同樣,接受該脈沖控制的指令需寫在這一脈沖出現(xiàn)的語句之后。5.2.1位邏輯指令

7.串聯(lián)、并聯(lián)操作指令(1)串聯(lián)電路的并聯(lián)操作指令其梯形圖由多個觸點串聯(lián)構成一條支路,再又一系列支路相互并聯(lián)構成復雜電路;語句表形式:在兩個“與”邏輯的語句后面用操作碼“OLD”連接起來,表示這兩個“與”邏輯之間是“或”的關系。如圖5-19所示:圖5-19串聯(lián)電路的并聯(lián)操作指令串聯(lián)電路的并聯(lián)操作指令的功能:串聯(lián)電路的并聯(lián)就是指多個串聯(lián)電路之間又構成了“或”的邏輯關系,指令在執(zhí)行時,先算出各支路的結果,再把這些結果進行“或”邏輯運算送到輸出。

5.2.1位邏輯指令

(2)并聯(lián)電路的串聯(lián)操作指令其梯形圖由多個觸點并聯(lián)構成一局部電路,再由一系列這樣的局部電路相互串聯(lián)構成復雜電路;語句表形式:在兩個“或”邏輯語句后面用操作碼“ALD”連接起來,表示這兩個“或”邏輯之間是“與”的關系。如圖5-20所示:圖5-20并聯(lián)電路的串聯(lián)操作指令并聯(lián)電路的串聯(lián)操作指令的功能:并聯(lián)電路的串聯(lián)是指多個并聯(lián)電路之間又構成了“與”的邏輯關系,指令在執(zhí)行時,先算出各并聯(lián)局部電路的結果,再把這些結果進行“與”邏輯運算送到輸出。

5.2.2定時器和計數(shù)器指令

1.定時器指令S7-200可編程控制器提供了三種定時器,分別為接通延時定時器(TON)、帶有記憶的接通延時定時器(TONR)及斷開延時定時器(TOF)。這些定時器分布于S7-200PLC的T區(qū)。

(1)接通延時定時器(TON)其梯形圖(LAD)由定時器標識符TON、啟動電平輸入端IN、時間設定輸入端PT及定時器編號Tn構成;語句表形式由定時器標識符TON、定時器編號Tn及時間設定值PT構成。如圖5-21所示:圖5-21接通延時定時器(TON) 接通延時定時器(TON)的功能原理:當定時器的啟動信號IN的狀態(tài)為0時,定時器的當前值SV=0,定時器Tn的狀態(tài)也是0(常開觸點斷開,常閉觸點閉合),定時器沒有工作。當Tn的啟動信號由0變?yōu)?時,定時器開始工作,每過一個時基時間,定時器的當前值SV=SV+1,當定時器的當前值SV等于大于定時器的設定值PT時,定時器的延時時間到了,這時定時器的狀態(tài)由0轉換為1,在定時器輸出狀態(tài)改變后,定時器繼續(xù)計時,直到SV=32767(最大值)時,才停止計時,SV將保持不變。只要SV>PT值,定時器的狀態(tài)就為1,如果不滿足這個條件,定時器的狀態(tài)應為0。

5.2.2定時器和計數(shù)器指令

操作數(shù)PT的范圍:VW、IW、QW、MW、SW、SMW、LW、T、C、AC、常數(shù)。梯形圖如圖5-22(a)所示的程序,其對應的時序圖如圖5-22(b)所示。當I0.0接通時,T33開始計數(shù),計數(shù)到設定值PT=3時,T33狀態(tài)置1,其常開觸點閉合,Q0.0有輸出;其后定時器繼續(xù)計數(shù),但不影響其狀態(tài)位。當I0.0斷開時,T33復位,當前值清0,狀態(tài)位也置0。如果I0.0的接通時間沒達到設定值就斷開了,T33跟隨復位,Q0.0不會有輸出。

(a)梯形圖 (b)時序圖圖5-22接通延時定時器編程5.2.2定時器和計數(shù)器指令

(2)帶有記憶的接通延時定時器(TONR)其梯形圖由定時器標識符TONR、啟動電平輸入端IN、時間設定輸入端PT及定時器編號Tn構成;語句表形式由定時器標識符TONR、定時器編號Tn及時間設定值PT構成。如圖5-23所示:圖5-23帶有記憶的接通延時定時器(TOR) 帶有記憶的接通延時定時器(TONR)的功能原理:此定時器的原理與接通延時定時器大體相同,當IN信號由1變?yōu)?時,則SV被復位(SV=0),Tn狀態(tài)也為0。帶有記憶接通延時定時器與接通延時定時器不同之處在于,帶有記憶接通延時定時器的SV值是可以記憶的。當IN從0變?yōu)?后,維持的時間不足以使得SV達到PT值時,IN從1變?yōu)?,這時SV可以保持,IN再次從0變?yōu)?時,SV有保持值的基礎上累積,當SV等于大于PT值時,Tn的狀態(tài)仍可由0變?yōu)?。

5.2.2定時器和計數(shù)器指令

操作數(shù)PT的范圍:VW、IW、QW、MW、SW、SMW、LW、T、C、AC、常數(shù)。梯形圖如圖5-24(a)所示的程序,其對應的時序圖如圖5-24(b)所示。當T2定時器的IN接通時,T2開始計時,直到T2的當前值等于10(100ms),這時T2的觸點接通,使Q0.0接通。其間,當IN從1變?yōu)?,T2的當前值保持不變,即所謂的記憶功能。直到I0.1觸點接通,使T2復位,Q0.0被斷開,同時T2的當前值被清零。(a)梯形圖 (b)時序圖圖5-24帶有記憶的接通延時定時器編程5.2.2定時器和計數(shù)器指令

(3)斷開延時定時器(TOF)其梯形圖(LAD)由定時器標識符TOF、啟動電平輸入端IN、時間設定輸入端PT及定時器編號Tn構成;語句表形式由定時器標識符TOF、定時器編號Tn及時間設定值PT構成。如圖5-25所示:圖5-25斷開延時定時器(TOF)斷開延時定時器(TOF)的功能原理:當定時器的啟動信號IN的狀態(tài)為1時,定時器的當前值SV=0,定時器Tn的狀態(tài)也是1,定時器沒有工作。當Tn的啟動信號由1變?yōu)?時,定時器開始工作,每過一個時基時間,定時器的當前值SV=SV+1,當定時器的當前值SV等于大于定時器的設定值PT時,定時器的延時時間到了,這時定時器的狀態(tài)由1轉換為0,在定時器輸出狀態(tài)改變后,定時器停止計時,

SV將保持不變,定時器的狀態(tài)就為0。當IN信號由0變?yōu)?后,SV被復位(SV=0),Tn狀態(tài)也變?yōu)?。

5.2.2定時器和計數(shù)器指令

操作數(shù)PT的范圍:VW、IW、QW、MW、SW、SMW、LW、T、C、AC、常數(shù)。梯形圖如圖5-26(a)所示的程序,其對應的時序圖如圖5-26(b)所示。當T32定時器的IN=1時,T32的當前值=0,T32的狀態(tài)也為1,定時器還沒有工作;當IN從1變?yōu)?時,定時器開始計時,直到T2的當前值等于3,這時T32的觸點斷開,使Q0.0端開。當IN信號由0變?yōu)?后,T32當前值復位,T32也變?yōu)?。(a)梯形圖 (b)時序圖圖5-26斷開延時定時器編程以上介紹的定時器具有不同的功能:接通延時定時器用于單一間隔的定時;帶有記憶的接通延時定時器用于累積時間間隔的計時;斷開延時定時器用于故障發(fā)生后的時間延時。

5.2.2定時器和計數(shù)器指令

TON、TONR和TOF定時器有三種分辨率,見表5-2所示:表5-2TON、TONR和TOF 定時器的分辨率

定時器類型分辨率/ms最大定時值定時器號

TONR132.767T0、T6410327.67T1~T4、T65~T681003276.7T5~T31、T69~T95

TON、TOF132.767T32、T9610327.67T33~T36、T97~T1001003276.7T37~T63、T101~T2555.2.2定時器和計數(shù)器指令

2.計數(shù)器指令S7-200可編程控制器提供了三種計數(shù)器,分別為增計數(shù)器(CTU)、減計數(shù)器(CTD)及增減計數(shù)器(CTUD)。這些定時器分布于S7-200PLC的C區(qū)。(1)

增計數(shù)器(CTU)其梯形圖由增計數(shù)器標識符CTU、計數(shù)脈沖輸入端CU、增計數(shù)器復位信號輸入端R、增計數(shù)器的設定值PV和計數(shù)器編號Cn構成;語句表形式由增計數(shù)器操作碼CTU、計數(shù)器編號Cn和增計數(shù)器的設定值PV構成。如圖5-27所示:圖5-27增計數(shù)器(CTU)增計數(shù)器(CTU)的功能原理:R=1時,當前值SV=0,Cn狀態(tài)為0;R=0時,計數(shù)器開始計數(shù)。CU端有一個輸入脈沖上升沿到來,計數(shù)器的SV=SV+1;當SV≥PV時,Cn狀態(tài)為1,CU端再有脈沖到來時,SV繼續(xù)累加,直到SV=32767時,停止計數(shù);R=1時,計數(shù)器復位,SV=0,Cn狀態(tài)為0。5.2.2定時器和計數(shù)器指令

說明:用語句表表示時,一定按CU、R、PV的順序輸入。操作數(shù)范圍:計數(shù)器編號:n=0~255CU信號范圍:I、Q、M、SM、T、C、V、S、L(位)R信號范圍:I、Q、M、SM、T、C、V、S、L(位)PV值范圍:IW、QW、MW、SMW、VW、SW、LW、AIW、T、C、常數(shù)、AC、*VD、*AC、*LD(字)

梯形圖如圖5-28(a)所示的程序,其對應的時序圖如圖5-28(b)所示。當計數(shù)器C50對CU輸入端I0.0的脈沖累加值達到3時,計數(shù)器的狀態(tài)被置1。C50的常開觸點閉合,使Q0.0被接通,直到I0.1觸點閉合,使計數(shù)器C50復位5.2.2定時器和計數(shù)器指令

(a)梯形圖 (b)時序圖圖5-28增計數(shù)器編程(2)減計數(shù)器(CTD)其梯形圖由減計數(shù)器標識符CTD、計數(shù)脈沖輸入端CD、減計數(shù)器的裝載輸入端LD、減計數(shù)器的設定值PV和計數(shù)器編號Cn構成;語句表形式由減計數(shù)器操作碼CTD、計數(shù)器編號Cn和減計數(shù)器的設定值PV構成,如圖5-29所示:5.2.2定時器和計數(shù)器指令

圖5-29減計數(shù)器(CTD)

減計數(shù)器(CTD)的功能原理:LD=1時,其計數(shù)器的設定值PV被裝入計數(shù)器的當前值寄存器,此時SV=PV,Cn狀態(tài)為0;LD=0時,計數(shù)器開始計數(shù)。CD端有一個輸入脈沖上升沿到來,計數(shù)器的SV=SV-1。當SV=0時,Cn狀態(tài)為1,并停止計數(shù);LD=1時,再一次裝入PV值之后,SV=PV,計數(shù)器復位,Cn狀態(tài)為0。說明:用語句表表示時,一定按CD、LD、PV的順序輸入。操作數(shù)范圍:計數(shù)器編號:n=0~255CD信號范圍:I、Q、M、SM、T、C、V、S、L(位)LD信號范圍:I、Q、M、SM、T、C、V、S、L(位)PV值范圍:IW、QW、MW、SMW、VW、SW、LW、AIW、T、C、常數(shù)、AC、*VD、*AC、*LD(字)5.2.2定時器和計數(shù)器指令

梯形圖如圖5-30(a)所示的程序,其對應的時序圖如圖5-30(b)所示。當I0.0觸點閉合,給C50復位端(LD)一個復位信號,使其狀態(tài)位為0,同時C50被裝入預設值(PV)3。當C50的輸入端累積脈沖達到3時,C50的當前值減到0,使狀態(tài)置1,接通Q0.0,直至I0.1觸點再閉合。(a)梯形圖 (b)時序圖圖5-30減計數(shù)器編程5.2.2定時器和計數(shù)器指令

(3)增減計數(shù)器(CTUD)其梯形圖由增減計數(shù)器標識符CTUD、增計數(shù)脈沖輸入端CU、減計數(shù)脈沖輸入端CD、增減計數(shù)器的復位端R、增減計數(shù)器的設定值PV和計數(shù)器編號Cn構成;語句表形式由增減計數(shù)器操作碼CTUD、計數(shù)器編號Cn和增減計數(shù)器的設定值PV構成。如圖5-31所示:圖5-31增減計數(shù)器(CTUD)增減計數(shù)器(CTUD)的功能原理:R=1時,當前值SV=0,Cn狀態(tài)為0;R=0時,計數(shù)器開始計數(shù):當CU端有一個輸入脈沖上升沿到來,計數(shù)器的SV=SV+1。當SV≥PV時,Cn狀態(tài)為1,CU端再有脈沖到來時,SV繼續(xù)累加,直到SV=32767時,停止計數(shù)。當CD端有一個輸入脈沖上升沿到來,計數(shù)器的SV=SV-1。當SV<PV時,Cn狀態(tài)為0,CD端再有脈沖到來時,計數(shù)器的當前值仍不斷地遞減;R=1時,計數(shù)器復位,SV=0,Cn狀態(tài)為0。5.2.2定時器和計數(shù)器指令

說明:用語句表表示時,一定按CU、CD、R、PV的順序輸入。操作數(shù)范圍:計數(shù)器編號:n=0~255CD、CU信號范圍:I、Q、M、SM、T、C、V、S、L(位)R信號范圍:I、Q、M、SM、T、C、V、S、L(位)PV值范圍:IW、QW、MW、SMW、VW、SW、LW、AIW、T、C、常數(shù)、AC、*VD、*AC、*LD(字)梯形圖如圖5-32(a)所示的程序,其對應的時序圖如圖5-32(b)所示。當增減計數(shù)器C50的增輸入端CU(I0.0)來過4個上升沿后C50的狀態(tài)位被置1,再有上升沿到來,C50繼續(xù)累加,但狀態(tài)位不變。當C50的減輸入端CD(I0.1)有上升沿到來時,C50執(zhí)行減計數(shù),如果C50的當前值小于預設值4,則C50狀態(tài)位復位,但是C50的當前值不變,直到復位端R(I0.0)的信號到來,C50當前值被清零,狀態(tài)位復位。Q0.0與C50的狀態(tài)位具有相同的狀態(tài)。

5.2.2定時器和計數(shù)器指令

(a)梯形圖 (b)時序圖圖5-32增減計數(shù)器編程

5.2.3邏輯堆棧指令

S7-200PLC使用一個9層的堆棧來處理所有的邏輯操作。堆棧是一組存放和取出數(shù)據的暫存單元,特點是“先進后出,后進先出”。每進行一次入棧操作,新值放入棧頂,棧底值丟失,而每進行一次出棧操作,棧頂值彈出,棧底值補進隨機數(shù)。邏輯堆棧指令一般用來完成對觸點的復雜連接。西門子公司的系統(tǒng)手冊把ALD、OLD、LPS、LRD、LPP和LDS等指令都歸納為邏輯堆棧指令,主要用來語句表編程,使用梯形圖或功能塊圖編程時,系統(tǒng)會自動插入相關的邏輯堆棧指令。ALD和OLD前面已做介紹,這里只介紹其他四個指令。(1)邏輯入棧指令LPS其語句表形式為:LPS,不帶操作數(shù)。執(zhí)行該指令將復制棧頂?shù)闹挡⑦@個值推入棧頂,原堆棧中各級棧值依次下壓一級,棧底值將丟失。(2)邏輯讀棧指令LRD其語句表形式為:LRD,不帶操作數(shù)。執(zhí)行該指令將把第二級棧的值復制到棧頂,堆棧沒有進行入棧、出棧操作,只是棧頂?shù)闹当坏诙墬5闹蹈采w。(3)邏輯出棧指令LPP其語句表形式為:LPP,不帶操作數(shù)。執(zhí)行該指令將把棧頂?shù)闹祻棾?,原堆棧各級棧值依次上彈一級,堆棧第二級的值成為新的棧頂值,而棧底值變?yōu)椴淮_定數(shù)值。5.2.3邏輯堆棧指令

(4)裝入堆棧指令LDS其語句表形式為:LDSn,操作數(shù)n表示第n級棧,范圍是0~8。執(zhí)行該指令將復制堆棧中的第n級的棧值到棧頂,原堆棧各級棧值依次下壓一級,棧底值將丟失。LPS、LRD、LPP和LDS邏輯指令的堆棧操作過程如圖5-33所示:5.2.3邏輯堆棧指令

圖5-33LPS、LRD、LPP和LDS邏輯指令的操作過程(“/”表示不定值)5.2.4比較操作指令

比較操作指令按操作數(shù)類型可分為字節(jié)比較、字比較、雙字比較和實數(shù)比較。比較指令的梯形圖由比較數(shù)1(IN1)、比較數(shù)2(IN2)、比較關系符和比較觸點構成。其語句表形式由比較操作碼(字節(jié)比較LDB、字比較LDW、雙字比較LDD和實數(shù)比較LDR)、比較關系符、比較數(shù)1(IN1)和比較數(shù)2(IN2)構成。比較符有:等于(==)、大于(>)、小于(<)、不等(<>)、大于等于(>=)、小于等于(<=),相應的梯形圖和語句表格式如圖5-34所示:圖5-34比較操作指令(比較符為“等于”時)

比較操作指令的功能:當比較數(shù)1(IN1)和比較2(IN2)的關系符合比較符的條件時,比較觸點閉合,后面的電路被接通。否則比較觸點斷開,后面的電路不接通。5.2.4比較操作指令

操作數(shù)范圍:字節(jié)比較IN1/IN2:IB、QB、MB、SMB、VB、SB、LB、AC、常數(shù)、*VD、*AC、*LD字比較IN1/IN2:IW、QW、MW、SMW、T、C、VW、LW、AIW、AC、常數(shù)、*VD、*AC、*LD雙字比較IN1/IN2:ID、QD、MD、SMD、VD、LD、HSC、AC、常數(shù)、*VD、*AC、*LD實數(shù)比較IN1/IN2:ID、QD、MD、SMD、VD、LD、AC、常數(shù)、*VD、*AC、*LD5.3程序控制指令

5.3.1空操作指令

5.3.2結束及暫停指令

5.3.3警戒時鐘刷新指令

5.3.4跳轉及標號指令

5.3.5子程序指令

5.3.6循環(huán)指令

5.3.7順序控制繼電器指令

返回5.3.1空操作指令

空操作指令的梯形圖由標識符“NOP”和n構成,語句表形式由操作碼“NOP”和操作數(shù)n構成,如圖5-35所示。圖5-35空操作指令空操作指令的功能:本指令不作任何的邏輯操作,故稱空操作,也不使用繼電器,無須操作數(shù)。該指令應用在程序中留出一個地址,以便調試程序時插入指令,還可用于微調掃描時間。操作數(shù)n的范圍為0~255。5.3.2結束與暫停指令

結束指令的梯形圖由結束條件和標識符“END”構成,語句表形式由指令操作碼“END”構成,如圖5-36所示。結束指令的功能:可以根據前面的邏輯關系,終止用戶主程序。此結束指令為有條件結束指令,可以用在主程序中使用,但是不能在子程序或中斷程序中使用,STEP7-Micro/WIN32軟件會自動在主程序結尾添加無條件結束語句。暫停指令的梯形圖由暫停條件和標識符“STOP”構成,語句表形式由指令操作碼“STOP”構成,如圖5-37所示。暫停指令的功能:暫停指令能夠引起CPU方式發(fā)生變化,從RUN到STOP,從而可以立即終止程序的執(zhí)行。如果暫停指令在中斷程序中執(zhí)行,那么該中斷立即終止并且忽略所有掛起的中斷,繼續(xù)掃描程序的剩余部分,在本次掃描的最后完成CPU從RUN到STOP的轉變。 圖5-36結束指令圖5-37暫停指令圖5-38警戒時鐘刷新指令

5.3.3警戒時鐘刷新指令

警戒時鐘刷新指令又稱看門狗復位指令(WatchDogReset),其梯形圖由看門狗復位條件和標識符“WDR”構成,語句表形式由操作碼“WDR”構成,如圖5-38所示。警戒時鐘刷新指令的功能:允許CPU的看門狗定時器重新被觸發(fā),在沒有看門狗錯誤的情況下這就可以增加一次掃描所允許的時間。說明:使用WDR指令時要小心,因為如果你用循環(huán)指令去阻止掃描完成或過度地延遲掃描完成時間,那么在終止本次掃描之前,下列操作過程將被禁止:l

通訊(自由端口方式除外)。l

I/O更新(立即I/O除外)。l

強制更新。l

SM位更新(SM0、SM5~SM29不能被更新)。l

運行時間診斷。l

由于掃描時間超過25秒10ms和100ms定時器將不會正確累計時間。l

在中斷程序中的STOP指令。5.3.3警戒時鐘刷新指令

注意:如果希望掃描超過300ms或者希望中斷事件而該中斷事件能使掃描時間大于300ms那么樣最好WDR指令來重新觸發(fā)看門狗定時器;如果將S7-200CPU方式開關切到STOP位置則在1.4秒里CPU轉到STOP方式。5.3.4跳轉及標號指令

在程序執(zhí)行時,由于條件的不同,可能會產生一些分支,這時就需要用跳轉操作來實現(xiàn),跳轉操作由跳轉及標號指令兩部分構成。跳轉指令的梯形圖由跳轉條件、標識符“JMP”和跳轉標號n構成,語句表形式由操作碼“JMP”和跳轉標號n構成;標號指令的梯形圖由標識符“LBL”和標號n構成,語句表形式由操作碼“LBL”和標號n構成。如圖5-39所示。

圖5-39跳轉及標號指令指令功能:跳轉指令(JMP)可使程序流程轉到同一程序中的具體標號(n)處,當這種跳轉執(zhí)行時,棧頂?shù)闹悼偸沁壿?。標號指令(LBL)標記跳轉目的地的位置(n)。操作數(shù)n:常數(shù)0到255,數(shù)據類型WORD。跳轉和標號指令必須用在主程序子程序或中斷程序中不能從主程序跳到子程序或中斷程序同樣不能從子程序或中斷程序跳出。

5.3.4跳轉及標號指令

圖5-40是跳轉及標號指令的應用舉例。當I0.0=1時,JMP跳轉條件成立,程序就跳轉執(zhí)行LBL標號以后的指令,而在JMP和LBL之間的指令一概不執(zhí)行,哪怕在這個過程中I0.1=1,Q0.0也不會有輸出;當JMP跳轉條件不成立時,如果I0.1接通,則Q0.0會有輸出。圖5-40跳轉及標號指令應用編程示例

5.3.5子程序指令

子程序指令由子程序調用及返回指令兩部分組成。子程序調用指令的梯形圖由子程序調用允許端EN、子程序名構成,語句表形式由操作碼“CALL”和子程序名構成;子程序返回指令的梯形圖由子程序返回條件和返回標識符“RET”構成,語句表形式由操作碼“CRET”構成。如圖5-41所示。

圖5-41子程序指令子程序指令的功能:子程序調用指令把程序控制權交給子程序SBR_0,可以帶參數(shù)或不帶參數(shù)。在STEP7-Micro/WIN32軟件中,可以通過選擇Edit>Insert>Subroutine加入一個子程序;有條件子程序返回指令(CRET)根據該指令前面的邏輯關系決定是否終止子程序,執(zhí)行完子程序以后控制程序回到子程序調用指令的下一條指令。

5.3.6循環(huán)指令

循環(huán)指令由FOR指令和NEXT指令兩部分構成,F(xiàn)OR和NEXT指令必須成對使用。FOR指令的梯形圖由標識符“FOR”、指令允許端EN、循環(huán)起始值INIT、循環(huán)終止值FINAL、循環(huán)計數(shù)器INDX構成;語句表形式由操作碼“FOR”、循環(huán)計數(shù)器INDX、循環(huán)起始值INIT和循環(huán)終止值FINAL構成。NEXT指令的梯形圖由標識符“NEXT”構成,語句表形式由操作碼“NEXT”構成。如圖5-42所示:

圖5-42循環(huán)指令

5.3.6循環(huán)指令

FOR指令和NEXT指令必須成對使用。FOR標記循環(huán)的開始,NEXT標記循環(huán)的結束。FOR標記在FOR和NEXT之間執(zhí)行指令,必須給FOR指令指定當前循環(huán)計數(shù)(INDX)、初值(INIT)和終值(FINAL)。NEXT指令標記循環(huán)的結束并且置棧頂值為1。例如給定初值(INIT)為1終值(FINAL)為10,那么隨著當前計數(shù)值(INDX)從1增加到10,F(xiàn)OR與NEXT之間的指令被執(zhí)行10次。如果初值大于終值那么循環(huán)體不被執(zhí)行每執(zhí)行一次循環(huán)體,當前計數(shù)值增加1,并且將其結果同終值作比較,如果大于終值,那么終止循環(huán)。循環(huán)指令可以嵌套,嵌套最多可以有8層。ENO是指令盒的布爾量輸出,如果指令盒的輸入有能流并且執(zhí)行沒有錯誤,那么ENO輸出就把能流傳到下一個指令盒。如果執(zhí)行錯誤,則停止程序的執(zhí)行,ENO可以作為允許位表示指令成功執(zhí)行。同時ENO也為出錯或溢出等標志位的輸出,它會影響到特殊寄存器位。

5.3.6循環(huán)指令

循環(huán)指令的操作數(shù)范圍如下:INDX:VW、IW、QW、MW、SW、SMW、LW、T、C、AC。INIT:VW、IW、QW、MW、SW、SMW、LW、T、C、AC、AIW、常數(shù)。FINAL:VW、IW、QW、MW、SW、SMW、LW、T、C、AC、AIW、常數(shù)。圖5-43是循環(huán)指令的應用舉例。當I0.0為ON時,①所指示的外循環(huán)執(zhí)行2次,由VW100累積循環(huán)次數(shù)。當I0.1為ON時,外循環(huán)每執(zhí)行一次,②所指示的內循環(huán)執(zhí)行3次,由VW110累積循環(huán)次數(shù)。

5.3.6循環(huán)指令

圖5-43循環(huán)指令應用編程舉例

5.3.7順序控制繼電器指令

順序控制繼電器指令包括三條指令:順控開始指令(SCR)、順控轉換指令(SCRT)和順控結束指令(SCRE)。順控程序段從SCR開始,到SCRE結束。 (1)

順控開始指令(SCR)其梯形圖由標識符“SCR”和順控繼電器Sn構成;語句表形式由操作碼“LSCR”和順控繼電器Sn構成。如圖5-44所示。順控開始指令功能:當順控繼電器Sn=1時,啟動SCRSn段的順控程序,順控程序從標記SCRSn開始,到SCRE指令結束。在執(zhí)行SCRSn段順控程序之前,一定要將Sn置位。 (2)

順控轉換指令(SCRT)其梯形圖由標識符“SCRT”和順控繼電器Sn構成;語句表形式由操作碼“SCRT”和順控繼電器Sn構成。如圖5-45所示。順控轉換指令的功能:在執(zhí)行SCRE之前,SCRT指令確定下一個SCR位,即設定下一個Sn位。在執(zhí)行SCRT指令時,就結束前一個SCR順控程序段,而啟動下一個SCR順控程序段。 (3)

順控結束指令(SCRE)其梯形圖由標識符“SCRE”構成;語句表形式由操作碼“SCRE”構成。如圖5-46所示。

5.3.7順序控制繼電器指令

順控結束指令的功能:執(zhí)行SCRE指令就是結束本SCRSn的順控程序段。

圖5-44順控開始指令圖5-45順控轉換指令圖5-46順控結束指令順序控制繼電器有一個使能位(即狀態(tài)位Sn),從SCR開始到SCRE結束的所有指令組成一個SCR段。SCR是一個順序控制繼電器段的開始,當使能位Sn=1時,允許SCR段開始工作。SCR段必須使用SCRE指令結束。SCRT指令執(zhí)行SCR段的轉移。它一方面對下一個SCR使能位置位,以使下一個SCR段工作;另一方面又對本段SCR使能位復位,停止本段SCR工作。SCR指令只能用在主程序中,不可用在子程序和中斷服務程序中。順序控制繼電器的編號為:S0.0~S31.7。

5.3.7順序控制繼電器指令

順控結束指令的功能:執(zhí)行SCRE指令就是結束本SCRSn的順控程序段。

圖5-44順控開始指令圖5-45順控轉換指令圖5-46順控結束指令順序控制繼電器有一個使能位(即狀態(tài)位Sn),從SCR開始到SCRE結束的所有指令組成一個SCR段。SCR是一個順序控制繼電器段的開始,當使能位Sn=1時,允許SCR段開始工作。SCR段必須使用SCRE指令結束。SCRT指令執(zhí)行SCR段的轉移。它一方面對下一個SCR使能位置位,以使下一個SCR段工作;另一方面又對本段SCR使能位復位,停止本段SCR工作。SCR指令只能用在主程序中,不可用在子程序和中斷服務程序中。順序控制繼電器的編號為:S0.0~S31.7。

5.4PLC初步編程指導

5.4.1軟件設計概述

5.4.2梯形圖和語句表編程簡介返回5.4.1軟件設計概述

一、軟件設計的基本要求軟件設計的基本要求由PLC本身的特點以及它在工業(yè)控制中要求完成的具體控制功能決定的,要求如下:

(1)

緊密結合生產工藝每個控制系統(tǒng)都是為了完成一定的生產過程控制而設計的。不同的生產工藝,具有不同的控制功能。哪怕是相同的生產過程,由于各設備的工藝參數(shù)都不一樣,控制實現(xiàn)的方式也就各不相同??梢哉f各種控制邏輯、運算都是由生產工藝決定的,所以程序設計人員都必須嚴格遵守生產工藝的具體要求來設計應用軟件。

(2)

熟悉控制系統(tǒng)的硬件結構軟件系統(tǒng)是由硬件系統(tǒng)決定的,不同系列的硬件系統(tǒng),不可能采用同一種語言進行程序設計。即使相同的語言形式,其具體的指令也不一定相同。偶爾雖然可以選擇同一系列的可編程控制器,但由于型號或系統(tǒng)配置的不同,也要有不同的應用程序與之相對應,所以程序設計人員不能拋開硬件結構而單獨地考慮軟件,而應根據硬件系統(tǒng)而編制相應的應用程序。

5.4.1軟件設計概述

(3)

具備計算機和自動化兩方面的知識可編程控制器是以微處理器為核心的控制設備,無論是硬件還是軟件都離不開計算機技術,控制系統(tǒng)的許多知識也是從計算機技術衍變出來的;同時,控制功能的實現(xiàn)也離不開自動控制技術,所以,程序設計人員必須具備計算機和自動化控制兩方面的知識。二、軟件設計的基本原則可編程控制器系統(tǒng)的軟件設計是以系統(tǒng)要實現(xiàn)的工藝要求、硬件組成和操作方式等條件為依據來進行的,一般來說軟件設計人員都要遵從以下幾個基本原則:

(1)設置了必要的參數(shù)后,對CPU外圍設備的管理又系統(tǒng)自動完成。程序設計一般只需要考慮用戶程序的設計。(2)要對輸入/輸出信號做統(tǒng)一操作,確定各個信號在一個掃描周期內的唯一狀態(tài),避免由同一個信號因狀態(tài)的不同而引起的邏輯混亂。(3)由于CPU在每個周期內都固定進行某些窗口服務,占用一定的機器時間,所以周期時間不能無限制的縮短。

5.4.1軟件設計概述

(4)定時器的時間設定值不能小于周期掃描時間,并且在定時器時間設定值不是平均周期時間的整數(shù)倍時,可能會帶來定時誤差。 (5)用戶程序中如果多次對同一個參數(shù)進行賦值,則只有最后一次操作有效,前幾次操作不影響實際輸出。 以上幾條是可編程控制器程序設計的基本原則,體現(xiàn)了可編程控制器本身的特點以及與其他控制設備的區(qū)別。在程序設計過程中,編程人員應時刻牢記這幾點。

三、軟件設計的基本內容可編程控制器程序設計的基本內容一般來說包括:參數(shù)表的定義、程序框圖的繪制、程序清單的編制和程序說明書的編寫四項內容。

(1)

參數(shù)表的定義所謂的參數(shù)表就是我們按照一定的格式對所設計系統(tǒng)的各個接口參數(shù)進行規(guī)定和整理出來的表格。PLC編程編程所用的參數(shù)表所包含的內容基本相同,一般由輸入信號表、輸出信號表、中間標志表和儲存單元表構成。

5.4.1軟件設計概述

輸入/輸出表要明顯地標出模塊的位置、信號端子號和信號的有效狀態(tài)等等;中間標志表要給出信號地址、信號處理和信號的有效狀態(tài)等;存儲單元表要含有信號地址和信號名稱等。各個信號一般按信號地址從小到大的順序排列??傊?,參數(shù)表的定義盡量要便于使用,盡可能詳細易懂。

(2)程序框圖的繪制程序框圖是根據工藝流程而繪制出來的控制過程方框圖,包括程序結構框圖和控制功能框圖。程序結構框圖是全部應用程序中各功能單元的結構形式,可以根據它去了解所有控制功能在整個程序中的位置;而功能框圖描述了某種控制在程序中的具體實現(xiàn)方法以及它的控制信號流程。繪制程序框圖相當重要,設計者可以根據程序框圖編制實際的控制程序,而使用者也可以根據程序框圖方便地閱讀程序清單。所以,設計程序時,一般要求繪制程序框圖。應先繪制程序結構框圖,再詳細繪制各個控制功能框圖,實現(xiàn)各個控制功能。程序結構框圖和功能框圖二者缺一不可。

5.4.1軟件設計概述

(3)

程序清單的編制可以說這一步是程序設計中最主要并且也是最重要的階段,程序清單編制的過程也就是各個控制功能具體實現(xiàn)的過程。設計者首先要根據PLC來選擇相應的編程語言,因為一般所選用的PLC不同,其用于編程的指令系統(tǒng)也不同。選擇了編程語言后,就可以根據程序框圖所規(guī)定的順序和功能編寫程序清單了。程序編制完后就可以對它進行調試,直到適應工藝要求為止。 (4)

程序說明書的編寫程序說明書是設計者對整個程序內容的注釋性的綜合說明,目的是為了方便使用者了解其程序的基本結構和某些問題的處理方法。程序設計者需在說明書中大體闡釋下自己的程序設計的依據、基本結構、各功能模塊的原理,以及程序閱讀方法和使用過程中應該注意的一些事項,此外還應該包含程序中所使用的注釋符號、文字編寫的含義和程序的測試情況。一個好的程序說明書不但能幫助使用者學習和應用,也為將來的設備維修和改造帶來了方便。

5.4.2梯形圖和語句表編程簡介

在可編程控制器中有多種可選的程序設計語言,其中包括梯形圖、語句表、順序功能流程圖和功能塊圖等等。梯形圖和語句表是可編程控制器基本的程序設計語言,通常由一系列指令組成,用這些指令可以完成大多數(shù)簡單的控制功能,例如,可以代替繼電器、計數(shù)器、計時器完成順序控制和邏輯控制等,通擴展過或增強指令集,它們也能執(zhí)行其它的基本操作。供S7-200使用的STEP7-Micro/Win32系列PLC支持SIMATIC和IEC1131-3兩種基本類型的指令集,SIMATIC是PLC專用的指令集,執(zhí)行速度快,可使用梯形圖、語句表、功能塊圖編程語言。IEC1131-3是可編程控制器編程語言標準,IEC1131-3指令集中指令較少,只能使用梯形圖和功能塊圖兩種編程語言。SIMATIC指令集的某些指令不是IEC1131-3中的標準指令。SIMATIC指令和IEC1131-3中的標準指令系統(tǒng)并不兼容。 (1)

梯形圖編程梯形圖源于繼電器邏輯控制系統(tǒng)的描述。在工業(yè)過程控制領域,電氣技術人員對繼電器邏輯控制技術較為熟悉,因此,由這種邏輯控制技術發(fā)展而來的梯形圖受到了歡迎,并得到了廣泛的應用。

5.4.2梯形圖和語句表編程簡介

梯形圖與操作原理圖相對應,具有直觀性和對應性。與原有的繼電器邏輯控制技術的不同點是,梯形圖中的能流(PowerFlow)不是實際意義的電流,內部的繼電器也不是實際存在的繼電器。因此,應用時,需與原有繼電器邏輯控制技術的有關概念區(qū)別對待。在PLC的梯形圖編程中,應用了兩個基本概念,我們應該掌握。(1)軟繼電器PLC的梯形圖設計,主要是利用“軟繼電器”線圈的“吸—放”功能以及觸點的“通—斷”功能來進行的。實際上,PLC內部并沒有繼電器那樣的實體,只有內部寄存器中每位觸發(fā)器。根據計算機對信息的“存—取”原理來讀出觸發(fā)器的狀態(tài),或在一定條件下改變它的狀態(tài)。對“軟繼電器”的線圈定義號只能有一個,而對它的接點狀態(tài),可作無數(shù)次的讀出,既可常開又可常閉。(2)能流在梯形圖中,并沒有真實的電流流動。為了便于分析PLC的周期掃描原理以及信息存儲空間分布的規(guī)律,假想在梯形圖中有“電流”流動,這就是“能流”?!澳芰鳌痹谔菪螆D中只能作單方向流動———從左向右流動,層次的改變只能先上后下。

5.4.2梯形圖和語句表編程簡介

梯形圖的編程規(guī)則:1、每個繼電器的線圈和它的觸點均用同一編號,每個元件的觸點使用時沒有數(shù)量限制。2、梯形圖每一行都是從左邊開始,線圈接在最右邊(線圈右邊不允許再有接觸點)。3、線圈不能直接接在左邊母線上。4、在一個程序中,同一編號的線圈如果使用兩次,稱為雙線圈輸出,它很容易引起誤操作,應盡量避免。5、在梯形圖中沒有真實的電流流動,為了便于分析PLC的周期掃描原理和邏輯上的因果關系,假定在梯形圖中有“電流”流動,這個“電流”只能在梯形圖中單方向流動——即從左向右流動,層次的改變只能從上向下。(2)語句表編程語句表是用助記符來表達PLC的各種控制功能的。它類似于計算機的匯編語言,但又比匯編語言直觀易懂,編程簡單,因此也是一種廣泛應用的編程語言。它可以使用簡易的編程器編程,但是比較抽象,一般與梯形圖語言配合使用,互為補充。目前,大多數(shù)PLC都具有語句表編程功能,但是各個廠家生產的PLC所支持的語句表指令一般不相同,所以不能兼容。

5.4.2梯形圖和語句表編程簡介

對于語句表編程來說,語句是用戶程序的基本單元,每條語句都規(guī)定了CPU該如何動作,實現(xiàn)什么功能。PLC的語句表由操作碼和操作數(shù)構成:操作碼操作數(shù)…操作碼告訴CPU要執(zhí)行的功能,操作數(shù)提供執(zhí)行過程中所需的參數(shù)。應該注意的是,有的操作碼是沒有操作數(shù)的。圖5-48是語句表編程的一個例子:圖5-48語句表編程舉例

5.4.2梯形圖和語句表編程簡介

(3)梯形圖與語句表編程的區(qū)別利用PLC指令對梯形圖編程時,可以把整個梯形圖程序看成由許多的網絡塊組成,而每個網絡塊都其始于左母線。所有的網絡塊組合在一起就是一個梯形圖程序,這就是S7-200PLC編程的特點。梯形圖程序可以通過編程軟件STEP7-Mirco/Win32直接轉換為語句表形式。在用語句表編程時,也允許以網絡塊(通過關鍵字NETWORK)為單位進行編程。這種情況下,語句表程序與梯形圖程序基本上是一一對應的,是可以通過軟件互換的。但是,假如不是以每個獨立的網絡喀為單位編程的,而是連續(xù)編寫,那么通過編程軟件STEP7-Mirco/Win32是不能將梯形圖程序和語句表程序相互轉換的,這點一定要注意。梯形圖是使用最多的編程語言,它非常直觀易懂,對每個人都很適用,特別熟練的設計人員在某些情況下會直接用語句表編程,雖然編寫的程序比較簡短,但是不直觀。兩種編程形式都很重要,大家一定都要掌握,特寫是會手工把一個梯形圖程序轉換為語句表程序,這對于程序的理解很有幫助。

5.5簡單程序編制

5.5.1閃爍電路

5.5.2報警電路

5.5.3啟動保持和停止電路

5.5.4延時通斷電路

5.5.5脈沖寬度可控制電路

5.5.6長定時電路

返回5.5.1閃爍電路

閃爍效果為一個燈泡的

溫馨提示

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

評論

0/150

提交評論