江西西門子S7-200SMART代理經(jīng)銷商

計數(shù)器CNT指令的使用如圖5-17所示。
如圖5-17 (a)、(b)所示,首先讓常開觸點0.00閉合時,對計數(shù)器C0001復(fù)位,計數(shù)器的當(dāng)前值變?yōu)樵O(shè)定值5,0.00觸點斷開后,計數(shù)器處于等待狀態(tài),由于P_0_2s觸點以0.1s通0.1s斷的頻率工作,即給計數(shù)器計數(shù)輸入端輸入周期為0.2s的脈沖,計數(shù)器開始逐減1計數(shù),每輸入一個脈沖,計數(shù)器當(dāng)前值減1。當(dāng)計數(shù)器當(dāng)前值減到0時,計數(shù)器狀態(tài)位變?yōu)?/span>1,當(dāng)前值和狀態(tài)位保持,直到0.00觸點閉合,計數(shù)器被復(fù)位,當(dāng)前值變?yōu)樵O(shè)定值,狀態(tài)位變?yōu)?/span>0。在計數(shù)器C0001狀態(tài)位為1時,相同編號的C0001常開觸點閉合,線圈100. 01得電。
如果計數(shù)器當(dāng)前值未減到0時0.00觸點就閉合,會對計數(shù)器提前復(fù)位,如圖5-17 (c)所示,在0.00觸點閉合期間(即復(fù)位端為ON時),脈沖輸入無效,直到0.00觸點斷開,才重新從設(shè)定值開始逐減1計數(shù)。
由于計數(shù)器當(dāng)前值具有掉電保持特點,因此在PLC重新上電運行時需要對計數(shù)器進行復(fù)位,即在PLC上電*執(zhí)行程序時要讓0.00觸點閉合再斷開,否則計數(shù)器將會在掉電前的當(dāng)前值的基礎(chǔ)上逐減1計數(shù)。
當(dāng)常開觸點0.00閉合時,多輸出定時器MTIM指令輸入端為ON,如果200通道(N) 第9位為0、第8位為1時,D100通道(PV)中的當(dāng)前值被復(fù)位,當(dāng)?shù)?/span>8位由1變?yōu)?/span>0時,定時器開始工作,D100通道(PV)中的當(dāng)前值由0開始每過100ms逐增1。
當(dāng)D100通道(PV)中的當(dāng)前值增到D200通道(SV)中的設(shè)定值80時,200通道(N)中第0位200. 00(第0定時狀態(tài)位)變?yōu)?/span>1且保持。
當(dāng)D100通道(PV)中的當(dāng)前值增到D201通道(SV+1)中的設(shè)定值90時,200通道(N)中第1位200. 01(第1定時狀態(tài)位)變?yōu)?/span>1且保持。若這時200通道中第9位(累計停止輸入)由0變?yōu)?/span>1,定時器停止計時,當(dāng)前值保持不變,直到200通道中第9位由1變?yōu)?/span>0,定時器在當(dāng)前值基礎(chǔ)上繼續(xù)逐增1計時。當(dāng)當(dāng)前值增到大值9999時自動返回到0,同時200通道(N)中第0~7位均變?yōu)?/span>0。
如果定時器當(dāng)前值未增到SV+7通道的設(shè)定值時200. 08位(定時器復(fù)位)由0變?yōu)?/span>1,定時器被提前復(fù)位,當(dāng)前值和各定時狀態(tài)位均被復(fù)位。
在200. 00位為1時,200. 00常開觸點閉合,100.01線圈得電;在200. 01位為1時,200. 01常開觸點閉合,100. 02線圈得電。

(1)指令說明
指令說明如下。

(2)指令使用舉例
累計定時器TTIM指令的使用如圖5-14所示。
當(dāng)常開觸點0.00閉合時,累計定時器T1的定時輸入端為ON,T1當(dāng)前值開始逐增1計時,當(dāng)當(dāng)前值增至設(shè)定值100時,T1的狀態(tài)位變?yōu)?/span>1,同時當(dāng)前值維持設(shè)定值不變,如圖5-14 (b)所示,即使觸點0.00斷開,定時器輸入端由ON變?yōu)?/span>OFF后,T1的當(dāng)前值和狀態(tài)位仍保持不變。當(dāng)常開觸點0. 01閉合時,累計定時器T1的復(fù)位輸入端為ON,T1被復(fù)位,當(dāng)前值和狀態(tài)位均變?yōu)?/span>0。當(dāng)T1的狀態(tài)位為1時,T1常開觸點閉合,100. 01線圈得電。
在累加定時器T1計時期間,如果當(dāng)前值未增到設(shè)定值時定時器輸入端就由ON變?yōu)?/span>OFF,如圖5-14 (c)所示,T1的當(dāng)前值保持不變,當(dāng)定時器輸入端再次變?yōu)?/span>ON時,T1在當(dāng)前值的基礎(chǔ)上累增1計時,直增到設(shè)定值為止,增到設(shè)定值后T1的狀態(tài)位變?yōu)?/span>1。
TIM、TIMH和TMHH指令都是以逐減1方式計時,區(qū)別在于定時單元不同,了解其中一種指令的用法就很容易掌握其他指令。下面以TIM指令為例說明,TIM指令的使用如圖5-13所示。
當(dāng)常開觸點0.00由斷開轉(zhuǎn)為閉合時,定時器T0000的當(dāng)前值變?yōu)樵O(shè)定值100(#0100),如圖5-13 (b)所示,在觸點0.00閉合期間,定時器T0000的當(dāng)前值從設(shè)定值開始每過100ms減1,當(dāng)前值減到0(即定時時間到)時,定時器狀態(tài)位馬上變?yōu)?/span>1,若定時器當(dāng)前值減到0時觸點0. 00仍閉合,當(dāng)前值維持為0不變,狀態(tài)位維持“1”態(tài)不變;當(dāng)觸點0.00斷開后,定時器當(dāng)前值由0變?yōu)樵O(shè)定值,同時定時器狀態(tài)位變?yōu)?/span>0。在定時器狀態(tài)位為1時,定時器T0000常開觸點閉合,100. 01線圈得電。
在定時器計時期間,如果當(dāng)前值未減到0時觸點0.00就斷開,當(dāng)前值馬上變?yōu)樵O(shè)定值,如圖5-13 (c)所示,在觸點0.00斷開期間,當(dāng)前值維持為設(shè)定值不變,直到觸點0.00閉合時當(dāng)前值才又從設(shè)定值開始逐減1計時。

