羅克韋爾(AB)PLC,基礎(chǔ)指令集講解(2)計(jì)時(shí)器與計(jì)數(shù)器
1.延時(shí)導(dǎo)通計(jì)時(shí)器指令(TON)
利用TON指令在預(yù)置時(shí)間內(nèi)計(jì)時(shí)完成去控制輸出的接通或斷開(kāi). 當(dāng)階梯為真時(shí),TON指 令開(kāi)始累加計(jì)時(shí),直至下列條件之一發(fā)生為止:
● 累加值等于預(yù)置值.
●階梯變假.
●復(fù)位計(jì)時(shí)器.
●相關(guān)的SFC步變無(wú)效.
一旦階梯條件變假,不論計(jì)時(shí)器是否到時(shí),處理器都復(fù)位累加值. 可見(jiàn)每一個(gè)TON必須使 用一個(gè)計(jì)時(shí)器元素(如 ),并提供下列參數(shù):
(1) 預(yù)置值(Present):用以設(shè)置預(yù)定時(shí)間, 以一個(gè)16位的整數(shù)值放置,范圍0~32767.
(2) 累加值(Accum):是一個(gè)動(dòng)態(tài)值,告訴用戶目前已經(jīng)延時(shí)的數(shù)值,計(jì)時(shí)器復(fù)位時(shí),其值為

0. TON的操作及其相應(yīng)的狀態(tài)可用下表描述.

TON指令舉例

當(dāng) limit_switch_ 1 被置位時(shí),light_2 接通 180 毫秒(timer_ 1 計(jì)時(shí)). 當(dāng)timer_ 1 的累加值.ACC 達(dá)到 180 時(shí), light_3 接通. 而且保持導(dǎo)通直到 TON 指令被禁止. 如果在 timer_ 1 正計(jì)時(shí)時(shí) limit_switch_ 1 斷開(kāi),則關(guān)斷 light_2.
2.延時(shí)斷開(kāi)計(jì)時(shí)器指令(TOF)
TOF指令在階梯條件變假時(shí)開(kāi)始累加計(jì)時(shí)直至下列條件之一產(chǎn)生:
●累加值等于預(yù)置值.
●階梯條件變?yōu)檎?/p>
●相關(guān)的 SFC 步變無(wú)效. 一旦階梯條件變真,不論計(jì)時(shí)器是否到時(shí),處理器都復(fù)位累加值. 各 參數(shù)的含義與 TON 相同.TOF 的操作及其相應(yīng)的狀態(tài)可用下表描述.

一旦階梯條件變真, 不論計(jì)時(shí)器是否到時(shí), 處理器都復(fù)位累加值. 各參數(shù)的含義與 TON 相 同.TOF 的操作及其相應(yīng)的狀態(tài)可用下表描述.

由于RES指令將對(duì)正在計(jì)時(shí)的計(jì)時(shí)器累加值,完成位和計(jì)時(shí)位進(jìn)行復(fù)位,所以不可用 RES復(fù)位指令復(fù)位 TOF. TOF指令舉例

當(dāng) limit_switch_2 被清零時(shí),light_2 接通 180 毫秒(timer_2 計(jì)時(shí)). 當(dāng) timer_2 的累加值.ACC 達(dá) 到 180 時(shí), light_2 斷開(kāi)同時(shí) light_3 接通.而且保持導(dǎo)通直到 TOF 指令被使能.如果在 timer_2 正計(jì)時(shí)時(shí) limit_switch_2 被置位,則關(guān)斷 light_2.
3.保持型計(jì)時(shí)器 RTO
RTO指令在階梯條件為真, 開(kāi)始計(jì)時(shí), 直到累加值達(dá)到預(yù)置值為止。 下列條件發(fā)生時(shí), RTO指令保持其累加值:
●階梯變假。
●用戶改變到編程方式。
●處理器出錯(cuò)或斷電。
●相關(guān)的 SFC 步變無(wú)效。 當(dāng)處理器重新運(yùn)行或階梯變真時(shí), 計(jì)時(shí)器從保持的值開(kāi)始續(xù)計(jì)時(shí)。 由于保持累加值, 所以在階梯為真的時(shí)間內(nèi)保持型計(jì)時(shí)器測(cè)量了累加時(shí)間。如果 RTO 階梯 條件變假后, 要復(fù)位其累加值和狀態(tài)位, 用戶需在另一條階梯中編寫具有相同地址的復(fù)位指 令 RES。

RTO 指令舉例:

4.加計(jì)數(shù)指令 (CTU )
CTU指令是一條輸出指令。
操作數(shù):

計(jì)數(shù)器結(jié)構(gòu):

說(shuō)明: CTU 指令向上計(jì)數(shù)。 如果指令被使能時(shí)加計(jì)數(shù)使能位 (.CU) 是清零狀態(tài), 則 CTU 指令使計(jì)數(shù)器加 1。如果指令被使能位(.CU) 是置位狀態(tài), 或指令被禁止, CTU 指令 保持它的累加值 (.ACC)。 即使完成位(.DN) 被置位之后, 累加值也繼續(xù)增加。如果要清 零累加值, 可以用一條引用同一計(jì)數(shù)器結(jié)構(gòu)的 RES 指令, 或?qū)?0 值到計(jì)數(shù)器的累加值。 CTU 指令舉例:

傳送裝置把零件帶到緩存區(qū)。每進(jìn)入一個(gè)零件, limit_switch_ 1 被使能且 counter_ 1 的累 加值加 1。每取出一個(gè)零件 limit_switch_被使能且 counter_ 1 的累加值減 1。如果有 100 個(gè)零 件進(jìn)入緩存區(qū)(置位 counter_ 1 的完成位.DN), 則關(guān)斷傳送裝置 A , 在緩存區(qū)有空間之前, 不用傳送零件進(jìn)入緩存區(qū)。
6.復(fù)位指令 (RES )
RES 指令是一條輸出指令。
操作數(shù):
