Analog Servo Motor Controller / Driver
Cdios 6167

Command / Reply / Event messages V2.2
New or up-date devices are visible marked V2.x 

 

Cdios controller commands | Cdios firmware page

6167 Cdios Module V2.1 Commands

Addition to V2.0:

  • Hold on enable configuration added, to hold the motor as soon it is enabled, and to hold it when using START/STOP commands
  • GOTO speed in GOTO command changed (now full 16 bit value at another selector)
  • a GOTO command in progress can be interrupted by another GOTO command (with different speed) (note)
  • a GOTO command in progress can be set to change it's speed immediately or at a given position (note)
  • 2 trajects introduced to perform automatic changing motor speed at different positions during a GOTO command (note)
  • Store command cannot be given when the motor is running
  • Internal RPM_Error value can be read, for diagnostic
  • Current RPM, RPM_Error and current position can be automatically send by a timer

Note on interruptable GOTO command and trajects: these functions are only available when the Slope Profile parameter is set to 0

All CDIOS messages are presented as 8 bytes long. When variable length messages are selected, the part of the message that is not send over the CAN bus is represented in italic/light gray text.

All multibyte (16 / 32 bits) parameters are placed in the messages with the LSB first (little endian)


Command code 20h: Set Analog Servo motor configuration

All data set with this command is stored in EEPROM after the 'Store Configuration Command', becoming the new power on default.

Command

Module ID

Selector

4

5

6

7

8

 

20h

 

0 - 15

0

Minimum Speed

Maximum Speed

 Slope

1

Run Current 0 Forward
End Switch
Reverse
End Switch
0
2 Pulses Per Revolution Hold On Enable Auto Zero Slope Profile
3 Positioning Error Gain Factor D Factor Failsafe
  Traject 0 settings
10h

Relative end position

Length
11h

Initial speed

0 0 0
12h

Relative speed change position 1

0
13h

Speed 1

0 0 0
14h

Relative speed change position 2

0
15h

Speed 2

0 0 0
16h

Relative speed change position 3

0
17h

Speed 3

0 0 0
  Traject 1 settings
20h

Relative end position

Length
21h

Initial speed

0 0 0
22h

Relative speed change position 1

0
23h

Speed 1

0 0 0
24h

Relative speed change position 2

0
25h

Speed 2

0 0 0
26h

Relative speed change position 3

0
27h

Speed 3

0 0 0

Parameter

Range Default Units Description

Minimum Speed

1-2500  50 RPM

RPM is calculated from encoder pulses and the 'Pulses per revolution' parameter. For higher precision with low RPM motors it is advised to set 'Pulses per revolution' lower then the actual value (e.g. 10 times) to get a higher RPM value.

Maximum Speed

50-32000  8000

Slope

1 - 255 10 0.1 S

The time it will take to accelerate from Minimum speed up to Maximum speed (and decelerate to Minimum Speed), 0.1 - 25.5 Seconds
The time will be proportionally shorter when the motor's RPM is changed to an intermediate value.

Run Current

10 - 200

100

0.01A

Set maximum motor current while motor is running, 0.10 - 2.00 A

Forward End Switch

0 - 1

1

 

Enable/disable (1/0) forward/reverse end switch checking

When enabled and the endswitch becomes active, the motor is immediately stopped and the enable bit cleared (status3 bit 7)

Reverse End Switch

0 - 1

1

 

Pulses Per Revolution 1 - 10000  500   Defines the pulses per revolution of the encoder input, to calculate the correct RPM
Hold On Enable 0 - 1 0   When 1, the current motor position is copied to the setpoint and the motor will be hold there when the ENABLE command or a STOP command is given.
AutoZero 0 - 1 0  
0: Device does not Auto Zero the motor position.
1: Device one time only sets the motor position to zero when the Zero and Index inputs are active.
Both inputs must become inactive to enable another reset.
Slope Profile 0 - 1 0  
0: linear slope, interruptable GOTO and TRAJECTS are allowed
1: sin2 slope
Positioning Error 0 - 10000 25   The allowed error of the motor positioning system.
After a GOTO command, the controller tries to keep the motor position within the allowed range from the setpoint. This can be stopped with a 'STOP' command
Gain Factor 1- 255 32   RPM control loop gain.
Higher gain means bigger (faster) response on RPM errors (and possibly more oscillations)
D Factor 0 - 255 32   RPM control loop derivative.
Higher value means greater response on change in RPM to dampen oscillations
Failsafe 0 - 1 0   Defines how the endswitch / emergency and zero inputs act:
0 = active high (when input is above 11 Volts)
1 = active low (when input is below 4 Volts)
        Traject settings
