Please enable JavaScript to view this site.

MovingCap Ethernet Antriebe - Software-Handbuch

Navigation: » No topics above this level «

Anhang: CiA 402 - Allgemeine Übersicht

Scroll Prev Top Next More

Einführung

CiA 402, alternativ auch als DS 402 / Device Standard 402 bezeichnet, ist ein Geräteprofil für Antriebe und Bewegungssteuerung, das von der CAN in Automation (CiA)-Organisation definiert wurde. Es spezifiziert ein universelles Interface und standardisiertes Verhalten zur Steuerung elektrischer Antriebe — wie Servoantriebe, Servoregler, Frequenzumrichter und ähnliche Geräte. Es ist als "CANopen Device Profile" Bestandteil des CANopen-Protokolls, findet jedoch auch in EtherCAT, POWERLINK- und anderen Applikationsprotokollen wie TCP/IP zum Einsatz. Das CiA 402 Geräteprofil ist in der Norm IEC61800-7-201 spezifiziert als Profil Typ 1 - CiA402 Drive Profile for power drive systems (PDS).

Dieser Abschnitt bietet einen Überblick über die zentralen Aspekte von CiA 402, mit Fokus auf die Antriebszustände / CiA 402 State Machine, das Haupt-Controlword (6040h) und Statusword (6041h), gängige Betriebsmodi (6060h) sowie eine Zusammenfassung weiterer wesentlicher Standardobjekte des Objektverzeichnisses / Object Dictionary.

Die CiA 402 State Machine

Im Zentrum des CiA 402 Profils steht die State Machine (PDS FSA, Power Drive System - Finite State Automat), welche die zulässigen Zustände und Übergänge eines Antriebs definiert. Die State Machine sorgt durch die Definition erlaubter Aktionen und erforderlicher Reaktionen in verschiedenen Betriebszuständen für eine sichere und vorhersehbare Steuerung von Bewegungsachsen.

Hauptzustände

Not Ready to Switch On: Anfangszustand nach dem Einschalten. Der Antrieb ist nicht bereit, um Bewegungen auszuführen.

Switch On Disabled: Antrieb darf nicht freigeschaltet werden (z.B. nach Fehler oder während Initialisierung).

Ready to Switch On: Interne Prüfungen abgeschlossen; Antrieb kann freigeschaltet werden.

Switched On: Antrieb ist bereit für Enable-Befehl.

Operation Enabled: Der Antrieb kann Bewegungsbefehle ausführen.

Quick Stop Active: Quick Stop ist aktiviert, der Antrieb stoppt so schnell wie möglich.

Fault Reaction Active: Der Antrieb reagiert auf einen erkannten Fehler—er führt entsprechende Sicherheitsmaßnahmen durch.

Fault: Ein Fehlerzustand wurde erkannt; der Antrieb muss zurückgesetzt werden.

Übergänge

Zustandsübergänge werden von Bits im Controlword (6040h) gesteuert, das vom Master an das Gerät gesendet wird. Der Antrieb meldet seinen aktuellen Zustand über das Statusword (6041h) zurück.

mc_cia402_web

Eine detaillierte Beschreibung ist in der CiA 402 Spezifikation enthalten.

Controlword (6040h Objekt)

Das Controlword ist das zentrale Steuerobjekt (Index 6040h), mit dem der Master den Zustand und das Verhalten des Antriebs steuert. Es handelt sich um ein 16-Bit-Wort, wobei jedes Bit (bzw. Bitgruppen) bestimmte Aktionen oder Anforderungen am Antrieb auslösen, wie Zustandswechsel oder Bewegungsbefehle.

Bit-Bedeutungen

Bit

Name

Beschreibung

0

Switch On

Fordert das Einschalten des Antriebs an

1

Enable Voltage

Schaltet die interne Spannungsversorgung frei

2

Quick Stop

Fordert schnelles Stoppen der Bewegung an

3

Enable Operation

Vollständige Freischaltung der Achse

7

Fault Reset

Fehler quittieren/zurücksetzen

8

Halt

Bewegung anhalten ohne den Antrieb zu deaktivieren

9

Operation Mode Specific

Wird in bestimmten Betriebsmodi verwendet

10

Reserved

-

11-15

Hersteller-spezifisch

-

