Herunterladen Inhalt Inhalt Diese Seite drucken

Unterschiede Zwischen Zyklischer Und Sequentieller Programmierung - Siemens SIMOTION SCOUT Funktionshandbuch

Vorschau ausblenden Andere Handbücher für SIMOTION SCOUT:
Inhaltsverzeichnis

Werbung

Programmieren mit Technologieobjekten
3.2 Programmierung der Technologieobjekte (TO)
END_IMPLEMENTATION
ACHTUNG
Falls ein Namensraum für eine importierte Bibliothek oder Technologiepaket definiert ist,
muss dieser immer angegeben werden, wenn eine Funktion, Funktionsbaustein oder
Datentyp aus dieser Bibliothek oder diesem Technologiepaket verwendet wird. Siehe in
obigem Beispiel: Cam1._enableAxis, Cam1.WHEN_COMMAND_DONE.
Siehe auch
Funktionsparameter der Technologie-Funktionen (Seite 72)
Effizient Programmieren - Übersicht (Seite 481)
3.2.3

Unterschiede zwischen zyklischer und sequentieller Programmierung

Zyklische Tasks
Zyklische Tasks (z.B. die BackgroundTask) werden systemseitig nach ihrer Beendigung
oder nach einem definierten Zeitraster automatisch neu gestartet. Die Werte statischer
Variablen der zugeordneten Programme bleiben dabei erhalten. Zyklische Tasks besitzen
eine Zeitüberwachung und eine definierte Fehlerreaktion bei deren Überschreitung. In
zyklischen Tasks enthaltener Code muss daher schnell und effizient seine Aufgaben
erledigen. Aufgaben mit wartendem Charakter (z.B. Warten auf das Positionieren einer
Achse) sind nur in mehreren Aufrufzyklen der zyklischen Task zu erledigen. So sind TO
Systembefehle in der Regel mit der Weiterschaltbedingung IMMEDIATELY am Parameter
nextCommand aufzurufen. In den nachfolgenden Aufrufzyklen ist dann das Ergebnis des
Systembefehls auf erfolgreiche Abarbeitung bzw. Fehler zu prüfen. Dieses Vorgehen wird
auch asynchrone Bearbeitung genannt.
70
FUNCTION function1 : VOID
VAR_INPUT
p_Axis : posAxis;
END_VAR
VAR
retVal : DINT;
END_VAR
retVal:= Cam1._enableAxis (
axis := p_Axis,
nextCommand := Cam1.WHEN_COMMAND_DONE,
commandId := _getCommandId() );
END_FUNCTION
Basisfunktionen
Funktionshandbuch, 05/2009

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis