Von NC2 zu MC3 umsteigen

Diese Anleitung beschreibt Schritt für Schritt, wie eine TwinCAT NC2 Achse (klassisch NC PTP) auf eine MC3-Achse migriert wird.

Voraussetzungen

Vorgehen

MC3-Projekte und Achsen anlegen

1. Legen Sie in der bestehenden Projektmappe eine neue MC3-Konfiguration an (siehe Kapitel MC Projekt erstellen).
2. Fügen Sie entsprechend der Anzahl der zu migrierenden Achsen dem MC-Projekt neue Achsobjekte hinzu (siehe Kapitel Achsobjekt erstellen).
3. Vergeben Sie ggf. einen anwendungsspezifischen Namen.
4. Unterscheiden Sie die virtuelle Achse und die reale Achse mit ihrer Verknüpfung zur Hardware:
Virtuelle Achse ohne Verknüpfung zur I/O-Konfiguration:
5. Fahren Sie mit der Migration der Achsparameter fort.
Achse mit Verknüpfung zur I/O-Konfiguration:
6. Entfernen Sie die Verknüpfung der zu migrierenden NC2-Achse zur I/O-Konfiguration.
7. Verknüpfen Sie die MC3-Achse mit dem I/O-Gerät (siehe Kapitel Achsobjekt mit Hardware verknüpfen Achsobjekt mit Hardware verknüpfen).

Erweiterte Achskonfiguration (optional)

Die Modularität der MC3-Konfiguration ermöglicht eine bessere Übersicht und Strukturierung der Parameter. Ist für die zu migrierende Achse eine Referenzfahrt oder ein Positionsregler in der MC3-Software notwendig, sind zusätzliche Objekte unterhalb der MC3-Achse einzufügen. Gleiches gilt bei Verwendung der Messtaster-Funktion.

Referenzen:

Achsparameter übertragen

Die Parameter der MC3-Achse sind jeweils in der Registerkarte Init Parameter zu finden.

NC2-Parameter

MC3-Parameter

Zu beachten

Simulationsmodus im Kontextmenü des Solution Explorers

Simulationsmodus im Kontextmenü des Solution Explorers und als Achsparameter Simulation Mode

Der Parameter kann für eine MC3-Achse auch während der Laufzeit geschrieben werden. Voraussetzung ist, dass die Achse keine Reglerfreigabe hat.

Unit (Registerkarte „Settings“)

Position Unit (Registerkarte „Init Parameter“)

In der MC3-Auswahl einer Einheit aus einem Aufzählungstypen.

 

 

 

Maximum Dynamics

Reference Velocity
Default: 2200.0

Maximum Velocity
Default: 2000.0

Maximum Velocity
Default: 2000.0

Wird die Reference Velocity in der NC2 verwendet, kann für die MC3 das Minimum aus Reference Velocity (NC2) und Maximum Velocity (NC2) gebildet und dieser Wert in die Maximum Velocity (MC3) eingetragen werden.

Maximum Acceleration
Default: 15000.0

Maximum Acceleration
Default: 10000.0

Änderung des Default Wertes. Wert kann aus bestehender NC2-Achse kopiert werden.

Maximum Deceleration
Default: 15000.0

Maximum Deceleration
Default: 10000.0

Änderung des Default Wertes. Wert kann aus bestehender NC2-Achse kopiert werden.

 

 

 

Default Dynamics

Default Acceleration
Default: 1500.0

Default Acceleration
Default: 2000.0

Änderung des Default Wertes. Wert kann aus bestehender NC2-Achse kopiert werden.

Default Deceleration
Default: 1500.0

Default Deceleration
Default: 2000.0

Änderung des Default Wertes. Wert kann aus bestehender NC2-Achse kopiert werden.

Default Jerk
Default: 2250.0

Default Jerk
Default: 4000.0

Änderung des Default Wertes. Wert kann aus bestehender NC2-Achse kopiert werden.

 

 

 

Fast Axis Stop

-

 

Fast Axis Stop Signal Type (optional)

-

 

Fast Acceleration (optional)

-

 

Fast Deceleration (optional)

-

 

Fast Jerk (optional)

-

 

 

 

 

Manual Motion and Homing

Homing Velocity (towards plc cam)

Homing-Objekt

