- 西門子S7-200 SMART PLC編程技巧與案例
- 韓相爭編著
- 1525字
- 2020-04-29 18:04:13
3.3 計數器指令及案例
計數器是一種用來累計輸入脈沖個數的編程元件,其結構主要由1個16位當前值寄存器、1個16位預置值寄存器和1位狀態位組成。在S7-200 SMART PLC中,按工作方式的不同,可將計數器分為加計數器、減計數器和加減計數器3大類。
3.3.1 加計數器(CTU)
(1)圖說加計數器
圖說加計數器,如圖3-25所示。

圖3-25 加計數器
(2)工作原理
復位端(R)的狀態為0時,脈沖輸入有效,計數器可以計時,當脈沖輸入端(CU)有上升沿脈沖輸入時,計數器的當前值加1,當當前值大于或等于預置值(PV)時,計數器的狀態位被置1,其常開觸點閉合,常閉觸點斷開;若當前值到達預置值后,脈沖輸入依然上升沿脈沖輸入,計數器的當前值繼續增加,直到最大值為32767,在此期間計數器的狀態位仍然處于置1狀態;當復位端(R)狀態為1時,計數器復位,當前值被清0,計數器的狀態位置0。
(3)應用舉例
如圖3-26所示。

圖3-26 加計數器應用舉例
案例解析
當R端常開觸點I0.1=1時,計數器脈沖輸入無效;當R端常開觸點I0.1=0時,計數器脈沖輸入有效,CU端常開觸點I0.0每閉合一次,計數器C1的當前值加1,當當前值到達預置值2時,計數器C1的狀態位置1,其常開觸點閉合,線圈Q0.1得電;當R端常開觸點I0.1=1時,計時器C1被復位,其當前值清0,C1狀態位清0。
3.3.2 減計數器(CTD)
(1)圖說減計數器
圖說減計數器,如圖3-27所示。

圖3-27 減計數器
(2)工作原理
當裝載端LD的狀態為1時,計數器被復位,計數器的狀態位為0,預置值被裝載到當前值寄存器中;當裝載端LD的狀態為0時,脈沖輸入端有效,計數器可以計數,當脈沖輸入端(CD)有上升沿脈沖輸入時,計數器的當前值從預置值開始遞減計數,當當前值減至為0時,計數器停止計數,其狀態位為1。
(3)應用舉例
如圖3-28所示。

圖3-28 減計數器應用舉例
案例解析
當LD端常開觸點I0.1閉合時,減計數器C2被置0,線圈Q0.1失電,其預置值被裝載到C2當前值寄存器中;當LD端常開觸點I0.1斷開時,計數器脈沖輸入有效,CD端I0.0常開觸點每閉合一次,其當前值就減1,當當前值減為0時,減計數器C2的狀態位被置1,其常開觸點閉合,線圈Q0.1得電。
3.3.3 加減計數器(CTUD)
(1)圖說加減計數器
圖說加減計數器,如圖3-29所示。

圖3-29 加減計數器
(2)工作原理
當復位端(R)狀態為0時,計數脈沖輸入有效,當加計數輸入端(CU)有上升沿脈沖輸入時,計數器的當前值加1,當減計數輸入端(CD)有上升沿脈沖輸入時,計數器的當前值減1,當計數器的當前值大于或等于預置值時,計數器狀態位被置1,其常開觸點閉合、常閉觸點斷開;當復位端(R)狀態為1,計數器被復位,當前值被清0;加減計數器當前值范圍為-32768~32767,若加減計數器當前值為最大值32767,CU端再輸入一個上升沿脈沖,其當前值立刻跳變為最小值-32768;若加減計數器當前值為最小值-32768,CD端再輸入一個上升沿脈沖,其當前值立刻跳變為最大值32767。
(3)應用舉例
如圖3-30所示。

圖3-30 加減計數器應用舉例
案例解析
當與復位端(R)連接的常開觸點I0.2斷開時,脈沖輸入有效,此時與加計數脈沖輸入端連接的I0.0每閉合一次,計數器C2的當前值就會加1,與減計數脈沖輸入端連接的I0.1每閉合一次,計數器C2的當前值就會減1,當當前值大于或等于預置值4時,C2的狀態位置1,C2常開觸點閉合,線圈Q0.1接通;當與復位端(R)連接的常開觸點I0.2閉合時,C2的狀態位置0,其當前值清0,線圈Q0.1斷開。
3.3.4 計數器指令應用舉例
(1)控制要求
用一個按鈕控制一盞燈,當按鈕按4次時燈點亮,再按2次時燈熄滅。
(2)解決方案
①I/O分配:控制按鈕為I0.1,燈為Q0.1。
②程序編制:如圖3-31所示。

圖3-31 照明燈控制
案例解析
計數器C1的復位端為0可以計數,計數器C2的復位端為1不能計數;按鈕按夠(即I0.1=1)4次,C1接通,Q0.1得電并自鎖,燈點亮,同時C1復位端接通,C2復位端斷開可計數。再按(即I0.1=1)2次,C2接通,Q0.1失電,燈熄滅。