Length 0 - 4 0   Amount of positions in Traject 0/1:
0: Traject not defined
1: Only relative endposition + goto speed defined
2-4 1-3 speed changes in traject
End Position -2147483648
up to
2147483647
0   The traject end position relative to the current setpoint at the moment the GOTO TRAJECT command is given.
Initial Speed 0 - 32767 0 RPM The motor speed of the first (and maybe only) part of the traject
Speed Change Position x -2147483648
up to
2147483647
0   The setpoint relative position to change motor speed.
Speed x 0 - 32767 0 RPM The motor speed of the next part of the traject
 

This command is only valid when the motor is not running.

Confirmation reply message (suppressed when 'Confirm' is 0):

 

Reply

Module ID

3

4

5

6

7

8

20h

0 - 15

0

0

0

0

0

0

If any error occurs, the current speed settings remain unchanged and an error message is returned

Possible error message:

 

Error

Module ID

3

4

5

6

7

8

A0h

0 - 15

0

0

Error Status1

Error Status2

0

0


Parameter

Bit

 Description

Error Status1

0

1 = Motor is running

1

1 = Selector parameter out of range

2

1 = Minimum speed parameter out of range

3

1 = Maximum speed parameter out of range

4

1 = Slope parameter out of range

5 1 = Pulses per revolution parameter out of range
6 1 = Hold On Enable parameter out of range
7 1 = Autozero parameter out of range

Error Status2

0 1 = Run current parameter out of range
1 1 = Slope Profile parameter out of range
2 1 = Forward end switch parameter out of range

3

1 = Reverse end switch parameter out of range

4 1 = Positioning Error parameter out of range
5 1 = Gain Factor parameter out of range
6 1 = Failsafe parameter out of range
7 1 = Traject configuration parameter out of range (Length or Speed)
 


Command code 20h: Read Analog Servo motor configuration

Command

Module ID

Selector

4

5

6

7

8

20h

0 - 15

80 - A7h

0 0 0 0 0

Normal reply is: 

Reply

Module ID

Selector

4

5

6

7

8

 

20h

 

0 - 15

80h

Minimum Speed

Maximum Speed

 Slope

81h

Run Current

0

Forward
end switch

Reverse
end switch

0

82h Pulses Per Revolution Hold On Enable AutoZero Slope Profile
83h Positioning Error Gain Factor D Factor Failsafe
 

Traject 0 settings

90h

End position

Length
91h

Initial speed

0 0 0
92h

Speed change position 1

0
93h

Speed 1

0 0 0
94h

Speed change position 2

0
95h

Speed 2

0 0 0
96h

Speed change position 3

0
97h

Speed 3

0 0 0
  Traject 1 settings
A0h

End position

Length
A1h

Initial speed

0 0 0
A2h

Speed change position 1

0
A3h

Speed 1

0 0 0
A4h

Speed change position 2

0
A5h

Speed 2

0 0 0
A6h

Speed change position 3

0
A7h

Speed 3

0 0 0
 

Parameter

 Description

All

Same format as in the 'Set Analog Servo motor configuration' command

Possible error message: 

Error

Module ID

3

4

5

6

7

8

A0h

0 - 15

0

0

Error Status

0

0

0


Parameter

Bit

 Description

Error Status

1

1 = Selector parameter out of range



Command code 21h: Read current position

This command returns the current 32 bits (signed) motor position.

Command

Module ID

Selector

4

5

6

7

8

21h

0 - 15

0 - 2

0

0

0

0

0

 

Parameter

Value

Description

Selector

0

Read current motor position

1 Read latched motor position, latched by the latest SYNC command
2 Read current setpoint (e.g. latest GOTO position / endpoint of traject)

 

Reply

Module ID

3

4

5

6

7

8

21h

0 - 15

Selector
(copy of command)

Motor position

0


Parameter

Value

Description

Motor Position

32 bits-
long-int

The requested 32 bits (signed) motor position

 

Possible error message:

 