Zentrale Parametrierung in einem optionalen Homing-Objekt als Kind-Objekt der Achse.

Homing Velocity (off plc cam)

Homing-Objekt

Zentrale Parametrierung in einem optionalen Homing-Objekt als Kind-Objekt der Achse.

Manual Velocity (Slow)
Default: 100.0

Jog Velocity Slow
Default: 100.0

Änderung des Parameternamens. Wert kann aus bestehender NC2-Achse kopiert werden.

Manual Velocity (Fast)
Default: 600.0

Jog Velocity Fast
Default: 250.0

Änderung des Default Wertes und des Parameternamens. Wert kann aus bestehender NC2-Achse kopiert werden.

Jog Increment (Forward)

MC_Jog.Distance

Verfügbar über Funktionsbaustein im Modus „Inching“

Jog Increment (Backward)

MC_Jog.Distance

Verfügbar über Funktionsbaustein im Modus „Inching“

 

 

 

Limit Switches

Soft Position Limit Minimum Monitoring

Position Limit Enforcement Enabled

Ein allgemeiner Parameter zur Aktivierung der Überwachung

 

Minimum Position

Minimum Position

Der Parameter erscheint, wenn Position Limit Enforcement Enabled = TRUE gesetzt ist. Mit dem Wert #Ignore kann die Überwachung der Softwareendlagen einseitig deaktiviert werden.

Soft Position Limit Maximum Monitoring

Position Limit Enforcement Enabled

Ein allgemeiner Parameter zur Aktivierung der Überwachung

 

Maximum Position

Maximum Position

Der Parameter erscheint, wenn Position Limit Enforcement Enabled = TRUE gesetzt ist. Mit dem Wert #Ignore kann die Überwachung der Softwareendlagen einseitig deaktiviert werden.

 

 

 

Monitoring

Position Lag Monitoring

Position Lag Monitoring Enabled

Änderung des Parameternamens

 

Maximum Position Lag Value

Maximum Position Lag Value

Der Parameter erscheint, wenn Position Lag Monitoring Enabled = TRUE gesetzt ist.

 

Maximum Position Lag Filter Time

Maximum Position Lag Filter Time

Der Parameter erscheint, wenn Position Lag Monitoring Enabled = TRUE gesetzt ist.

Position Range Monitoring

-

 

 

Position Range Window

-

 

Target Position Monitoring

MC_WaitForStableActualPosition

NC2: MC_MoveAbsolute.Done = TRUE wenn die ActPos entsprechend den Parametern TargetPositionMonitoring und TargetPositionWindow im Fenster ist.

MC3: Der Funktionsbaustein kann hinter Bewegungskommandos des Typs DiscreteMotion (PLCopen Zustand) gepuffert werden. MC_MoveAbsolute.Done = TRUE wenn das Sollwertprofil am Ziel ist und ist damit unabhängig vom Target Position Monitoring. Es wird eine klare Trennung der Funktionalitäten geschaffen.

 

Target Position Window

 

Target Position Monitoring Time

In-Target Alarm

 

In-Target Timeout

Motion Monitoring

-

 

 

Motion Monitoring Window

-

 

 

Motion Monitoring Time

-

 

 

 

 

Setpoint Generator

-

 

Setpoint Generator Type

-

 

Velocity Override Type

-

 

 

 

 

NCI-Parameter

-

 

Rapid Traverse Velocity (G0)

-

 

Velo Jump Factor

-

 

Tolerance ball auxiliary axis

-

 

Max. position deviation, aux. axis

-

 

 

 

 

Other Settings

 

 

Position Correction

-

 

 

Filter Time Position Correction (P-T1)

-

 

Backlash

-

 

Error Propagation Mode

Beispiel:

MC_CamIn.ReactionToMasterError

MC_CamIn.ReactionToSlaveError

Kopplungsbausteine wie ein MC_GearIn oder MC_CamIn haben zusätzliche Eingänge. Kopplungen sind Kommandobasiert. Je Kopplung/Kommando kann eine eigene Fehlerfortpflanzung eingestellt werden.

 

Error Propagation Delay

-

Bisherige Fehlerreaktionen und Weiterleitungen können über die Einstellungen an Kopplungsbausteinen und Achsparametern umgesetzt werden.

Beispiel:

