Herunterladen Inhalt Inhalt Diese Seite drucken

Zielpositionsfahrten; Rücklesen Von Signalen Und Statuswerten; Anhalten Von Endlosfahrten - Scanlab RTC 5 Installation Und Inbetriebnahme

Inhaltsverzeichnis

Werbung

Es können auch für beide Schrittmotoren parallel
Referenzfahrten ausgeführt, jedoch nicht mit einem
Befehl simultan gestartet werden.

Zielpositionsfahrten

Zielpositionsfahrten werden mit den Befehlen
stepper_abs, stepper_rel,
stepper_rel_no
oder den entsprechenden Listenbe-
fehlen ausgelöst.
Bei _abs-Befehlen werden absolute, bei _rel-Befehlen
relative Zielpositionswerte (jeweils in CLOCK-Puls-
Einheiten) angegeben. _no-Befehle führen Zielpositi-
onsfahrten nur für einen Schrittmotor-Ausgang aus,
die anderen Zielpositions-Befehle für beide Schritt-
motor-Ausgänge simultan.
Mit
stepper_wait
kann die weitere Ausführung einer
Liste so lange unterbrochen werden, bis eine
gestartete Schrittmotor-Bewegung beendet ist.
Die Listenbefehle für Zielpositionsfahrten sind kurze
Listenbefehle, so dass eine Schrittmotorbewegung
auch synchron zu einer Bewegung der Galvanometer-
scanner ausgeführt werden kann.
Wird während einer Zielpositionsfahrt der
Endschalter aktiv, bricht die Bewegung sofort ab und
kann mit einer normalen Zielpositionsfahrt nicht
wieder gestartet werden. Es muss entweder eine
Referenzfahrt angefordert oder der Endschalter
mechanisch deaktiviert werden. Bei einer einmal
abgebrochenen Schrittmotorbewegung (z. B. auch
durch Period = 0) wird die bisherige Zielposition
durch den aktuellen Positionswert überschrieben. Die
Schrittmotorbewegung zur ursprünglichen Zielpo-
sition kann daher nicht wieder aufgenommen
werden, indem die Unterbrechungsursache
(Endschalter oder CLOCK-Pulsperiode = 0) beseitigt
wird. Sie muss neu ausgelöst werden.
®
®
RTC
5 PCI-Karte, RTC
5 PCI-Express-Karte, RTC
Rev. 1.10 d
9 Programmierung von Peripherie-Schnittstellen
stepper_abs_no
bzw.
®
5 PC/104-Plus-Karte, RTC
Rücklesen von Signalen und Statuswerten
Der aktuelle Status der Schrittmotor-Signale
(ENABLE, DIRECTION, CLOCK und SWITCH), die
aktuell eingestellte CLOCK-Pulsperiode und die aktu-
ellen Werte der internen Positionsvariablen der
beiden Schrittmotoren können mit
get_stepper_status
zurückgelesen werden.
Zusätzlich liefert
get_stepper_status
und Init-Status der beiden Schrittmotoren. Während
einer Referenzfahrt ist der Init-Status gesetzt, bei Ziel-
positionsfahrten der Busy-Status.
Solange der Init-Status gesetzt ist, sind keine Zielpo-
sitions-Befehle (stepper_abs, stepper_rel, etc.)
zulässig, Kontrollbefehle (außer stepper_init)
werden mit get_error-Returnwert RTC5_BUSY
zurückgewiesen und Listenbefehle warten, bis der
Init-Status zurückgesetzt wird. Gegebenenfalls muss
die Liste selbst oder der Bewegungsvorgang abge-
brochen werden.

Anhalten von Endlosfahrten

Abhängig von den gewählten Parametern können
mit stepper_init,
stepper_abs
auch sehr lange Schrittmotor-Bewegungen oder gar
Endlosfahrten initiiert werden, z. B. wenn in der
angegebenen Richtung kein Endschalter vorhanden
oder der Zielpositionswert sehr groß ist bei gleich-
zeitig langer Pulsperiode.
• Wird eine Endlosfahrt mit einem Kontrollbefehl
(z. B. stepper_abs) gestartet, dann wird dieser
Kontrollbefehl spätestens dann beendet, wenn
die im Parameter WaitTime angegebene positive
Zeit (in Sekunden) abgelaufen ist. Die Endlosfahrt
des Schrittmotors selbst läuft aber weiter und
muss gegebenenfalls separat abgebrochen
werden, indem die CLOCK-Pulsperiode (z. B. mit
dem Kontrollbefehl stepper_control) auf 0
gesetzt (Not-Halt) oder eine geeignete neue
Zielposition definiert wird.
• Wird eine Endlosfahrt mit einem Listenbefehl (z.
B. stepper_abs_list) gestartet und per
stepper_wait
auf deren Ende gewartet, stagniert
die weitere Listenausführung, solange die Endlos-
fahrt nicht über einen Kontrollbefehl wie
stepper_control
mit Period = 0 oder einer
sinnvollen neuen Zielposition beendet wird. Die
Liste kann aber auch mit
einem externen Listen-Stopp beendet werden.
Die Endlosfahrt des Schrittmotors muss auch hier
mit stepper_control(Period = 0) separat
gestoppt werden.
®
5 PCIe/104-Karte
auch den Busy-
etc. gegebenenfalls
stop_execution
oder
228

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis