電氣控制與PLC_第1頁
電氣控制與PLC_第2頁
電氣控制與PLC_第3頁
電氣控制與PLC_第4頁
電氣控制與PLC_第5頁
已閱讀5頁,還剩81頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、教學內(nèi)容:教學內(nèi)容: 5.1 5.1 基本指令基本指令 5.2 5.2 程序控制類指令程序控制類指令 5.3 PLC5.3 PLC的編程及應用的編程及應用 u S7-200 PLC的基本指令的基本指令多用于開關(guān)量邏輯控制多用于開關(guān)量邏輯控制,本節(jié)著重介紹梯形圖指令和語句表指令,并討論本節(jié)著重介紹梯形圖指令和語句表指令,并討論基本指令的功能及編程方法?;局噶畹墓δ芗熬幊谭椒ā?u 編程時,應注意各操作數(shù)的數(shù)據(jù)類型及數(shù)值范編程時,應注意各操作數(shù)的數(shù)據(jù)類型及數(shù)值范圍。圍。CPU對非法操作數(shù)將生成編譯錯誤代碼。對非法操作數(shù)將生成編譯錯誤代碼。 u 基本邏輯指令在語句表語言中是指基本邏輯指令在語句表語

2、言中是指對位存儲單元對位存儲單元的簡單邏輯運算,在梯形圖中是指的簡單邏輯運算,在梯形圖中是指對觸點對觸點的簡單連的簡單連接和接和對標準線圈對標準線圈的輸出。的輸出。u S7-200可編程序控制器使用一個可編程序控制器使用一個邏輯堆棧邏輯堆棧來分析來分析控制邏輯,用語句表編程時要根據(jù)這一堆棧邏輯進控制邏輯,用語句表編程時要根據(jù)這一堆棧邏輯進行組織程序,用相關(guān)指令來實現(xiàn)堆棧操作,用梯形行組織程序,用相關(guān)指令來實現(xiàn)堆棧操作,用梯形圖和功能框圖時,程序員不必考慮主機的這一邏輯,圖和功能框圖時,程序員不必考慮主機的這一邏輯,這兩種編程工具自動地插入必要的指令來處理各種這兩種編程工具自動地插入必要的指令來

3、處理各種堆棧邏輯操作。堆棧邏輯操作。u S7-200S7-200可編程序控制器的主機邏輯堆棧結(jié)構(gòu)如表可編程序控制器的主機邏輯堆棧結(jié)構(gòu)如表1 1所示。所示。 邏輯堆棧結(jié)構(gòu)是由九個堆棧邏輯堆棧結(jié)構(gòu)是由九個堆棧存儲器位組成的串聯(lián)堆棧,棧頂存儲器位組成的串聯(lián)堆棧,棧頂是布爾型數(shù)據(jù)進出堆棧的必由之是布爾型數(shù)據(jù)進出堆棧的必由之路。進棧時,數(shù)據(jù)由棧頂壓入,路。進棧時,數(shù)據(jù)由棧頂壓入,堆棧中原來所存的數(shù)據(jù)被串行下堆棧中原來所存的數(shù)據(jù)被串行下移一格,如果原來移一格,如果原來STACKSTACK(堆疊)(堆疊)8 8中存有數(shù)據(jù),則這數(shù)據(jù)被推出堆中存有數(shù)據(jù),則這數(shù)據(jù)被推出堆棧而自動丟失。出棧時,數(shù)據(jù)從棧而自動丟失。

4、出棧時,數(shù)據(jù)從棧頂被取出,所有數(shù)據(jù)串行上移棧頂被取出,所有數(shù)據(jù)串行上移一格,一格,STACK 8STACK 8中隨機地裝入一中隨機地裝入一個數(shù)值。個數(shù)值。表1邏輯堆棧結(jié)構(gòu)堆棧結(jié)構(gòu)堆棧結(jié)構(gòu)名稱名稱說明說明S0STACK0第一級堆棧第一級堆棧 S1STACK1第二級堆棧第二級堆棧S2STACK2第三級堆棧第三級堆棧S3STACK3第四級堆棧第四級堆棧S4STACK4第五級堆棧第五級堆棧S5STACK5第六級堆棧第六級堆棧S6STACK6第七級堆棧第七級堆棧S7STACK7第八級堆棧第八級堆棧S8STACK8第九級堆棧第九級堆棧棧頂棧頂 棧頂棧頂STACK 0STACK 0在此邏輯堆棧的位運算中兼有

5、累加器在此邏輯堆棧的位運算中兼有累加器的作用,存放第一操作數(shù)。對于簡單邏輯指令,通的作用,存放第一操作數(shù)。對于簡單邏輯指令,通常是進棧操作和一些最簡單的位運算,這些運算是常是進棧操作和一些最簡單的位運算,這些運算是棧頂與第二級堆棧的內(nèi)容進行與、或、非等邏輯運棧頂與第二級堆棧的內(nèi)容進行與、或、非等邏輯運算。對于復雜指令,可以是堆棧中的其他數(shù)據(jù)位直算。對于復雜指令,可以是堆棧中的其他數(shù)據(jù)位直接進行運算,結(jié)果經(jīng)棧頂彈出。接進行運算,結(jié)果經(jīng)棧頂彈出。 基本邏輯指令主要包括標準觸點指令、正負跳變基本邏輯指令主要包括標準觸點指令、正負跳變指令、置位和復位指令等,主要是與位相關(guān)的輸入指令、置位和復位指令等,

6、主要是與位相關(guān)的輸入輸出及觸點的簡單連接。輸出及觸點的簡單連接。 1. 標準觸點指令標準觸點指令u梯形圖中常開和常閉觸點指令用觸點表示,常閉觸點中帶梯形圖中常開和常閉觸點指令用觸點表示,常閉觸點中帶有有“/ /”符號。當存儲器某地址的位值為符號。當存儲器某地址的位值為1 1時,則與之對應時,則與之對應的常開觸點的位值也為的常開觸點的位值也為1 1,表示常開觸點閉合;而與之對,表示常開觸點閉合;而與之對應的常閉觸點的位值為應的常閉觸點的位值為0 0,表示常開觸點斷開。,表示常開觸點斷開。u語句表中的標準觸點指令有語句表中的標準觸點指令有LDLD、LDNLDN、A A、ANAN、O O、ONON。

7、這。這些指令對存儲器位在邏輯堆棧中進行操作。些指令對存儲器位在邏輯堆棧中進行操作。u 由于堆棧存儲單元數(shù)的限制,語句表中由于堆棧存儲單元數(shù)的限制,語句表中A A、O O、ANAN、ONON指指令最多可以連用有限次。同樣,梯形圖中,最多一次串聯(lián)令最多可以連用有限次。同樣,梯形圖中,最多一次串聯(lián)或并聯(lián)的觸點數(shù)也有一定限制或并聯(lián)的觸點數(shù)也有一定限制u 標準觸點指令中,操作數(shù)的數(shù)據(jù)類型為標準觸點指令中,操作數(shù)的數(shù)據(jù)類型為BOOLBOOL型,操作數(shù)型,操作數(shù)編址范圍可以是:編址范圍可以是:I I、Q Q、M M、SMSM、T T、C C、S S、V V、L L。 (1 1)裝入常開觸點指令:)裝入常開觸

