Herunterladen Inhalt Inhalt Diese Seite drucken

Siemens SIMOTION SCOUT Funktionshandbuch Seite 396

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

Werbung

Programmierung allgemeiner Standardfunktionen
7.20 Anwendung einiger Systemfunktionen
PROGRAM save_data_seq
END_PROGRAM
Dieses Vorgehen wird vorwiegend in sequentiellen Tasks verwendet.
Die Ausführung der Funktion kann jedoch lange dauern, weshalb bei zyklischen Tasks
(z. B. BackgroundTask
Funktion auch asynchron ausführen, indem man den Parameter
IMMEDIATELY setzt. In diesem Fall wird die Funktion gestartet und anschließend sofort der
nächste Befehl in der Quelle bearbeitet.
Aus dem Rückgabewert können Sie entnehmen:
● ob der Start erfolgreich war (Komponente functionResult = DONE)
● einen Handle zur weiteren Statusabfrage (Komponente handle)
Bei erfolgreichem Start des Kommandos müssen Sie mit der Funktion
_getStateOfUnitDataSetCommand
Datensicherungsfunktion solange abfragen, bis das Ergebnis verschieden von ACTIVE ist
(siehe Beispiel).
Tabelle 7- 21 Funktionsaufruf einer Datensicherungsfunktion mit Weiterschaltbedingung
VAR_GLOBAL
END_VAR
PROGRAM save_data_cycl
396
// Programm ist einer sequentiellen Task zugeordnet.
// Funktion synchron ausführen:
ds_ret := _loadUnitDataSet (
unitName := 'ds3',
id := 1,
storageType := TEMPORARY_STORAGE,
nextCommand := WHEN_COMMAND_DONE);
// Funktion ist beendet, Ergebnis auswerten
IF (ds_ret.functionResult <> DONE) THEN
error := TRUE;
END_IF;
)
die Zeitüberwachung ansprechen kann. Deshalb kann man die
IMMEDIATELY
error : BOOL := FALSE;
ds_rslt
: EnumDeviceUnitDataSetCommand;
ds_ret
: StructRetUnitDataSetCommand;
cmd_busy
: BOOL := FALSE;
cmd_done
: BOOL := FALSE;
// Programm ist einer zyklischen Task zugeordnet.
IF NOT cmd_busy THEN
cmd_busy := TRUE;
// Funktion asynchron ausführen:
ds_ret := _saveUnitDataSet (
unitName := 'ds1',
id := 1,
storageType := TEMPORARY_STORAGE,
overwrite := TRUE,
// Fehler
und dem Handle den aktuellen Status der
nextCommand
auf
Basisfunktionen
Funktionshandbuch, 05/2009

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis