Herunterladen Inhalt Inhalt Diese Seite drucken

Siemens SIMOTION SCOUT Funktionshandbuch Seite 90

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

Werbung

Programmieren mit Technologieobjekten
3.2 Programmierung der Technologieobjekte (TO)
Ein besonderer Variablenwert ist TO#NIL. Mit diesem Wert können Sie abfragen, ob ein
gültiges Technologieobjekt vorliegt, siehe Beispiel in Eingangsparameter der Technologie-
Funktionen.
Hinweis
Greifen Sie aus Gründen der Performance nie mehr als nötig auf Systemvariablen zu,
sondern speichern Sie deren Inhalt einmalig in lokale Variablen des gleichen Datentyps. Der
Zugriff auf lokale Variablen verbraucht weit weniger Ressourcen, da der Prozessor nicht so
stark in Anspruch genommen wird. Näheres siehe Effizient programmieren.
Beachten Sie auch eine mögliche Fehlerquelle, wenn Sie REAL-Größen, LREAL-Größen
und Systemvariablen (z. B. Achsposition) miteinander vergleichen, siehe REAL- oder
LREAL-Größen vergleichen.
Gültigkeitsdauer von Systemvariablen
1. Systemvariablen, z.B. die Statusanzeige stehen ggf nur einen IPO-Takt an.
2. Alle Systemvariablen haben die dokumentierte Eigenschaft Aktualisierung.
3. Möchten Sie den Status einer Task mit geringerer Zykluszeit abfragen, sollte der Status
Beispiele für Systemvariablen
Sie wollen die Achsposition und den dynamischen Achszustand für die Achse
abfragen.
Voraussetzungen:
● Sie haben die Achse Axis1 im SIMOTION SCOUT angelegt oder sie im Programm
● Sie haben im Programm Variablen für die Aufnahme der Achsposition und des
VAR
act_pos : LREAL;
act_motionState : EnumAxisMotionState;
END_VAR
Beispiel für Zugriff auf Systemvariable mit Strukturelement eines elementaren Datentyps:
act_pos := Axis1.positioningState.actualPosition;
Bei
Strukturelement vom Datentyp LREAL, das abgefragt wird.
Beispiel für Abfrage einer Systemvariablen mit Aufzählungselement:
act_motionState := Axis1.motionStateData.motionState;
Bei
Strukturelement vom Aufzählungsdatentyp
90
mit dem darauf folgenden Status ODER verknüpft werden. Mit der ODER-Verknüpfung
stellen Sie sicher, dass alle Status der Applikation berücksichtigt werden. Die
Verknüpfung sorgt dafür, dass nachfolgende ENUMS der Statusanzeige
zusammengefasst werden.
definiert und initialisiert, z. B. mittels Variable
dynamischen Achszustandes definiert. Der Datentyp dieser Variablen muss dem
Datentyp der abzufragenden Variablen entsprechen, z. B.:
PositioningState
handelt es sich um die Systemvariable und bei
motionStateData
handelt es sich um die Systemvariable und bei
myAxis
vom Datentyp
EnumAxisMotionState
, das abgefragt wird.
Axis1
PosAxis
.
actualPosition
um das
motionState
um das
Basisfunktionen
Funktionshandbuch, 05/2009

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis