Sprungverteiler TwinCat

Kaba

Level-1
Beiträge
1
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich habe ein Problem bei der Programmierung mit Twincat PLC Control.
Die Problemösung mit Step 7 wäre kein Problem, ich habe nur nicht den Durchblick, wie das mit TwinCat zu lösen wäre :confused:
(Wenn möglich ebenfalls in AWL).

Programmcode Step 7 AWL:

L #Zustand (Int, statische Variable)
SPL SP00
SPA _000
SPA _001
...usw.
SP00: SPA Ende
---
_000: //Programmcode unwichtig
SPA Ende
---
_001 //Programmcode unwichtig
SPA Ende
---
Ende: BE

So jetzt weis ich nicht wie ich das umsetzen könnte, weil ich nichts gleichwertiges für SPL gefunden habe :eek:

SPA _000 -->JMP _000
SPB --> JMPC
SPBN --> JMPCN

Hoffe ihr könnt etwas Licht ins Dunkle bei mir bringen. ;)

Danke Kaba
 
Ich machs mir mal einfach und stell mal ein Beispiel von Codesys rein. Sollte unter Twincat aber auch so aussehen:

Code:
[B]CASE-Anweisung[/B]

Mit der CASE-Anweisung kann man mehrere bedingte Anweisungen mit derselben Bedingungsvariablen in ein Konstrukt zusammenfassen.
Syntax:
CASE <Var1> 
OF
<Wert 1>: <Anweisung 1>
<Wert 2>: <Anweisung 2>
<Wert3, Wert4, Wert5: <Anweisung 3>
<Wert6 .. Wert10 : <Anweisung 4>
... 
<Wert n>: <Anweisung n>
ELSE <ELSE-Anweisung>
END_CASE;
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Mit der CASE-Anweisung in ST kann eine Schrittkette sehr übersichtlich dargestellt werden, vor allem wenn die einzelnen Schritte sinnvoll über Konstanten oder ENUM benannt werden. Wenn die Anweisungen in den einzelnen Schritten als Aktionen angefügt werden, ist das Programm schon fast selbst-dokumentiert. Die Aktionen lassen sich in AWL, ST oder anderen Sprachen verfassen.
Code:
CASE Zustand OF
Zst_Init:
    ACT_Init;
Zst_Grundstellung:
    ACT_Grundstellung;
END_CASE
liest sich doch besser und lässt sich schneller inbetriebnehmen als
Code:
CASE Zustand OF
0:
    _000;
1:
    _001;
END_CASE
 
Zurück
Oben