CANopen Drive Register Details
CANopen - Control Word & Speed Reference
To control the drive with CAN use the Control Word and Speed Reference Objects.
The Control Word is used to Start, Stop & Reset Faults on the drive.
The Speed Reference Object provides the speed that the drive will run at while using CAN control.
CANopen - Control Word
CANopen Object 2000h is the Control Word and can be used to Run the drive Forward or Reverse, Stop the drive and Reset drive Fault Codes.
The Control Word consists of 16 bits (2 Bytes), though only bits 0 - 2 are used.
The table below shows the function of each bit in the Control Word.
Bit Number | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Byte | High Byte | Low Byte | ||||||||||||||
Bit Function when 1 | Reserved | Fault Reset Request | Run Reverse | Run Forward | ||||||||||||
Important
The Drive must be set to 2: CANopen (CAn on the drive display) in Parameter P1-01 - Primary Command Source to run the drive via CANopen.
CANopen - Speed Reference
When controlling the drive with CAN the speed reference for the drive is given via Object 2001h.
The Speed Reference Object supports all of the available speed units of the drive and will be in the format of the selected unit.
To start the drive over CANopen you will need to use the Control Word in Object 2000h.
Register 1 - Bit Number | Running Direction | Drive Action | |
|---|---|---|---|
Action when Bit = 0 | Action when Bit = 1 | ||
0 | Forward | Drive Stopped / Stop the drive | Run the Drive Forward with Object 2001h Speed Reference |
1 | Reverse | Drive Stopped / Stop the drive | Run the Drive Reverse with Object 2001h Speed Reference |
2 | N/A | No Action | Reset Fault - If the drive is under a fault condition (fault code displayed) |
An example using CANopen PDO1 to run the drive forward at 50Hz by using the Control Word with COB-ID 201h for a drive with address 1 is as follows:
201 8 01 00 F4 01 00 00 00 00
Breaking down this message it translate as follows:
Part of Message | Description | Value in Hex (Decimal) | Drive Description |
|---|---|---|---|
201 | COB-ID | 0x201 (513) | Needs to be 200h + Drive address (Parameter P2-07) |
8 | Length | 0x08 (8) | Message Length |
01 00 | PDO1 (1) | 0x0001 (0) | Writing to PDO 1st mapped Object (Drive Control Word) Binary Value 0000 0001 |
F4 01 | PDO1 (2) | 0x 01F4 (500) | Writing to PDO 2nd Mapped Object (Speed Reference) Writing 500 for 50Hz |
00 00 | PDO1 (3) | 0x0000 (0) | Writing to PDO 3rd Mapped Object (Dummy) |
00 00 | PDO1 (4) | 0x0000 (0) | Writing to PDO 4th Mapped Object (Dummy) |
CANopen - Drive Specific Monitoring Objects
The following is a list of additional accessible CANopen Objects available in the drive which can be used to monitor the drive.
CANopen Index | Sub Index | PDO Map | Parameter Number | Upper Byte | Lower Byte | Format | Type | Scaling |
|---|---|---|---|---|---|---|---|---|
200Ah | 0 | Y | - | Status Word | WORD | RO | N/A | |
200Bh | 0 | Y | - | Output Frequency | S16 | RO | 1dp, e.g., 100 = 10.0Hz | |
200Dh | 0 | Y | P0-25 | Motor Current | U16 | RO | 1dp, e.g., 100 = 10.0A | |
200Eh | 0 | Y | P0-28 | Motor Torque | S16 | RO | 4096 = 100% | |
200Fh | 0 | Y | P0-29 | Motor Power | U16 | RO | 0dp e.g. 1 = 1°C | |
2010h | 0 | Y | P0-48 | Drive Temperature | U16 | RO | N/A | |
2011h | 0 | Y | P0-40 | DC Bus Voltage | U16 | RO | N/A | |
2012h | 0 | Y | P0-01 / P0-02 | Digital Input States | U16 | RO | N/A | |
2012h | 1 | Y | P0-03 | STO Input State | U8 | RO | N/A | |
2013h | 0 | Y | P0-57 | Analog Input 1 Percentage | S16 | RO | 1dp, e.g 10 = 1% | |
2013h | 1 | Y | P0-59 | Analog Input 2 Percentage | S16 | RO | 1dp, e.g 10 = 1% | |
2014h | 0 | Y | P0-07 | Analog Output 1 Value | S16 | RO | N/A | |
2014h | 1 | Y | P0-08 | Analog Output 2 Value | S16 | RO | N/A | |
2015h | 0 | Y | P0-04 | Relay 1 State | U8 | RO | N/A | |
2015h | 1 | Y | P0-05 | Relay 2 State | U8 | RO | N/A | |
CANopen - Status Word
The drive uses a Status Word Object to allow the user information on what state the drive is in. The drive's Status Word can be monitored in CANopen Object 200Ah and is a read only register.
The Status Word is comprised of 2 bytes (16 bits 0-15) and each bit has it's own separate condition for being 0 or 1. The table below shows the conditions for when each bit is either 0 (Low) or 1 (High).
Status Word Bit | Definition | Condition when Bit = 0 | Condition when Bit = 1 |
|---|---|---|---|
0 | Ready | Drive has any of the following:
| Drive has all of the following:
|
1 | Running | When drive is stopped | When drive is running |
2 | Tripped | When drive has no fault code | When drive has tripped and displays a fault code |
3 | Reserved | Reserved | Reserved |
4 | Reserved | Reserved | Reserved |
5 | Reserved | Reserved | Reserved |
6 | Speed Set-point Reached (At Speed) | When drive is not at target speed reference | When drive reaches target speed reference |
7 | Below Minimum Speed | When drive is above minimum speed (P8-02 value) | When drive speed is less than P8-02 value and drive is enabled |
8 | Overload | When drive output current is below P4-03 value | When drive output current is above P4-03 value (Overload Conditions) |
9 | Mains Loss | When drive is supplied from mains power | Whens mains power is lost |
10 | Heatsink > 85°C | When P0-48 is < 85°C | When P0-48 is > 85°C |
11 | Control Board > 80°C | When drive P0-49 temperature is < 80°C | When drive P0-49 temperature is > 80°C |
12 | Switching Frequency Reduction | When no switching frequency reduction is not active | When switching frequency reduction is active |
13 | Reverse Rotation | When drive speed sign is positive | When drive speed sign is negative |
14 | Auto-tune Active | When Auto-tune is not active | When Auto-tune is in progress |
15 | Reserved | Reserved | Reserved |
To read the drive Status Word use Object Address 200Ah. Below is an example using CANopen to send a message to read the drives Status Word and the drives response.
Transmit Message to Read Drive Status Word
First we need to send the read request (rx) to the Object Address 200Ah. We do this by using the telegram: 601 8 40 0A 20 00 00 00 00 00.
Breaking down this message it translate as follows:
Part of Message | Description | Value in Hex (Decimal) | Drive Description |
|---|---|---|---|
601h | COB-ID | 0x601 (1537) | Needs to be 600h + Drive address (Parameter P2-07) in this case the drive is address 1 so 600 + 1 = 601h |
8 | Length | 0x08 (8) | Message Length |
40 | Read Request | 0x40 (64) | Read request of any data size |
0A 20 | Object Address | 0x200A (8202) | Reading Object Address 200Ah (Drive Status Word) |
00 | Object Address Sub Index | 0x00 (0) | Objects Index |
00 00 00 00 | Object Value | 0x00000000 (0) | Objects value |
Response Message from Drive
When we send this message to the drive we get back a response message with the drives status word.
An example Status Word received from the drive is: 581 8 4B 0A 20 00 43 00 00 00.
Breaking down this message it translate as follows:
Part of Message | Description | Value in Hex (Decimal) | Drive Description |
|---|---|---|---|
581h | COB-ID | 0x581 (1049) | Will get back 580 + drive address |
8 | Length | 0x08 (8) | Message Length |
4B | Read Response | 0x40 (64) | Read response saying the data is 2 bytes |
0A 20 | Object Address | 0x200A (8202) | Reading Object Address 200Ah (Drive Status Word) |
00 | Object Address Sub Index | 0x00 (0) | Objects Index |
43 00 00 00 | Object Value | 0x0043 (67) | Objects value Binary Value: 0000 0000 0100 0011 |
Understanding the Status Word from the CAN message
So from the Object Value part of the message we can see that the drives status word is: 0000 0000 0100 0011.
Lets break down this status word into its individual bits and using the table of each bits function we can define what the drive is doing below:
From the Status Word we can see that the drive is:
Running at target speed reference
Not in overload conditions
For full details of this Status Word example see the table below to fully define what the drive is doing in this example.
Bit | Status Word Individual Bit Status | What does each bit status mean |
|---|---|---|
0 | 1 | Bit 0 has a status of 1 which is Drive Ready so we know the drive is fee from faults, has mains supply and the Safety Chain is closed |
1 | 1 | Bit 1 being in a 1 state shows the drive is running |
2 | 0 | As bit 2 is 0 the drive has no fault codes present |
3 | 0 | Reserved |
4 | 0 | |
5 | 0 | |
6 | 1 | Bit 6 being 1 shows the drive is at it's target speed reference |
7 | 0 | Bit 7 being 1 shows the drive is NOT below the speed set in P8-02 |
8 | 0 | Bit 8 being 0 means the drive is not in overload conditions and the Motor Current (P0-25) is below the value in P4-03 |
9 | 0 | As bit 9 is 0 the drive is supplied from mains power |
10 | 0 | Bit 10 being 0 means the drive is not overheated |
11 | 0 | Bit 11 being 0 means the drive is not overheated |
12 | 0 | Bit 12 with a status of indicates there is no switching frequency reduction |
13 | 0 | Bit 13 being 0 shows the drive has a positive speed sign so should be running forward (upwards) |
14 | 0 | Bit 14 being 0 shows that an Auto-tune is not active |
15 | 1 | Reserved |