User manual
75
© 2008, Elektro-Automatik GmbH & Co. KG
EN
Programming
We now send one byte to ID 0x20B. The CAN message has
to look like this:
02 0B 01 47
Object 71 (0x47), queries actual values
Data length = 1
Identifier
Attention! This is NOT the bit combination of the CAN
message which is truely sent over the CAN bus. A
CAN controller merges various bits into it and adds a
checksum to it. These are only the bytes that are sent
to the CAN controller unit.
An answer to this query could look like this:
02 0B 06 64 00 0A 00 42 AA
Same identifier, data length is 6, because three actual value
of 16 bits size each are sent. The actual values are transmit-
ted as percentage values and need to be translated to real
values. See section „7.5.1 Translating values“ for details. For
an EL 9080-200 the actual values would translate to 100%
for voltage (=80V), 10% for current (=20A) and 66,7% for
power (=1600W).
The nominal values for power, current and voltage can be
read out from the device with the proper objects and used
to translate the actual values to real values.
9.2.1 The time format
The time format represents times from 1µs to 100h by a 16
bit value. Such time stamps are checked by the device they
are sent to for being correct. Values that are too high or too
low are not accepted and will return an error message. The
upper 4 bits are used as a mask to determine the time range,
the rest of the bits represent the time value. This time format
is used to write (i.e. set) or read time values.
It applies for any device that feature a function related to
time, as long as this time values is settable/readable. The
resolution of the time ranges in the table below does not
necessarily match the resolution of the device they‘re sent
to. In this case, the values are rounded down. An example:
a time value of 0x23E7 is sent. This represents 999 x 1µs =
999µs. The manually adjustable time value of the device in
this time range is but 0.95ms or 1ms. The 999µs are rounded
down to 950µs. Hence there will be 0x23B6 returned (=950)
when read back, instead of the sent 0x23E7.
Not all devices use all of the masks in the table below.
For electronic loads and the rise time (object 92) applies,
according to the big table below:
Time range Step width
of device
Mask for time range**
30µs ... 99µs 1µs 0x2000
0,10ms ... 0,99ms 10µs 0x2000
1,0ms ... 9,9ms 100µs 0x3000
10ms ... 99ms 1ms 0x6000
100ms ... 200ms
1ms 0x7000
** Values differing from the step width are rounded
For electronic loads and the pulse width (objects 90 and
91) applies, according to the big table below:
Time range Step width
of device
Mask for time range**
0,05ms ... 0,95ms 50µs 0x2000
1,00ms ... 9,95ms 50µs 0x3000
10ms ... 99,9ms 100µs 0x6000
100ms ... 999ms 1ms 0x7000
1,00s ... 9,99s 10ms 0x4000
10,0s ... 100s 100ms 0x9000
** Values differing from the step width are rounded
Example 1: the rise time for an electronic load shall be
set to 75ms. The step width of the time range on the load,
where the 75ms belong to, is 1ms. So we need to use the
0x6000 time range. Its resolution is 0.1ms, so it results in a
time value of 750 (75ms : 0.1ms). This translates to 0x2EE.
Together with the mask you get a value of 0x62EE as time
value for the rise time (object 92).
LabView users need to provide the time in a different way,
see VI documentation.
Example 2: the time value of the battery test (only with elec-
tronic loads) has been read and shall now be translated to the
normal time format. The overall resolution of the battery test
time is 1s. Since the time ranges allow 1s resolution only up
to 1h, the time above 1h is given in minutes and hours.
A value of, for example, 0x8743 would translate into 1859s
or 30m59s, whereas a value of 0xC532 would translate to
1330m or 22h10m. The seconds are omitted in this time
range, so you would always read out the same time value
during 1 minute.
Mask * Time value (bits 11..0) Resolution Resulting time range
Bits 15..13
(1
or 15..12
(2
min.(dec) min.(hex) max.(dec) max.(hex)
0x2000
(1
0 0x00 999 0x3E7 1us 0 ... 0,999ms
0x3000
(2
100 0x64 999 0x3E7 10us 1ms ... 9,99ms
0x6000
(1
100 0x64 999 0x3E7 100us 10ms ... 99,9ms
0x7000
(2
100 0x64 999 0x3E7 1ms 100ms ... 999ms
0x0000
(1
0 0x00 4999 0x1387 2ms 0 ... 9,998s
0x4000
(1
100 0x64 5999 0x176F 10ms 1,00s ... 59,99s
0x8000
(1
1 0x01 3599 0xE0F 1s 1s ... 59min:59s
0x9000
(2
100 0x64 1000 0x3E8 100ms 10,0s ... 100,0s
0xC000
(1
60 0x3C 5999 0x176F 1m 01:00h ... 99:59h
Table: Time format
* If the mask is used to translate time values into real time, either bits 15...13 or 15..12 are relevant, depending on the used time range