8、點指令:LDLD 表示一個邏輯梯級的編程開始。在梯形圖中,每個從左母表示一個邏輯梯級的編程開始。在梯形圖中,每個從左母線開始的單一邏輯行、每個程序塊的開始、功能方框的輸入線開始的單一邏輯行、每個程序塊的開始、功能方框的輸入端都必須使用端都必須使用LDLD和和LDNLDN這兩條指令。以常開觸點開始時用這兩條指令。以常開觸點開始時用LDLD指令,以常閉觸點開始時則用指令,以常閉觸點開始時則用LDNLDN指令。本指令對各類內(nèi)部指令。本指令對各類內(nèi)部編程元件的常開觸點都適用。編程元件的常開觸點都適用。指令格式:指令格式:LD bitLD bit; 例例:LD I0.2:LD I0.2(2 2)裝入常閉

9、觸點指令:)裝入常閉觸點指令:LDN LDN 每個以常閉觸點開始的邏輯行都使用這一指令,各類內(nèi)部每個以常閉觸點開始的邏輯行都使用這一指令,各類內(nèi)部編程元件的常閉觸點都適用。編程元件的常閉觸點都適用。指令格式:指令格式:LDN bitLDN bit; 例:例:LDN I0.2 LDN I0.2 (3 3)與,串聯(lián)常開觸點指令:)與,串聯(lián)常開觸點指令:A A 表示觸點的串聯(lián)編程。串聯(lián)一個常開觸點。由于堆棧存儲表示觸點的串聯(lián)編程。串聯(lián)一個常開觸點。由于堆棧存儲器數(shù)量限制,梯形圖中,一次最多可有七個常開觸點串聯(lián)。器數(shù)量限制,梯形圖中,一次最多可有七個常開觸點串聯(lián)。指令格式:指令格式:A bitA bi

10、t; 例:例: A M2.4 A M2.4 (4 4)與非,串聯(lián)常閉觸點指令:)與非,串聯(lián)常閉觸點指令:AN AN 即在梯形圖中串聯(lián)一個常閉觸點。在一個邏輯行中,最多即在梯形圖中串聯(lián)一個常閉觸點。在一個邏輯行中,最多可以連用六次。可以連用六次。指令格式:指令格式:AN bitAN bit; 例:例: AN M2.4 AN M2.4 (5 5)或,并聯(lián)常開觸點指令:)或,并聯(lián)常開觸點指令:O O 表示觸點的并聯(lián)編程。并聯(lián)一個常開觸點。在梯形圖中,表示觸點的并聯(lián)編程。并聯(lián)一個常開觸點。在梯形圖中,一次最多可以有七個觸點相互并聯(lián)。一次最多可以有七個觸點相互并聯(lián)。指令格式:指令格式:O bitO bi

11、t; 例:例: O M2.6 O M2.6 (6 6)非或,并聯(lián)常閉觸點指令:)非或,并聯(lián)常閉觸點指令:ON ON 并聯(lián)一個常閉觸點。在梯形圖中,一次最多可以連用六次。并聯(lián)一個常閉觸點。在梯形圖中,一次最多可以連用六次。指令格式:指令格式:ON bitON bit; 例:例: ON M2.6ON M2.6 u 在語句表中,這幾條指令的執(zhí)行對邏輯堆棧的影響:在語句表中,這幾條指令的執(zhí)行對邏輯堆棧的影響: CPUCPU執(zhí)行執(zhí)行LDLD指令,首先,將指令操作數(shù)的位(指令,首先,將指令操作數(shù)的位( bitbit)值裝入堆棧棧頂,)值裝入堆棧棧頂,故也稱棧裝載指令。然后將堆棧其余各級內(nèi)容下壓一級,直至最

12、后一級內(nèi)故也稱棧裝載指令。然后將堆棧其余各級內(nèi)容下壓一級,直至最后一級內(nèi)容丟失。容丟失。 執(zhí)行執(zhí)行A A指令,將操作數(shù)的位值指令,將操作數(shù)的位值“與與”棧頂值,運算結(jié)果仍存入棧頂,堆棧頂值,運算結(jié)果仍存入棧頂,堆棧沒有壓入和彈出操作。棧沒有壓入和彈出操作。 執(zhí)行執(zhí)行O O指令,將操作數(shù)的位值指令,將操作數(shù)的位值“或或”棧頂值,運算結(jié)果仍存入棧頂,堆棧頂值,運算結(jié)果仍存入棧頂,堆棧沒有壓入和彈出操作。棧沒有壓入和彈出操作。 執(zhí)行執(zhí)行LDNLDN、ANAN、ONON指令,將操作數(shù)的位值取反后,再作相應的指令,將操作數(shù)的位值取反后,再作相應的“裝載裝載”、“與與”、“或或”操作。操作。u指令指令LD

13、 I0.1LD I0.1(假設(假設I0.1=1I0.1=1)執(zhí)行情況如表)執(zhí)行情況如表2 2所示。如果是所示。如果是 LDNLDN指令,則將操作數(shù)取反后再裝入棧頂,其他操作相同。指令,則將操作數(shù)取反后再裝入棧頂,其他操作相同。 表2 LD I0.1的執(zhí)行 名名 稱稱執(zhí)執(zhí) 行行 前前執(zhí)執(zhí) 行行 后后說說 明明STACK0STACK0S0S01 1將新值將新值I0.1=1I0.1=1裝入堆棧裝入堆棧 STACK1STACK1S1S1S0S0由由S0S0下移一個單元得到下移一個單元得到 STACK2STACK2S2S2S1S1由由S1S1下移一個單元得到下移一個單元得到STACK3STACK3S3

14、S3S2S2由由S2S2下移一個單元得到下移一個單元得到STACK4STACK4S4S4S3S3由由S3S3下移一個單元得到下移一個單元得到STACK5STACK5S5S5S4S4由由S4S4下移一個單元得到下移一個單元得到STACK6STACK6S6S6S5S5由由S5S5下移一個單元得到下移一個單元得到STACK7STACK7S7S7S6S6由由S6S6下移一個單元得到下移一個單元得到STACK8STACK8S8S8S7S7由由S7S7下移一個單元得到下移一個單元得到 原值原值S0S0串行串行下移一下移一個單元個單元, ,其余以其余以此類推。此類推。 原原S8S8自自動丟動丟失。失。 u

