|
Analog Servo Motor
Controller / Driver Command / Reply / Event messages V2.6
|
Cdios Controller Commands | Cdios Firmware Page
6167 Cdios Module V2.1 | 6167 Cdios Module V2.2 | 6167 Cdios Module V2.5
Addition to V2.5:
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)
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 |
Seek Speed |
Maximum Speed |
Slope |
||
|
1 |
Run Current | 0 | Forward End Switch |
Reverse End Switch |
I Factor | ||
| 2 | Pulses Per Revolution | Hold On Enable | Auto Zero | Slope Profile | |||
| 3 | Positioning Error | P Factor | D Factor | Failsafe | |||
| 4 | 0 | 0 | 0 | 0 | Run Check Inhibit | ||
| 5 | F Factor | 0 | HP Factor | HD Factor | HI Factor | ||
| Traject 0 settings | |||||||
| 10h |
Relative end position (traject phase 1) |
Length | |||||
| 11h |
Initial speed |
0 | 0 | 0 | |||
| 12h |
Relative speed change position 1 (traject phase 2) |
0 | |||||
| 13h |
Speed 1 |
0 | 0 | 0 | |||
| 14h |
Relative speed change position 2 (traject phase 3) |
0 | |||||
| 15h |
Speed 2 |
0 | 0 | 0 | |||
| 16h |
Relative speed change position 3 (traject phase 4) |
0 | |||||
| 17h |
Speed 3 |
0 | 0 | 0 | |||
| Traject 1 settings | |||||||
| 20h |
Relative end position (traject phase 1) |
Length | |||||
| 21h |
Initial speed |
0 | 0 | 0 | |||
| 22h |
Relative speed change position 1 (traject phase 2) |
0 | |||||
| 23h |
Speed 1 |
0 | 0 | 0 | |||
| 24h |
Relative speed change position 2 (traject phase 3) |
0 | |||||
| 25h |
Speed 2 |
0 | 0 | 0 | |||
| 26h |
Relative speed change position 3 (traject phase 4) |
0 | |||||
| 27h |
Speed 3 |
0 | 0 | 0 | |||
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: When motor is running, only configuration commands with selector value 1, 3 or 5 are allowed |
|
1 |
1 = Selector parameter out of range |
|
|
2 |
1 = Seek 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 = Auto zero 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 = P Factor or HP Factor parameter out of range | |
| 6 | 1 = Failsafe parameter out of range | |
| 7 | 1 = Traject configuration parameter out of range (Length or Speed) |
|
Command |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
20h |
0 - 15 |
80 - A7h |
0 | 0 | 0 | 0 | 0 |
|
Reply |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
20h |
0 - 15 |
80h |
Seek Speed |
Maximum Speed |
Slope |
||
|
81h |
Run Current |
0 |
Forward |
Reverse |
I Factor |
||
| 82h | Pulses Per Revolution | Hold On Enable | Auto Zero | Slope Profile | |||
| 83h | Positioning Error | P Factor | D Factor | Failsafe | |||
| 84h | 0 | 0 | 0 | 0 | Run Check Inhibit | ||
| 85h | P Factor | 0 | HP Factor | HD Factor | HI Factor | ||
|
Traject 0 settings |
|||||||
| 90h |
Relative end position (traject phase 1) |
Length | |||||
| 91h |
Initial speed |
0 | 0 | 0 | |||
| 92h |
Relative speed change position 1 (traject phase 2) |
0 | |||||
| 93h |
Speed 1 |
0 | 0 | 0 | |||
| 94h |
Relative speed change position 2 (traject phase 3) |
0 | |||||
| 95h |
Speed 2 |
0 | 0 | 0 | |||
| 96h |
Relative speed change position 3 (traject phase 4) |
0 | |||||
| 97h |
Speed 3 |
0 | 0 | 0 | |||
| Traject 1 settings | |||||||
| A0h |
Relative end position (traject phase 1) |
Length | |||||
| A1h |
Initial speed |
0 | 0 | 0 | |||
| A2h |
Relative speed change position 1 (traject phase 2) |
0 | |||||
| A3h |
Speed 1 |
0 | 0 | 0 | |||
| A4h |
Relative speed change position 2 (traject phase 3) |
0 | |||||
| A5h |
Speed 2 |
0 | 0 | 0 | |||
| A6h |
Relative speed change position 3 (traject phase 4) |
0 | |||||
| A7h |
Speed 3 |
0 | 0 | 0 | |||
|
|
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 |
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 set point (e.g. latest GOTO position / endpoint of traject) |
|
Reply |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
21h |
0 - 15 |
Selector |
Motor position |
0 |
|||
|
Parameter |
Value |
Description |
|
Motor Position |
32 bits- |
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 set point.
|
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 |
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. |
|
|
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 set point (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 set point 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 interruptible GOTO is running; 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 interruptible GOTO is running |
|
| 10 | Immediately changes the motor speed of a running GOTO.
This command is illegal when a traject is running or NO interruptible GOTO is running |
|
| Parameter | Range | Description |
|
Motor Position |
-2147483648 |
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 maximum speed. When the speed is zero, the configured maximum speed is used. After power on or reset, the speed is set to zero. |
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
|
|
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 |
Motor Speed |
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 |
||
|
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 seek speed |
|
1 |
Motor starts and accelerates to maximum speed |
|
|
2 |
Motor starts and remains at seek 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. |
|
| 3 | Motor will accelerate / decelerate from its current speed to the
selected motor speed.
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. |
|
| 4 | Motor starts and remains at seek 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 set point. When 'Hold On Enable' is set to 1, the motor position will be hold on the set point after this. |
|
| 6 | Motor starts and remains at seek 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. |
|
| Motor Speed |
0 - 32767 |
Target Motor Speed (Option = 3) |
|
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 = Motor Speed parameter out of range, only checked if Option = 3 | |
| Error Status2 | 0 -6 | reserved |
| 7 | 1 = Motor is not enabled |
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 seek speed and remains at seek speed |
|
1 |
Motor decelerates and then stops. The current position will be transferred to the set point. 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 always will be held at the set point |
|
|
2 |
Fast stop. The current position will be transferred to the set
point. 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 always will be held at the set point |
|
|
3 |
Reserved |
|
| 4 | Clear Hold status (status 4 bit 2). The motor is not held at the set point 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. |
|
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 |
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 | Motor Speed | Motor Current | Heatsink Temperature | 0 | |||
| 2 | Motor Speed | 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 |
Reserved |
|||||||||||||||
|
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, |
|||||||||||||||
|
4 |
1 = Motor was stopped by an active and enabled reverse end switch, |
|||||||||||||||
|
5 |
1 = Motor was stopped by an emergency stop, power failure or watchdog
time-out. |
|||||||||||||||
| 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 (Auto Zero). This status bit will be automatically cleared when the status is read (note). |
||||||||||||||
| 1 | 1 = Heat sink 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 | 1 = Motor was disabled while it was in holding mode and could
not be kept within the error window. (note) This will also set the emergency bit (status2 bit 5). This bit is cleared when the emergency bit is cleared. |
|||||||||||||||
| 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 (motor current = maximum
current). This bit may also become set when heat sink 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 set point | |||||||||||||||
| 3 | 1 = A traject is running (started with a GOTO command) | |||||||||||||||
| 4 | When a traject is running these bits indicate:
|
|||||||||||||||
| 5 | ||||||||||||||||
| 6 | 1 = Motor position is within allowed error range of the most recent GOTO target position (only set when Hold active (Status 4 bit 2) is 1) | |||||||||||||||
| 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 auto reset - a position reset caused by a start command with option 2, 4 or 6 |
|||||||||||||||
| Motor Speed | 0 - 32767 | The actual motor speed, value depends on the Pulses Per Revolution setting | ||||||||||||||
| Motor Current | 0 - 255 | Measured motor current, resolution is 0.01A | ||||||||||||||
| Heat sink Temperature | 0 - 100 | Heat sink temperature in ºC, bit 1 of Status3 will be high when Heat sink Temperature > 81ºC (note) | ||||||||||||||
| RPM Error | -32767 - 32767 | 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 acceleration and a bit positive during deceleration. |
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 |
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 |
|
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 Motor Speed / RPM Error' interval | |
| 7 | 0 | 0 = Motor Speed / RPM Error is send on timer interval 1 = Motor Speed / RPM Error is send on timer interval only when one or both values were changed |
|
|
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 |
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 |
|
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 |
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 120 up
to 250 milli-seconds, 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 error code = 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 |
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 |
Reserved |
|||||||||||||||
|
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, |
|||||||||||||||
|
4 |
1 = Motor was stopped by an active and enabled reverse end switch, |
|||||||||||||||
|
5 |
1 = Motor was stopped by an emergency stop, power failure or watchdog
time-out |
|||||||||||||||
| 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 (Auto Zero) This status bit will be automatically cleared when the status is read (note). |
||||||||||||||
| 1 | 1 = Heat sink 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 | 1 = Motor was disabled while it was in holding mode and could
not be kept within the error window (note) This will also set the emergency bit (status2 bit 5). This bit is cleared when the emergency bit is cleared. |
|||||||||||||||
| 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 (motor current = maximum
current) This bit may also become set when heat sink 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 set point | |||||||||||||||
| 3 | 1 = A traject is running (started with a GOTO command) | |||||||||||||||
| 4 | When a traject is running these bits indicate:
|
|||||||||||||||
| 5 | ||||||||||||||||
| 6 | 1 = Motor position is within allowed error range of the most recent GOTO target position (only set when Hold active (Status 4 bit 2) is 1) | |||||||||||||||
| 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 auto reset - 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 | Motor Speed | 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:
|
||||||||||||||||||
| 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:
|
||||||||||||||||||
|
When the heat sink temperature becomes above 70°C, the maximum motor current will slowly be lowered until the heat sink cools. |
|||||||||||||||||||
|
After the Hold active bit becomes active a 2 second time-out starts. If the motor is/goes out of the error window after this 2 seconds, the emergency status (status2 bit 5) is set and the motor is disabled and stopped. Status3 bit 3 indicates this 'out of window' error. |
|||||||||||||||||||
|
The amplifier dissipation is checked by calculating: (24V minus motor voltage) times motor current When the heat sink temperature is lower then 70°C, 20 Watts can be
dissipated ( 10 Watts @ 80°C, 0 Watts @ 90°C). Some examples with a blocked motor (DC resistance = 1 Ohm).
No special status bit is present to see if this dissipation limiter is active, but its activity can be detected when the Current Limit status bit is active and the motor current is (much) lower then the configured Run Current. Note that a motor running at 14 Volts and using 2A current, will result in a 20W amplifier dissipation. The dissipation limiter will not become active then, unless the heatsink temperature rises above 70°C. |
|||||||||||||||||||