Zählvariable im Strukturierten Text

Nico1

Level-1
Beiträge
10
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen,
ich versuche (bisher leider erfolglos) eine Zählvariable unter ganz bestimmten Bedingungen zu installieren.
Nachfolgend die Erklärung meines Programms:
Ich habe ein Programm (FUP) und dazu mehrere Funktionsbausteine (AS). Einen Funktionsbaustein soll nacheinander 3 mal aufgerufen werden.
Aus diesem Grund möchte ich gerne eine Zählvariable verwenden. Diese soll im Init-Block (des FB) mit 0 initialisiert werden. Dazu verwende ich die Ausgangsaktion des Init-Blocks im Strukturierten Text. Meine erste Frage ist, was ist der Hintergrund so etwas im Init-Block mit 0 zu initialisieren und wie wird das gemacht?
Der nächste Schritt ist, die Zählvariable muss in einem späteren Block inkrementiert werden (wieder als Ausgangsaktion im Strukturieren Text). Hierzu sollen wir keine Counter verwenden da der Baustein lediglich 3 mal hintereinander aufgerufen werden soll.Die Frage hier, was kann ich da in das Textfeld des strukturierten Textes reinschreiben dass das funktioniert?
Der Funktionsblock ist bereits fertig aber die Zählvariable bringt mich um den Verstand.
Vielen Dank,
Nico
 
Guten morgen Nico,

Ich hoffe ich habe dich richtig verstanden.
1) Initialisieren :
Zählervariable:=0;
2) Inkrementieren :
Du setzt eine If Schleife in der Form If ErgebnissAS=True then
Zählervariable:=Zählervariable + 1;

Natürlich ist habe ich einen ungünstigen Variablen Namen verwendet wegen dem ü drinnen aber denke du verstehst mein Beispiel.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielen Dank Mirakulixx,
das hat mir schon mal deutlich weitergeholfen.
Was ich bis jetzt allerdings noch nicht verstanden habe ist wie ich programmieren kann, dass der FB genau 3 Mal abgearbeitet wird und es dann mit dem nächsten FB weitergeht.
Wie immer vielen Dank für die Hilfe,
Nico
 
Wenn Du in der Ablaufsprache bist, reicht es aus, wenn Du die Transistion zum nächsten Schritt mit der
Zählervariable = 3
beschaltest. Dann geht es in den nächsten Schritt.
 
Bildschirmfoto 2013-05-14 um 22.04.53.jpg

Hallo Zusammen,
ich komme hier einfach nicht weiter, ich habe alle Möglichkeiten ausprobiert die mir eingefallen sind (Vorsicht Anfänger!).
Jetzt habe ich mal ein Bild im Anhang gespeichert um meine Situation zu verdeutlichen.
Zu sehen ist im linken Teil mein Ablaufsprache Funktionsblock und auf der rechten Seite oben die Ausgangsaktion meines Init-Blockes, auf der rechten unteren Seite die Zählvariable die ich im in der Ausgangsaktion der Transition "Zähler" gespeichert habe. (Ich muss dazu sagen, ich habe schon einige Möglichkeiten ausprobiert, nach dieser Konstellation ist mir einfach nichts mehr eingefallen sollte die Darstellung überhaupt nicht den Tipps entsprechen die ihr mir gegeben habt).
Was will ich erreichen: Dass die Transitionen "Zylinder1_ausfahren - Warten_1 - Zylinder1_einfahren2" drei mal hintereinander wiederholt wird und danach der Funktionsblock normal weiter abgearbeitet wird.
Ist es eine Möglichkeit, den Zähler in einem Parallelzweig zu installieren oder macht das keinen Sinn bzw. gibt es viel bessere Lösungen?
Wenn ich im Onlinemodus bis zählt das System nicht, ist der Zähler (rechts unten) (nahezu) richtig installiert?
Wie genau schreibe ich das rein, wenn ich möchte, dass wenn drei Wiederholungen zu Ende sind einfach unten weiter gemacht wird?
Auch die Beantwortung dieser Fragen bedeutet mir einigen, deshalb schon im Voraus mein Dank,
Nico
 
Du musst dafür sorgen, dass du solange NZ1Ein nicht da ist wieder in den ersten Schritt kommst.
Dann wird auch die Zählervariable hochgezählt(Ausgangsaktion wird nur abgearbeitet,wenn die anschließende Transistion TRUE ist).
Also Alternativsprung mit NOT NZ1Ein auf den Schritt vor der Abzweigung
 
Zurück
Oben