15、指令指令A I0.2(假設(假設I0.2=0)執(zhí)行情況如表)執(zhí)行情況如表3所示。如果是所示。如果是ANAN指指令,則將操作數(shù)取反后再和棧頂值相與,結(jié)果放回棧頂。即:令,則將操作數(shù)取反后再和棧頂值相與,結(jié)果放回棧頂。即: 1 1* *1=1 S01=1 S0 表3 指令A I0.2的執(zhí)行 名名 稱稱執(zhí)執(zhí) 行行 前前執(zhí)執(zhí) 行行 后后說說 明明STACK010執(zhí)行前棧頂值為執(zhí)行前棧頂值為1。執(zhí)行時用棧頂值和指令執(zhí)行時用棧頂值和指令操作數(shù)(操作數(shù)(I0.2的值為的值為0)進行與運算,結(jié)果放回進行與運算,結(jié)果放回棧頂。棧頂。即:即:S0*I0.2=1*0=0 S0 STACK1S1S1STACK2S2S

16、2STACK3S3S3STACK4S4S4STACK5S5S5STACK6S6S6STACK7S7S7STACK8S8S82 2、輸出指令、輸出指令表示繼電器線圈編程(包括內(nèi)部繼電器線圈、輸出繼電器表示繼電器線圈編程(包括內(nèi)部繼電器線圈、輸出繼電器線圈)。當執(zhí)行輸出指令時,把棧頂值線圈)。當執(zhí)行輸出指令時,把棧頂值“寫寫”到由操作數(shù)地到由操作數(shù)地址指定的存儲器的對應位中。址指定的存儲器的對應位中。梯形圖中,梯形圖中,“()()”表示線圈。當執(zhí)行輸出指令時,表示線圈。當執(zhí)行輸出指令時,“能能流流”到,則線圈被激勵。輸出映像寄存器或其他存儲器的相到,則線圈被激勵。輸出映像寄存器或其他存儲器的相應位

17、為應位為“1”,反之為反之為“0”。語句表中,輸出指令語句表中,輸出指令“=” 把棧頂值復制到由操作數(shù)地址指把棧頂值復制到由操作數(shù)地址指定的存儲器位。指令執(zhí)行前后堆棧各級棧值不變。定的存儲器位。指令執(zhí)行前后堆棧各級棧值不變。 指令格式:指令格式:= bit; 例:例: = Q2.6 u程序?qū)嵗鹤屑毐容^不同編程工具的區(qū)別與聯(lián)系。程序?qū)嵗鹤屑毐容^不同編程工具的區(qū)別與聯(lián)系。 LD I0.0 /裝入常開觸點O I0.1 /或常開觸點A I0.2 /與常開觸點= Q0.0 /輸出觸點, /如果本梯級中將I0.1的觸點改 /為Q0.0的常開觸點,則成為電 /機起動停止控制環(huán)節(jié)的梯形圖 LDN I0.0

18、 /裝入常閉觸點ON I0.0 /或常閉觸點AN I0.2 /與常閉觸點= Q0.1 /輸出觸點 LD I0.0 /O I0.1 /A I0.2 /NOT /取非,即輸出反相= Q0.3 /圖9 標準觸點LAD和STL例 3. 正正/負跳變指令負跳變指令 u用于檢測脈沖的正跳變(上升沿)或負跳變(下降沿),用于檢測脈沖的正跳變(上升沿)或負跳變(下降沿),利用跳變讓能流接通一個掃描周期,即可以利用跳變讓能流接通一個掃描周期,即可以產(chǎn)生一個寬度產(chǎn)生一個寬度為一個掃描周期脈沖為一個掃描周期脈沖,常用此脈沖觸發(fā)內(nèi)部繼電器線圈。,常用此脈沖觸發(fā)內(nèi)部繼電器線圈。u梯形圖中,正梯形圖中,正/ /負跳變指令

19、在梯形圖中以觸點形式使用。負跳變指令在梯形圖中以觸點形式使用。u語句表中:語句表中:(1)正跳變指令:正跳變指令:EU一旦發(fā)現(xiàn)棧頂?shù)闹党霈F(xiàn)正跳變,該棧頂?shù)闹稻捅恢靡坏┌l(fā)現(xiàn)棧頂?shù)闹党霈F(xiàn)正跳變,該棧頂?shù)闹稻捅恢谩?”,并持續(xù)一個掃描周期的時間。并持續(xù)一個掃描周期的時間。指令格式:指令格式:EU (無操作數(shù))(無操作數(shù)) (2)負跳變指令:)負跳變指令:ED 一旦發(fā)現(xiàn)棧頂?shù)闹党霈F(xiàn)負跳變,該棧頂?shù)闹稻捅恢靡坏┌l(fā)現(xiàn)棧頂?shù)闹党霈F(xiàn)負跳變,該棧頂?shù)闹稻捅恢谩?”,并持續(xù)一個掃描周期的時間。并持續(xù)一個掃描周期的時間。指令格式:指令格式:ED (無操作數(shù))(無操作數(shù))正、負跳變觸點指令編程舉例如圖正、負跳變觸點指

20、令編程舉例如圖1010所示。所示。 圖10 正、負跳變觸點指令編程 一個掃描周期長度一個掃描周期長度 4. 置位和復位指令置位和復位指令 u 置位即置置位即置1,復位即置,復位即置0。置位和復位指令可以將位存。置位和復位指令可以將位存儲區(qū)的某一位開始的一個或多個(最多可達儲區(qū)的某一位開始的一個或多個(最多可達255個)個)同類同類存儲器存儲器位置位置1或置或置0。這兩條指令在使用時需指明三點:。這兩條指令在使用時需指明三點:操操作性質(zhì)作性質(zhì)、開始位開始位和和位的數(shù)量位的數(shù)量。各操作數(shù)類型及范圍如表。各操作數(shù)類型及范圍如表4所示。所示。 表4 置位和復位指令操作數(shù)類型及范圍 操作數(shù)操作數(shù)范范 圍

21、圍 類類 型型 位位bitI,Q,M,SM,T, C,V,S,L BOOL型型 數(shù)量數(shù)量N VB,IB,QB,MB,SMB,LB,SB,AC,*VD,*AC,*LD BYTE型型 (最大(最大255)(1)置位指令:)置位指令:S 將位存儲區(qū)的指定位(位將位存儲區(qū)的指定位(位bit)開始的)開始的N個同類存儲器位置個同類存儲器位置位。位。指令格式:指令格式: S bit, N; 例:例: S Q0.0, 1 (2)復位指令:)復位指令:R 將位存儲區(qū)的指定位(位將位存儲區(qū)的指定位(位bit)開始的)開始的N個同類存儲器位復個同類存儲器位復位。當用復位指令時,如果是對定時器位。當用復位指令時,如

22、果是對定時器T位或計數(shù)器位或計數(shù)器C位進位進行復位,則定時器或計數(shù)器位被復位同時,定時器或計數(shù)器行復位,則定時器或計數(shù)器位被復位同時,定時器或計數(shù)器的當前值被清零。的當前值被清零。指令格式:指令格式: R bit, N; 例:例: R Q0.2, 3 在語句表(在語句表(STL)中,當棧頂值為)中,當棧頂值為1時,才能執(zhí)行置位指令時,才能執(zhí)行置位指令S或復位指令或復位指令R。置位后即使棧頂值變?yōu)?。置位后即使棧頂值變?yōu)?,仍保持置位;復,仍保持置位;復位后即使棧頂值變?yōu)槲缓蠹词箺m斨底優(yōu)?,仍保持復位??梢娺@兩條指令均有,仍保持復位。可見這兩條指令均有“記憶記憶”功能。功能。置位和復位指令應用編

23、程序舉例如圖置位和復位指令應用編程序舉例如圖11所示。所示。 圖圖11 置位復位指令置位復位指令u 立即指令允許對輸入和輸出點進行快速和直立即指令允許對輸入和輸出點進行快速和直接存取。當用立即指令讀取輸入點的狀態(tài)時,接存取。當用立即指令讀取輸入點的狀態(tài)時,相應的輸入映像寄存器中的值并未發(fā)生更新;相應的輸入映像寄存器中的值并未發(fā)生更新;用立即指令訪問輸出點時,訪問的同時,相應用立即指令訪問輸出點時,訪問的同時,相應的輸出寄存器的內(nèi)容也被刷新。的輸出寄存器的內(nèi)容也被刷新。只有輸入繼電只有輸入繼電器器I和輸出繼電器和輸出繼電器Q可以使用立即指令。可以使用立即指令。 1. 立即觸點指令立即觸點指令 u

24、執(zhí)行立即觸點指令時,直接讀取物理輸入點的值,輸入映像執(zhí)行立即觸點指令時,直接讀取物理輸入點的值,輸入映像寄存器內(nèi)容不更新,指令操作數(shù)僅限于寄存器內(nèi)容不更新,指令操作數(shù)僅限于輸入物理點輸入物理點的值。的值。u梯形圖中,立即觸點指令用常開和常閉立即觸點表示。觸點梯形圖中,立即觸點指令用常開和常閉立即觸點表示。觸點中的中的“I I”表示立即之意。表示立即之意。 u在語句表中,每個標準觸點指令的后面加在語句表中,每個標準觸點指令的后面加“I”(表示立即之(表示立即之意)。常開立即觸點編程由意)。常開立即觸點編程由LDI、AI、OI指令描述,指令描述,常閉立常閉立即觸點編程由即觸點編程由LDNI、 AN

25、I、 ONI指令描述指令描述。以以LDI指令為指令為例,執(zhí)行時,把物理輸入點的位值立即裝入棧頂。例,執(zhí)行時,把物理輸入點的位值立即裝入棧頂。 指令格式:指令格式:LDI bit 例:例: LDI I0.2 2. 立即輸出指令立即輸出指令用立即指令訪問輸出點時,把棧頂值立即復制到指令所指用立即指令訪問輸出點時,把棧頂值立即復制到指令所指定的物理輸出點,同時,相應的輸出映像寄存器的內(nèi)容也被定的物理輸出點,同時,相應的輸出映像寄存器的內(nèi)容也被刷新。刷新。 指令格式:指令格式:=I bit 例:例: =I Q0.2 立即立即I/OI/O指令不受指令不受PLCPLC循環(huán)掃描工作方式的約束,允許對輸循環(huán)掃

26、描工作方式的約束,允許對輸入、輸出物理點進行直接存取,執(zhí)行立即觸點指令時,入、輸出物理點進行直接存取,執(zhí)行立即觸點指令時,CPUCPU繞過輸入映像寄存器,直接讀取物理輸入點的狀態(tài)作為程序繞過輸入映像寄存器,直接讀取物理輸入點的狀態(tài)作為程序執(zhí)行期間的數(shù)據(jù)依據(jù),輸入映像寄存器不作刷新處理;執(zhí)行執(zhí)行期間的數(shù)據(jù)依據(jù),輸入映像寄存器不作刷新處理;執(zhí)行立即輸出指令時,則將結(jié)果同時立即復制到物理輸出點和相立即輸出指令時,則將結(jié)果同時立即復制到物理輸出點和相應的輸出映像寄存器,而不是等待程序執(zhí)行階段結(jié)束后,轉(zhuǎn)應的輸出映像寄存器,而不是等待程序執(zhí)行階段結(jié)束后,轉(zhuǎn)入輸出刷新階段時才把結(jié)果傳送到物理輸出點。從而加快

27、了入輸出刷新階段時才把結(jié)果傳送到物理輸出點。從而加快了輸入輸出響應速度。輸入輸出響應速度。 必須注意:必須注意:立即立即I/O指令比一般指令訪問輸入輸出映像寄存器指令比一般指令訪問輸入輸出映像寄存器占用占用CPU的時間要長,因而不能盲目的使用,否則,會加長的時間要長,因而不能盲目的使用,否則,會加長掃描周期的時間,反而對系統(tǒng)造成不利的影響。掃描周期的時間,反而對系統(tǒng)造成不利的影響。用立即置位指令訪問輸出點時,從指令所指出的位(用立即置位指令訪問輸出點時,從指令所指出的位(bit)開始的開始的N個(最多為個(最多為128個)物理輸出點被立即置位,同時,個)物理輸出點被立即置位,同時,相應的輸出映

28、像寄存器的內(nèi)容也被刷新。相應的輸出映像寄存器的內(nèi)容也被刷新。指令格式:指令格式:SI bit, N; 例:例: SI Q0.0, 2 3. 立即置位指令立即置位指令4. 立即復位指令立即復位指令 用立即復位指令訪問輸出點時,從指令所指出的位(用立即復位指令訪問輸出點時,從指令所指出的位(bit)開始的開始的N個(最多為個(最多為128個)物理輸出點被立即復位,同時,個)物理輸出點被立即復位,同時,相應的輸出映像寄存器的內(nèi)容也被刷新。相應的輸出映像寄存器的內(nèi)容也被刷新。各操作數(shù)類型及范各操作數(shù)類型及范圍如表圍如表5所示。所示。 指令格式:指令格式: RI bit, N; 例:例: RI Q0.0

29、, 1 表5 立即置位和立即復位指令操作數(shù)類型及范圍 操作數(shù)操作數(shù)范范 圍圍 類類 型型 位位bitQBOOL型型 數(shù)量數(shù)量N VB,IB,QB,MB,SMB,LB,SB,AC,*VD,*AC,*LD ,常數(shù),常數(shù) BYTE型型 (最大(最大128)LD I0.0 = Q0.0 =I Q0.1 /立即輸出觸點SI Q0.2,1 /從Q0.2開始的1個觸點被立即置1 LDI I0.0 /立即輸入觸點指令= Q0.3 /輸出觸點,非立即圖12 立即指令程序 圖13 波形圖u 基本邏輯指令涉及可編程元件的觸點和線圈的簡單連接,基本邏輯指令涉及可編程元件的觸點和線圈的簡單連接,不能表達在梯形圖中觸點的

30、復雜連接結(jié)構(gòu)。復雜邏輯指令主不能表達在梯形圖中觸點的復雜連接結(jié)構(gòu)。復雜邏輯指令主要用來描述對觸點進行的復雜連接,同時,它們對邏輯堆棧要用來描述對觸點進行的復雜連接,同時,它們對邏輯堆棧也可以實現(xiàn)非常復雜的操作。也可以實現(xiàn)非常復雜的操作。u 邏輯堆棧指令只用于語句表編程邏輯堆棧指令只用于語句表編程。使用梯形圖、功能塊圖。使用梯形圖、功能塊圖時,編輯器會自動插入相關(guān)的指令處理堆棧操作。時,編輯器會自動插入相關(guān)的指令處理堆棧操作。u 本類指令包括:本類指令包括:ALDALD、OLDOLD、LPSLPS、LRDLRD、LPPLPP和和LDSLDS,這些指,這些指令中除令中除LDSLDS外,其余指令都無

31、操作數(shù)。外,其余指令都無操作數(shù)。 1. 棧裝載與指令棧裝載與指令 2. 棧裝載或指令棧裝載或指令 OLD,棧裝載或指令(或塊)。用于將串聯(lián)電路塊進行并,棧裝載或指令(或塊)。用于將串聯(lián)電路塊進行并聯(lián)連接。執(zhí)行聯(lián)連接。執(zhí)行OLD指令,將堆棧中的第一級和第二級的值指令,將堆棧中的第一級和第二級的值進行邏輯進行邏輯“或或”操作,結(jié)果置于棧頂(堆棧第一級),并將操作,結(jié)果置于棧頂(堆棧第一級),并將堆棧中其余各級的內(nèi)容依次上彈一級。堆棧中其余各級的內(nèi)容依次上彈一級。 ALD,棧裝載與指令(與塊)。用于將并聯(lián)電路塊進行串,棧裝載與指令(與塊)。用于將并聯(lián)電路塊進行串聯(lián)連接。執(zhí)行聯(lián)連接。執(zhí)行ALD指令,將

32、堆棧中的第一級和第二級的值進指令,將堆棧中的第一級和第二級的值進行邏輯行邏輯“與與”操作,結(jié)果置于棧頂(堆棧第一級),并將堆操作,結(jié)果置于棧頂(堆棧第一級),并將堆棧中的第三級至第九級的值依次上彈一級。棧中的第三級至第九級的值依次上彈一級。 u 棧裝載與指令和棧裝載或指令的操作過程如圖棧裝載與指令和棧裝載或指令的操作過程如圖14所示,所示,圖中圖中“x”表示不確定值。表示不確定值。 圖14 棧裝載與指令和棧裝載或指令的操作過程 3. 邏輯推入棧指令邏輯推入棧指令 4. 邏輯讀棧指令邏輯讀棧指令 LPS LPS,邏輯推入棧指令(分支或主控指令)。用于復制棧,邏輯推入棧指令(分支或主控指令)。用于

33、復制棧頂?shù)闹挡⑦@個值推入棧頂,原堆棧中各級棧值依次下壓一頂?shù)闹挡⑦@個值推入棧頂,原堆棧中各級棧值依次下壓一級。在梯形圖中的分支結(jié)構(gòu)中,用于生成一條新的母線,左級。在梯形圖中的分支結(jié)構(gòu)中,用于生成一條新的母線,左側(cè)為主控邏輯塊時,第一個完整的從邏輯行從此處開始。側(cè)為主控邏輯塊時,第一個完整的從邏輯行從此處開始。 LRD,邏輯讀棧指令。把堆棧中第二級的值復制到棧頂。,邏輯讀棧指令。把堆棧中第二級的值復制到棧頂。堆棧沒有推入?;驈棾鰲2僮鳎瓧m斨当恍碌膹椭浦等《褩]有推入?;驈棾鰲2僮?,但原棧頂值被新的復制值取代。在梯形圖中的分支結(jié)構(gòu)中,當左側(cè)為主控邏輯塊時,開代。在梯形圖中的分支結(jié)構(gòu)中,當

34、左側(cè)為主控邏輯塊時,開始第二個和后邊更多的從邏輯塊。應注意,始第二個和后邊更多的從邏輯塊。應注意,LPS后第一個和后第一個和最后一個從邏輯塊不用本指令。最后一個從邏輯塊不用本指令。 5. 邏輯棧彈出指令邏輯棧彈出指令 6. 裝入堆棧指令裝入堆棧指令 LPP LPP,邏輯棧彈出指令(分支結(jié)束或主控復位指令)。堆,邏輯棧彈出指令(分支結(jié)束或主控復位指令)。堆棧作彈出棧操作,將棧頂值彈出,原堆棧中各級棧值依次上棧作彈出棧操作,將棧頂值彈出,原堆棧中各級棧值依次上彈一級,堆棧第二級的值成為新的棧頂值。在梯形圖中的分彈一級,堆棧第二級的值成為新的棧頂值。在梯形圖中的分支結(jié)構(gòu)中,用于將支結(jié)構(gòu)中,用于將LP

35、SLPS指令生成的一條新母線進行恢復。應指令生成的一條新母線進行恢復。應注意,注意,LPSLPS與與LPPLPP必須配對使用。必須配對使用。 LDS n(n=1 LDS n(n=18 8),裝入堆棧指令。復制堆棧中的第),裝入堆棧指令。復制堆棧中的第n n級的級的值到棧頂。原棧中各級棧值依次下壓一級,棧底值丟失。值到棧頂。原棧中各級棧值依次下壓一級,棧底值丟失。 u LPS、LRD、LPP、LDS指令操作過程如圖指令操作過程如圖15所示。所示。 圖15 LPS、LRD、LPP、LDS指令的操作過程 u應應 用用 舉舉 例:例: LD I0.0 /裝入常開觸點LPS /邏輯推入棧,主控A I0.

36、5 /與常開觸點= Q7.0 /輸出觸點LRD /邏輯讀棧,新母線LD I2.1 /裝入常開觸點O I1.3 /或常開觸點ALD /棧裝載與= Q6.0 /輸出觸點LPP /邏輯彈出棧,母線復原LD I3.1 /裝入常開出觸點O I2.0 /或常開觸點ALD /棧裝載與= Q1.3 /輸出觸點圖16 邏輯堆棧指令的應用 1. 定時器指令定時器指令 定時器是由集成電路構(gòu)成,是定時器是由集成電路構(gòu)成,是PLCPLC中的重要硬件編程元件中的重要硬件編程元件。定時器編程時提前輸入時間預設值,在運行時當定時器的輸定時器編程時提前輸入時間預設值,在運行時當定時器的輸入條件滿足時開始計時,當前值從入條件滿足

