The document describes the standard CANopen
implementations created. It is addressed to
CANopen system integrators and to CANopen
device designers who already know the
content of standards designed by C.i.A. (CAN in
Automation).
Operation guide | DST X730 Top level inclination sensor
1.3 Abbreviations and terms
Abbreviation/termDefinition
CANController Area Network
CALCAN Application Layer
CMSCAN Message Specification
COBCommunication Object
COB-IDCOB Identifier
D1 - D8Data from 1 to 8
DLCData Length Code
ISOInternational Standard Organization
NMTNetwork Management
PDOProcess Data Object
RXSDOReceive SDO
SDOService Data Object
TXPDOTransmit PDO
TXSDOTransmit SDO
Describes a serial communication bys that implements the “physical” level 1 and the
“data link” level 2 of the ISO/OSI reference model.
Describes implementation of the CAN in level 7 “application” of the ISO/OSI reference
model form which CANopen derives.
CAL service element. Defines the CAN Apllication Layer for the various industrial
applications.
Unit of transport of data in a CAN network (aCAN message). A maximum of 2,048 COBs
may be present i a CAN network, each of which may transport from 0 to a maximum of
8 bytes.
Identifying element of a CAN message. The identifier determines the priority of a COB
in case of multiple messages in the network.
Number of data bytes in the data field of a CAN message.
Number of data bytes transmitted in a single frame.
International authority providing standards for various merchandise sectors.
CAL service element. Describes how to configure, initialize, manage errors in a CAN
network.
Process data communication objects (with high priority).
SDO objects received from the remote device.
Service data communication objects (with low priority). The value of this data is
contained in the “Objects Dictionary” of each device in the CAN network.
The numbers followed by the suffix “h”
represent a hexadecimal value, with suffix “b” a
binary value, and with suffix “d” a decimal value.
The value is decimal unless specified otherwise.
AQ304230922416en-000101 | IC.PS.P21.L1.02 | 3
Operation guide | DST 730 Top level inclination sensor
2. Electrical connections
2.1 M12 x 1, 5-pin 43-01090
CONNECTIONS
1.: NC
2.: + VS (+10 - +36 VDC)
3.: GROUND
4.: CAN-L
5.: CAN-H
NOTE:
Please make sure that the CANbus is terminated.
The impedance measured between CAN-H and
CAN-L must be 60 ohm that means the cable
must be connected to a 120 ohm resistor on each
ends of the bus line. Internally the tranducer is
not terminated with the resistor of 120 ohm.
Do not confuse the signal lines of the CAN bus,
otherwise communication with the transducer is
impossible.
Operation guide | DST X730 Top level inclination sensor
2.2 6 wires output 18 AWG 1.65 mm OD
Cables output IEC 60332
Cable 7 pole 0.5 mm²
OD 6.4 mm
NOTE:
Please make sure that the CANbus is terminated.
The impedance measured between CAN-H and
CAN-L must be 60 ohm that means the cable
must be connected to a 120 ohm resistor on each
ends of the bus line. Internally the tranducer is
not terminated with the resistor of 120 ohm.
Do not confuse the signal lines of the CAN bus,
otherwise communication with the transducer is
impossible.
Every CANopen device contains an
international Network Management server that
communicates with an external NMT master.
One device in a network, generally the host,
may act as the NMT master.
Through NMT messages, each CANopen device’s
network management server controls state
changes within its built-in Communication
State Machine.
This is independent from each node’s
operational state machine, which is device
dependant and described in Control State
It is important to distinguish a CANopen
device’s operational state machine from its
Communication State Machine.
CANopen sensors and I/O modules, for example,
have completely different operational state
machines than servo drives. The “Communication State Machine” in all CANopen devices, however,
is identical as specified by the DS301.
NMT messages have the highest priority. The 5
NMT messages that control the Communication
State Machine each contain 2 date bytes that
identify the node number and a command to that
node’s state machine.
Table 1 shows the 5 NMT messages surpported,
and Table 2 shows the correct message for
sending these messages.
Operation guide | DST X730 Top level inclination sensor
Arbitration
Field
COB-IDRTRByte 1Byte 2Byte 3Byte 4Byte 5Byte 6Byte 7Byte 8
000h0See table 1 See table 2These bytes are not sent
4. Baud rateNode-ID can be configurable via SDO
communication object =x20F2 and 020F3 (see
communication examples at the end of this
coument).
The default Baud rate is 250kbit/s.
5. Node-ID and resolutionNode-ID can be configurable via SDO
communication object 0x20F0 and 0x20F1 (see
communication examples at the end of this
documentation).
The default Node-ID is 7F.
6. Parameter settingsAll object dictionary parameters (object with
marking PARA) can be saved in a special
section of the internal EEPROM and secured by
checksum calculation.
The special LSS parameters (objects with
marking LL-PARA), also part of the objec
dictionary, will be also saved in a special
section of the internal EEPROM and secured by
checksum calculation.
Data Field
Table 2
Important Note:
Changing this parameter can disturb the network!
Use the service only if one device is connected to the
network!
Important note:
Changing this parameter can disturb the network!
Use the service only if one device is connected to the
network!
Due to the internal architecture of the
microcontroller the parameter write cycles are
limited to 100,000 cycles.
7. Restore default
parameters
8. Heartbeat
All object dictionary parameters (objects with
marking PARA) can be restored to factory default
values via SDO communication (index 0x1011).
The heartbeat mechanism for this device
isestablished through cyclic transmission of
the heartbeat message done by the heartbeat
producer.
One or more devices in the network are aware
of this heartbeat message. If the herartbeat
cycle fails from the heartbeat producer the local
application on the heartbeat consumer will be
informed about that event.
Heartbeat Message
COB-IDByte0
700+Node-IDContentNMT State
The implementation of either guarding or
heartbeat is mandatory.
The device supports Heartbeat Producer
functionality.
The producer heartbeat time is defined in object
0x1017.
Operation guide | DST 730 Top level inclination sensor
9 Error handling
Principle
Emergency messages (EMCY) shall be triggered
by internal errors on device and they are
assigned the highest possible priority to ensure
that they get access to the bus without delay
(EMCY Producer). By default, the EMCY contains
the error field with pre-defined error numbers
EMCY Message
The EMCY COB-ID is defined in object 0x1014.
The EMCY message consists of 8 bytes. It contains
an emergency error code, the contents of object
0x1001 and 5 byte of manufacturer specific
error code. The device uses only the 1st byte as
manufacturer specific error code.
and additional information.
Error Behavior (object 0x4000)
If a serious device failure is detected the object
0x4000 specifies, to which state the module shall
be set:
0: Pre-operational
1: Mo state change (default)
2: Stopped
ByteByte 1
Byte 3Byte 4Byte 5Byte 6
Byte 2
DescriptionEmergency
Error code
1)
Error code0x0000 Error Reset on no ERrror (Error Register = 0)
1)
Error Register
(object 0x1001
Manufacturer
2)
)
specific error code
(always 0x00)
Manufacturer
specific error code
(object 0x4001)
0x1000 Generic error
2)
Always 0
Byte 7
Byte 8
Manufacturer
specific error code
NOT IMPLEMENTED
(always 0x00)
Sensor Error TYPE DST X730 Z-360 (e.g. angle under/above
Description
limits, self-test failure, MEMS IC communication error)
0bxxxxxxx1
(a)
Sensor Error X-axis TYPE DST X730 XY-0xx (e.g. angle under/
above limits, self-test failure, MEMS IC communication error)
0bxxxxxxx1
(a)
Sensor Error Y-axis TYPE DST X730 XY-0xx (e.g. angle under/
above limits, self-test failure, MEMS IC communication error)
0bxxx1xxxxProgram checksum error
0bxx1xxxxxFlash limit reached - error
0bx1xxxxxxLSS Parameter checksum error
(a)
An angle error will be generated if the actual measured angle is under or above limits.
Example of limits for different versions are reported below:
DST X730 dual axis version ± 10º Error limit are ± 11º (± 11º are also the FSO angles STOP)
DST X730 dual axis version ± 15º Error limit are ± 16.5º (± 16.5º are also the FSO angles STOP)
DST X730 dual axis version ± 20º Error limit are ± 22º (± 22º are also the FSO angles STOP)
DST X730 dual axis version ± 30º Error limit are ± 33º (± 33º are also the FSO angles STOP)
DST X730 dual axis version ± 45º Error limit are ± 49.5º (± 49.5º are also the FSO angles STOP)
DST X730 dual axis version ± 60º Error limit are ± 66º (± 66º are also the FSO angles STOP)
DST X730 dual axis version ± 90º Error limit are ± 87º (± 87º are also the FSO angles STOP)
The device fulfils the SDO Server functionality.
With Service Data Object (S.D.O.) the access
to entries of a device Object Dictionary is
provided. As these entries may contain data of
arbitrary size and data typ SDOs can be used
to transfer multiple data sets from a client to a
server and vice versa.
Structure of SDO-request by the Master
Structure of SDO-answer by the Slave
Write Access, Data Transfer from Host to Slave
Each access to object dictionary is checked
by the slave for validity. Any write access to
nonexistent objects, to read - only objects or
with a non-corresponding data format are
rejected and answered with a corresponding
error message.
CMD determines the direction of data transfer and
the size of the data object:
23 hex Sending of 4-byte data
(bytes 5 - 8 contian a 32 bit value)
2B hex Sending of 2-byte data
(bytes 5, 6 contain a 16-bit value
2F hex Sending of 1-byte data
(byte 5 contians an 8-bit value)
Read Access, Data Transfer form Slave to Host
Any read access to non-existing objects is
answered with an error message.
CMD determines the direction of data transfer:
40 hex read access (in any case)
The Slave answers:
RES Response of the slave:
42 hex Bytes used by node when replying to
read command with 4 or less data
43 hex Bytes 5 - 8 contain a 32-bit value
4B hex Bytes 5, 6 contain a 16-bit value
4F hex Byte 5 contains an 8-bit value
80 hex Error
11. PDO communication
and Angle calculation
ByteByte 1Byte 2Byte 3Byte 4
Description
The Slave answers:
RES response of the slave:
60 hex Data sent successfully
80 hex Error
Transmit PDO #0
This PDO transmits asynchronously the position
value of the angle sensor. The Tx PDO#0 shall
be transmitted cyclically, if the cyclic timer
(object 0x1800.5) is programmed > 0. Values
between 4 ms and 65535 ms shall be selectable
by parameter settings. The Tx PDO#0 will be
transmitted by entering the “Operational” state.
Byte 5
Byte 6
Byte 7
Byte 8
X Axis
object
(0x6010)
Low-Byte
Inthe following figures an example of PDO mapping is reported in the case of Angle X = 0.00º and
Angle Y = 0.00º (Node-ID = 7Fh and resolution ± 0.01º
In the following figures an example of PDO mapping is reported in the case of Angle X = -45.00°
and Angle Y = 0.00°. (Node-ID = 7Fh and resolu-
tion ± 0.01º)
Byte 2 MSB (EEh) = EEh; Byte 1 LSB (6Bh) = 6Bh;
Angle X = EE6Bh to decimal 61035d
If the Angle X in decimal is greater thanm
32768, the Angle X is NEGATVE and it must be
computed as below (resolution ± 0.01°
Angle X = EE6Bh to decimal 61035d
Angle X = Angle X (in decimal) - 65535d =
61035d - 65535d = -4500d (resolution ± 0.01°)
= -45.00°
Angle X = 0.00°
Angle Y = 0.00°
Angle Y:
Byte 4 MSB (00h) = 00h; Byte 3 LSB (00h) = 00h
Angle Y = 0000h to decimal 0d (resolution ±0.01°)
= 0.00°
In the following figures an example of PDO
mapping is reported in the case of Angle X =
0.00° and Angle Y = 0.00°
(Node-ID = 7Fh and resolution ± 0.01°)
In the following figures an example of PDO mapping is reported in the case of Angle X = 0.00°
and Angle Y = +45.00°.
(Node-ID = 7Fh and resolution ±0.01°)
In the following figures an example of PDO mapping is reported in the case of Angle X = 0.00°
and Angle Y = +45.00°.
(Node-ID = 7FH and resolution ± 0.01°)
Transmit PDO#0 - Single axis configuration Z
(-180° - +180°) model DST X730 Z-360
ByteByte 1Byte 2
Description
Int he following figures an example of PDO mapping is reported in the case
of Angle Z = -180.0º (in 0 - 360º configuration the equivalent angle is 0.00º).
Z Axis
(object 0x6010)
Low-Byte
(Node-ID = 7Fh and resolution ± 0.01º
(object 0x6010)
Angle Y:
Byte 4 MSB (EEh) = EEh; Byte 3 LSB (6Bh) = 6Bh
Angle Y = EE6Bh to decimal 61035d
If the Angle Y in decimal is greater than 32768,
the Angle Y is NEGATIVE and it must be computed
as below (resolution ± 0.01°)
Angle Y = EE6Bh to decimal 61035d
Angle Y = Angle Y (in decimal) - 65535d = 61035d
- 65535d = -4500d (resolution ± 0.01°) = -45.00°
This PDO transmits synchronously the position
value of the inclinationsensor. The Tx PDO#0
shall be transmitted cyclically, if the cyclic timer
(object 0x1800.5) is programmed > 0. Values
between 4 ms and 65535 ms shall be selectable
by parameter settings. The Tx PDO#0 will be
transmitted by entering the “Operational” state.