Error

Module ID

3

4

5

6

7

8

A1h

0 - 15

0

0

Error Status

0

0

0


Parameter

Bit

 Description

Error Status

0

1 = Selector parameter out of range

  


Command code 22h: Set position

This command sets the current 32 bits (signed) motor position and the current setpoint.

 

Command

Module ID

3

4

5

6

7

8

22h

0 - 15

0

motor position

0

This command is only valid when the motor is not running.

Allowable range for motor position: -2147483648 up to 2147483647

Confirmation reply message (suppressed when 'Confirm' is 0):

 

Reply

Module ID

3

4

5

6

7

8

22h

0 - 15

0

0

0

0

0

0

If any error occurs, the current setting remains unchanged and an error message is returned

Possible error message:

 

Error

Module ID

3

4

5

6

7

8

A2h

0 - 15

0

0

Error Status

0

0

0


Parameter

Bit

 Description

Error Status

0

1 = Motor is running

  


Command code 23h: Goto position

This command causes the motor to move to the given 32 bits (signed) motor position, starts a traject or sets the motor speed for the next goto command
 

Command

Module ID

Selector

4

5

6

7

8

23h

0 - 15

0 - 5

Motor position or amount of steps

0

6 - 7

Traject

0 0 0 0
8

Next GOTO Speed

0 0 0
9

Next speed change absolute motor position

0
10

Change GOTO Speed

0 0 0

This command is only valid when the motor is not running.

 

Parameter

Bit

 Description

Selector

0

Move motor absolute to the given position

1

Write position into internal latch, motor will move after SYNC command (note 1)

When a SYNC pulse is received without prior reception of the goto command with selector = 1, the motor state remains unchanged.

2

Move motor relative, motor moves forward when given amount of steps is positive.
New motor position is calculated by adding the amount of steps to the current position, as long this is in the motor position range of -2147483648 up to 2147483647 (motor will move to the limit)

3

Write relative position into internal latch, motor will move after SYNC command (note 1)

When a SYNC pulse is received without prior reception of the goto command with selector = 3, the motor state remains unchanged.

4 Move motor relative, motor moves forward when given amount of steps is positive.
New motor position is calculated by adding the amount of steps to the current setpoint (e.g. last GOTO position) position, as long this is in the motor position range of -2147483648 up to 2147483647 (motor will move to the limit)
5

Write setpoint relative position into internal latch, motor will move after SYNC command (note 1)

When a SYNC pulse is received without prior reception of the goto command with selector = 3, the motor state remains unchanged.

6 Starts the execution of traject 0/1
7 Starts the execution of traject 0/1, after the SYNC command (note 1)
8 Sets the maximum speed for the next GOTO command.
9 Sets the absolute motor position to change the motor speed.

When an interruptable GOTO is running;
- send a new GOTO speed with selector = 8.
- send a speed change position with selector is 9.

When this command is given and the current motor position is beyond the given speed change position (command given too late), the speed is changed immediately.

In fact this is a subset of the internal traject function. This command is illegal when a traject is running or NO interruptable GOTO is running

10 Immediately changes the motor speed of a running GOTO.

This command is illegal when a traject is running or NO interruptable GOTO is running

Parameter Range Description

Motor Position

-2147483648
up to
2147483647

32 bits long integer

Traject 0 - 1 Defines the traject number to use
Speed 0 - 32767 Sets the maximum speed for the next GOTO command.
This speed is checked against and clamped to the configured minimum and maximum speeds.
When the speed is zero, the configured maximum speed is used.
After power on or reset, the speed is set to zero.

When 'Slope Profile' is zero, GOTO commands can be interrupted by other goto commands to change the speed or direction...
Change the motor speed while a GOTO command is executing can be done in 3 ways;

  1. Send the new speed with selector = 10
  2. Preset the new speed with selector = 8 and set the motor position to start the change with selector = 9
  3. Preset the new speed with selector = 8 and resend the GOTO command (with same or other GOTO position).

Confirmation reply message (suppressed when 'Confirm' is 0):

 

Reply

Module ID

3

4

5

6

7

8

23h

0 - 15

0

0

0

0

0

0

If any error occurs, the current setting remains unchanged and an error message is returned

Possible error message:

 

Error

Module ID

3

4

5

6

7

8

A3h