37、時開始計時,當前值從0 0開始按一定的時間單位開始按一定的時間單位增加,當定時器的當前值達到預設值時,定時器發(fā)生動作,增加,當定時器的當前值達到預設值時,定時器發(fā)生動作,發(fā)出中斷請求,以便發(fā)出中斷請求,以便PLCPLC響應而作出相應的操作。此時它對響應而作出相應的操作。此時它對應的常開觸點閉合,常閉觸點斷開。應的常開觸點閉合,常閉觸點斷開。S7-200PLCS7-200PLC的定時器類型有三種:的定時器類型有三種:TONTON(通電延時)、(通電延時)、TONRTONR(有記憶通電延時)和(有記憶通電延時)和TOFTOF(斷電延時)。(斷電延時)。定時器的分辨率(時間增量定時器的分辨率(時間增

38、量/ /時間單位時間單位/ /分辨率)有分辨率)有3 3個等級:個等級:1ms1ms、10ms10ms和和100ms100ms,分辨率等級和定時器號關(guān)系如表,分辨率等級和定時器號關(guān)系如表6 6所示。所示。 表6 定時器號和分辨率定時器類型定時器類型分辯率分辯率/ms計時范圍計時范圍/s定時器號定時器號TONTOF 132.767T32,T9610327.67T33T36,T97T1001003276.7T37T63,T101T255TONR 132.767T0,T6410327.67T1T4,T65T681003276.7T5T31,T6995定時時間的計算:定時時間的計算:T=PTT=PTS

39、 S (T T為實際定時時間,為實際定時時間,PTPT為預設值,為預設值,S S為分辨率等級)為分辨率等級)例如:例如:TONTON指令用定時器指令用定時器T33T33,預設值為,預設值為125125,則實際定時時,則實際定時時間間 T=125 T=125 10=1250ms 10=1250ms 定時器指令操作數(shù)有定時器指令操作數(shù)有3 3個:個:編號編號、預設值預設值和和使能輸入使能輸入。1 1)編號:)編號:用定時器的名稱和它的常數(shù)編號(最大用定時器的名稱和它的常數(shù)編號(最大255255)來表示,即)來表示,即TxxxTxxx,如:如:T4T4。T4T4不僅僅是定時器的編號,它還包含兩方面的

40、變量信息:不僅僅是定時器的編號,它還包含兩方面的變量信息:定時器位定時器位和和定定時器當前值時器當前值。定時器位:定時器位:定時器位與時間繼電器的輸出相似,當定時器的當前值達到定時器位與時間繼電器的輸出相似,當定時器的當前值達到預設值預設值PTPT時,該位被置為時,該位被置為“1 1”。定時器當前值:定時器當前值:存儲定時器當前所累計的時間,它用存儲定時器當前所累計的時間,它用1616位符號整數(shù)來表位符號整數(shù)來表示,故最大計數(shù)值為示,故最大計數(shù)值為3276732767。2 2)預設值)預設值PTPT:數(shù)據(jù)類型為數(shù)據(jù)類型為INTINT型。尋址范圍可以是型。尋址范圍可以是VWVW、IWIW、QWQ

41、W、MWMW、SWSW、SMWSMW、LWLW、AIWAIW、T T、C C、ACAC、* *VDVD、* *ACAC、* *LDLD和常數(shù)。和常數(shù)。3 3)使能輸入(只對)使能輸入(只對LADLAD和和FBDFBD):):BOOLBOOL型,可以是型,可以是I I、Q Q、M M、SMSM、T T、C C、V V、S S、L L和能流。和能流。 可以用復位指令來對可以用復位指令來對3 3種定時器復位,復位指令的執(zhí)行結(jié)果是:使定時種定時器復位,復位指令的執(zhí)行結(jié)果是:使定時器位變?yōu)槠魑蛔優(yōu)镺FFOFF:定時器當前值變?yōu)椋憾〞r器當前值變?yōu)? 0。 (1)接通延時定時器指令:)接通延時定時器指令:T

42、ON 用于單一間隔定時。上電周期或首用于單一間隔定時。上電周期或首次掃描,定時器位次掃描,定時器位OFFOFF,當前值為,當前值為0 0。使能輸入接通時,定時器位為使能輸入接通時,定時器位為OFFOFF,當前值從當前值從0 0開始計數(shù)時間,當前值達開始計數(shù)時間,當前值達到預設值時,定時器位為到預設值時,定時器位為ONON,當前值,當前值連續(xù)計數(shù)到連續(xù)計數(shù)到3276732767。使能輸入斷開,。使能輸入斷開,定時器自動復位,即定時器位定時器自動復位,即定時器位OFFOFF,當前值為當前值為0 0。 填填“計計定時器號定時器號”, ,如:如:T35T35填填“預設值預設值”,如:,如:100指令格

43、式:指令格式:TON TxxxTON Txxx,PTPTT T例:例: TON T120TON T120,8 8 (2)有記憶接通延時定時器指令:)有記憶接通延時定時器指令:TONR 用于對許多間隔的累計定時。上用于對許多間隔的累計定時。上電周期或首次掃描,定時器位電周期或首次掃描,定時器位OFFOFF,當前值保持當前值保持。使能輸入接通時,定。使能輸入接通時,定時器位為時器位為OFFOFF,當前值開始累計計,當前值開始累計計數(shù)時間。使能輸入斷開,定時器位數(shù)時間。使能輸入斷開,定時器位和當前值保持最后狀態(tài)。使能輸入和當前值保持最后狀態(tài)。使能輸入再次接通時,當前值從上次的保持再次接通時,當前值從

44、上次的保持值繼續(xù)計數(shù),當累計當前值達到預值繼續(xù)計數(shù),當累計當前值達到預設值時,定時器位設值時,定時器位ONON,當前值連續(xù),當前值連續(xù)計數(shù)到計數(shù)到3276732767。 填填“計計定時器號定時器號”, ,如:如:T31T31填填“預設值預設值”,如:,如:100TONRTONR定時器只能用復位指令進行復位操作,使當前值清零。定時器只能用復位指令進行復位操作,使當前值清零。指令格式:指令格式:TONR TxxxTONR Txxx,PTPT; 例:例: TONR T20TONR T20,63 63 (3)斷開延時定時器指令:)斷開延時定時器指令:TOF 用于斷開后的單一間隔定時。上電用于斷開后的單

45、一間隔定時。上電周期或首次掃描,定時器位周期或首次掃描,定時器位OFFOFF,當,當前值為前值為0 0。使能輸入接通時,定時器。使能輸入接通時,定時器位為位為ONON,當前值為,當前值為0 0。當使能輸入由。當使能輸入由接通到斷開時,定時器開始計數(shù),接通到斷開時,定時器開始計數(shù),當前值達到預設值時,定時器位當前值達到預設值時,定時器位OFFOFF,當前值等于預設值,停止計數(shù)。當前值等于預設值,停止計數(shù)。TOFTOF復位后,如果使能輸入再有從復位后,如果使能輸入再有從ONON到到OFFOFF的負跳變,則可實現(xiàn)再次啟動。的負跳變,則可實現(xiàn)再次啟動。 填填“計計定時器號定時器號”, ,如:如:T35

