Herunterladen Inhalt Inhalt Diese Seite drucken

Real- Oder Lreal-Größen Vergleichen; Sequentielle Task Ist Unterbrochen; Bereichsüberläufe Beachten - Siemens SIMOTION SCOUT Funktionshandbuch

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

Werbung

Wie Sie die Gerätediagnose überprüfen, das Alarmfenster interpretieren und Ihre
Systemtakte überprüfen/ändern, können Sie in der Online-Hilfe nachlesen.
Zur Überprüfung der Laufzeiten stehen Systemfunktionen und ein Task-Trace zur
Verfügung. Über den Task-Trace kann der Ablauf der einzelnen Tasks und User Events (per
Programmbefehl erzeugt) grafisch dargestellt werden, siehe Funktionshandbuch Task Trace.
Siehe auch Taktsynchrone Datenbearbeitung (Seite 214) , Funktionen zur
Meldungsprogrammierung (AlarmS) (Seite 287)
11.1.11
REAL- oder LREAL-Größen vergleichen
Wenn Sie REAL-Größen oder LREAL-Größen (auch entsprechende Systemvariablen,
z. B. Achsposition) miteinander vergleichen, sollten Sie nie "=" verwenden. Aufgrund
unterschiedlicher interner Zahlendarstellung sind die miteinander zu vergleichenden Zahlen
nie identisch. Werten Sie stattdessen z. B. die Fahrrichtung aus und verwenden Sie ">" oder
"<" bzw. die Systemvariable für "Positionsfenster erreicht".
11.1.12

Sequentielle Task ist unterbrochen

Beschreibung
Bei sequentiellen Tasks (MotionTasks) besteht die Möglichkeit dass diese Tasks
verschiedene Zustände annehmen, unter anderem auch TASK_STATE_WAITING. Der
Status kann in der Diagnoseanzeige der CPU ausgelesen werden.
Wenn Sie nicht wissen, weshalb die Task wartet, müssen Sie aufwendig die Programmstelle
suchen, an der die Task auf die Bedingung wartet.
Zur Suche der Stellen verwenden Sie folgende Funktionen:
● Funktion Programm-Durchlauf anzeigen
● Codestelle anzeigen (z.B. Zeile einer ST-Quelle), die eine MotionTask durchläuft
Detaillierte Informationen finden Sie im
Durchlauf
11.1.13
Bereichsüberläufe beachten
Bereichsüberläufe, d. h. die Überschreitung der Bereichsgrenzen für einen Datentyp, werden
vom Compiler nicht gemeldet. Wenn Sie also Rechenoperationen mit Variablen durchführen,
sollten Sie immer mögliche Bereichsüberläufe abfragen.
Tabelle 11- 3 Beispiel für die Abfrage nach Bereichsüberlauf
PROGRAM myRange
Basisfunktionen
Funktionshandbuch, 05/2009
.
VAR
a,b
: SINT := 100;
c
: SINT;
Fehlerquellen und effizientes Programmieren
11.1 Fehlerquellen bei der Programmierung
ST Programmierhandbuch
Programm-
im Abschnitt
479

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis