GrafcetMaker Åbn editoren

Skriv transitionsbetingelser

Transitionsbetingelser, betingelser for aktioner og hændelser er logiske udtryk. Du skriver dem i almindelig ASCII; diagrammet viser dem i lærebogsnotation (IKKE som en streg over, OG som ·). Slå Vis › Lærebogsnotation fra for at se præcis det, du skrev.

Operatorer

BetydningSkrivAccepteres ogsåVises som
OGa * ba AND b, a && b, a · ba · b
ELLERa + ba OR b, a || ba + b
IKKE/aNOT a, !a, ¬aa med en streg over
Stigende flanke↑aRE a (skriver du ^a, får du ↑a)↑a
Faldende flanke↓aFE a↓a
Altid sand / falsk1 / 0TRUE / FALSE1 / 0
Parenteser(a + b) * c(a + b) · c

IKKE binder stærkest, derefter OG og så ELLER: a + b * /c betyder a + (b * (/c)). Brug parenteser, når du er i tvivl.

Stigende og faldende flanker

En flanke er kun sand i det øjeblik, dens operand ændrer sig: ↑a (stigende flanke, P-trigger), når a går fra falsk til sand, ↓a (faldende flanke, N-trigger), når den går fra sand til falsk. Brug den til at reagere én gang på et tryk på en knap, uanset hvor længe knappen holdes nede.

Lampen lyser fra et tryk på knappen, til den slippes ↑button ↓button 0 1 Lamp
Lampen lyser fra et tryk på knappen, til den slippes

Tre måder at skrive en flanke på:

  • Skriv ^ foran navnet: ^start bliver til ↑start, mens du skriver.
  • Stil tekstmarkøren på et navn, og tryk på Alt+↑ for en stigende flanke eller Alt+↓ for en faldende flanke. Tryk igen for at fjerne flanken, eller på den anden for at bytte den om.
  • Klik på ↑ eller ↓ i symbollinjen, der vises over feltet, mens du redigerer en transitionsbetingelse.

RE a og FE a accepteres også. Flanker virker også på trinvariabler: ↑X3 er sand, når trin 3 bliver aktivt.

Trinvariabler

X3 er sand, mens trin 3 er aktivt. I et projekt med flere grafcets henviser X3 til trin 3 i den samme grafcet eller til projektets eneste trin 3. Brug den til at synkronisere grafcets, f.eks. for at vente på, at en anden grafcet når et bestemt trin.

Timere

5s/X2 er sand 5 sekunder efter, at X2 blev sand, og falsk igen, så snart X2 er falsk: typisk »5 s efter, at trin 2 blev aktiveret«.

Varmelegemet kører i 5 s start 5s/X1 0 1 Heater
Varmelegemet kører i 5 s
  • Enheder: ms, s, min, h, f.eks. 500ms/X4, 2min/start.
  • Operanden kan være en hvilken som helst betingelse: 3s/(a * b).
  • 2s/a/5s er sand 2 s efter, at a blev sand, og forbliver sand indtil 5 s efter, at a blev falsk.

Sammenligninger

Numeriske variabler (INT, REAL, TIME) sammenlignes med =, <>, <, <=, >, >= og kan bruge +, -, *, / og MOD inde i sammenligningen: level >= 80, C = 3, T1 > 2s, (a + b) / 2 < limit. En sammenligning er en betingelse: når du kombinerer den med andre, så sæt den i parentes, som i start * (C < 10). Uden parentes ville start * C < 10 sammenligne start * C med 10.

Tildelinger i lagrede aktioner

Lagrede aktioner indeholder en tildeling: C := C + 1, Motor := 1, Speed := 2.5, Done := FALSE. Se Aktioner.

Hjælp, mens du skriver

  • Forslag: begynd at skrive et navn, og vælg en variabel eller et trin (X…) med piletasterne og derefter Enter eller Tab. Resten af det fremhævede navn vises med gråt efter markøren; Tab eller → accepterer det.
  • Tomt felt: den første variabel i tabellen, som endnu ikke bruges, vises med gråt (en indgang for en transitionsbetingelse, en udgang for en aktion); Tab accepterer den.
  • Problemer: en boks under feltet forklarer, hvad der er galt, understreger hvor og tilbyder rettelser: Brug Start ved et fejlstavet navn. Et nyt navn annonceres (Ny variabel start: BOOL indgang) og erklæres, når du bekræfter.
  • Symbollinje: knapper til ↑ ↓ IKKE OG ELLER, parenteser (de omslutter den markerede tekst) og en skabelon til en timer.

Du kan altid bekræfte et udtryk med et problem: det vises med rød understregning på diagrammet og står i Problemer, indtil du retter det.