Die Kombination und zeitliche Abfolge dieser Bits bestimmen exakt, wie die State Machine zwischen Zuständen wechselt. Zum Beispiel: Für den Wechsel von „Switch On Disabled“ zu „Operation Enabled“ müssen die Bits 0, 1 und 2 gesetzt werden, anschließend Bit 3.

Statusword (6041h Objekt)

Das Statusword (Index 6041h) ist ein 16-Bit-Wort, das vom Antrieb an den Master gesendet wird und den aktuellen Status signalisiert. Durch das Auslesen des Statuswords erkennt der Master den aktuellen Zustand des Antriebs in der CiA 402 State Machine.

Bit-Bedeutungen

Bit

Name

Beschreibung

0

Ready to Switch On

Antrieb ist bereit zum Freischalten

1

Switched On

Antrieb ist freigeschaltet

2

Operation Enabled

Antrieb ist für Bewegungen freigegeben

3

Fault

Fehler liegt vor

4

Voltage Enabled

Interne Spannung liegt an

5

Quick Stop

Quick Stop Funktion ist aktiv

6

Switch On Disabled

Antrieb ist deaktiviert

7

Warning

Warnung liegt vor (kein Fehler)

8

Manufacturer Specific

*1)

9

remote


10

target reached

Position ist innerhalb der Ziel-Toleranz

11

internal limit active

Grenze laut 607D Objekten erreicht

12,13

Operation Mode specific

-

14,15

Manufacturer Specific

-

Hinweis:

*1) MovingCap und Festo-Antriebe nutzen dieses Bit für den Zustand „Drive Moving”.

Betriebsarten / Modes of Operation (6060h Objekt)

6060h Modes of Operation bestimmt die Betriebsart, in welcher der Antrieb arbeitet. Jeder Modus unterstützt ein anderes Steuerparadigma (z.B. Positionsregelung, Geschwindigkeitsregelung, Drehmomentregelung).

Wert (Dezimal)

Mode Name

Anwendung

-128 bis -1

Manufacturer-specific operation modes

Hersteller-spezifisch

0

No mode change/no mode assigned

Kein Modus zugeordnet

1

Profile Position Mode

Fährt Position mit definierten Profil

2

Velocity Mode

(veraltet, meist nicht unterstützt, siehe Mode 3)

3

Profile Velocity Mode

Fährt Geschwindigkeit mit Profilbeschleunigung

4

Profile Torque Mode

Steuert Drehmoment gemäß Profil

6

Homing Mode

Referenzfahrt ("Home"-Position anfahren)

7

Interpolated Position Mode

Fährt nach interpolierten Positionspunkten

8

Cyclic Synchronous Position

Synchrone Positionsregelung (Echtzeit)

9

Cyclic Synchronous Velocity

Synchrone Drehzahlregelung (Echtzeit)

10

Cyclic Synchronous Torque

Synchrones Drehmoment (Echtzeit)

Ein Servoantrieb unterstützt in der Regel nur einige der Betriebsmodi gemäß CiA 402. Häufig verfügbare Modi sind

1 = Profile Position Mode,

3 = Profile Velocity Mode,

6 = Homing Mode,

8 = Cyclic Synchronous Position Mode.

Der aktuelle Modus kann mit Modes of operation display (6061h) ausgelesen werden.

Profile Position Mode

6060h = 1 Profile Position Mode (PPM) ist einer der grundlegenden Positionsregelungsmodi im CiA 402. In diesem Modus bewegt der Antrieb seine Last zu einer Zielposition entlang eines Bewegungsprofils. Dabei können Parameter wie Geschwindigkeit, Beschleunigung und Verzögerung eingestellt werden, was sanfte und kontrollierte Bewegungen ermöglicht. Der Modus eignet sich für Punkt-zu-Punkt-Positionierung, Ablaufbewegungen oder Indizierungsaufgaben.

Ablauf

1.Modes of operation (6060h) auf 1 setzen (Profile Position Mode).

2.Target position (607Ah) und gewünschte Profilparameter setzen.

3.Profile velocity (6081h), profile acceleration (6083h) und profile deceleration (6084h) konfigurieren.

4.Mit dem Controlword (6040h) die Bewegung starten (z.B. durch Setzen des New Set-point Bits gemäß CiA 402).

5.Statusword und Position actual value (6064h) überwachen, um die Abwicklung zu bestätigen.

