TON, TOF

TON (časovač na oneskorenie)

Inštrukcia počíta časové intervaly, ak stav rungunadobúda priechodný stav. Pokiaľ stav rungu ostáva priechodný, tak časovač zväčšuje hodnotu v akumulátore (ACC bite), až pokiaľ nenadobudne rovnakú hodnotu akú ma v preset bite časovača. Ak časovač dopočíta, tak hodnota v DN (done) bite nadobudne logickú 1 a časovač ďalej nebude počítať. Časovač začne znova počítať, až keď DN bit sa nastaví na logickú 0. DN byt sa dá nastaviť do logickej 0 inštrukciou reset, ktorou reštartujeme časovač, alebo pomocou inštrukcie MOV, kde priamo prepisujeme hodnotu zadanej adresy bitu. Ak počas počítania časovača sa zmení stav rungu z priechodného na nepriechodný, tak akumulovaná hodnota sa resetuje. Časovač sa používa na nastavovanie výstupných alebo vnútorných bitov po uplynutí prednastaveného času, pokiaľ stav rungu ostáva v priechodnom stave.

Každý časovač na oneskorenie sa skladá z troch vnútorných slov.

2. slovo – ukladá nastavenú hodnotu (preset bit):

Programátor zadáva túto hodnotu. Ak akumulovaná hodnota dosiahne zadanú hodnotu alebo je väčšia ako zadaná hodnota, tak časovač prestane počítať a nastaví sa DN bit. Táto hodnota môže byť zadaná v rozsahu: 0 -32 767, a ak je mimo tohto rozsahu dôjde ku chybe.

3. slovo – ukladá akumulovanú hodnotu (accum bit):

Je to hodnota ktorá narastá od posledného reštartovania a spustenia časovača. Každá jej hodnota predstavuje 1 milisekundu.

Zadanie:Úlohou programu je znázornenie funkcionality inštrukcie TON, ktorá predstavuje softvérový časovač, ktorý sa inkrementuje až po zadanú hodnotu.

Rebríková schéma:

TL1 TL2 TL3 TL4

TOF (časovač oneskorenia vypnutia)

Inštrukcia počíta časové intervaly, ak stav rungu nadobúda nepriechodný stav. TOF časovač začne počítať ak sa stav rungu zmení z priechodného na nepriechodný. Pokiaľ stav rungu ostáva nepriechodný, tak časovač zväčšuje hodnotu v akumulátore(Accum bite) , až pokiaľ nenadobudne rovnakú hodnotu akú ma v preset bite časovača. Ak časovač dopočíta, tak hodnota v DN (done) bite nadobudne logickú 1 a časovač ďalej nebude počítať. Časovač začne znova počítať, až keď DN bit sa nastaví na logickú 0. Ak počas počítania časovača sa zmení stav rungu z nepriechodného na priechodný, tak akumulovaná hodnota sa resetuje. Časovač sa používa na nastavovanie výstupných alebo vnútorných bitov po uplynutí prednastaveného času, pokiaľ stav rungu ostáva v nepriechodnom stave.

Každý časovač oneskorenia vypnutia sa skladá z troch vnútorných slov.

2. slovo – ukladá nastavenú hodnotu (preset bit):

Programátor zadáva túto hodnotu. Ak akumulovaná hodnota dosiahne zadanú hodnotu alebo je väčšia ako zadaná hodnota, tak časovač prestane počítať a nastaví sa DN bit. Táto hodnota môže byť zadaná v rozsahu: 0 -32 767, a ak je mimo tohto rozsahu dôjde ku chybe.

3. slovo -ukladá akumulovanú hodnotu (accum bit):

Je to hodnota ktorá narastá od posledného reštartovania a spustenia časovača. Každá jej hodnota predstavuje 1 milisekundu

Zadanie:Úlohou programu je znázornenie funkcionality inštrukcie TOF, ktorá predstavuje softvérový časovač, ktorý dekrementuje zadanú hodnotu až po nulu.

Riešenie:Úlohu znázorňujeme na príklade jednoduchého zapínania svetla po dobu počítania časovača, pričom dĺžka počítania sa dá zadať pomocou potenciometra.Program zapíname stlačením tlačidla TL1 a zastavíme ho stlačením tlačidla TL2.

Rebríková schéma:

TL1