總之,當(dāng)TIM、TIMH和TMHH指令輸入為ON時,從設(shè)定值開始逐減1計時,當(dāng)計時時間到(即當(dāng)前值減至0)時,定時器動作(即狀態(tài)位變?yōu)?/span>1),可驅(qū)動相同編號的觸點動作;當(dāng)指令輸入變?yōu)?/span>OFF時,定時器停止計時,當(dāng)前值等于設(shè)定值,狀態(tài)位為0。
(3)指令使用要點
定時器指令使用要點如下。
①定時器TIM、高速定時器TIMH、超高速定時器TMHH和累計定時器TTIM指令共用0000~4095(可簡寫作0~4095)定時器。在同一程序中,不同的定時器指令不要使用相同編號的定時器,如TIM、TIMH指令同時使用0000定時器,會產(chǎn)生誤動作,因為在同一時間內(nèi)一個定時器不可能既作100ms定時器,又作10ms的定時器。
基本輸入指令包括讀( LD)、讀非(LDNOT)、與(AND)、與非(ANDNOT)、或(OR)、或非(ORNOT)和非(NOT)指令。
基本輸入指令說明如下。
指令名稱 與格式 | 功能說明 | 操作數(shù) (bit) | 舉 例 |
梯形圖 | 指令語句 |
讀 LD bit | 將常開觸點與左 母線連接 | CIO、W、H、A、T、 C和TK等(位型) | 
| LD 0.00 |
讀非 LDNOT bit | 將常閉觸點與左 母線連接 | 
| LDNOT 0.00 |
與 AND bit | 將常開觸點與其 他觸點串聯(lián) | 
| LD 0. 00 AND 0. 01 |
與非 ANDNOT bit | 將常閉觸點與其 他觸點串聯(lián) | 
| LD 0. 00 ANDNOT 0. 01 |
或 OR bit | 將常開觸點與其 他觸點并聯(lián) | 
| LD 0. 00 OR 100. 00 |
或非 ORNOT bit | 將常閉觸點與其 他觸點并聯(lián) | 
| LD 0. 00 ORNOT 100. 00 |
非 NOT(520) | 將NOT之前的運 算結(jié)果取反。如果 常開觸點后面為 NOT指令,功能相 當(dāng)于一個常閉觸點 | 
| LD 0.00 NOT |
②當(dāng)PLC的掃描周期大于100ms時,如果使用0016~4095定時器會計時不準(zhǔn)確,這種情況下應(yīng)使用0000~0015定時器。
定時器指令包括定時器(100ms)、高速定時器(10ms)、超高速定時器(1ms)、累計定時器、長時間定時器和多輸出定時器指令。各定時器指令的名稱、助記符和功能號如下。
指令名稱 | 助記符 | 功能號 |
定時器 | BCD | TIM | - |
BIN | TIMX | 550 |
高速定時器 | BCD | TIMH | 015 |
BIN | TIMHX | 551 |
超高速定時器 | BCD | TMHH | 540 |
BIN | TMHHX | 552 |
累計定時器 | BCD | TTIM | 087 |
BIN | TTIMX | 555 |
長時間定時器 | BCD | TIML | 542 |
BIN | TIMLX | 553 |
多輸出定時器 | BCD | MTIM | 543 |
BIN | MTIMX | 554 |
根據(jù)定時設(shè)定值的數(shù)據(jù)類型不同,定時器指令可分為BCD類定時器指令和BIN類定時器指令,它們各自對應(yīng)的指令功能相同(如TIM指令與TIMX指令的功能相同),僅指令助記符、定時設(shè)定值的數(shù)據(jù)類型及范圍不同,BCD類定時器指令的設(shè)定值范圍為#0000~9999,BIN類定時器指令的設(shè)定值范圍為#0000~FFFF或&0~65535,由此可以看出,BIN類定時器指令的設(shè)定值范圍更大,故定時時間更長。
在編程時,CX-P軟件默認(rèn)只能輸入BCD類定時器指令,若要輸入BIN類定時器指令,可在CX-P軟件工程區(qū)的“新PLC”上單擊鼠標(biāo)右鍵,在彈出的菜單中選擇“屬性”,會彈出如圖5-12 (a)所示的對話框,勾選其中的“以二進制形式執(zhí)行定時器/計數(shù)器”項,馬上彈出的如圖5-12 (b)所示的對話框,確定后即可讓CX-P軟件能輸入BIN類定時器指令,此時BCD類定時器指令就無法輸入。

江西西門子S7-200SMART代理經(jīng)銷商