Wesentliche Standardobjekte für Profile Positioning

Index

Name

Beschreibung

Typ

6060h

Modes of Operation

Auf 1 setzen für Profile Position Mode

integer8

607Ah

Target Position

Zielposition

integer32

6081h

Profile Velocity

Maximal zulässige Geschwindigkeit

unsigned32

6083h

Profile Acceleration

Beschleunigungsrate

unsigned32

6084h

Profile Deceleration

Verzögerungsrate

unsigned32

6064h

Position Actual Value

Ist-Position

integer32

6040h

Controlword

Bewegt auslösen und Status verwalten

unsigned16

6041h

Statusword

Rückmeldung zum Zustand

unsigned16

Optionale / Zusätzliche Objekte für Positionierbetrieb

Index

Name

Beschreibung

Typ

60F2h

Positioning Option Code

Option für rotative (sich wiederholende) Positionskoordinaten und Positionierverhalten

unsigned16

6073h

Max Current

Begrenzung des maximalen Strom/Drehmoment/Kraft

unsigned16

607Dh.01h

Min position limit

Software Position Limit
Positioniergrenze in negativer Richtung
(oder kleinste rotierende Position, z.B. 0°)

integer32

607Dh.01h

Max position limit

Software Position Limit
Positioniergrenze in positiver Richtung
(oder größte rotierende Position, z.B. 360°)

integer32

 

Profile Velocity Mode

6060h = 3 Profile Velocity Mode (PVM) ermöglicht es, die Achsgeschwindigkeit direkt vorzugeben, wobei profilierte Beschleunigungs- und Verzögerungsrampen eingehalten werden können. Typische Anwendungen finden sich beispielsweise bei Förderbändern, Lüftern oder anderen Systemen, in denen eine konstante Geschwindigkeit gefordert ist.

Ablauf

1.Modes of operation (6060h) auf 3 setzen (Profile Velocity Mode).

2.Target velocity (60FFh) sowie gewünschte profile acceleration/deceleration (6083h/6084h) setzen.

3.Controlword (6040h) verwenden, um Start, Stop oder Geschwindigkeitsänderungen auszulösen.

4.Velocity actual value (606Ch) und Statusword zur Überwachung auslesen.

Wesentliche Standardobjekte für Profile Velocity

Index

Name

Beschreibung

Typ

6060h

Modes of Operation

Auf 3 setzen für Profile Velocity Mode

integer8

60FFh

Target Velocity

Soll-Geschwindigkeit

integer32

6083h

Profile Acceleration

Beschleunigungsrampe

unsigned32

6084h

Profile Deceleration

Verzögerungsrampe

unsigned32

606Ch

Velocity Actual Value

Ist-Geschwindigkeit

integer32

6040h

Controlword

Steuerung Start/Stop/Halt

unsigned16

6041h

Statusword

Feedback und Zustandsüberwachung

unsigned16

 

Parameterübersicht Grundparameter CiA 402 / Object Dictionary

Allgemeine Übersicht über die Grundparameter, die für die Antriebssteuerung und  -überwachung gemäß der oben beschriebenen Betriebsarten relevant sind.

Index

Name

Beschreibung

Typ

6040h

Controlword

Steuer- und Zustandswechsel (Master → Antrieb)

unsigned16

6041h

Statusword

Statusrückmeldung (Antrieb → Master)

unsigned16

6060h

Modes of Operation

Setzt Betriebsmodus des Antriebs

integer8

6061h

Modes of Operation Display

Aktueller Betriebsmodus

integer8

607Ah

Target Position

Zielposition für Profile Position Mode

integer32

6064h

Position Actual Value

Positionsrückmeldung

integer32

606Ch

Velocity Actual Value

Geschwindigkeit (Istwert)

integer32

6081h

Profile Velocity

Max. Geschwindigkeit bei Profile Position Mode

unsigned32

6083h

Profile Acceleration

Beschleunigungsrampe

unsigned32

6084h

Profile Deceleration

Verzögerungsrampe

unsigned32

60FFh

Target Velocity

Soll-Geschwindigkeit im Profile Velocity Mode

integer32

6098h

Homing Method

Auswahl Homing-Methode

integer8

607Dh.01h

Min position limit

Software-Endschalter Minimum

integer32

607Dh.02h

Max position limit

Software-Endschalter Maximum

integer32

6073h

Max Current

Max. Strom/Drehmoment/Kraft

unsigned16

6075h

Motor Rated Current

Nennstrom für Antrieb/Motor in physikalischen Einheiten, z. B. mA

unsigned32

6078h

Current Actual Value

Aktueller Motorstrom in Einheit von 0,1 % (1000 = 100 %). Negative Werte für negative Richtungen möglich.

integer16

 

Positionsskalierung / User-Defined Units

Positionsskalierung in CiA 402 kombiniert konfigurierbare Skalierungsparameter mit festen Motor-/Encoder-Eigenschaften, um interne Positionseinheiten (Inkremente) in anwenderspezifische/technische Einheiten umzuwandeln.

Motor-/Encoder-Systemeigenschaften (608Fh)

608Fh: Position Encoder Resolution

o608Fh.01 encoder_increments: Inkremente je Motordrehung

o608Fh.02 motor_revolutions: Motordrehungen pro Encoderumdrehung

Beispiel: Bei einem 16-bit Inkremental-Encoder:
608Fh.01 = 65.536,
608Fh.02 = 1 (fast immer 1, außer bei zusätzlichem Getriebe zwischen Motor und Encoder)

HINWEIS:

Diese Werte spiegeln Hardware-Eigenschaften wider und sollten nur bei Hardwarewechsel verändert werden.

Konfigurierbare Skalierung (6091h und 6092h)

6091h: Gear Ratio

o6091h.01h motor_revolutions: Anzahl Motordrehungen

o6091h.02h shaft_revolutions Anzahl Abtriebsumdrehungen

Beispiel: 5 Motordrehungen pro 2 Abtriebsumdrehungen →
6091h.01h = 5,
6091h.02h = 2

6092h: Feed Constant

o6092h.01h feed: Technische Einheit pro Abtriebsumdrehung (z.B. mm, μm)

o6092h.02h shaft_revolutions: Anzahl Abtriebsumdrehungen

Beispiel: Zahnriemenachse mit 100 mm pro Umdrehung, Skala μm:
6092h.01h feed = 100.000,
6092h.02h = 1

Formeln zur Positionsskalierung

Parameter

Definition

Berechnung über CiA 402-Objekte

Encoder resolution

Encoder_resolution = encoder_increments / motor_rev

608Fh.01h / 608Fh.02h

Gear ratio

Gear_ratio = motor_revolutions / shaft_revolutions

6091h.01h / 6091h.02h

Feed constant

Feed_constant = feed / shaft_revolutions

6092h.01h / 6092h.02h

Interne Positionseinheit

Pos_internal = Pos_user × Encoder_resolution × Gear_ratio / Feed_constant

Pos_user × (608Fh.01h / 608Fh.02h) × (6091h.01h / 6091h.02h) / (6092h.01h / 6092h.02h)

oder: Pos_user × (608Fh.01h × 6091h.01h × 6092h.02h) / (608Fh.02h × 6091h.02h × 6092h.01h)

Position als Anwendergröße

Pos_user = Pos_internal × Feed_constant / (Encoder_resolution × Gear_ratio)

Pos_internal × (6092h.01h / 6092h.02h) / [ (608Fh.01h / 608Fh.02h) × (6091h.01h / 6091h.02h) ]

oder: Pos_internal × (608Fh.02h × 6091h.02h × 6092h.01h) / (608Fh.01h × 6091h.01h × 6092h.02h)

Beispiel

Gegeben:

Motor-Encoder = 65.536 Inkremente je Motordrehung (608Fh.01h = 65536, 608Fh.02h = 1)

Gear ratio: 1 Abtriebsumdrehung pro 5 Motordrehungen (6091h.01h = 5, 6091h.02h = 1)

Feed constant: 100 mm pro Abtriebsumdrehung (6092h.01h = 100, 6092h.02h = 1)

Berechnet:

Anwendereinheit / user-defined unit pro internen Encoder-Inkrement
= (Feed constant) / (Gear ratio × Encoder resolution)
= (100 mm/U) / (5 × 65.536 Inkremente/U)
= 0,00030517578125 [mm / Inkrement]

Beispiel:

Positionierung auf 80.000 interne Inkremente
--> Pos_user = 80.000 × 0,00030517578125 ≈ 24,41 mm