0 - 15

0

0

Error Status

0

0

0


Parameter

Bit

 Description

Error Status

0

1 = Motor is running
When the motor is running, a TRAJECT cannot be started and a GOTO command or speed change cannot be given when:

  • Slope Profile = 1

  • Traject is started

  • Motor was started with a START command

1

1 = Emergency stop, power failure or watchdog status active (note 2)

2

1 = Selector parameter out of range

3 1 = Traject parameter out of range
4 1 = Speed parameter out of range
5 1 = No GOTO running
6 1 = Traject cannot start, slope profile = 1
7 1 = Motor is not enabled
  


Command code 24h: Start

This command is used to control the motor motion 'manually'
Do not combine this command with the 'goto position' command.

After a start command the Hold status (status 4 bit 2) will be zero

 

Command

Module ID

3

4

5

6

7

8

24h

0 - 15

Selector

Direction

Option

MotorSpeed

0

This command is only valid when the motor is not running.

 

Parameter

Value

 Description

Selector

0

Motor starts directly according to 'Direction' and 'Option'

1

Motor starts after SYNC command (note 1)

Direction

0

Motor starts in Forward direction, if forward end switch is inactive or forward end switch checking is disabled

1

Motor starts in Reverse direction, if reverse end switch is inactive or reverse end switch checking is disabled

Option

0

Motor starts and remains at minimum speed

1

Motor starts at minimum speed and accelerates to maximum speed
This option is allowed to be given when the motor already was started with option 0, however, direction has to be the same.

2

Motor starts and remains at minimum speed until the forward (when direction if forward) or reverse (when direction is reverse) end switch is activated, even if end switch checking is disabled.
The motor will run a bit further after the endswitch was activated.

3 Motor will accelerate / decellerate from its current speed to the selected motor speed.
  • MotorSpeed is zero; the motor will stop
  • MotorSpeed < minimum speed; minimum speed is used
  • MotorSpeed > maximum speed, maximum speed is used

This option is not allowed to be given when the motor was already started with option 2 or the motor is performing a GOTO operation.
Otherwise it can be given at any time.

4 Motor starts and remains at minimum speed until the I (index) input becomes active. The motor position is set to zero.
The motor probably will run a bit further after the I input became active.
5 Enable the motor (it may run from now on).
The current position will be transferred to the setpoint. When 'Hold On Enable' is set to 1, the motor position will be hold on the setpoint after this.
6 Motor starts and remains at minimum speed until the I (index) and the Z (Zero) input are active. The motor position is set to zero.
The motor probably will run a bit further after the inputs became active.
MotorSpeed

0 - 30000

Target MotorSpeed (Option = 3)

Confirmation reply message (suppressed when 'Confirm' is 0):

 

Reply

Module ID

3

4

5

6

7

8

24h

0 - 15

0

0

0

0

0

0

If any error occurs, the current setting remains unchanged and an error message is returned

Possible error message:

 

Error

Module ID

3

4

5

6

7

8

A4h

0 - 15

0

0

Error Status1

Error Status2

0

0


Parameter

Bit

 Description

Error Status1

0

1 = Motor is running

1

1 = Emergency stop,  watchdog status active or still motor power failure (note 2)

2

1 = Motor is running in opposite direction

3

1 = Selector parameter out of range

4

1 = Direction parameter out of range

5

1 = Option parameter out of range

6 1 = End switch active, cannot start
7 1 = MotorSpeed parameter out of range, only checked if Option = 3
Error Status2 0 -6 reserved
7 1 = Motor is not enabled
  


Command code 25h: Stop

This command is used to control the motor motion 'manually'
This command can be used to abort a still executing 'goto position' command (Option = 1 or 2).

 

Command

Module ID

3

4

5

6

7

8

25h

0 - 15

Selector

Option

0

0

0

0


Parameter

Value

 Description

Selector

0

Stop command is executed immediately

1

Stop command is latched and executed after receiving SYNC command (note 1)

Option

0

Motor decelerates to minimum speed and remains at minimum speed

1

Motor decelerates to minimum speed and then stops. The current position will be transferred to the setpoint. When the 'Hold on Enable' configuration is 1, the motor will be hold at that position.

This option also stops the motor when is was started with a goto command, the motor allways will be held at the setpoint

2

