GrafcetMaker Öppna editorn

Skriva övergångsvillkor

Övergångsvillkor, aktionsvillkor och händelser är logiska uttryck. Du skriver dem i vanlig ASCII; diagrammet visar dem i läroboksnotation (ICKE som ett överstreck, OCH som ·). Stäng av Visa › Läroboksnotation för att se exakt vad du skrev.

Operatorer

BetydelseSkrivAccepteras ocksåVisas som
OCHa * ba AND b, a && b, a · ba · b
ELLERa + ba OR b, a || ba + b
ICKE/aNOT a, !a, ¬aa med ett överstreck
Stigande flank↑aRE a (^a blir ↑a)↑a
Fallande flank↓aFE a↓a
Alltid sant / falskt1 / 0TRUE / FALSE1 / 0
Parenteser(a + b) * c(a + b) · c

ICKE binder starkast, sedan OCH, sedan ELLER: a + b * /c betyder a + (b * (/c)). Använd parenteser när du är osäker.

Stigande och fallande flanker

En flank är sann bara i det ögonblick dess operand ändras: ↑a (stigande flank, P-trigger) när a går från falskt till sant, ↓a (fallande flank, N-trigger) när den går från sant till falskt. Använd den för att reagera en gång på ett knapptryck, oavsett hur länge knappen hålls nedtryckt.

Lampan lyser från ett tryck på knappen tills den släpps ↑button ↓button 0 1 Lamp
Lampan lyser från ett tryck på knappen tills den släpps

Tre sätt att skriva en flank:

  • Skriv ^ före namnet: ^start blir ↑start medan du skriver.
  • Placera textmarkören på ett namn och tryck på Alt+↑ för en stigande flank eller Alt+↓ för en fallande flank. Tryck igen för att ta bort flanken, eller på den andra för att byta.
  • Klicka på ↑ eller ↓ i symbolfältet som visas ovanför fältet medan du redigerar ett övergångsvillkor.

RE a och FE a accepteras också. Flanker fungerar även på stegvariabler: ↑X3 är sant när steg 3 blir aktivt.

Stegvariabler

X3 är sant medan steg 3 är aktivt. I ett projekt med flera grafcetar syftar X3 på steg 3 i samma grafcet, eller på det enda steg 3 i projektet. Använd den för att synkronisera grafcetar, t.ex. för att vänta på att en annan grafcet når ett visst steg.

Tidsfördröjningar

5s/X2 är sant 5 sekunder efter att X2 blev sant, och falskt igen så snart X2 är falskt: typiskt ”5 s efter att steg 2 aktiverades”.

Värmaren är på i 5 s start 5s/X1 0 1 Heater
Värmaren är på i 5 s
  • Enheter: ms, s, min, h, t.ex. 500ms/X4, 2min/start.
  • Operanden kan vara vilket villkor som helst: 3s/(a * b).
  • 2s/a/5s är sant 2 s efter att a blev sant och förblir sant till 5 s efter att a blev falskt.

Jämförelser

Numeriska variabler (INT, REAL, TIME) jämförs med =, <>, <, <=, >, >=, och kan använda +, -, *, / och MOD i jämförelsen: level >= 80, C = 3, T1 > 2s, (a + b) / 2 < limit. En jämförelse är ett villkor: när du kombinerar den med andra sätter du den inom parentes, som i start * (C < 10). Utan dem skulle start * C < 10 jämföra start * C med 10.

Tilldelningar i lagrade aktioner

Lagrade aktioner innehåller en tilldelning: C := C + 1, Motor := 1, Speed := 2.5, Done := FALSE. Se Aktioner.

Hjälp medan du skriver

  • Förslag: börja skriva ett namn och välj en variabel eller ett steg (X…) med piltangenterna, sedan Enter eller Tab. Resten av det markerade namnet visas i grått efter markören; Tab eller → godtar det.
  • Tomt fält: den första variabeln i tabellen som inget använder ännu visas i grått (en ingång för ett övergångsvillkor, en utgång för en aktion); Tab godtar den.
  • Problem: en ruta under fältet förklarar vad som är fel, stryker under var och föreslår åtgärder: Använd Start för ett felstavat namn. Ett nytt namn meddelas (Ny variabel start: BOOL, ingång) och deklareras när du bekräftar.
  • Symbolfält: knappar för ↑ ↓ ICKE OCH ELLER, parenteser (de omsluter den markerade texten) och en mall för tidsfördröjning.

Du kan alltid bekräfta ett uttryck som har ett problem: det visas understruket med rött i diagrammet och listas under Problem tills du åtgärdar det.