-> Hier kostenlos registrieren
Hallo Forum,
als Neuling hier und in der SPS-Steuerung soll ich eine Anlage Betreiben. Die SPS soll mit CoDeSys programmiert werden.
Um mich der Aufgabe von bekanntem Terrain zu nähern habe ich die die Struktur wie für eine höhere Programmiersprache (C++) geschrieben.
Die Objektorientierung wollte ich durch Funktionsblocks und unterProgramme realisieren.
Das Hauptprogramm soll die einzelnen Unterprogramme aufrufen. Einige Porgrammteile (bspw. Hochfahren) sollen aber nur einmal ausgeführt werden. Das heißt ich benötige eine Ende-Funktion am Ende des Programms.
Darüber hinaus habe ich Programmteile denen die Idee der schrittweisen Abarbeitung der Programmzeilen zugrunde liegt. So muss eine Zeile beendet sein, bevor eine weitere aufrufe. Derzeit behelfe ich mir mit dem Ablaufplan um -insb. eine Warten-Funktion- zu realisieren. Leider wird mein Programm zunehmend komplex und ich stoße an die Grenzen dieser Idee (verschachtelte If-Bed.
Der entscheidende Unterschied zu CoDeSys scheint mir im Programmablauf zu liegen. In CoDeSys wird jedes Programm als Dauerschleife ausgeführt, was sich für mein Pogramm als Schwierigkeit erweist.
Nun die Fragen:
1. Gibt es eine Endefunktion bspw. im Ablaufplan, dass ich nicht zu einem Punkt zurückspringen muss oder im ST am Ende des Programms?
2. Gibt es die Möglichkeit Programme nur einmalig aufzurufen?
3. Wie realisiert ihr das Hochfahren?
4. Gibt es die Möglichkeit ein Programm Zeilenweise abzuarbeiten und so eine Warten-funktion zu integrieren?
Für Hilfe und konstruktive Kritik bin ich sehr dankbar
als Neuling hier und in der SPS-Steuerung soll ich eine Anlage Betreiben. Die SPS soll mit CoDeSys programmiert werden.
Um mich der Aufgabe von bekanntem Terrain zu nähern habe ich die die Struktur wie für eine höhere Programmiersprache (C++) geschrieben.
Die Objektorientierung wollte ich durch Funktionsblocks und unterProgramme realisieren.
Das Hauptprogramm soll die einzelnen Unterprogramme aufrufen. Einige Porgrammteile (bspw. Hochfahren) sollen aber nur einmal ausgeführt werden. Das heißt ich benötige eine Ende-Funktion am Ende des Programms.
Darüber hinaus habe ich Programmteile denen die Idee der schrittweisen Abarbeitung der Programmzeilen zugrunde liegt. So muss eine Zeile beendet sein, bevor eine weitere aufrufe. Derzeit behelfe ich mir mit dem Ablaufplan um -insb. eine Warten-Funktion- zu realisieren. Leider wird mein Programm zunehmend komplex und ich stoße an die Grenzen dieser Idee (verschachtelte If-Bed.
Der entscheidende Unterschied zu CoDeSys scheint mir im Programmablauf zu liegen. In CoDeSys wird jedes Programm als Dauerschleife ausgeführt, was sich für mein Pogramm als Schwierigkeit erweist.
Nun die Fragen:
1. Gibt es eine Endefunktion bspw. im Ablaufplan, dass ich nicht zu einem Punkt zurückspringen muss oder im ST am Ende des Programms?
2. Gibt es die Möglichkeit Programme nur einmalig aufzurufen?
3. Wie realisiert ihr das Hochfahren?
4. Gibt es die Möglichkeit ein Programm Zeilenweise abzuarbeiten und so eine Warten-funktion zu integrieren?
Für Hilfe und konstruktive Kritik bin ich sehr dankbar