Fast stop. The current position will be transferred to the setpoint. When the 'Hold on Enable' configuration is 1, the motor will be hold at that position.

This option also stops the motor when is was started with a goto command, the motor allways will be held at the setpoint

3

Reserved

4 Clear Hold status (status 4 bit 2). The motor is not held at the setpoint any more.
5 Disable the motor, it may not run anymore. If it's running it does a fast stop... The Hold status is also cleared.

 Confirmation reply message (suppressed when 'Confirm' is 0):

 

Reply

Module ID

3

4

5

6

7

8

25h

0 - 15

0

0

0

0

0

0

If any error occurs, the current setting remains unchanged and an error message is returned

Possible error message:

 

Error

Module ID

3

4

5

6

7

8

A5h

0 - 15

0

0

Error Status

0

0

0

 

Parameter

Bit

Description

Error Status

0

1 = Motor is running (when option 4 selected)

1

1 = Emergency stop or power failure status active (note 2)

2

1 = Motor is not running (when option 0,1 or 2 selected)

3

1 = Selector parameter out of range

4

1 = Option parameter out of range

5 - 6 reserved
7 1 = Motor is not enabled
 


Command code 26h: Read motor status

This commands reads the internal motor controller module status

 

Command

Module ID

Selector

4

5

6

7

8

26h

0 - 15

0 - 2

0

0

0

0

0

 

Reply

Module ID

Selector

4

5

6

7

8

26h

0 - 15

0

Status 1

Status 2

Status 3 Status 4

0

1 MotorSpeed Motor Current Heatsink Temperature 0
2 MotorSpeed RPM Error 0
 

Parameter

Bit / value

 Description

Status 1

0

1 = Motor is running forward

1

1 = Motor is running reverse

2

1 = Motor is running until end switch found

3

1 = Motor is running at minimum speed

4

1 = Motor is running at maximum speed

5

1 = Motor is accelerating

6

1 = Motor is decelerating

7

1 = Goto command is being executed

Status 2

0

1 = Forward end switch active

1

1 = Reverse end switch active

2

1 = Emergency stop input is active (note 2)

3

1 = Motor was stopped by an active and enabled forward end switch,
These status bit will be cleared by a start command

4

1 = Motor was stopped by an active and enabled reverse end switch,
These status bit will be cleared by a start command

5

1 = Motor was stopped by an emergency stop, power failure or watchdog time-out.

When this bit is set, the motor will be disabled, so to start againg and to clear the emergency stop status,  the user must give a 'Start' command (option = 5) to enable the motor

6 1 = Motor was stopped by 0.5 second 'watchdog' time-out.
The Cdios controller checks the 6167 with a short interval, when this fails, the 6167 performs an emergency stop.
This will also set the emergency bit (status2 bit 5). This bit is cleared when the emergency bit is cleared.
7 1 = Motor was stopped by motor power supply failure.
This will also set the emergency bit (status2 bit 5). This bit is cleared when the emergency bit is cleared.
Status 3 0 1 = Motor position was set to zero by I input (start command) or Z and I inputs (AutoZero).

This status bit will be automatically cleared when the status is read (note).
1 1 = Heatsink temperature too high (note)
2 1 = Motor does not run
When this happens, the motor stops with an emergency stop, to clear this status a START command with option=5 has to be given.
3 Reserved
4 1 = Motor runs in opposite direction (+ and - terminals should be changed).
When this happens, the motor stops with an emergency stop, to clear this status a START command with option=5 has to be given.
5 1 = Encoder input frequency is too high, pulses may be missed
6 1 = Motor current limiting is active (motorcurrent = maximum current).
This bit may also become set when heatsink temperature is above 85°C.
7 1 = Motor is enabled
Status 4 0 1 = Z input active
1 1 = Power failure active, motor has no power
2 1 = Hold active, controller keeps motor at the setpoint
3 1 = A traject is running (started with a GOTO command)
4 - 6 Reserved
7 1 = Motor position is not initialized, may be incorrect.
This bit is set after power on reset or node reset. It is cleared after:
- a 'Set Position' command
- an autoreset
- a position reset caused by a start command with option 2, 4 or 6
Motor Speed 0 - 30000 The actual motor speed, value depends on the Pulses Per Revolution setting
Motor Current 0 - 255 Measured motor current, resolution is 0.01A
Heatsink Temperature 0 - 100 Heatsink temperature in ºC, bit 1 of Status3 will be high when Heatsink Temperature > 81ºC (note)
RPM Error -30000 - 30000 The difference between the (internal) desired motor speed and the actual motor speed.
When RPM Error < 0 the motor runs too slow.
When RPM Error > 0 the motor runs too fast .
It is normal that this value is a bit negative during accelleration and a bit positive during decelleration.
 