Es tritt ein Fehler in der Slave-Achse auf. Der Fehler darf nicht an die Master-Achse propagiert werden (MC_CamIn.ReactionToSlaveError := NoReaction) und die Slave-Achse muss von der Master-Achse abgekoppelt werden. In der MC3 erfolgt in diesem Fall eine automatische Entkopplung und die Slave-Achse leitet ihre Fehlerreaktion ein. Wenn eine Kontrolle/Regelung der Achse weiterhin möglich ist, kann eine Stopprampe nach einem MC_Reset durch ein benutzerspezifisches Kommando mit gleichen Dynamikgrenzen abgelöst werden (in einem PLC-Zyklus möglich).

Couple slave to actual values if not enabled

Beispiel:

MC_CamIn.ReactionToMasterError

MC_CamIn.ReactionToSlaveError

Kopplungsbausteine wie ein MC_GearIn oder MC_CamIn haben zusätzliche Eingänge. Kopplungen sind Kommandobasiert. Je Kopplung/Kommando kann eine eigene Fehlerfortpflanzung eingestellt werden.

 

Velocity Window

-

 

 

Filter Time for Velocity Window

-

 

Allow motion commands to slave axis (Default TRUE)

Kein gesonderter Parameter - MC3-Achsen erlauben Bewegungskommandos an die Slave Achse (Default TRUE)

Slave-Achsen können mit einem Bewegungskommando von ihrer Master-Achse abgekoppelt werden (BufferMode := Aborting)

Allow motion commands to external setpoint axis

Kein gesonderter Parameter - MC3-Achsen erlauben Bewegungskommandos an Achsen mit aktivierter externen Sollwertgenerierung (Default TRUE)

 

Dead Time Compensation (Delay Velo and Position)

Dead Time Compensation From Hardware

 

In der Regel werden die Totzeiten während der Initialisierung des EtherCAT Feldbusses automatisch ermittelt und in der MC3 intern verrechnet. Sollte dennoch eine manuelle Korrektur notwendig sein, kann diese in den Parametern Additional Time Shift From Hardware und Additional Time Shift To Hardware eingetragen werden.

 

Additional Time Shift from Hardware

Dead Time Compensation To Hardware

 

 

Additional Time Shift to Hardware

Data Persistence

-

 

Drive-Parameter übertragen

Die Parameter der MC3-Achse sind jeweils in der Registerkarte Init Parameter zu finden. Dabei ist zu unterscheiden, ob die Funktion Show Hidden Children im Kontextmenü der Achse aktiv ist (standardmäßig deaktiviert, Achse > Rechtsklick > Show Hidden Children). Ist die Funktion aktiviert, werden die nachfolgenden Parameter im dann sichtbaren Kind-Objekt der Achse angezeigt. Andernfalls sind alle Parameter zentral über das Achsobjekt abrufbar.

NC2-Parameter

MC3-Parameter

Zu beachten

Output Settings

Invert Motor Polarity

Drive Type / Scaling > Direction Inverted

Die Invertierung der Motor und Encoder Orientierung ist in der MC3 ein Parameter am das Antriebsobjekt. Aus Sicht der MC ist häufig lediglich ein Hardwareobjekt vorhanden ist (z. B. AX8000). In diesem Fall sind zwei Parameter mit unterschiedlichen Einstellungen nicht sinnvoll, da es zu einem Schleppfehler kommt und der Regelkreis nicht wie erwartet funktioniert. Ein zusätzliches Encoder-TcCom-Objekt als untergeordnetes Element der Achse verfügt über einen eigenen Parameter.

Reference Velocity

-

Siehe Beschreibung der Achsparameter

 

 

 

Position and Velocity Scaling

Output Scaling Factor (Position)

Drive Type / Scaling > Position Scaling Numerator/Denominator from Hardware

Nicht direkt übertragbar. Siehe MC3-Parameter zur Skalierung der Soll- und Ist-Positionen. Handelt es sich aus Sicht der MC um ein Hardwareobjekt, sind die Parameter unter dem Drive-Objekt zu finden. Andernfalls haben Drive und Encoder eigenständige Skalierungsparameter.

Output Scaling Factor (Velocity)

Drive Type / Scaling > Velocity Scaling Numerator to Hardware

Velocity Scaling Denominator muss bei diesem Vorgehen auf 1 geschrieben werden. Wird verwendet, um die Soll- und Ist-Geschwindigkeiten an den Antrieb bzw. vom Geber zu skalieren.

