




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、南陽理工學院電子與電氣工程系電子與電氣工程系 電氣教研室電氣教研室電氣控制與PLC應用技術電氣控制與PLC應用技術可編程序控制器原理(第(第5-95-9章)章)第第5 5章章 S7-300S7-300指令系統指令系統 本本章章內內容容5.1 STEP-7 編程基礎5.2 指令及其結構5.3 位邏輯指令5.4 定時器與計數器指令5.5 數據處理功能指令5.6 數據運算指令5.7 控制指令 思考與練習題教學目的教學目的掌握位邏輯指令的應用掌握定時器和計數器指令的應用 教學重點教學重點掌握位邏輯指令的應用掌握定時器和計數器指令的應用 教學難點教學難點定時器和計數器指令第第5 5章章 S7-300S7
2、-300指令系統指令系統 5.1 STEP 7 編程基礎 指令組成:操作碼指令組成:操作碼 + + 操作數操作數u 操作碼定義要執行的功能;操作碼定義要執行的功能;u 操作數為執行該操作所需要的信息操作數為執行該操作所需要的信息, ,由標識符和參由標識符和參 數組成數組成; ;u 有些語句指令不帶操作數,它們操作的對象是唯有些語句指令不帶操作數,它們操作的對象是唯一的一的; ; 5.2 5.2 指令及其結構指令及其結構5.2.1 5.2.1 指令的組成指令的組成 1. 1. 語句指令語句指令語句指令:語句指令: 操作碼操作碼 操作數操作數A A I0.1I0.1 / /對輸入繼電器對輸入繼電器
3、 I0.1I0.1 進行與操作進行與操作 L L MW10MW10 / /將字將字MW10MW10裝入累加器裝入累加器1 1 定義要執行的功能定義要執行的功能執行該操作所需要的信息執行該操作所需要的信息 NOT / NOT /對邏輯操作結果(對邏輯操作結果(RLORLO)取反)取反5.2.1 5.2.1 指令的組成指令的組成 1. 1. 語句指令語句指令例如: Q 4.0 ( )該指令中:( )可認為是操作碼,表示一個二進制賦值操作。Q 4.0是操作數,表示賦值的對象。 5.2.1 5.2.1 指令的組成指令的組成2.2.梯形邏輯指令梯形邏輯指令u 梯形邏輯指令用圖形元素表示PLC要完成操作u
4、 其操作碼是用圖素表示的,該圖素形象表明CPU做什么u 其操作數的表示方法與語句指令相同操作數: 標識符標識符 標識參數標識參數A I 0.1 L M W 10表示操作數在該存儲區域表示操作數在該存儲區域內的具體位置內的具體位置 主標識符:表示操作數所在的存儲區主標識符:表示操作數所在的存儲區 主要有:I(輸入映像區),Q(輸出映像區),M(位存儲區),PI(外部輸入),PQ(外部輸出),T(定時器),C(計數器),DB(數據塊),L(本地數據)等 輔助標識符進一步說明操作數的位數長度輔助標識符進一步說明操作數的位數長度包括有:X(位),B(字節),W(字2字節),D(雙字4字節) 表示操作數
5、存放區域及操作數表示操作數存放區域及操作數位數(位、字節、字等)位數(位、字節、字等) 5.2.2 5.2.2 操作數操作數1.1.操作數的組成操作數的組成5.2.2 5.2.2 操作數操作數2. 2. 操作數的表示操作數的表示兩種表示方法:u 物理地址(絕對地址)表示法要明確指出操作數的所在存儲區,該操作數的位數具體位置。例如:Q 4.0。符號名先定義后使用,不能重名。定義符號時,需指明操作數所在的存儲區、位數、具體位置及數據類型。u 符號地址表示法l 位邏輯指令處理兩個數字,“1”和“0”。這兩個數字“1”和“0”稱為二進制數字或二進制位。在接點與線圈領域,“1”表示動作或通電,“0”表示
6、未動作或未通電。l 位邏輯指令掃描信號狀態1和0,并根據布爾邏輯對它們進行組合。這些組合產生結果1或0,稱為“邏輯運算結果(RLO)”。5.3 5.3 位邏輯指令位邏輯指令u 位邏輯運算指令u 位操作指令u 位測試指令l 位邏輯指令主要包括:位邏輯運算指令是位邏輯運算指令是l “與”(AND)l “或”(OR)l “異或”(XOR)指令l 組合5.3.1 5.3.1 位邏輯運算指令位邏輯運算指令1. “與”和“與非”(A,AN)指令 用語句表指令完全表示為:A I0.0 A Q 4.1AN M10.1 Q4.0 ( )I0.0 Q4.1 M10.1 Q4.0 5.3.1 5.3.1 位邏輯運算
7、指令位邏輯運算指令 2. “或”和“或非”(O,ON)指令 O I1.1 ON M2.0 O Q4.0 Q4.1 5.3.1 5.3.1 位邏輯運算指令位邏輯運算指令 I1.1 I1.1 M2.0 M2.0 Q4.0 Q4.0 ( )Q4.1Q4.1用語句表指令完全表示為: 3. “異或”和“異或非”(X,XN)指令 X I0.0 X I0.1 Q4.05.3.1 5.3.1 位邏輯運算指令位邏輯運算指令用語句表指令完全表示為:5.3.1 5.3.1 位邏輯運算指令位邏輯運算指令I0.0( )I0.2M10.0M0.3M10.1Q4.0(a)I0.0( )I0.2M10.0M0.3M10.1Q
8、4.0(b)4. 串并聯組合表示法 當邏輯串是復雜組合時,CPU的掃描順序是先“與”后“或”。A( O I0.0 O I0.2 ) A( O M10.0 O M0.3 ) A M10.1 Q4.0 先并后串梯形圖語句表5.3.1 5.3.1 位邏輯運算指令位邏輯運算指令I0.0( )I0.2M10.0M0.3M10.1Q4.0(a)I0.0( )I0.2M10.0M0.3M10.1Q4.0(b)A( A I0.0 A M10.0 O A I0.2 A M0.3 ) A M10.1 Q4.0先串后并梯形圖語句表【例例】運動機械自動往復運動的PLC控制。 1.按下啟動按鈕SB1后,電動機驅動工作臺
9、運動2.如果工作臺運動到極限位置時,由行程開關SQ1或SQ2檢測并發 出停止前進指令,同時自動發出返回指令。3.只要不按停止按鈕SB2,工作臺將繼續這種自動往復運動。4.工作臺驅動電動機通過熱繼電器做過載保護。 控制要求: 5.3.1 5.3.1 位邏輯運算指令舉例位邏輯運算指令舉例4.校驗解題過程:解題過程: 邏輯串輸出指令又稱為賦值操作指令 該操作把狀態字中RLO的值賦給指定的操作數(位地址) 一個RLO可被用來驅動幾個輸出元件 在LAD中,輸出線圈是上下依次排列的 在STL中,這些輸出具有相同的優先級5.3.2 5.3.2 位操作指令位操作指令1. 輸出指令A I0.0A I0.1ON
10、I0.2 Q4.0A I0.3 Q4.1多重輸出梯形圖 Q4.0( )I0.1I0.2I0.0Q4.1( )I0.3用語句表指令完全表示為:5.3.2 5.3.2 位操作指令位操作指令 置位復位指令根據RLO的值,來決定被尋址位的信 號狀態是否需要改變2 . 置位復位指令5.3.2 5.3.2 位操作指令位操作指令 若RLO的值為1,被尋址位的信號狀態被置1或清0 若RLO是0,則被尋址位的信號保持原狀態不變(b)置位指令操作網絡1AAONRI0.0I0.1I0.2Q4.0(R)Q4.0I0.0I0.1I0.2網絡1AAONSI0.0I0.1I0.2Q4.0(S)Q4.0I0.0I0.1I0.
11、2(a) 復位指令操作 5.3.2 5.3.2 位操作指令位操作指令 RS觸發器梯形圖方塊指令中標有一個置位輸入(S)端,一個 復位輸入(R)端,輸出端標為Q。3. RS觸發器5.3.2 5.3.2 位操作指令位操作指令 觸發器可以用在邏輯串最右端,結束一個邏輯串,也可用在 邏輯串中,影響右邊的邏輯操作結果。 RS觸發器分為置位優先和復位優先型兩種置位優先型RS觸發器的R端在S端之上,當兩個輸入端都為1時,下面的置位輸入最終有效,既置位輸入優先,如圖 A I0.0 R M0.0A I0.1S M0.0A M0.0 = Q4.0 置位優先型RS觸發器 5.3.2 5.3.2 位操作指令位操作指令
12、根據I0.1和I0.2的時序圖畫出Q0.0的時序圖。【例例】時序圖搶答器有三個輸入,分別為I0.0、I0.1和I0.2,輸出分別為Q4.0、Q4.1和Q4.2,復位輸入是I0.4。要求:三人中任意搶答,誰先按按鈕,誰的指示燈優先亮,且只能亮一盞燈,進行下一問題時主持人按復位按鈕,搶答重新開始。 5.3.2 5.3.2 位操作指令舉例位操作指令舉例【例例】搶答器的設計4.校驗解題過程:解題過程:4. 對RLO的直接操作指令 這一類指令直接對RLO進行操作,改變狀態字中RLO位的狀態。5.3.2 5.3.2 位操作指令位操作指令當信號狀態變化時就產生跳變沿 從0變到1時,產生一個上升沿(或正跳沿)
13、5.3.3 5.3.3 位測試指令位測試指令 從1變到0時,產生一個下降沿(或負跳沿) 兩類跳變沿檢測指令,一是對RLO的跳變沿檢測的指令,另 一種是對觸點跳變沿直接檢測的梯形圖方塊指令RLO正跳沿檢測1 2 3 4 5 6 7 8 9OBI掃描周期Q4.0M1.0I1.0信號狀態圖Q4.0M1.0I1.0語句表AFPI1.0( P )M1.0( )Q4.0梯形圖5.3.3 5.3.3 位測試指令位測試指令【例例】設計一個閃爍電路,按動按鈕設計一個閃爍電路,按動按鈕I0.0I0.0,使燈泡使燈泡 亮,再按動按鈕,燈泡滅;重復。亮,再按動按鈕,燈泡滅;重復。 5.3.3 5.3.3 位測試指令舉
14、例位測試指令舉例負跳沿(下降沿)檢測指令5.3.3 5.3.3 位測試指令位測試指令觸點負跳沿檢測NEGI0.3QM_BITM0.0I0.2I0.1I0.0I0.4( )Q4.0如果下列條件同時成立,則輸出Q4.0為1:輸入I0.0、I0.1和I0.2的信號狀態為1。輸入I0.3有負跳沿。輸入I0.4的信號狀態為1。5.3.3 5.3.3 位測試指令位測試指令地址上升沿檢測指令示例5.3.3 5.3.3 位測試指令位測試指令【例例】若故障信號若故障信號I0.0I0.0為為1 1,使,使Q4.0Q4.0控制的指示燈以控制的指示燈以1Hz1Hz的的 頻率閃爍。操作人員按復位按鈕頻率閃爍。操作人員按
15、復位按鈕I0.1I0.1后,如果故障已經消失,后,如果故障已經消失, 則指示燈熄滅,若沒有消失,指示燈轉為常亮,直至故障消失。則指示燈熄滅,若沒有消失,指示燈轉為常亮,直至故障消失。5.3.3 5.3.3 位測試指令舉例位測試指令舉例1. 傳送帶控制 在傳送帶的起終點各有兩個按鈕開關:用于START的S1和S3;S2和S4用于STOP。可以從任一端啟動或停止傳送帶。另外,當傳送帶上的物件到達末端時,傳感器S5使傳送帶停機。5.3.4 5.3.4 位邏輯指令編程舉例位邏輯指令編程舉例MOTOR_ONS1S2StartStopS3S4StartStopS5用于傳送帶系統符號編程的元素用于傳送帶系統
16、符號編程的元素 I/O分配表分配表控制傳送帶程序控制傳送帶程序“S1”( S )“MOTOR_ON”網絡1:按任何一個啟動開關,接通電機“S3”網絡1:OOSS1S3MOTOR_ON“S2”( R )“MOTOR_ON”網絡2:按任何一個停止或打開傳送帶 末端的常閉接點,停止電機“S4”網絡2:OOONS2S4RMOTOR_ONS5“S5”2. 風機監控程序 某設備有三臺風機,當設備處于運行狀態時,如果風機至少有兩臺以上轉動,則指示燈常亮;如果僅有一臺風機轉動,則指示燈以0.5 Hz的頻率閃爍;如果沒有任何風機動,則指示燈以2 Hz的頻率閃爍。當設備不運行時,指示燈不亮。5.3.4 5.3.4
17、 位邏輯指令編程舉例位邏輯指令編程舉例圖圖4.17 風機監控程序風機監控程序I0.0( )I0.0I0.1Q4.0Q4.1I0.2I0.1I0.2I0.0I0.1I0.2( # )M10.1 M9.3( # )M10.0M10.0 M10.1M9.7 注:輸入位注:輸入位I0.0I0.0,I0.1I0.1,I0.2I0.2分別為風機分別為風機1 1,2 2,3 3的反饋輸入端。的反饋輸入端。M9.3 M9.3 為為2 Hz2 Hz頻率頻率CPUCPU中的時鐘信號;中的時鐘信號;M9.7M9.7為為0.5 Hz0.5 Hz頻率信號。頻率信號。風機監控程序 AN M10.0 AN M10.1 A
18、M9.7 ) A Q4.0 Q4.1風機狀態檢測的語句表程序,從中可看出中間輸出指令的用法:風機狀態檢測的語句表程序,從中可看出中間輸出指令的用法:A(A(A I0.0A I0.1OA I0.0A I0.2OA I0.1A I0.2) M10.0 A M10.0 O( AN I0.0 ANI0.1 ANI0.2 M10.1 A M10.1 A M9.3 ) O 風機監控程序5.4 5.4 定時器與計數器指令定時器與計數器指令5.4.1 定時器指令u 脈沖定時器(SP)u 擴展定時器(SE)u 接通延時定時器(SD)u 帶保持的接通延時定時器(SS)u 斷電延時定時器(SF)。 S7-300/4
19、00提供的定時器有:n 定時器的組成 定時器是一種由位和字組成的復合單元,定時器的觸點由位表示,其定時時間值存儲在字存儲器中。 在CPU的存儲器中留出了定時器區域,用于存儲定時器的定時時間值。每個定時器為2 B,稱為定時器字。 在S7-300中,最多允許使用256個定時器。 定時時間等于時基與定時值的乘積。 采用減計時,定時時間到后會引起定時器觸點的動作。5.4.1 5.4.1 定時器指令定時器指令定時器的第0位到第11位存放二進制格式的定時值,第12、13位存放二進制格式的時基。n 定時器字的表示方法圖圖4.18 累加器累加器1低字的內容低字的內容(定時值定時值127,時基,時基l s)11
20、12135.4.1 5.4.1 定時器指令定時器指令4.180150100001001001118707210,01s - 0,1s -1s -10s -00011011時間值: 0 . . . 999不用n 定時器時基5.4.1 5.4.1 定時器指令定時器指令n 設置定時時間的方法 其中,a:小時,bb:分鐘,cc:秒,ddd:毫秒,時基是自動選擇的,原則是能滿足定時范圍要求的最小時基。 其中,w為時基,取值為0,1,2或3,分別表示時基為10 ms,l00 ms,1 s或10 s;xyz為定時值,取值范圍為1999。l 使用S5中的時間表示法裝入定時數值 L S5T#aH_bbM_ccS
21、_dddMSl 直接裝入定時數值 L W#16#wxyz5.4.1 5.4.1 定時器指令定時器指令n -(SP)指令是產生指定時間寬度脈沖的定時器。 LAD參數數據類型存儲區說明TIMERT地址表示要起動的計時器號時間值S5TIMEI,Q,M,D,L定時時間值(S5TIME格式)1 1、脈沖定時器、脈沖定時器 -(SPSP)1 1、脈沖定時器、脈沖定時器 -(SPSP)1 1、脈沖定時器、脈沖定時器 -(SPSP)n 上圖程序對應的時序圖如圖所示上圖程序對應的時序圖如圖所示 1 1、脈沖定時器、脈沖定時器 -(SPSP)l T1接點控制Q0.0線圈,因此T1接點的狀態與Q0.0的狀態一致l
22、脈沖定時器每次起動的條件是邏輯位有正跳沿發生,定時器 啟動計時,T1接點開始輸出高電平“1”。l -(SP)指令計時的過程中,邏輯位的狀態若變為“0”,則定時 器停止計時,且輸出為“0”。l 脈沖定時器輸出的高電平的寬度小于或等于所定義的時間值。 LADLAD參數參數數據類數據類型型說明說明存儲區存儲區TIMER要啟動的計時器號如T0TSBOOL啟動輸入端I,Q,M,D,LTVS5TIME定時時間(S5TIME格式)RBOOL復位輸入端QBOOL定時器的狀態BIWORD當前時間(整數格式)BCDWORD當前時間(BCD碼格式)1 1、脈沖定時器、脈沖定時器 -(SPSP)n 脈沖定時器的方框指
23、令脈沖定時器的方框指令1 1、脈沖定時器、脈沖定時器 -(SPSP) 可從MW10和MW12中以不同的格式讀出定時器計時T1剩余的時間1 1、脈沖定時器、脈沖定時器 -(SPSP)上圖所示的程序對應的時序圖【例例】用脈沖定時器設計一個周期振蕩電路,振用脈沖定時器設計一個周期振蕩電路,振 蕩周期為蕩周期為5s5s,占空比為,占空比為2:32:3。 1 1、脈沖定時器、脈沖定時器 -(SPSP)n -(SE)指令與-(SP)指令相似,但-(SE)指令具有保持功能。LAD參數數據類型存儲區說明TIMERT地址表示要起動的計時器號時間值S5TIMEI,Q,M,D,L定時時間值(S5TIME格式)2 2
24、、擴展脈沖定時器、擴展脈沖定時器 -(SESE)2 2、擴展脈沖定時器、擴展脈沖定時器 -(SESE)2 2、擴展脈沖定時器、擴展脈沖定時器 -(SESE)n 上圖所示的程序對應的時序圖l一旦邏輯位(即I0.0的狀態)有正跳沿發生,定時器T0啟動,同時輸出高電平“1”。2 2、擴展脈沖定時器、擴展脈沖定時器 -(SESE)l定時時間到后,輸出將自動變成低電平“0”。l如果定時時間尚未到達,邏輯位的狀態就由“1”變為“0”,這時定時器仍然繼續運行,直到計時完成。這一點是-(SE)指令與-(SP)指令的不同之處。 LAD參數數據類型說明存儲區TIMER要啟動的計時器號如T0TSBOOL啟動輸入端I
25、,Q,M,D,LTVS5TIME定時時間(S5TIME格式)RBOOL復位輸入端QBOOL定時器的狀態BIWORD當前時間(整數格式)BCDWORD當前時間(BCD碼格式)2 2、擴展脈沖定時器、擴展脈沖定時器 -(SESE)擴展脈沖定時器的方框指令定時器應用舉例:n 使用-(SP)或-(SE)指令構成脈沖發生器:使用脈沖定時器如圖所示的程序可產生周期性變化的脈沖信號。n 上圖中的程序對應的時序圖如圖所示 定時器應用舉例:n 程序又可寫成如圖所示的程序 定時器應用舉例:【例例】設計頻率監視器,其特點是頻率低于下限,則設計頻率監視器,其特點是頻率低于下限,則 指示燈指示燈Q4.0Q4.0亮,亮,
26、“確認確認”按鈕按鈕I0.1I0.1使指示燈復位。監使指示燈復位。監控頻率為控頻率為0.5Hz0.5Hz,由,由M10.0M10.0提供提供。定時器應用舉例:3 3、開通延時定時器、開通延時定時器-(SDSD)n 開通延時定時器指令-(SD),相當于繼電器控制系統 中的通電延時時間繼電器。 LAD參數數據類型存儲區說明TIMERT地址表示要起動的計時器號時間值S5TIMEI,Q,M,D,L定時時間值(S5TIME格式)n 如圖所示的程序: 3 3、開通延時定時器、開通延時定時器-(SDSD)n 上圖所示的程序對應的時序圖如圖所示 3 3、開通延時定時器、開通延時定時器-(SDSD)n -(SD
27、SD)對應的方框如表所示)對應的方框如表所示 LAD參數數據類型說明存儲區TIMER要啟動的計時器號如T0TSBOOL啟動輸入端I,Q,M,D,LTVS5TIME定時時間(S5TIME格式)RBOOL復位輸入端QBOOL定時器的狀態BIWORD當前時間(整數格式)BCDWORD當前時間(BCD碼格式)3 3、開通延時定時器、開通延時定時器-(SDSD)n 定時器擴展定時器應用舉例:在S7-300中,單個定時器的最大計時范圍是999(2H_46M_30S),如果超過這個范圍,可以采用兩個或多個定時器級連的方法來擴展計時范圍。設計一個要求延時時間為5個小時的控制任務。n 使用-(SD)指令產生周期
28、性變化的脈沖信號:定時器應用舉例:n 上圖所示的程序對應的時序圖如圖所示 定時器應用舉例:【例例】用接通延時定時器設計一個周期振蕩電路,用接通延時定時器設計一個周期振蕩電路, 振蕩周期為振蕩周期為18s18s,占空比為,占空比為1 1:2 2。定時器應用舉例:定時器應用舉例:n使用 -(SD)指令還可以用二分頻電路產生一個方波。程序如圖所示 n時序圖如圖所示 定時器應用舉例:4 4、保持型開通延時定時器、保持型開通延時定時器-(SSSS) n保持型開通延時-(SS)與開通延時定時器-(SD)類似,但-(SS)指令有保持功能。 LAD參數數據類型存儲區說明TIMERT地址表示要起動的計時器號時間
29、值S5TIMEI,Q,M,D,L定時時間值(S5TIME格式)4 4、保持型開通延時定時器、保持型開通延時定時器-(SSSS) n 上圖中的程序對應的時序圖如圖所示 4 4、保持型開通延時定時器、保持型開通延時定時器-(SSSS) n 保持型開通延時定時器的方框指令LAD參數數據類型說明存儲區TIMER要啟動的計時器號如T0TSBOOL啟動輸入端I,Q,M,D,LTVS5TIME定時時間(S5TIME格式)RBOOL復位輸入端QBOOL定時器的狀態BIWORD當前時間(整數格式)BCDWORD當前時間(BCD碼格式)4 4、保持型開通延時定時器、保持型開通延時定時器-(SSSS) 5 5、關斷
30、延時定時器、關斷延時定時器-(SFSF)n 關斷延時定時器-(SF)相當于繼電器控制系統中的斷電延時時間繼電器。也是定時器指令中唯一的一個由下降沿啟動的定時器指令。 LAD參數數據類型存儲區說明TIMERT地址表示要起動的計時器號時間值S5TIMEI,Q,M,D,L定時時間值(S5TIME格式)n 如圖所示的程序 5 5、關斷延時定時器、關斷延時定時器-(SFSF)n 上圖中的程序對應的時序圖如圖所示5 5、關斷延時定時器、關斷延時定時器-(SFSF)n 關斷延時計時器的方框指令如下表所示 LAD參數數據類型說明存儲區TIMER要啟動的計時器號如T0TSBOOL啟動輸入端I,Q,M,D,LTV
31、S5TIME定時時間(S5TIME格式)RBOOL復位輸入端QBOOL定時器的狀態BIWORD當前時間(整數格式)BCDWORD當前時間(BCD碼格式)5 5、關斷延時定時器、關斷延時定時器-(SFSF)5 5種定時器的選擇原則種定時器的選擇原則5.4.2 5.4.2 計數器指令計數器指令 計數器置初值指令(計數器置初值指令(SCSC) 加法計數器線圈(加法計數器線圈(CUCU) 減法計數器線圈(減法計數器線圈(CDCD)n S7 S7中的計數器用于中的計數器用于: :對對RLORLO正跳沿計數。正跳沿計數。n 計數器是由表示當前計數值的字及狀態的位組成。計數器是由表示當前計數值的字及狀態的位
32、組成。n S7S7中有三種計數器中有三種計數器: : 1011120304150607180901001112131415BCD碼7BCD碼2BCD碼1無關:當計數器置數時這四位被忽略1.1. 計數器組成計數器組成 在在CPUCPU中保留一塊存儲區作為計數器計數值存儲區,每個計中保留一塊存儲區作為計數器計數值存儲區,每個計數器占用兩個字節,計數器字中的第數器占用兩個字節,計數器字中的第0 01111位表示計數值位表示計數值( (二進制格式二進制格式) ),計數范圍是,計數范圍是0 0999999。5.4.2 5.4.2 計數器指令計數器指令 1 1計數器置初值指令(計數器置初值指令(SCSC)
33、n 當邏輯位RLO有正跳沿時,計數器置初值線圈將預置值裝入指定計數器中。若RLO位的狀態沒有正跳沿發生,則計數器的值保持不變。LAD參數數據類型存儲區說明計數器號COUNTERC地址表示預置初值的計數器號預置值WORDI,Q,M,D,L預置值(必須是BCD碼格式,即為C#,例如C#23)2 2加法計數器線圈加法計數器線圈 l 當邏輯位RLO有正跳沿時,加法計數器線圈使指定計數 器的值加1,l 如果RLO位的狀態沒有正跳沿發生,或者計數器數值已經 達到最大值999,則計數器的值保持不變。 3 3減法計數器線圈減法計數器線圈 l 當邏輯位RLO有正跳沿時,減法計數器線圈使指定計數器 的值減1l 如
34、果RLO位的狀態沒有正跳沿發生,或者計數器數值已經 達到最小值0,則計數器的值保持不變。 LAD參數數據類型存儲區說明計數器號COUNTERC地址表示要執行減法計數的計數器號計數器指令的使用舉例計數器指令的使用舉例 n 如圖所示如圖所示n 當I0.0的狀態由“0”變為“1”時,(SC)指令將數值23裝入計數器C0中,當I0.1的狀態由“0”變為“1”時,計數器C0的值將減1,當I0.2的狀態由“0”變為“1”時,計數器C0的值將加1。計數器的位狀態與計數器值的關系如表所示 計數器的計數值計數器的位狀態不等于0“1”(高電平)等于0“0”(低電平)計數器指令的使用舉例計數器指令的使用舉例 n 如
35、圖所示,若I0.3的狀態為“1”,則計數器C0所計的數值立刻變為零,由于(R)指令是高電平執行,因此若I0.3的狀態保持“1”,則計數器C0始終處于清零狀態而無法正常使用。用戶在使用指令時,應注意指令的執行方式。 計數器指令的使用舉例計數器指令的使用舉例 4 4可逆計數器可逆計數器S_CUDS_CUDLAD參數數據類型說明存儲區COUNTER計數器標識號CCUBOOL加計數輸入I,Q,M,D,LCDBOOL減計數輸入SBOOL計數器預置輸入PVWORD計數器預置值(C#格式)RBOOL復位輸入QBOOL計數器狀態CVWORD計數器當前值(整數格式)CV_BCDWORD計數器當前值(BCD格式)
36、n 前面例子中兩圖所示的程序可以由下圖所示的程序代替 4 4可逆計數器可逆計數器S_CUDS_CUD 可逆計數器方框指令可以完成計數器的加(CU)、減(CD)計數和置初值(S、PV)以及計數器值清零(R)等功能.4 4可逆計數器可逆計數器S_CUDS_CUD可以看到, 還可以將計數器當前值以不同的格式輸出,整數格式(CV)和BCD格式(CV_BCD). 計數器的狀態可以Q端輸出,也可以由計數器的觸點輸出.p計數器指令的加、減計數輸入端以及預置值輸入端均為上升沿執行,指令才會執行。4 4可逆計數器可逆計數器S_CUDS_CUD使用計數器時應該注意下面幾點問題 p計數器預置的初始值及PV端的數據格
37、式為BCD碼二十進制格式,否則執行程序時,CPU將會出錯。p計數器觸點的狀態由計數器的值決定,如果計數值等于零,則計數器觸點的狀態為低電平“0”,如果計數值不等于零(無論等于幾),則計數器觸點的狀態為高電平“1”。1. 1. 脈沖發生器脈沖發生器用定時器構成一個脈沖發生器,使其產生如圖所示的脈沖時序,用定時器構成一個脈沖發生器,使其產生如圖所示的脈沖時序,脈沖信號的周期為脈沖信號的周期為3 s3 s,脈沖寬度為,脈沖寬度為1 s1 s2s1sQ4.0I0.0應用舉例應用舉例網絡12I0.0T1(SD)T2S5T#2S網絡13T2(SD)T1S5T#1S( )Q4.02脈沖發生器程序脈沖發生器程
38、序 2. 2. 頻率監測器頻率監測器 頻率監測器用于監測脈沖信號的頻率,若其低于下限,則頻率監測器用于監測脈沖信號的頻率,若其低于下限,則指示燈亮,指示燈亮,“確認確認”按鍵能使指示燈復位。為此,使用了一個按鍵能使指示燈復位。為此,使用了一個擴展脈沖定時器,即每當頻率信號有一個上升沿就啟動一次定擴展脈沖定時器,即每當頻率信號有一個上升沿就啟動一次定時器。如果超過了定時時間沒有啟動定時器,則表明兩個脈沖時器。如果超過了定時時間沒有啟動定時器,則表明兩個脈沖之間的時間間隔太長,即頻率太低了。之間的時間間隔太長,即頻率太低了。應用舉例應用舉例tt*定時器再觸發確認頻率低I0.1頻率低指示Q4.0定時
39、器響應T1脈沖信號M10.0t定時時間頻率監測器時序頻率監測器時序 頻率監測梯形圖程序頻率監測梯形圖程序M10.0(SE)T1S5T#2SI0.0( S )Q4.0T1( R )Q4.0I0.0I0.1 I0.0用于關閉監測器用于關閉監測器 I0.1用于確認頻率低用于確認頻率低 Q4.0用以控制指示燈用以控制指示燈 T1的定時時間為的定時時間為2 s 即設置脈沖信即設置脈沖信M10.0 的頻率監測下限為的頻率監測下限為0.5 Hz。應用舉例:交通信號燈的控制交通信號燈模型如圖所示 紅1 黃1綠1黃1紅1綠1綠2黃2紅2紅2黃2綠2北南西東控制要求如下:l自動開關合上之后,東西綠燈亮8秒滅,黃燈
40、亮3秒之后滅,紅燈亮10秒后閃2秒然后綠燈亮.循環l對應東西綠黃燈亮時,南北紅燈亮9秒后閃2秒,接著綠燈亮9秒后閃秒滅,黃燈亮3秒,紅燈又亮.循環l當斷開自動開關時,交通信號燈立刻停止工作交通信號燈的控制要求n根據控制要求畫出交通信號燈的時序圖如圖所示 交通信號燈的控制系統分析 n1PLC硬件配置:控制系統中的硬件配置如下 序號名稱型號說明數量1CPUCPU31312電源模塊PS30713開關量輸入模塊SM32114開關量輸出模塊SM32215前連接器20針2交通信號燈的控制n2分析控制要求進行輸入輸出點分配,并根據分配畫出外部接線圖。序號輸入信號名稱地址1自動開關QS(常開)I0.0序號輸出
41、信號名稱地址1東西綠燈HL1Q4.02東西黃燈HL2Q4.13東西紅燈HL3Q4.24南北綠燈HL4Q4.35南北黃燈HL5Q4.46南北紅燈HL6Q4.5交通信號燈的控制n輸入輸出模塊接線如圖所示 交通信號燈的控制n3程序設計 設計提示:可先采用SE指令,產生周期為23秒,占空 比為11:12的矩形波。再將其分割成所需要的矩形波。交通信號燈的控制5.5 5.5 數據處理功能指令數據處理功能指令l 裝入(L)和傳送(T)指令可以在存儲區之間或存儲區與過程輸 入、輸出之間交換數據。5.5.1 裝入和傳送指令l CPU執行這些指令不受邏輯操作結果RLO的影響。l L指令將源操作數裝入累加器1中,而
42、累加器原有的數據移入 累加器2中,累加器2中原有的內容被覆蓋。l T指令將累加器1中的內容寫入目的存儲區中,累加器的內容 保持不變。L 5 L MW 10 L IBDID 8 T MW 20 T MWAR1,P#10.0 1. 對累加器1的裝入和傳送指令/將立即數5裝入累加器1中/將MW10中的值裝入累加器1中/將由數據雙字DID8指出的輸入字節裝入累加器1中/將累加器1中的內容傳送給存儲字MW20 /將累加器1中的內容傳送給由地址寄存器1加偏/移量確定的存儲字中5.5.1 裝入和傳送指令 L STW / L STW /將狀態字中將狀態字中0 08 8位裝入累加器位裝入累加器1 1中,累加器中
43、,累加器 9 93l3l位被清位被清0 0 T STW / T STW /將累加器將累加器1 1中的內容傳送到狀態字中中的內容傳送到狀態字中 5.5.1 裝入和傳送指令2. 2. 讀取或傳送狀態字讀取或傳送狀態字L T1 /將定時器T1中二進制格式的時間值直接裝入累加器1的低字中 LC T1 /將定時器T1的時間值和時基以BCD碼裝入累加器1的低字中L C1 /將計數器C1中二進制格式的計數值直接裝入累加器1的低字中LC C1 /將計數器C l中的計數值以BCD碼格式裝入累加器1的低字中 3. 3. 裝入時間值或計數值裝入時間值或計數值5.5.1 裝入和傳送指令5.5.1 裝入和傳送指令4.
44、4. 地址寄存器裝入和傳送地址寄存器裝入和傳送對于地址寄存器,可以不經過累加器1而直接將操作數裝入或送,或將兩個地址寄存器的內容直接交換。LAD參數數據類型說明存儲區ENBOOL允許輸入I,Q,M,D,LENOBOOL允許輸出IN長度為8位、16位、32位的所有數據類型源數據OUT長度為8位、16位、32位的所有數據類型目的地地址5.5.1 裝入和傳送指令5. 5. 梯形圖方塊傳送指令梯形圖方塊傳送指令MOVEENINENOOUTDBW12( )Q4.0MW10I0.0 A A I0.0I0.0 JNB JNB _0001 _0001 L L MW10MW10 T T DBW12DBW12SE
45、T SET /使使RLORLO為為1 1SAVE SAVE /使使BRBR為為1 1 CLR CLR_0001_0001: A BRA BR Q4.0Q4.05.5.1 裝入和傳送指令n 如圖所示程序 5.5.1 裝入和傳送指令 在在S7-300S7-300中,單個計數器的最大計數值是中,單個計數器的最大計數值是999999,如果要求,如果要求大于大于999999的計數,就要進行擴展。結合應用傳送指令和比的計數,就要進行擴展。結合應用傳送指令和比較指令,將兩個計數器級連,最大計數值可達較指令,將兩個計數器級連,最大計數值可達9999992 2,n n個個計數器級連,最大計數值可達計數器級連,最
46、大計數值可達999 999 n n。 【例例】計數器擴展計數器擴展應用舉例應用舉例兩個計數器級連擴展的程序 n用計數器和定時器進行級連,可以使計時范圍幾乎可以無限地進行擴展。n假定T1的延時時間為2H,C0的計數值為999,則C1動作一次的時間為99921998 小時(約83天)。如果再考慮計數器C1與C0進行級連,設C1的計數值為900,則C1動作一次需要83900=74700天,約204年。【例例】定時器擴展應用舉例應用舉例2個計數器和1個定時器進行級連n 能夠實現的轉換操作有: * BCD碼和整數及長整數間的轉換 (BTI, ITB, ITD, BTD, DTB, DTR ) * 實數和
47、長整數間的轉換(RND, TRUNC, RND+, RND- ) * 數的取反、取負等(INVI, INVD, NEGI, NEGD, NEGR )5.5.2 5.5.2 轉換指令轉換指令n 轉換指令首先將源數據按照規定的格式讀入累加器,然后 在累加器中對數據進行類型轉換,最后再將轉換的結果傳 送到目的地址。1. BCD1. BCD和整數間的轉換和整數間的轉換表表4.16 BCD和整數間的轉換和整數間的轉換指令說 明BTI將累加器1低字中的3位BCD碼轉換為16位整數BTD將累加器1低字中的7位BCD碼轉換為32位整數ITB將累加器1低字中的16位整數碼轉換為3位BCD碼ITD將累加器1低字中
48、的16位整數碼轉換為32位整數DTB將累加器1中的32位整數碼轉換為7位BCD碼DTR將累加器1中的32位整數碼轉換為32位整數2. 2. 實數和長整數間的轉換實數和長整數間的轉換指令說 明RND將實數化整為最接近的整數,四舍五入,如果小數部分等于5,則選擇偶數結果,例如:1002.5化整為1002,1003.5化整為1004RND+將實數化整為大于或等于該實數的最小整數RND-將實數化整為小于或等于該實數的最大整數TRUNC取實數的整數部分(截去小數)3. 3. 數的取反、取負數的取反、取負指令說 明INVI對累加器1低字中的16位整數求反碼INVD對累加器1中的32位整數求反碼NEGI對累
49、加器1低字中的16位整數求補碼NEGD對累加器1中的32位整數求補碼NEGR對累加器1中的32位實數的符號位求補碼【例例】如果輸入I0.1為1,則將MD0的內容以7位BCD碼的格式(如果格式非法,則顯示系統錯誤)裝入累加器1,并將其轉換為長整數,存放到MD10,如果轉換不執行,則輸出Q4.0為1。 應用舉例應用舉例1. 比較指令比較指令表表4.19 比比 較較 指指 令令5.5.3 5.5.3 比較指令比較指令l 傳送帶1將包裹運送至臨時倉庫區。l 傳送帶1靠近倉庫區一端安裝的光電傳感器確定已有多少包裹運送至倉庫區。l 傳送帶2將臨時庫區中的包裹運送至裝貨場,在這里貨物由卡車運送至顧客。l 傳
50、送帶2靠近庫區一端安裝的光電傳感器確定已有多少包裹從庫區運送至裝貨場。l 含5個指示燈的顯示盤表示臨時倉庫區的占用程度。應用實例應用實例兩臺傳送帶的系統,在兩臺傳送帶之間有一個倉庫區:圖圖4.33 裝有計數器和比較器的倉庫區裝有計數器和比較器的倉庫區可裝100件包裹的臨時倉庫I0.0I0.1包裹運進包裹運出傳送帶1光電傳感器1光電傳感器2傳送帶2倉庫區裝滿(Q15.4)倉庫區裝入90%(Q15.3)倉庫區裝入50%(Q15.2)倉庫區不空(Q12.1)倉庫區空(Q12.0)顯示面板應用實例應用實例4.校驗解題過程:解題過程:【例例】用比較和計數指令編寫開關燈程序,要求燈控用比較和計數指令編寫開
51、關燈程序,要求燈控 按鈕按鈕I0.0I0.0按下一次,燈按下一次,燈Q4.0Q4.0亮,按下兩次,燈亮,按下兩次,燈Q4.0Q4.0,Q4.1 Q4.1 全亮,按下三次燈全滅,如此循環。全亮,按下三次燈全滅,如此循環。應用實例應用實例【例例】有一部電動小車供有一部電動小車供5 5個加工點使用,對小車的控制個加工點使用,對小車的控制 要求為:要求為:1 1)啟動按鈕)啟動按鈕I0.7I0.7按下時,車停在某個加工點(工位:按下時,車停在某個加工點(工位:1-51-5) 若沒有用車呼叫時,工位允許呼叫指示燈亮,表示各工位若沒有用車呼叫時,工位允許呼叫指示燈亮,表示各工位 可以呼車。可以呼車。2 2
52、)某工位呼車時,工位允許呼叫的指示燈滅,表示此后再呼)某工位呼車時,工位允許呼叫的指示燈滅,表示此后再呼 車均無效。車均無效。3 3)停車位呼車則小車不動,當呼車位號大于停車位號時,小)停車位呼車則小車不動,當呼車位號大于停車位號時,小 車自動向低位行駛;當呼車位號小于停車位號時,小車自車自動向低位行駛;當呼車位號小于停車位號時,小車自 動向高位行駛。當小車到達呼車位時自動停車。動向高位行駛。當小車到達呼車位時自動停車。4 4)小車到達呼車位時應停留)小車到達呼車位時應停留5s5s供該工位使用,不應立即被其供該工位使用,不應立即被其 他工位呼走他工位呼走試設計此系統。試設計此系統。應用實例應用
53、實例4.校驗解題過程:解題過程:l 移位指令將輸入移位指令將輸入ININ中的內容向左或向右逐位移動中的內容向左或向右逐位移動l 移動次數由輸入值移動次數由輸入值N N提供的數值確定提供的數值確定l 移位后空出的位填以移位后空出的位填以0 0或符號位或符號位(0(0代表正,代表正,1 1代表負代表負) )l 被移動的最后一位保存在狀態字中的被移動的最后一位保存在狀態字中的CClCCl里里l CC0CC0和和OVOV被復位為被復位為0 0l 可使用條件跳轉指令對可使用條件跳轉指令對CClCCl進行判斷。進行判斷。l 循環移位指令的空位填以從循環移位指令的空位填以從ININ中移出的位。中移出的位。5
54、.5.4 5.5.4 移位和循環移位指令移位和循環移位指令1無符號數移位指令表表4.20 無符號數移位指令無符號數移位指令輸入輸入ININ左移左移5 5位位 0 0 0 0 10 0 0 0 1 1 1 1 0 1 0 1 0 1 0 1158 700 0 0 0參數INN1 0 1 01 1 1 06位OUT這5位丟失空出的位填入01 0 1 01無符號數移位指令2. 有符號數移位指令 輸入輸入ININ帶符號右移帶符號右移4 4位位1 0 1 015870參數INN4位OUT空出位填入與符號位相同的信號狀態這四位丟失1 1 1 10 0 0 01 0 1 01 1 1 11 0 1 01 1
55、 1 11 0 1 00 0 0 0符號位2. 有符號數移位指令 3. 循環移位指令輸入輸入ININ循環左移循環左移3 3位位1 1 10 1 0 1 0 1 0 1310參數INN3位OUT移出3位的信號狀態插入空出位中最后移出位的狀態存在CC1中0 0 0 01 1 1 11 0 1 0 1 0 1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 11 0 0 00 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 1 115163. 循環移位指令【例例】 走馬燈的實現。走馬燈的實現。 要求:運用循環移位指令實現要求:運用循環移位指令實現8 8個彩燈的循環
56、左移和右移。個彩燈的循環左移和右移。 其中其中I0.0I0.0為起停開關,為起停開關,MD20MD20為設定的初始值,為設定的初始值,MW12MW12為移位為移位 位數,輸出為位數,輸出為Q0.0Q0.7Q0.0Q0.7。 3. 循環移位指令舉例解題過程:解題過程:5.5.5 累加器操作和地址寄存器指令表表4.23 累加器操作指令累加器操作指令1. 累加器操作指令CAW、CAD指令執行時累加器指令執行時累加器1的變化的變化3116150原累加器1指令執行后CAW3116150CAD5.5.5 累加器操作和地址寄存器指令 下面的例子說明了在有條件觸發的程序中INC指令是如何工作的。本例以存儲字節
57、MB10作為循環次數計數暫存器,用INC指令修正循環次數,循環體中的程序連續執行5次。 LOOP:L MB10 /循環體開始,裝載存儲字節至累加器循環體開始,裝載存儲字節至累加器1 INC 1 /循環計數器加循環計數器加1 T MB10 /保存循環次數保存循環次數 L B#16#5 I /比較JC ERR /如果數據塊長度大于50,則跳轉至ERR標號處A I0.0BEU /無條件結束當前塊ERR:CALL FC10 /對于塊長度大于50的情況,調用FC10做相應的處理5.5.5 累加器操作和地址寄存器指令4. 顯示和空操作指令表表4.26 顯示和空操作指令顯示和空操作指令5.5.5 累加器操作
58、和地址寄存器指令5.6 5.6 數據運算指令數據運算指令l 可以對整數、長整數和實數進行加、減、乘、除算術運算可以對整數、長整數和實數進行加、減、乘、除算術運算. .l 算術運算指令在累加器算術運算指令在累加器1 1和和2 2中進行,累加器中進行,累加器2 2中的值作為被減中的值作為被減 數或被除數數或被除數. .l 算術運算的結果保存在累加器算術運算的結果保存在累加器1 1中,累加器中,累加器1 1中原有的值被運中原有的值被運算結果覆蓋算結果覆蓋. .l 算術運算指令對狀態字的算術運算指令對狀態字的CClCCl和和CC0CC0,OVOV,OSOS位將產生影響位將產生影響. .可可以用位操作指
59、令或條件跳轉指令對狀態字中的標志位進行判斷以用位操作指令或條件跳轉指令對狀態字中的標志位進行判斷操作操作. .5.6.1 5.6.1 算術運算指令算術運算指令1. 1. 基本算數運算指令(長整數運算)基本算數運算指令(長整數運算) 1. 1. 基本算數運算指令(實數運算)基本算數運算指令(實數運算) 【例例】求輸入雙字求輸入雙字ID10ID10的內容與常數的內容與常數3232相除的余數,結相除的余數,結 果保存到果保存到MD20MD20中。中。 1. 1. 基本算數運算指令(實數運算)基本算數運算指令(實數運算) 5.6.2 5.6.2 字邏輯運算指令字邏輯運算指令l 對于對于LADLAD和和
60、FBDFBD形式的字邏輯運算指令,由參數形式的字邏輯運算指令,由參數IN1IN1和和IN2IN2 提供參與運算的兩個數據,運算結果保存在由提供參與運算的兩個數據,運算結果保存在由OUTOUT指定指定 的存儲區中。的存儲區中。 l 字邏輯運算指令可對兩個字邏輯運算指令可對兩個1616位(位(WORDWORD)或)或3232位(位(DWORDDWORD) 的 二 進 制 數 據 , 逐 位 進 行 邏 輯 與 、 邏 輯 或 、 邏的 二 進 制 數 據 , 逐 位 進 行 邏 輯 與 、 邏 輯 或 、 邏 輯異或運算。輯異或運算。l 對于對于STLSTL形式的字邏輯運算指令,可對累加器形式的字
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《茶壺》的讀后感
- 2022年北京冬奧會閉幕式觀后感
- 海水(咸水)淡化工程規劃設計方案
- 供水管道換新改造項目可行性研究報告
- 幼兒故事文字排版設計
- 女性服裝設計
- 山西省朔州市懷仁市第九中學高中部2023-2024學年高一上學期11月期中物理含解析
- 心理常識思維導圖設計
- 大理護理職業學院《基礎筆譯》2023-2024學年第二學期期末試卷
- 吉林建筑大學《俄語口譯》2023-2024學年第二學期期末試卷
- 全套電子課件:機械制造工藝基礎(第六版)
- T∕CAME 1-2019 家庭式產房建設標準
- 2021年卒中中心建設相關制度及流程匯編
- 善意的謊言辯論賽正反方觀點
- QC新老7種工具表格
- 中科院《鋼鐵生產工藝流程和節能減排》
- 項目四:旅游電子商務支付與安全(教案)
- 機械故障診斷大作業滾動軸承
- 密封件定位套機械加工工藝過程卡片
- 四輥中厚板精軋機機架的強度與剛度計算
- GDFJ005修改個人信息申請表
評論
0/150
提交評論