Possible error message:

 

Error

Module ID

3

4

5

6

7

8

A6h

0 - 15

0

0

Error Status

0

0

0

 

Parameter

Bit

Description

Error Status

0

1 = Selector parameter out of range
 


Command code 27h: Set event on motor status change mask

This commands defines the motor controller status bits to scan for change.

All data set with this command is stored in EEPROM after the 'Store Configuration Command', becoming the new power on default.

Command

Module ID

3

4

5

6

7

8

27h

0 - 15

0

Mask 1

Mask 2

Mask 3

Mask 4

Timers


Parameter

Bit

Default

 Description

Mask 1

0

0

1 = enable bit 0 of the status 1 byte

until

 

1 = enable ...

7

0

1 = enable bit 7 of the status 1 byte

Mask 2

0

0

1 = enable bit 0 of the status 2 byte

until

 

1 = enable ...

7

0

1 = enable bit 7 of the status 2 byte

Mask 3

0

0

1 = enable bit 0 of the status 3 byte

until

 

1 = enable ...

7

0

1 = enable bit 7 of the status 3 byte

Mask 4

0

0

1 = enable bit 0 of the status 4 byte

until

 

1 = enable ...

7

0

1 = enable bit 7 of the status 4 byte

Timers 0 - 2 0 This value (0-7) determines the 'send current position' interval
3 0 0 = current position is send on timer interval
1 = current position is send on timer interval only when it was changed
4 - 6 0 This value (0-7) determines the 'send MotorSpeed / RPM Error' interval
7 0 0 = MotorSpeed / RPM Error is send on timer interval
1 = MotorSpeed / RPM Error is send on timer interval only when one or both values were changed

 
Timer interval settings:
Value Interval
0 Value is never send
1 3.9 mS
2 7.8 mS
3 15.6 mS
4 31.25 mS
5 62.5 mS
6 125 mS
7 250 mS

Confirmation reply message (suppressed when 'Confirm' is 0): 

 

Reply

Module ID

3

4

5

6

7

8

27h

0 - 15

0

0

0

0

0

0

 


Command code 27h: Read event on motor status change mask

This command reads back the motor controller status bits to scan for change.

 

Command

Module ID

Selector

4

5

6

7

8

27h

0 - 15

80h

0

0

0

0

0


Normal reply:

 

Reply

Module ID

Selector

4

5

6

7

8

27h

0 - 15

80h

Mask 1

Mask 2

Mask 3

Mask 4

Timers

 

Parameter

 Description

All

Same format as in the 'Set event on motor status change mask' command

Possible error message: 

Error

Module ID

3

4

5

6

7

8

A7h

0 - 15

0

0

Error Status

0

0

0


Parameter

Bit

 Description

Error Status

0

1 = Selector parameter out of range



Command code 05h: Store configuration

This command stores the current or the default I/O module configuration into internal EEPROM memory.
The configuration is restored from this memory after power on or a reset command.

The motor must be disabled when executing this command

Command

Module ID

3

4

5

6

7

8

05h

0 - 15

Selector

43h

44h

53h

0

0


Parameter

Value

 Description

Selector

0

Store current configuration

1

Change configuration into default and then store it.

The internal EEPROM erasing / programming takes 260 up to 750 milliseconds, then the reply message is send.
During programming I/O communication with this module is inhibited.

Sending a command will result in a general error message with errorcode = 8.

The confirmation reply message for this command is NEVER SUPPRESSED.

Reply

Module ID

3

4

5

6

7

8

05h

0 - 15

0

0

0

0

0

0


 Possible error message:

 

Error

Module ID

3

4

5

6

7

8

85h

0 - 15

0

0

Error Status

0

0

0


Parameter

Bit

 Description

Error status

0

1 =  Selector parameter out of range

1 1 = 'password' bytes 4-6 in command are not equal to 43h,44h,53h
2 1 = Configuration EEPROM programming error
3 1 = Motor is enabled, storing is prohibited
 