Minimum Drive Output Limitation [-1.0 ... 1.0]

-

 

Maximum Drive Output Limitation [-1.0 ... 1.0]

-

 

Output Delay

-

 

 

 

 

Torque and Acceleration Scaling

Input Scaling Factor (Actual Torque)

Drive Type / Scaling > Torque Scaling from Hardware

Wert kann direkt übernommen werden.

Input P-T1 Filter Time (Actual Torque)

Drive Type / Actual Torque Filter / Settings > Filter Time Torque

Eigenständiges TcCOM-Objekt als Kind-Objekt unter Drive Objekt. Show Hidden Children aktivieren, um Filterobjekt hinzuzufügen.

Input P-T1 Filter (Actual Torque Derivative)

Drive Type / Actual Torque Filter / Settings > Filter Time Torque Derivative

Eigenständiges TcCOM-Objekt als Kind-Objekt unter Drive Objekt. Show Hidden Children aktivieren, um Filterobjekt hinzuzufügen.

Output Scaling Factor (Torque Setpoint)

-

 

Output Scaling Factor (Torque Offset)

-

 

Output Delay (Torque Offset)

-

 

Output Scaling Factor (Acceleration)

-

 

Output Delay (Acceleration)

-

 

 

 

 

Optional Position Command Output Smoothing Filter

Smoothing Filter Type

-

 

Smoothing Filter Time

-

 

Smoothing Filter Order (P-Tn only)

-

 

 

 

 

Other Settings

 

 

Drive Mode

-

 

Drift Compensation (DAC-Offset)

-

 

Following Error Calculation

Axis > Monitoring > Position Lag Calculation

Internal – InternallyCalculated

Extern - HardwareProvided

Error Tolerance

-

 

Encoder-Parameter übertragen

Die Parameter der MC3-Achse sind jeweils in der Registerkarte Init Parameter zu finden. Dabei ist zu unterscheiden, ob die Funktion Show Hidden Children im Kontextmenü der Achse aktiv ist (standardmäßig deaktiviert, Achse > Rechtsklick > Show Hidden Children). Ist die Funktion aktiviert, werden die nachfolgenden Parameter im dann sichtbaren Kind-Objekt der Achse angezeigt. Andernfalls sind alle Parameter zentral über das Achsobjekt abrufbar.

Aus Sicht der MC ist häufig lediglich ein Hardwareobjekt vorhanden (z. B. AX8000). In diesem Fall ist in der MC3 z. B. für die Drehrichtungsumkehr nur ein Parameter vorgesehen. Ein zusätzliches Encoder-TcCOM-Objekt als untergeordnetes Element der Achse verfügt wiederum über einen eigenen Parameter.

Sind in der nachfolgenden Tabelle zwei Möglichkeiten in der Spalte „MC3-Parameter“ angegeben, gibt es den betreffenden Parameter für ein Drive-Objekt und optional für einen zusätzlichen Encoder.

NC2-Parameter

MC3-Parameter

Zu beachten

Encoder Evaluation

Invert Encoder Counting Direction

Axis > Drive Type / Scaling > Direction Inverted

oder

Axis > Encoder Type / Scaling > Direction Inverted

Die Invertierung der Motor und Encoder Orientierung ist in der MC3 ein Parameter am das Antriebsobjekt. Im Fall eines Hardwareobjekts sind zwei Parameter mit unterschiedlichen Einstellungen nicht sinnvoll, da es zu einem Schleppfehler kommt und der Regelkreis nicht wie erwartet funktioniert.

Scaling Factor Numerator

Axis > Drive Type / Scaling > Position Scaling Numerator from Hardware

oder

Axis > Encoder Type / Scaling > Position Scaling Numerator from Hardware

 

Scaling Factor Denominator

Axis > Drive Type / Scaling > Position Scaling Denominator from Hardware

oder

Axis > Encoder Type / Scaling > Position Scaling Denominator from Hardware

 

Position Bias

Axis > Drive Type / Scaling > Encoder Mounting Offset

oder

Axis > Encoder Type / Scaling > Encoder Mounting Offset

 

Modulo Factor

Axis > General > Position Modulus

