Anfahren einer Position
Moderatoren: Matthias, Weiss_MHJ
Hallo,
mit Aufruf eines Bausteins meine ich z.B.
CALL FB10, DB10
und die Übergabe der Parameter.
Oder bei FCs
CALL FC21
Wenn man das Anfahren einer Position in einem Baustein schreibt, dann kann man bei späteren Änderungen des Programmteils für das Anfahren einer Position, einzig das Programm im Baustein ändern und muss nicht an verschiendenen Stellen im Programm Änderungen ausführen.
Bei der Pumpeninsel sollte man auch für eine Pumpe das Programm in einem FB schreiben und dann diesen je nach Anzahl der Pumpen entsprechend oft aufrufen (mit jeweils anderem Instanz-DB).
Gruss
mit Aufruf eines Bausteins meine ich z.B.
CALL FB10, DB10
und die Übergabe der Parameter.
Oder bei FCs
CALL FC21
Wenn man das Anfahren einer Position in einem Baustein schreibt, dann kann man bei späteren Änderungen des Programmteils für das Anfahren einer Position, einzig das Programm im Baustein ändern und muss nicht an verschiendenen Stellen im Programm Änderungen ausführen.
Bei der Pumpeninsel sollte man auch für eine Pumpe das Programm in einem FB schreiben und dann diesen je nach Anzahl der Pumpen entsprechend oft aufrufen (mit jeweils anderem Instanz-DB).
Gruss
Anfahren einer Position
Hallo,
bitte Sehen sie sich mal das Programm an, mit dem Aufruf der DB1 und 2 stimmt was nicht.
Oder ich habe schon im Programm einen Fehler.
Für ihre Hilfe wäre ich ihnen sehr Dankbar.
Gruß
mac
bitte Sehen sie sich mal das Programm an, mit dem Aufruf der DB1 und 2 stimmt was nicht.
Oder ich habe schon im Programm einen Fehler.
Für ihre Hilfe wäre ich ihnen sehr Dankbar.
Gruß
mac
Anfahren einer Position
Hier das Programm...
Sie haben keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Anfahren einer Position
Hallo Herr Weiß,
ich habe Probleme mit dem Aufruf der DBs, den DB1 rufe ich auf aber der DB2 ruft sich nach Ablauf von DB1 nicht auf.
Wie habe ich das zu Programmieren?
Gruß
mac
ich habe Probleme mit dem Aufruf der DBs, den DB1 rufe ich auf aber der DB2 ruft sich nach Ablauf von DB1 nicht auf.
Wie habe ich das zu Programmieren?
Gruß
mac
Hallo,
zunächst etwas grundsätzliches:
DBs werden nicht aufgerufen sondern entweder aufgeschlagen (über die Operation "AUF DB[X]" die auch Bestandteil der DB-Doppelbefehle ist) oder der DB wird als Instanz-DB beim Aufruf eines FB angegeben.
Nun zum Problem.
Sie haben die ganze Funktionalität in einem FB geschrieben. Dieser FB erledigt das Anfahren der Grundstellung und das Anfahren der neu eingestellten Position. Dies ist so in Ordnung, das Ganze funktioniert.
Der zweite Aufruf des FB mit den Instanz-DB2 ist unnötig, da der erste Aufruf ja alles erledigt. Den Aufruf können Sie entfernen.
Das Belegen des IN-Parameters "Start" ist etwas abenteuerlich. Dieser wird im Netzwerk 1 mit der Flankenerkennung überschrieben, somit hat der übergebene Aktualparameter keine Funktion.
Für die Zukunft:
Im Forum sollen Probleme in einer Weise erörtert werden, dass andere Forenmitglieder ebenfalls von der Problemlösung profitieren. Solche allgemeinen Fragen wie "schauen Sie sich mal bitte das Programm an ..." sind da wenig interessant. Sie sollten das Problem detaillierter schildern und den betroffenen Programmteil darstellen. Dies macht es auch denjenigen leichter, die Ihnen helfen möchten. Als gutes Beispiel sei das in diesem Thread gelöste Problem mit der Überschneidung der Merkerwörter genannt.
Gruss
zunächst etwas grundsätzliches:
DBs werden nicht aufgerufen sondern entweder aufgeschlagen (über die Operation "AUF DB[X]" die auch Bestandteil der DB-Doppelbefehle ist) oder der DB wird als Instanz-DB beim Aufruf eines FB angegeben.
Nun zum Problem.
Sie haben die ganze Funktionalität in einem FB geschrieben. Dieser FB erledigt das Anfahren der Grundstellung und das Anfahren der neu eingestellten Position. Dies ist so in Ordnung, das Ganze funktioniert.
Der zweite Aufruf des FB mit den Instanz-DB2 ist unnötig, da der erste Aufruf ja alles erledigt. Den Aufruf können Sie entfernen.
Das Belegen des IN-Parameters "Start" ist etwas abenteuerlich. Dieser wird im Netzwerk 1 mit der Flankenerkennung überschrieben, somit hat der übergebene Aktualparameter keine Funktion.
Für die Zukunft:
Im Forum sollen Probleme in einer Weise erörtert werden, dass andere Forenmitglieder ebenfalls von der Problemlösung profitieren. Solche allgemeinen Fragen wie "schauen Sie sich mal bitte das Programm an ..." sind da wenig interessant. Sie sollten das Problem detaillierter schildern und den betroffenen Programmteil darstellen. Dies macht es auch denjenigen leichter, die Ihnen helfen möchten. Als gutes Beispiel sei das in diesem Thread gelöste Problem mit der Überschneidung der Merkerwörter genannt.
Gruss
Anfahren einer Position
Hallo,
OK, werde mich in Zukunft daran halten, und vielen Dank für die Antwort.
Gruß
mac
OK, werde mich in Zukunft daran halten, und vielen Dank für die Antwort.
Gruß
mac