Fahrauftrag (mehrfach)

Bei der Fahrwegsteuerung (mehrfach) werden der Klemme bis zu 16 Positionswerte, 16 Geschwindigkeiten (ab Firmware 3E) und 16 Beschleunigungen (ab Firmware 3E) vorgegeben, die intern in verschiedenen Tabellen gespeichert werden. Eine Position setzt sich wiederum aus zwei Registern zusammen, die in den Registern R32 bis R63 der Register-Page 2 abgelegt sind. Jeder dieser Positionswerte darf von der aktuellen Position maximal +/- 231 Positions-Inkremente entfernt sein. Die aktuelle Position kann von der SPS aus den Registern R0 und R1 gelesen werden. Die Geschwindigkeiten werden in den Register R32 bis R47 und die Beschleunigungen in den Registern R48 bis R63 der Register-Page 3 abgelegt.
Während eines aktiven Fahrauftrags kann die Steuerung die Klemme schon für einen darauf folgenden Fahrauftrag parametrieren (ausgenommen R39 und R40, die beim Start des kommenden Fahrauftrages überschrieben werden). Die neuen Parameter werden dabei in den RAM-Bereich der Klemme geschrieben (das Kodewort-Register muss hierzu gelöscht sein!).

Ein mehrfacher Fahrauftrag wird gestartet, durch Beschreiben von Register R7

  • mit Kommando 0x0500 (hierbei wird nach jedem Fahrauftrag der interne Positionsindex inkrementiert, bis Position 15 erreicht wird - d. h. die Tabelle wird vorwärts abgearbeitet) oder
  • mit Kommando 0x0510 (hierbei wird nach jedem Fahrauftrag der interne Positionsindex dekrementiert, bis Position 0 erreicht wird - d. h. die Tabelle wird rückwärts abgearbeitet).

Die Startposition wird durch Hinzufügen eines Offsets zum Kommando-Code 0x0500 bzw. 0x0510 festgelegt (z. B. 0x0504 -> Startposition 4 vorwärts; 0x0518 -> Startposition 8 rückwärts). Ein mehrfacher Fahrauftrag kann durch das Kommando 0x0540 gestoppt werden. Die genaue Vorgehensweise ist weiter unten im Beispiel detailliert beschrieben.

Bis zu 16 mögliche Zielpositionen werden in den folgenden Registern festgelegt:

  • RP2.R32: Zielposition 0 (niederwertiges Wort)
  • RP2.R33: Zielposition 0 (höherwertiges Wort)
  • RP2.R34: Zielposition 1 (niederwertiges Wort)
  • RP2.R35: Zielposition 1 (höherwertiges Wort)
  • usw.

Bis zu 16 mögliche Geschwindigkeiten werden in den folgenden Registern festgelegt:

  • RP3.R32: Geschwindigkeit 0
  • RP3.R33: Geschwindigkeit 1
  • usw.

Bis zu 16 mögliche Beschleunigungen werden in den folgenden Registern festgelegt:

  • RP3.R48: Beschleunigung 0
  • RP3.R49: Beschleunigung 1
  • usw.

Für sinnvollen und effektiven Fahrbetrieb mit mehrfacher Positionierung können die folgenden Register umparametriert werden:

Beispiel

In dem folgenden Beispiel wird ein mehrfacher Fahrauftrag bei Index 5 gestartet, danach werden drei Positionen (Position 5, 6 und 7) angefahren. Anschließend wird der interne Positionsindex auf 3 gesetzt und 2 Positionen (Position 3 und 2) angefahren. Danach wird der mehrfache Fahrauftrag gestoppt.

  1. Tragen Sie über Registerkommunikation die Zielpositionen (max. 16 Positionen je 32 Bit) in die Register RP2.R32 bis RP2.R63 ein.
  2. Setzen Sie das Bit CB.0 des Control-Bytes auf 1bin, um die Motoransteuerung freizuschalten.
  3. Tragen Sie über Registerkommunikation die weiteren Parameter in die Register RP0.R37, RP0.R38, RP0.R39, RP0.R40 und RP0.R58 (alle Register-Page 0) ein, falls diese neu parametriert werden sollen.
  4. Die Prozessausgangsdaten DataOUT müssen jetzt Null sein, damit der Fahrauftrag gestartet werden kann.
  5. Tragen Sie über Registerkommunikation das Start-Kommando 0x0505 (0x0500 + Offset 5) in Register R7 ein, um den internen Positionsindex auf Position 5 als erste Zielposition zu setzen.
  6. Setzen Sie im Control-Byte das Bit CB.2 auf 1bin um den ersten Fahrauftrag zu starten.
  7. Die Schrittmotorklemme fährt den Motor nun selbständig zur Zielposition. Halten Sie das Bit CB.2 auf 1bin bis der Motor die gewünschte Position erreicht hat. Soll der Fahrauftrag zwischendurch abgebrochen werden, setzen Sie das Bit CB.2 zurück auf 0bin.
  8. Tragen Sie, während des aktiven Fahrauftrags, über Registerkommunikation die neuen Parameter in die Register R37, R38, R39, R40 und R58 ein, falls diese geändert werden sollen.
  9. Die Klemme meldet jetzt durch Setzen des Bits SW.3 des Status-Wort auf 1bin das Erreichen der Zielposition.
  10. Löschen Sie im Control-Byte das Bit CB.2 um den ersten Fahrauftrag abzuschließen.
  11. Die Klemme quittiert dies durch zurücksetzen des Bits SW.3 auf 0bin. Der Positionsindex wird dabei automatisch um eine Position (auf Position 6) inkrementiert.
  12. Setzen Sie im Control-Byte das Bit CB.2 auf 1bin um den zweiten Fahrauftrag zu starten.
  13. Löschen Sie das Bit CB.2 um den zweiten Fahrauftrag abzuschließen, nachdem die Klemme durch zurücksetzen des Bits SW.3 auf 0bin das Erreichen der Position 6 signalisiert hat.
  14. Setzen Sie das Bit CB.2 auf 1bin um den dritten Fahrauftrag zu starten.
  15. Löschen Sie das Bit CB.2 um den dritten Fahrauftrag abzuschließen, nachdem die Klemme durch zurücksetzen des Bits SW.3 auf 0bindas Erreichen der Position 7 signalisiert hat.
  16. Tragen Sie über Registerkommunikation das Start-Kommando 0x0513 (0x5100 + Offset 3) in Register R7 ein, um den internen Positionsindex auf Position 3 als nächste Zielposition zu setzen.
  17. Setzen Sie das Bit CB.2 auf 1bin um den vierten Fahrauftrag zu starten.
  18. Löschen Sie das Bit CB.2 um den vierten Fahrauftrag abzuschließen, wenn die Klemme durch Setzen von Bit SW.3 das Erreichen der Position 3 signalisiert hat. Der Positionsindex wird dabei automatisch um eine Position (auf Position 2) dekrementiert.
  19. Setzen Sie das Bit CB.2 auf 1bin um den fünften Fahrauftrag zu starten.
  20. Löschen Sie das Bit CB.2 um den fünften Fahrauftrag abzuschließen, wenn die Klemme durch Setzen von Bit SW.3 das Erreichen der Position 2 signalisiert hat.
  21. Tragen Sie über Registerkommunikation das Stop-Kommando 0x0540 in Register R7 ein, um den 'mehrfachen' Fahrauftrag zu stoppen.