46、T35填填“預設值預設值”,如:,如:100指令格式:指令格式:TOF TxxxTOF Txxx,PTPT; 例例 TOF T35TOF T35,6 6 LD I0.0 /使能輸入 TON T35,+4 /通電延時定時器,延時時間為40ms LD I0.0 /使能輸入 TONR T2.+10 /有記憶通電延時定時器, /延時時間為100ms LD I0.0 /使能輸入 TOF T36,+3 /斷電延時定時器,延時時間為30ms (4)應應用用 舉舉例例 :圖 定時器特性 T35T35為通電延時定時器為通電延時定時器 T2T2為有記憶通電延時定時器為有記憶通電延時定時器 T36T36為斷電延時定

47、時器為斷電延時定時器 u 上述梯形圖程序中輸入輸出執(zhí)行時序關(guān)系如圖所示。上述梯形圖程序中輸入輸出執(zhí)行時序關(guān)系如圖所示。 圖 定時器時序 (5)應用定時器指令應注意的幾個問題)應用定時器指令應注意的幾個問題 不能把一個定時器號同時用作斷開延時定時器(不能把一個定時器號同時用作斷開延時定時器(TOFTOF)和接通延時定時器(和接通延時定時器(TONTON)。)。 使用復位(使用復位(R R)指令對定時器復位后,定時器位位)指令對定時器復位后,定時器位位“0 0”,定時器當前值為定時器當前值為“0 0”。 有記憶接通延時定時器(有記憶接通延時定時器(TONRTONR)只能通過復位指令進行)只能通過復

48、位指令進行復位。復位。 對于斷開延時定時器(對于斷開延時定時器(TOFTOF),需要輸入端有一個負跳),需要輸入端有一個負跳變(由變(由onon到到offoff)的輸入信號啟動計時。)的輸入信號啟動計時。 不同精度的定時器,它們當前值的刷新周期是不同的,不同精度的定時器,它們當前值的刷新周期是不同的,具體情況如下:具體情況如下: v 1)1ms分辨率定時器:分辨率定時器: 啟動后,定時器對啟動后,定時器對1ms的時的時間間隔(時基信號)進行計時。定時器當前值每隔間間隔(時基信號)進行計時。定時器當前值每隔1ms刷新一次,在一個掃描周期中要刷新多次,不和掃描刷新一次,在一個掃描周期中要刷新多次,

49、不和掃描周期同步。周期同步。 v 2)10ms分辨率定時器:分辨率定時器: 啟動后,定時器對啟動后,定時器對10ms的的時間間隔進行計時。程序執(zhí)行時,在每次掃描周期開時間間隔進行計時。程序執(zhí)行時,在每次掃描周期開始對始對10ms定時器刷新,在一個掃描周期內(nèi)定時器當前定時器刷新,在一個掃描周期內(nèi)定時器當前值保持不變。值保持不變。v 3)100ms分辨率定時器:分辨率定時器: 啟動后,定時器對啟動后,定時器對100ms的的時間間隔進行計時。只有在定時器指令執(zhí)行時,時間間隔進行計時。只有在定時器指令執(zhí)行時,100ms定時器的當前值才被刷新。定時器的當前值才被刷新。 2. 計數(shù)器指令計數(shù)器指令 計數(shù)器

50、用來累計輸入脈沖的次數(shù)。計數(shù)器也是由集成電路構(gòu)計數(shù)器用來累計輸入脈沖的次數(shù)。計數(shù)器也是由集成電路構(gòu)成,是應用非常廣泛的編程元件,經(jīng)常用來對產(chǎn)品進行計數(shù)。成,是應用非常廣泛的編程元件,經(jīng)常用來對產(chǎn)品進行計數(shù)。計數(shù)器與定時器的結(jié)構(gòu)和使用基本相似,編程時輸入它的預計數(shù)器與定時器的結(jié)構(gòu)和使用基本相似,編程時輸入它的預設值設值PVPV(計數(shù)的次數(shù)),計數(shù)器累計它的脈沖輸入端電位上(計數(shù)的次數(shù)),計數(shù)器累計它的脈沖輸入端電位上升沿(正跳變)個數(shù),當計數(shù)達到預設值升沿(正跳變)個數(shù),當計數(shù)達到預設值PVPV時,計數(shù)器發(fā)生時,計數(shù)器發(fā)生動作,以便動作,以便PLCPLC作出相應的技術(shù)控制處理。作出相應的技術(shù)控制

51、處理。計數(shù)器指令有計數(shù)器指令有3 3種:增計數(shù)種:增計數(shù)CTUCTU、增減計數(shù)、增減計數(shù)CTUDCTUD和減計數(shù)和減計數(shù)CTDCTD。指令操作數(shù)指令操作數(shù)4 4方面:方面:編號編號、預設值預設值、脈沖輸入脈沖輸入和和復位輸入復位輸入。 1)編號:)編號:用計數(shù)器名稱和它的常數(shù)編號(最大用計數(shù)器名稱和它的常數(shù)編號(最大255)來表示,)來表示,即即Cxxx,如:,如:C6。C6不僅僅是計數(shù)器的編號,它還包含不僅僅是計數(shù)器的編號,它還包含兩方面的變量信息:計數(shù)器位和計數(shù)器當前值。兩方面的變量信息:計數(shù)器位和計數(shù)器當前值。 計數(shù)器位:表示計數(shù)器是否發(fā)生動作的狀態(tài),當計數(shù)計數(shù)器位:表示計數(shù)器是否發(fā)生動

52、作的狀態(tài),當計數(shù)器的當前值達到預設值器的當前值達到預設值PV時,該位被置為時,該位被置為“1”。 計數(shù)器當前值:存儲計數(shù)器當前所累計的脈沖個數(shù),計數(shù)器當前值:存儲計數(shù)器當前所累計的脈沖個數(shù),它用它用16位符號整數(shù)來表示,故最大計數(shù)值為位符號整數(shù)來表示,故最大計數(shù)值為32767。2)預設值)預設值PV:數(shù)據(jù)類型為數(shù)據(jù)類型為INT型。尋址范圍可以是型。尋址范圍可以是VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常數(shù)。和常數(shù)。3)脈沖輸入:)脈沖輸入:BOOL型,可以是型,可以是I、Q、M、SM、T、C、V、S、L和能流。和能流。 4)復位輸入:)復位輸入

53、:與脈沖輸入同類型和范圍。與脈沖輸入同類型和范圍。(1)增計數(shù)器指令:)增計數(shù)器指令:CTU CTU 首次掃描,計數(shù)器位首次掃描,計數(shù)器位OFF,當前,當前值為值為0。在增計數(shù)器的計數(shù)輸入端。在增計數(shù)器的計數(shù)輸入端(CU)脈沖輸入的每個上升沿,)脈沖輸入的每個上升沿,計數(shù)器計數(shù)計數(shù)器計數(shù)1次,當前值增加次,當前值增加1個單個單位,當前值達到預設值時,計數(shù)器位,當前值達到預設值時,計數(shù)器位位ON,當前值繼續(xù)計數(shù)到,當前值繼續(xù)計數(shù)到32767停停止計數(shù)。復位輸入有效或執(zhí)行復位止計數(shù)。復位輸入有效或執(zhí)行復位指令,計數(shù)器自動復位,即計數(shù)器指令,計數(shù)器自動復位,即計數(shù)器位位OFF,當前值為,當前值為0。

54、 指令格式:指令格式:CTU CxxxCTU Cxxx,PVPV; 例:例: CTU C20CTU C20,3 3 填填“計計數(shù)器器號數(shù)器器號”, ,如:如:C30C30填填“預設值預設值”,如:,如:3脈沖輸入脈沖輸入復位輸入復位輸入u應用舉例:應用舉例:LD I0.0 /計數(shù)脈沖信號輸入端LD I0.1 /復位信號輸入端CTU C20,+3 /增計數(shù),計數(shù)設定值為3個脈沖 LD C20 /裝入計數(shù)器觸點= Q0.0 /輸出觸點圖 增計數(shù)程序及時序 (2)增減計數(shù)器指令:)增減計數(shù)器指令:CTUD 該指令有兩個脈沖輸入端:該指令有兩個脈沖輸入端:CU輸入端用于遞輸入端用于遞增計數(shù),增計數(shù),C

55、D輸入端用于遞減計數(shù)。首次掃描,輸入端用于遞減計數(shù)。首次掃描,定時器位定時器位OFF,當前值為,當前值為0。CU輸入的每個上升輸入的每個上升沿,計數(shù)器當前值增加沿,計數(shù)器當前值增加1個單位,個單位,CD輸入的每個輸入的每個上升沿,都使計數(shù)器當前值減小上升沿,都使計數(shù)器當前值減小1個單位,當前個單位,當前值達到預設值時,計數(shù)器位值達到預設值時,計數(shù)器位ON。增減計數(shù)器計數(shù)到增減計數(shù)器計數(shù)到32767(最大值)后,下一(最大值)后,下一個個CU輸入的上升沿將使當前值跳變?yōu)樽钚≈递斎氲纳仙貙⑹巩斍爸堤優(yōu)樽钚≈担?3 2 7 6 8 ) ; 反 之 , 當 前 值 達 到 最 小 值) ; 反 之

56、 , 當 前 值 達 到 最 小 值(32768)時,下一個)時,下一個CD輸入的上升沿將使當輸入的上升沿將使當前值跳變?yōu)樽畲笾担ㄇ爸堤優(yōu)樽畲笾担?2767)。復位輸入有效或)。復位輸入有效或執(zhí)行復位指令,計數(shù)器自動復位,即計數(shù)器位執(zhí)行復位指令,計數(shù)器自動復位,即計數(shù)器位OFF,當前值為,當前值為0。 指令格式:指令格式:CTUD Cxxx CTUD Cxxx ,PVPV; 例:例: CTUD C30CTUD C30,5 5 LD I0.0 /增計數(shù)輸入端 LD I0.1 /減計數(shù)輸入端 LD I0.2 /復位端 CTUD C30,+5 /增減計數(shù),設定脈沖數(shù)為5 LD C30 /裝入計數(shù)器

57、觸點 = Q0.0 /輸出觸點 u應用應用舉例:舉例:圖 增減計數(shù)程序及時序 (3)減計數(shù)器指令:)減計數(shù)器指令:CTD 首次掃描,定時器位首次掃描,定時器位OFF,當前當前值為預設值值為預設值PV。計數(shù)器檢測到。計數(shù)器檢測到CD輸入的每個上升沿時,計數(shù)器當輸入的每個上升沿時,計數(shù)器當前值減小前值減小1個單位,當前值減到個單位,當前值減到0時,計數(shù)器位時,計數(shù)器位ON。裝載輸入(裝載輸入(LDLD)有效)有效, ,計數(shù)器位計數(shù)器位OFF,當前值為預設值,而不是,當前值為預設值,而不是0。執(zhí)行復位指令,計數(shù)器自動復位執(zhí)行復位指令,計數(shù)器自動復位. .指令格式:指令格式:CTD CxxxCTD C

58、xxx,PVPV; 例:例: CTD C40CTD C40,4 4 u應用應用舉例:舉例: LD I0.0 /減計數(shù)脈沖輸入端 LD I0.1 /裝載輸入端 CTD C40,+4 /減計數(shù)器,設定計數(shù)脈沖 /數(shù)為4 LD C40 /裝入計數(shù)器觸點 = Q0.0 /輸出觸點圖減計數(shù)程序及時序u比較指令是一種比較判斷,用于比較兩個符號數(shù)或無符號數(shù)。比較指令是一種比較判斷,用于比較兩個符號數(shù)或無符號數(shù)。u比較指令的類型有:字節(jié)比較、整數(shù)比較、雙字整數(shù)比較和比較指令的類型有:字節(jié)比較、整數(shù)比較、雙字整數(shù)比較和實數(shù)比較。實數(shù)比較。u比較運算符有:比較運算符有:=、=、和和(表示不等于)。表示不等于)。u

59、對比較指令可進行對比較指令可進行LDLD、A A和和O O的編程。的編程。u在梯形圖中以帶參數(shù)和運算符號的觸點的形式編程,當這兩在梯形圖中以帶參數(shù)和運算符號的觸點的形式編程,當這兩數(shù)比較式的結(jié)果為真時,該觸點閉合。數(shù)比較式的結(jié)果為真時,該觸點閉合。u在語句表中使用在語句表中使用LD指令進行編程時,當比較式為真時,主機指令進行編程時,當比較式為真時,主機將棧頂置將棧頂置1。使用。使用A/O指令進行編程時,當比較式為真時,則指令進行編程時,當比較式為真時,則在棧頂執(zhí)行在棧頂執(zhí)行A/O操作,并將結(jié)果放入棧頂。操作,并將結(jié)果放入棧頂。1. 字節(jié)比較字節(jié)比較 字節(jié)比較用于比較兩個字節(jié)型整數(shù)值字節(jié)比較用于

60、比較兩個字節(jié)型整數(shù)值IN1和和IN2的大小,的大小,字節(jié)比較是無符號的。比較式可以是字節(jié)比較是無符號的。比較式可以是LDB、AB或或OB后直后直接加比較運算符構(gòu)成。接加比較運算符構(gòu)成。如:如:LDB=、AB、OB= 等。等。整數(shù)整數(shù)IN1和和IN2的尋址范圍:的尋址范圍:VB、IB、QB、MB、SB、 SMB、LB、*VD、*AC、*LD和常數(shù)。和常數(shù)。指令格式例:指令格式例:LDB= VB10, VB12 AB MB0, MB1 OB= AC1, 116 2. 整數(shù)比較整數(shù)比較 整數(shù)比較用于比較兩個一字長整數(shù)值整數(shù)比較用于比較兩個一字長整數(shù)值IN1和和IN2的大小,的大小,整數(shù)比較是有符號的

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論