Parameter der Achse ist sichtbar, sobald der Parameter Is Modulo Axis = TRUE ist.

 

Tolerance Window for Modulo Start

Axis > General > Position Modulo Tolerance Window

 

Encoder Mask (maximum encoder value)

Axis > Drive Type / General > Maximum Counter Value + Minimum Counter Value

oder

Axis > Encoder Type / General > Maximum Counter Value + Minimum Counter Value

Die beiden MC3-Parameter sind sichtbar, wenn der Parameter Position Data Range auf UserDefined eingestellt ist. Eine Manuelle Prüfung des Wertes ist notwendig. In der MC3 ist der Wertebereich vorzeichenbehaftet.

FullRange: bezieht sich auf den maximal darstellbaren Wertebereich des Datentyps, z. B. 0 und 2^32 für UDINT und -2147483648 bis 2147483647 für DINT.

UserDefined: manuelle Eingabe des Wertebereichs für den Wert aus der PDO -Verknüpfung

Encoder Sub Mask

Axis > Drive Type / General > Maximum Absolute Counter Value

oder

Axis > Encoder Type / General > Maximum Absolute Counter Value

Die beiden MC3-Parameter sind sichtbar, wenn der Parameter Position Interpretation auf AbsoluteUserDataRange eingestellt ist. Anazahl der eindeutigen Inkremente pro Umdrehung (2^20-1 für einen Singleturn Absolutwertgeber).

Reference System

Axis > Drive Type / General > Position Interpretation

oder

Axis > Encoder Type / General > Position Interpretation

  • INCREMENTAL entspricht Incremental
  • INCREMENTAL (singleturn absolute) entspricht Incremental
  • ABSOLUTE entspricht AbsoluteFullRange
  • ABSOLUTE MULTITURN RANGE (with single overflow) entspricht AbsoluteFullRange
  • ABSOLUTE SINGLETURN RANGE (with single overflow) entspricht AbsoluteFullRange
  • ABSOLUTE (modulo) entspricht AbsoluteModulo

 

 

 

Limit Switches

Soft Position Limit Minimum Monitoring

Position Limit Enforcement Enabled

Ein allgemeiner Parameter zur Aktivierung der Überwachung

 

Minimum Position

Minimum Position

Der Parameter erscheint, wenn Position Limit Enforcement Enabled = TRUE gesetzt ist. Mit dem Wert #Ignore kann die Überwachung der Softwareendlagen einseitig deaktiviert werden.

Soft Position Limit Maximum Monitoring

Position Limit Enforcement Enabled

Ein allgemeiner Parameter zur Aktivierung der Überwachung

 

Maximum Position

Maximum Position

Der Parameter erscheint, wenn Position Limit Enforcement Enabled = TRUE gesetzt ist. Mit dem Wert #Ignore kann die Überwachung der Softwareendlagen einseitig deaktiviert werden.

 

 

 

Filter

Filter Time for Actual Position (P-T1)

Axis > Drive Type / Actual Position Filter / Settings > Filter Type = PT1 > Filter Time Position

oder

Axis > Encoder Type / Actual Position Filter / Settings > Filter Type = PT1 > Filter Time Position

Ein zusätzliches TcCOM-Filter-Objekt ist jedem Antriebs- und/oder Geberobjekt standardmäßig unterlagert.

Der Filter Typ ist auf PT1 einzustellen. Die weiteren Parameter zur Einstellung der Filterzeiten werden dann sichtbar.

Filter Time for Actual Velocity (P-T1)

Axis > Drive Type / Actual Position Filter / Settings > Filter Type = PT1 > Filter Time Velocity

oder

Axis > Encoder Type / Actual Position Filter / Settings > Filter Type = PT1 > Filter Time Velocity

Filter Time for Actual Acceleration (P-T1)

Axis > Drive Type / Actual Position Filter / Settings > Filter Type = PT1 > Filter Time Acceleration

oder

Axis > Encoder Type / Actual Position Filter / Settings > Filter Type = PT1 > Filter Time Acceleration

 

 

 

Homing

Invert Direction for Homing Sensor Search

Homing-Objekt

Zentrale Parametrierung in einem optionalen Homing-Objekt als Kind-Objekt der Achse.

Invert Direction for Sync Impulse Search

Home Position (Calibration Value)

Reference Mode (Sync condition)

Homing Sensor Source