Events

If an enabled motor status bit changes state, a read motor status event message is sent:

 

Event

Module ID

3

4

5

6

7

8

66h

0 - 15

0

Status 1

Status 2

Status 3

Status 4

0


Parameter

Bit

 Description

Status 1

0

1 = Motor is running forward

1

1 = Motor is running reverse

2

1 = Motor is running until end switch found

3

1 = Motor is running at minimum speed

4

1 = Motor is running at maximum speed

5

1 = Motor is accelerating

6

1 = Motor is decelerating

7

1 = Goto command is being executed

Status 2

0

1 = Forward end switch active

1

1 = Reverse end switch active

2

1 = Emergency stop input is active (note 2)

3

1 = Motor was stopped by an active and enabled forward end switch,
These status bit will be cleared by a start command

4

1 = Motor was stopped by an active and enabled reverse end switch,
These status bit will be cleared by a start command

5

1 = Motor was stopped by an emergency stop, power failure or watchdog time-out

When this bit is set, the motor will be disabled, so to start againg and to clear the emergency status, the user must give a 'Start' command (option = 5) to enable the motor

6 1 = Motor was stopped by 0.5 second 'watchdog' time-out.
The Cdios controller checks the 6167 with a short interval, when this fails, the 6167 performs an emergency stop.
This will also set the emergency bit (status2 bit 5). This bit is cleared when the emergency bit is cleared.
7 1 =  Motor was stopped by motor power supply failure.
This will also set the emergency bit (status2 bit 5). This bit is cleared when the emergency bit is cleared.
Status 3 0 1 = Motor position was set to zero by I input (start command) or Z and I inputs (AutoZero)

This status bit will be automatically cleared when the status is read (note).
1 1 = Heatsink temperature too high (note).
2 1 = Motor does not run
When this happens, the motor stops with an emergency stop, to clear this status a START command with option=5 has to be given.
3 Reserved
4 1 = Motor runs in opposite direction (+ and - terminals should be changed).
When this happens, the motor stops with an emergency stop, to clear this status a START command with option=5 has to be given.
5 1 = Encoder input frequency is too high, pulses may be missed
6 1 = Motor current limiting is active (motorcurrent = maximum current)
This bit may also become set when heatsink temperature is above 85°C.
7 1 = Motor is enabled
Status 4 0 1 = Z input active
1 1 = Power failure active, motor has no power
2 1 = Hold active, controller keeps motor at the setpoint
3 1 = A traject is running (started with a GOTO command)
4 - 6 Reserved
7 1 = Motor position is not initialized, may be incorrect.
This bit is set after power on reset or node reset. It is cleared after:
- a 'Set Position' command
- an autoreset
- a position reset caused by a start command with option 2, 4 or 6
 

All status data is given, so the application has to find out itself which status actually changed.

If a timer interval expires one of two possible timer events is send:

Event

Module ID

3

4

5

6

7

8

66h

0 - 15

2 MotorSpeed RPM Error 0

 

Event

Module ID

3

4

5

6

7

8

61h

0 - 15

0

Current Motor position

0

 


Calibration

The 6167 is calibrated by CD Systems before delivery.

All calibration values are stored in the internal calibration FLASH EEPROM.

Calibration commands and protocol are described in 6167-calibration.


Note 1: Any latched command (still waiting for SYNC) will be cleared when:
  • A 'goto', 'start' or 'stop' command is given with a selector value of 0
  • A 'set position' command is given
  • Before a new command is latched (only the latest latched command will be active)
Note 2: Whenever the emergency stop input is active, a watchdog time-out or a motor power failure occurs, the emergency status (status2 bit 5) is set and the motor is disabled and stopped.

This condition can only be cleared by sending a 'start' command with option 5 (enable motor)

 

Note 3: The auto-clear mechanism of Status3 bit 0 depends on if and how an event is enabled:
Action Event enabled
(Mask3, bit 0)
Status 3, bit 0
auto-cleared
Read Status with command 26h 0 yes
1 no
Event send by controller (event checking /
COS handling must be on)
0 no
1 yes
 

Note 4:

 

When the heatsink temperature becomes above 85°C, the maximum motor current will slowly be lowered until the heatsink cools.


Home