|
8 Digital Output Module
Cdios 6156
Command / Reply / Event messages V2.6
New or up-date devices are visible marked V2.x
|
Cdios Controller Commands
| Cdios Firmware Page
6156 Cdios Module V1.1 | 6156
Cdios Module V1.2 | 6156 Cdios
Module V2.0 | 6156 Cdios
Module V2.5
Addition to V2.5:
- Output driver power failure status added
- Output action on power failure configuration added
NOTE: latest hardware version of 6156, with separate output power
connection, required
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.
Command code 10h: Write outputs
This command modifies the outputs direct or after a central
synchronization pulse (by bus or Cdios controller).
|
Command |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
10h |
0 - 15 |
Selector |
Data |
0 |
0 |
0 |
0 |
|
Parameter |
Value |
Description |
|
Selector |
0 |
Write outputs direct, one-shot counters disabled.... |
|
1 |
Write outputs latched, outputs will be updated after a SYNC
command. |
| 2 |
Set outputs direct, one shot counters enabled
Any bit set to 1 will set corresponding output, no action when bit is 0 |
| 3 |
Set outputs latched, one shot counters enabled, outputs
will be updated after a SYNC
command.
Data will be logically ORred with data already present in the set latch.
The latch will be cleared after the SYNC or a write outputs direct
command. |
| 4 |
Clear outputs direct.
Any bit set to 1 will clear corresponding output, no action when bit is 0 |
| 5 |
Clear outputs latched, outputs will be updated after a SYNC
command.
Data will be logically ORred with data already present in the clear latch.
The latch will be cleared after the SYNC or a write outputs direct
command. |
- After a latched command the outputs are updated after receiving a SYNC
pulse directly from the CAN bus (CANopen SYNC or DeviceNet Bit-strobe
message) or from the Cdios controller's SYNC command.
- When a SYNC pulse is received without prior reception of a latched
command, the outputs remain unchanged.
- When multiple latch commands are given they are executed as follows;
set, clear, write.
|
Parameter |
Bit |
Description |
|
Data |
0 |
contains the state for output 1, 0 is off/no action, 1 is on/action. |
|
until |
contains ... |
|
7 |
contains the state for output 8, 0 is off/no action, 1 is on/action |
Confirmation reply message (suppressed when 'Confirm' is 0):
|
Reply |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
10h |
0 - 15 |
0 |
0 |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
90h |
0 - 15 |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Selector parameter out of range |
Command code 11h: Read output status
This commands reads a part of the internal output module status
|
Command |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
11h |
0 - 15 |
Selector |
0 |
0 |
0 |
0 |
0 |
|
Reply |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
11h |
0 - 15 |
Selector |
Status |
0 |
0 |
0 |
0 |
|
Parameter |
Value |
Description |
|
Selector |
0 |
read actual output status byte, bit = 1: active |
|
1 |
read output short circuit status byte, bit = 1: output is short
circuited (note 1) |
|
2 |
read output noload status byte, bit = 1: output has no load (note
2) |
|
3 |
read output transistor over temperature status byte,
bit = 1: internal output driver temperature > 145°C (note
3) |
|
4 |
read output transistor over voltage status byte,
bit = 1: output driver supply > 35V (note 3) |
| 5 |
read driver power failure status
bit = 1: output driver supply power failure (note 4) |
|
Parameter |
Bit |
Description |
|
Status |
0 |
contains the status for output 1 |
|
until |
contains ... |
|
7 |
contains the status for output 8 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
91h |
0 - 15 |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Selector parameter out of range |
Command code 12h: Set event on output status change mask
This commands defines the outputs to scan for status change.
|
Command |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
12h |
0 - 15 |
Selector |
Mask |
0 |
0 |
0 |
0 |
|
Parameter |
Value |
Description |
|
Selector |
0 |
enable change of state event of actual output state |
|
1 |
enable change of state event of short circuit status |
|
2 |
enable change of state event of noload status |
|
3 |
enable change of state event of over temperature status |
|
4 |
enable change of state event of over voltage status |
|
5 |
enable change of state event of output driver power failure |
|
Parameter |
Bit |
Default |
Description |
|
Mask |
0 |
0 |
enables change of state event for output 1, 0 is off, 1 is on. |
|
until |
|
|
|
7 |
0 |
enables change of state event for output 8, 0 is off, 1 is on. |
Confirmation reply message (suppressed when 'Confirm' is 0):
|
Reply |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
12h |
0 - 15 |
0 |
0 |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
92h |
0 - 15 |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Selector parameter out of range |
Command code 12h: Read event on output status change mask
This commands reads the outputs to scan for status change.
|
Command |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
12h |
0 - 15 |
Selector |
0 |
0 |
0 |
0 |
0 |
|
Parameter |
Value |
Description |
|
Selector |
80h |
read enable change of state event of actual output state |
|
81h |
read enable change of state event of short circuit status |
|
82h |
read enable change of state event of noload status |
|
83h |
read enable change of state event of over temperature status |
|
84h |
read enable change of state event of over voltage status |
|
85h |
read enable change of state event of output driver power
failure |
Normal reply:
|
Command |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
12h |
0 - 15 |
Selector |
Mask |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
92h |
0 - 15 |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Selector parameter out of range |
Command code 13h: Set output one-shot times
This commands defines the output one-shot times per output.
|
Command |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
13h |
0 - 15 |
0 |
One-shot 1 |
One-shot 2 |
0 |
|
1 |
One-shot 3 |
One-shot 4 |
0 |
|
2 |
One-shot 5 |
One-shot 6 |
0 |
|
3 |
One-shot 7 |
One-shot 8 |
0 |
|
Parameter |
Value |
Default |
Description |
|
Selector |
0-3 |
|
Select two one-shots |
One-shot1
-
One-shot8 |
0-65535 |
0 |
range is 0 - 65535 milliseconds, lsb first (0 is no one-shot time),
power-on default is zero for all outputs. |
When an output one-shot time is nonzero, the corresponding output will be set
after a 'set outputs' command
(with it's bit set), or when the output should be set after a SYNC command.
The output will switch off when the one-shot time is reached.
To switch off the output before the end of one-shot time: send 'write
outputs' command with zero bit or use the 'clear outputs' command.
To prevent an output switching off: send 'set outputs' command before end of
one-shot time.
Confirmation reply message (suppressed when 'Confirm' is 0):
|
Reply |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
13h |
0 - 15 |
0 |
0 |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
93h |
0 - 15 |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Selector parameter out of range |
Command code 13h: Read output one-shot times
This commands reads the output one-shot times per output.
|
Command |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
13h |
0 - 15 |
80h - 83h |
0 |
0 |
0 |
0 |
0 |
Normal reply:
|
Command |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
13h |
0 - 15 |
80h |
One-shot 1 |
One-shot 2 |
0 |
|
81h |
One-shot 3 |
One-shot 4 |
0 |
|
82h |
One-shot 5 |
One-shot 6 |
0 |
|
83h |
One-shot 7 |
One-shot 8 |
0 |
|
Parameter |
Value |
Description |
|
Selector |
80h-83h |
Selected two one-shots |
One-shot1
-
One-shot8 |
0-65535 |
range is 0 - 65535 milliseconds, lsb first (0 is no one-shot time) |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
93h |
0 - 15 |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Selector parameter out of range |
Command code 14h: Set failsafe output value
This commands defines the state of the outputs after power on / node reset
/ node stop.
For the failsafe value to work, a store command has to be given to store
the value in EEPROM
|
Command |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
14h |
0 - 15 |
0 |
Data |
0 |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Data |
0 |
contains the power on / reset / stop state for output 1, 0 is off, 1 is
on |
|
until |
contains ... |
|
7 |
contains the power on / reset / stop state for output 8, 0 is off, 1 is
on |
Confirmation reply message (suppressed when 'Confirm' is 0):
|
Reply |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
14h |
0 - 15 |
0 |
0 |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
94h |
0 - 15 |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Selector parameter out of range |
Command code 14h: Read failsafe output value
This commands reads the failsafe value
|
Command |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
14h |
0 - 15 |
80h |
0 |
0 |
0 |
0 |
0 |
Normal reply:
|
Command |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
14h |
0 - 15 |
80h |
Data |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
94h |
0 - 15 |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Selector parameter out of range |
Command code 15h: Set power failure output action
This commands defines the state of the outputs after an output driver
power failure
|
Command |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
15h |
0 - 15 |
0 |
PowerFail |
0 |
0 |
0 |
0 |
|
Parameter |
Value |
Description |
|
PowerFail |
0
(default) |
The output will be cleared upon output driver power failure |
|
1 |
The output will be set to the Failsafe value upon output driver power
failure (all one-shot timers will be cleared) |
|
2 |
The output will not be modified by a power failure.
This also means that any one-shot timer continues to run and clear the
output (and send a status event if enabled on clearing it) |
Confirmation reply message (suppressed when 'Confirm' is 0):
|
Reply |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
15h |
0 - 15 |
0 |
0 |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
95h |
0 - 15 |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Selector parameter out of range |
| |
1 |
1 = PowerFail parameter out of range |
Command code 15h: Read power failure output action
This commands reads the failsafe value
|
Command |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
15h |
0 - 15 |
80h |
0 |
0 |
0 |
0 |
0 |
Normal reply:
|
Command |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
15h |
0 - 15 |
80h |
PowerFail |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
95h |
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.
|
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 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 |
Events
If an enabled output status changes state, a read output status event
message is sent:
|
Event |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
51h |
0 - 15 |
Selector |
Status |
0 |
0 |
0 |
0 |
|
Parameter |
Value |
Description |
|
Selector |
0 |
actual output status byte, bit = 1: active |
|
1 |
output short circuit status byte, bit = 1: output is short
circuited (note 1) |
|
2 |
output noload status byte, bit = 1: output has no load (note
2) |
|
3 |
output transistor over temperature status byte,
bit = 1: internal output driver temperature > 170°C (note
3) |
|
4 |
output transistor over voltage status byte,
bit = 1: output driver supply > 35V (note 3) |
|
5 |
output driver power failure status byte,
bit = 1: output driver supply power failure (note 4) |
|
Parameter |
Bit |
Description |
|
Status |
0 |
contains the status for output 1 |
|
until |
contains ... |
|
7 |
contains the status for output 8 |
All status data is given, so the application has to find out itself which
status actually changed.
| Note 1: |
Short-circuit status of an output is only
active when the output is on. When a short-circuited output is switched
off, the short-circuit status bit becomes zero.
If the internal temperature of an output switch rises due to
short-circuit. The short-circuited outputs will be switched off by the
software.
A large capacitive load on the output can produce a short-circuit error
when the output voltage does not rise above 4 Volts within 5 milliseconds
after switching the output on.
|
| Note 2: |
No-load status of an output is only active
when the output is off. When an unloaded output is switched on, the
no-load status bit becomes zero.
A large capacitive load on the output can produce a no-load error when
the output voltage does not fall below 4 Volts within 5 milliseconds after
switching the output off.
No-load is detected by an 50K pull-up resistor.
|
| Note 3: |
The over temperature and over voltage status
bits of outputs 1-4 and outputs 5-8 are linked, the status byte can show
the following values: 00h, 0Fh, F0h, FFh.
When the software detects over temperature (due to overload but not
short-circuit), outputs 1-4 or 5-8 will be switched off.
|
| Note 4: |
The output driver power failure is detected
for all 8 outputs, the status byte can only show 00h or FFh.
When the software detects output driver power failure, the
short-circuit / no-load / over voltage and over temperature status bits
are all cleared (and may cause events). |
|