EATMT – Rozšířený automat pro sekvenční řízení

Symbol blokuPotřebná licence: ADVANCED
PIC

Popis funkce
Blok EATMT implementuje konečný automat s maximálně 256 stavy a 256 pravidly pro přechody, čímž rozšiřuje možnosti bloku ATMT.

Současný stav automatu i, i = 0,1,,255, je indikován jednotlivými bity celočíselných výstupů q0, q1, …, q15. Pouze jeden bit s indexem i, MOD,16 na výstupu q(i,DIV,16) je nastaven na 1. Ostatní bity tohoto výstupu a ostatní výstupy jsou nulové. Bity jsou číslovány od nuly, začínajíce nejméně významným bitem. Všimněte si, že operátory DIV a MOD označují celočíselné dělení a zbytek po celočíselném dělení. Současný stav je také indikován výstupem ksa 0,1,,255.

Podmínky pro přechod Ck, k = 0,1,,255, jsou aktivovány jednotlivými bity vstupů c0, c1, …, c15. k-tá podmínka pro přechod je splněna, když je (k,MOD,16)-tý bit vstupu c(k,DIV,16) roven 1. Přechod jinak nemůže proběhnout.

Pro kompozici vstupních signálů c0, c1,…,c15 z jednotlivých Booleovských signálů mohou být použity bitové multiplexory BMHEXD nebo BMOCT. Podobně mohou být výstupní signály q0, q1,…,q15 dekomponovány pomocí bitových demultiplexorů BDHEXD nebo BDOCT.

Funkce automatu je definována následující tabulkou přechodů:

S1 C1 FS1
S2 C2 FS2
Sn Cn FSn

Každý řádek této tabulky vyjadřuje jedno pravidlo přechodu. Např. prvý řádek

S1 C1 FS1

má tento význam:

Jestliže (aktuální stav je S1 AND podmínka přechodu C1 je splněna),
potom přejdi do následujícího stavu FS1.

Výše popsaný význam řádku tabulky platí pro C1 < 1000. Pro C1 1000 se předpokládá negace (C1 1000)-té podmínky pro přechod.

Výše zmíněnou tabulku lze snadno sestavit z diagramu stavů automatu nebo z popisu SFC (Sequential Function Charts, dříve Grafcet).

Vstup R1 = on resetuje automat do počátečního stavu S0. Vstup SET umožňuje manuální přechod ze současného stavu do stavu ns0 při detekci náběžné hrany. Vstup R1 má přednost před vstupem SET. Vstup HLD = on zastaví vykonávání automatu, takže zůstává ve svém současném stavu bez ohledu na vstupní signály ci a časovač tstep se nezvyšuje. Výstup TOUT signalizuje, že stroj zůstává v daném stavu déle, než se očekávalo. Časové limity TOi pro jednotlivé stavy jsou definovány polem touts. Pokud je TOi nastaveno na nulu, pro daný stav neexistuje časový limit. Výstup TOUT je nastaven na off vždy, když automat změní svůj stav.

Je možné umožnit více přechodů stavů v jednom cyklu pomocí parametru morestps. Tato možnost by však měla být pečlivě zvážena a otestována, zejména pokud je výstup TOUT použit v podmínkách pro přechod. V takovém případě se silně doporučuje zahrnout do podmínek pro přechod také výstup ksa.

Vývojové nástroje REXYGEN zahrnují také program SFCEditor. Pomocí tohoto nástroje můžete graficky vytvářet schémata SFC. Tento editor spustíte z REXYGEN Studio kliknutím na tlačítko Konfigurovat v dialogu parametrů bloku EATMT.

Tento blok propaguje kvalitu signálu. Více informací je uvedeno v sekci 1.4.

Vstup

R1

Reset bloku

Bool

ns0

Cílový stav pro přechod vynucený vstupem SET

Long (I32)

SET

Vynucení přechodu do stavu ns0

Bool

HLD

Pozastavení

Bool

c0

Podmínka přechodu

Long (I32)

c1

Podmínka přechodu

Long (I32)

c2

Podmínka přechodu

Long (I32)

c3

Podmínka přechodu

Long (I32)

c4

Podmínka přechodu

Long (I32)

c5

Podmínka přechodu

Long (I32)

c6

Podmínka přechodu

Long (I32)

c7

Podmínka přechodu

Long (I32)

c8

Podmínka přechodu

Long (I32)

c9

Podmínka přechodu

Long (I32)

c10

Podmínka přechodu

Long (I32)

c11

Podmínka přechodu

Long (I32)

c12

Podmínka přechodu

Long (I32)

c13

Podmínka přechodu

Long (I32)

c14

Podmínka přechodu

Long (I32)

c15

Podmínka přechodu

Long (I32)

Parametr

morestps

Povolit více přechodů mezi stavy v jednom cyklu

Bool

off ..

zakázáno

on ...

povoleno

sfcname

Jméno souboru pro ukládání dat speciálníhoh editoru

String

STT

Tabulka přechodů mezi stavy  [0 0 1; 1 1 2; 2 2 3; 3 3 0]

Short (I16)

touts

Časové limity pro jednotlivé stavy  [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16]

Double (F64)

Výstup

q0

Indikátor aktivního stavu

Long (I32)

q1

Indikátor aktivního stavu

Long (I32)

q2

Indikátor aktivního stavu

Long (I32)

q3

Indikátor aktivního stavu

Long (I32)

q4

Indikátor aktivního stavu

Long (I32)

q5

Indikátor aktivního stavu

Long (I32)

q6

Indikátor aktivního stavu

Long (I32)

q7

Indikátor aktivního stavu

Long (I32)

q8

Indikátor aktivního stavu

Long (I32)

q9

Indikátor aktivního stavu

Long (I32)

q10

Indikátor aktivního stavu

Long (I32)

q11

Indikátor aktivního stavu

Long (I32)

q12

Indikátor aktivního stavu

Long (I32)

q13

Indikátor aktivního stavu

Long (I32)

q14

Indikátor aktivního stavu

Long (I32)

q15

Indikátor aktivního stavu

Long (I32)

ksa

Celočíselná reprezentace stavu

Long (I32)

tstep

Čas uplynulý od posledního přechodu mezi stavy

Double (F64)

TOUT

Příznak překročení časového limitu pro aktuální stav

Bool

2024 © REX Controls s.r.o., www.rexygen.com