Geschlossene Abarbeitung für eine endlos drehende Slaveachse
Bei der Interpolation zwischen den Stützpunkten ergibt sich die Notwendigkeit zu unterscheiden, ob der Slave die Kurve endlos drehend oder endlich drehend abarbeiten soll. Diese Information ist bei der aktuellen Kurvenbeschreibung ebenfalls nicht enthalten. Da ein und dieselbe Kurvenbeschreibung für beide Arten verwendet werden kann, ist diese Unterscheidung nicht eine Eigenschaft der Kurve sondern vielmehr Bestandteil des (CamIn )Auftrags.
Bei endlos drehender Abarbeitung müssen an den Definitionsgrenzen der Kurve die Tabellenstützpunkte, die zur Berechnung der Interpolation herangezogen werden, um einen Modulobereich korrigiert werden. Die Korrekturrichtung ist dabei davon abhängig, ob die Kurve für einen vorwärts oder rückwärts drehenden Slave modelliert wurde.
Der ISG Slopekernel für die Kurvenabarbeitung (sl_cam_kernel) kann dies jedoch nur dann automatisch richtig machen, falls zwischen den Tabellenstützpunkten keine Zwischeninterpolation verwendet wird. („MC_CamIn.TableFctType“ = HLI_STEP_DIRECT), indem er sicherstellt, dass für zwei aufeinanderfolgende, abgetastete Slavepositionen immer die kürzeste Modulodistanz als relativer Weg pro Echtzeitzyklus ausgegeben wird. Für diese Berechnung wird der Modulobereich der Slaveachse herangezogen, weshalb die Kurvenabarbeitung auch ausschließlich mit modulo drehenden Slaveachsen möglich ist.
Falls die Kurve für eine endlos drehende Slaveachse modelliert wurde, muss im Zusammenhang mit der Verwendung einer Stützpunktinterpolation („MC_CamIn.TableFctType“ = HLI_LINEAR oder HLI_POLYNOM_3), angegeben werden, in welche Richtung die Modulokorrektur durchzuführen ist .
Falls die Kurve so modelliert wurde, dass sie den Modulobereich des Slaves in positive Richtung durchläuft, so muss im „MC_CamIn.StartMode“ das Bit:
HLI_CI_ENDLESS_POSITIVE : DWORD := 16#0x00000020;
verodert werden.
Durchläuft die Kurve den Modulobereich des Slaves in negativer Richtung, so muss im „MC_CamIn.StartMode“ das Bit:
HLI_CI_ENDLESS_NEGATIVE : DWORD := 16#0x00000040;
verodert werden.
Nichtsdestotrotz muss der Kurvenverlauf immer zu der gewählten Abarbeitungsart passen, da sich ansonsten Sprünge in der Slaveposition ergeben.