A 17. fejezet („Időzítők") gyakorlatainak részletes megoldásai és a tudáspróba megoldókulcsa. Előbb dolgozd ki magad, csak utána ellenőrizz!
Gyakorlatok — megoldások
17.1. feladat — Késleltetett indítás a CC100-on
Megoldás
VAR tKesl : TON; END_VAR tKesl(IN := bGomb, PT := T#3S); bLampa := tKesl.Q;
Az ET kimenet online monitorozásban láthatóan számol 0-tól 3 másodpercig, majd megáll.
A kiegészítő kérdés: ha a gombot csak 1 másodpercig nyomod, a kimenet nem kapcsol be.
A TON az IN elejtésekor nullázza az eltelt időt — a részidő nem „gyűlik”. Ez a TON
alapvető tulajdonsága, és éppen ez teszi zavarszűrésre alkalmassá (17.4).
17.2. feladat — Ventilátor-utánfutás
Megoldás
TOF(kikapcsolás-késleltetés), mert a kimenetnek a bemenettel együtt kell bekapcsolnia, és a bemenet megszűnése után mégPTideig fenn kell maradnia.- A program:
VAR tUtanfutas : TOF; END_VAR tUtanfutas(IN := bMotorUzemel, PT := T#10S); bVentilator := tUtanfutas.Q;
- Az idődiagram:
IN ____|‾‾‾‾‾‾‾‾‾‾|________________
Q ____|‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾|_________
|<- 10 s ->|
ET ______________/‾‾‾‾‾‾‾‾‾/0______Az ET a bemenet elejtésétől kezd számolni, és a PT elérésekor billen el a Q.
⚠ Gyakori hiba: TON-nal próbálni megoldani egy NOT-tal. Az IN := NOT bMotorUzemel
megoldás késleltetve bekapcsolna a motor leállása után — épp fordítva.
17.3. feladat — Villogtatás és impulzus
Megoldás
1. Aszimmetrikus villogtató (200 ms be, 1,8 s szünet) két időzítő láncolásával:
VAR tSzunet : TON; tVillan : TP; END_VAR tSzunet(IN := NOT tVillan.Q, PT := T#1S800MS); tVillan(IN := tSzunet.Q, PT := T#200MS); bLampa := tVillan.Q;
2. Fix hosszúságú impulzus bármilyen gombnyomásra:
VAR tImpulzus : TP; END_VAR tImpulzus(IN := bGomb2, PT := T#2S); bKimenet2 := tImpulzus.Q;
3. Mi történik, ha az impulzus alatt újra megnyomod? Semmi — a TP a futó impulzus
alatt a további bemeneti éleket figyelmen kívül hagyja, és az impulzus a maga 2 másodperce
után ér véget. Ez a TP legfontosabb tulajdonsága: a kimenet hossza nem függ a bemenettől.
17.4. feladat — Zavarszűrés
Megoldás
VAR tSzuro : TON; END_VAR tSzuro(IN := bNyomaskapcsolo, PT := T#2S); bHibajelzes := tSzuro.Q;
A TON való erre, mert a rövid „megvillanások” elejtik az IN bemenetet, mielőtt a
PT letelne — és a TON ilyenkor nullázza az eltelt időt. Csak a legalább 2 másodpercig
folyamatosan fennálló jel jut át.
⚠ Gyakori hiba: a TOF választása. Az utánfutásra való: a rövid villanást meghosszabbítaná
2 másodpercesre — vagyis pontosan azt erősítené fel, amit ki akarunk szűrni.
Tudáspróba — megoldókulcs
| # | Válasz | Indoklás | Szakasz |
|---|---|---|---|
| 1 | a | A PT típusa TIME. |
17.2 |
| 2 | b | 5 másodperc helyesen: PT := T#5S. |
17.2 |
| 3 | c | A TON Q kimenete akkor igaz, ha az IN igaz és a PT letelt. |
17.3 |
| 4 | d | Ha az IN a PT letelte előtt visszaesik, nullázódik, és a Q nem kapcsol be. |
17.3 |
| 5 | a | A TOF az IN-nel együtt kapcsol be, és a lefutó él után PT idővel ki. |
17.4 |
| 6 | b | A TP impulzusa mindig pontosan PT hosszú, függetlenül az IN-től. |
17.5 |
| 7 | c | Ventilátor-utánfutásra a TOF való. |
17.4 |
| 8 | d | Jelzavar kiszűrésére a TON való: csak a tartósan fennálló jel számít. |
17.3 |
| 9 | a | Két TON-ból épített villogtatónál a periódusidő a két PT összege. |
17.7 |
| 10 | b | Egy példány két helyen történő hívásánál a hívások felülírják egymást — az eredmény kiszámíthatatlan. | 17.8 |