CAN-controlled Pilot Module CPM-1x
CAN-controlled Pilot Module CPM-1x
CPM-1x
Advanced safety | M4 applications | CANopen standard communication
Instruction manual
RE 64820-B/03.2019 English
© Bosch Rexroth AG 2019. All rights reserved,
also regarding any disposal, exploitation,
reproduction, editing, distribution, as well as in
the event of applications for industrial property
rights.
The data specified within only serves to describe
the product. No statements concerning a certain
condition or suitability for a certain application can
be derived from our information. The information
given does not release the user from the
obligation of own judgment and verification. It
must be remembered that our products are
subject to a natural process of wear and aging.
Contents
1 About this documentation 9
1.1 Validity of documentation 9
1.2 Required and supplementary documentation 9
1.3 Display of information 10
1.3.1 Safety instructions 10
1.3.2 Symbols 11
1.3.3 Abbreviations 11
2 Safety instructions 12
2.1 About this chapter 12
2.2 Intended use 12
2.3 Improper use 12
2.4 Personnel qualifications 13
2.5 General safety instructions 13
2.6 Product-specific safety instructions 14
2.7 Personal protective equipment 15
2.8 Safety devices 15
2.8.1 Emergency stop buttons 15
3 General instructions on damage to property and the product 16
4 About this product 17
4.1 Performance description 17
4.2 Product description 17
4.3 Product identification 17
4.4 Electrical specifications 18
4.5 Hydraulic data 19
4.6 Outside dimensions 20
5 Installation 21
5.1 Installing the CPM 21
5.1.1 Electrically connecting the CPM 21
6 Commissioning 24
6.1 Electrical and Software start-up of CPM-1x 24
6.2 Flashing of a new software version 24
6.3 Operating conditions 24
7 CANopen based protocols 25
7.1 CANopen protocol properties 25
7.1.1 Overview 25
7.1.2 Emergency Message 26
7.1.3 Error related objects 26
7.2 Configuration using CANopen tools 27
7.3 Read / write parameter using the CANopen protocol functions 28
7.3.1 Read parameter 28
7.3.2 Write parameter 29
7.4 State Machines 30
7.4.1 Communication state machine 30
7.4.2 Device state machine 32
7.5 CANopen start-up description 34
SIGNAL WORD
Type and source of danger!
Consequences of non-compliance
Measures to prevent danger
1.3.2 Symbols
The following symbols indicate information that is not directly relevant to safety but
increases understanding of the documentation.
1. Numbered instruction:
2. The numbers indicate that the steps must be completed in a prescribed
3. sequence.
1.3.3 Abbreviations
This documentation uses the following abbreviations:
Table 4: Abbreviations
Abbreviation Meaning
EMCY Emergency
RO Read only
RW Read / Write
2 Safety instructions
2.1 About this chapter
The product has been manufactured in accordance with the generally accepted rules of the
state of the art. However, there is still a danger of personal injury or damage to equipment if
this chapter and the safety instructions in this documentation are not complied with.
Read this documentation completely and thoroughly before working with the product.
Keep this documentation in a location where it is accessible to all users at all times.
Always include the required documentation when you pass the CPM on to third parties.
Observe the technical data, the application and operating conditions and the
performance limits as specified in data sheet 64276 / 64283 and in the order
confirmation. Information about approved hydraulic fluids can be found in data sheet
64276 / 64283.
Bosch Rexroth offers training support for specialized fields. An overview of the training
contents can be found online at: www.boschrexroth.com/training
CAUTION
Hot surfaces on the CPM!
Risk of burns
Allow the CPM to cool down sufficiently before touching it.
Wear heat-resistant protective clothing, e.g., gloves.
Make sure that all safety equipment belonging to the CPM-1x is present, has been
installed properly and is fully functional. Do not displace, bypass or disable the safety
equipment.
The CPM-1x could block in an undefined position due to internal pollution - e.g. through
polluted hydraulic fluid, abrasion dust or residual dirt. As a result, the actuated consumer
may no longer be under the operator's control.
Provide the appropriate emergency stop function to make sure that the actuated consumer
can be set to a safe position (e.g. by stopping it immediately).
If it should be necessary to disable any safety equipment temporarily, for example for
commissioning or maintenance work, always take the appropriate measures to ensure that
no hazard to a person's life or health or to property may occur. Also consider the super-
ordinate instruction manual for the machine.
To ensure that the device switches off in an emergency situation, a power supply interrupt
must be provided. The emergency stop button must be installed on the machine or system
in a position that is easily accessible to the operator. It is the responsibility of the machine
or system manufacturer to ensure the safe status of the machine or system in an
emergency stop situation.
Functions for detection of a connection interruption for control (timeout intervals for CAN
protocol and Heartbeat / Node-Guarding for CANopen) must not be deactivated.
Cables should not be routed close to other power-conducting cables, in order not to get
any negative influence on the CAN bus signal.
Connectors must be sealed using single-wire seals. The pilot module is only watertight if
the connectors are plugged in and sealed.
If the communication state mode (object 0x2403) is set to "Auto", the device will not react
on NMT state commands "enter pre-operation" or "stop remote node". Thus a shutdown of
the valve via NMT commands is not possible.
If the device mode (object 0x604F) is set to "device local" (value ≠ 0), any access to the
device control word (object 0x6040) has no effect. Thus a shutdown of the valve via the
device control word is not possible.
If the device is configured manually, verify if the CPM-1x and the M4 block are running
correctly in the machine.
The CPM has been designed and developed for mobile applications. Hence it must not be
permanently supplied. Not permanently supplied means that the CPM is only connected to
a power supply, if it is in operation mode. The vehicle/ the machinery is in operation mode,
if terminal 15 (T15) or the main switch of the machinery is turned ON.
In case of no machine operator is controlling the vehicle or machine (e.g. during night) the
CPM must be disconnected from power supply.
NOTICE
Liquids and foreign particles enter due to missing seals and plugs!
Loss of protection class and danger of short circuit!
Prior to installation, make sure that all seals and plug-in connections are tight.
The CPM-1x device has been developed and tested by Rexroth for the following operating
conditions:
Temperature profiles: Oil temperature profile, calculation basis 10000 h operational time:
Operational time: Temperature range:
100h -20°C - 0°C
300h 0°C - 20°C
600h 20°C - 40°C
4000h 40°C - 60°C
4000h 60°C - 70°C
1000h 70°C - 80°C
5 Installation
5.1 Installing the CPM
For assembly of the CPM on the M4 directional valve see Repair instructions 64276-41-R.
WARNING
The quality of wiring has direct influence on water integrity and signal quality!
Therefore disturbance or changes in cabling can influence safety and performance.
The use of a shielded, twisted cable is recommended for connecting the device to the
machine. Since the Bosch Compact connector has no provision for connection to the
shielding, contact should be established with the shield at the other end of the
connecting cable on the machine side.
NOTICE
Current supply too high!
Risk of burns by melting cables!
When using daisy chain cabling, the maximum current on the connection cables must
not exceed Imax = 10 A.
The electrical connection is done through either the gray or the black Bosch Compact
connector.
Table 8: Labeling used for the cables: wires are either labeled or color coded
Color Label
black GND – Ground
red/white UBat
yellow CAN high
green CAN low
6 Commissioning
6.1 Electrical and Software start-up of CPM-1x
For start-up a minimum gradient of 1 V/s after power on is required. If the gradient is lower
or instable, the module will most likely not enter the operational mode.
The CAN communication is active at a minimum supply voltage of 8.0 V DC.
7.1.1 Overview
Maximum average bus load to the CPM: up to 1000 frames / s
Maximum message burst capacity (LSS): up to 10 frames
Emergency messages are not transmitted, if the manufacturer status register (object
0x1002) is mapped into the TxPDO.
Error Code: 16 bit error code according to CiA 301 and CiA 408.
Value is equal to entries in objects 0x1003 and 0x604E.
The object 0x1001 error register provides some basic information about the error state and
the error type. According to CiA 301 the following error codes are defined for CPM:
The object 0x1003 predefined error field contains a list of the errors that have been detected
during the activation of the CPM.
The error list is RAM based, so the list will be reset every time the supply voltage of the
CPM is shut down.
The maximum size of the list is 7 entries. The error list works as a FIFO, so a new error
code will be stored at the top of the list and all other errors move down the list. The error
code at position 7 will be overwritten.
The list contains the 16 bit error code as defined by CiA 301 and CiA 408. The values
correspond with the value in object 0x604E.
The meaning of the error codes is given in chapter 8.
The object 0x604E contains the error code defined by CiA 301 and CiA 408. The value
corresponds with the most actual value in the error list in object 0x1003.
The meaning of the error codes is given in chapter 8.
A reactivation is only possible, if the error reason has been cleared. In case the device state
machine is set to “manual mode” (object 0x604F), the machine controller has to reset the
error state “Fault” or “Fault Hold”.
SCS: server command specifier (see CANopen CiA 301 for details)
The CPM will respond with the message 0x580 + Node ID. The message contains 1…4
data bytes, depending on the type of parameter accessed.
Details about storage conditions of each parameter are given in the description of each
object (see chapter 0).
The message with identifier 0x600 + Node ID can be used to write a parameter specified by
object index and subindex (see chapter 0):
Both state machines can be switched externally by CAN communication or can be set to
automatic mode.
Communication state machine: Object 0x2403 selects between manual and
automatic mode.
Device state machine: Object 0x604F selects between manual and
automatic mode.
Fig. 11: State machines according to CiA 301 (Communication) and CiA 408 (Device)
Fig. 13: Device state machine and transitions according to CiA 408
Fig. 14: Example of a simple start-up communication with recommended default values
Description of messages
1. When the power to the CPM is switched on, the CPM initializes, then sets the
communication state to „operational“ and transmits the boot up message to signal its
presence to the network.
2. Then the CANopen Master is able to send the first receive PDO1 with the setpoint = 0 to
the CPM (valve slice). The setpoint = 0 is necessary in the first RxPDO1 message to
avoid an uncontrolled movement for the start-up.
3. In the second receive PDO1 from the CANopen Master the setpoint for the flow rate of
the valve can be sent.
On the CPM side the content of this message is defined in the RxPDO mapping (see
ordering information, chapter 10.3). The RxPDO1 has a time monitoring. Instead of the
RxPDO1 time monitoring on CPM side also the heartbeat protocol can be used (see
0x1016 Consumer Heartbeat Time). For time monitoring on the CANopen master side
see 0x1017 Producer Heartbeat Time (heartbeat can be sent from the CPM device).
4. The CPM answers with a TxPDO (=40ms TxPDO event time) containing the values
“Estimated Flow” (object 0x2005) and “Estimated Flow Inverted” (object 0x2006).
5. In case of the recommended default settings from Bosch Rexroth the TxPDO will be
send as a cyclic message with an event time of 40ms to the Master.
The CPM supports two receive PDOs (RxPDO) for transmission of data from the machine
controller to the CPM (e.g. set point value, curve parameters).
One transmit PDO (TxPDO) is supported for the transmission of status information (e.g.
temperature, error code, valve position) from the CPM to the machine controller.
Each PDO may contain up to 8 data bytes. The content of the PDOs is defined by the
objects mapped into the PDO (see CANopen CiA 301 for details). The CPM supports the
CANopen mapping function.
For RxPDOs the parameter “event timer” (objects 0x1400.5 and 0x1401.5) defines the
timeout, which is used to monitor the continuous transmission of the message from the
system to the CPM.
Fig. 16: shows an example of a receive PDO2 (sent by the machine controller to the CPM).
Fig. 17: shows two examples for receive PDO1 (sent by the machine controller to the CPM)
for valve No.2 and valve No.7.
Fig. 18: shows an example for a transmit PDO (sent by the CPM to the machine controller).
Fig. 17: Example of two receive PDO1 (RxPDO1) for valve 2 and valve 7
One of the two functions must be used and triggered actively, otherwise the CPM will not go
into active mode.
The reaction of the valve in case of a communication error can be set by configuring object
0x1029.1 (chapter 9.2.19).
7.7.1 Heartbeat
The heartbeat function consists of two parts: the heartbeat producer and the heartbeat
consumer.
Heartbeat Producer
The heartbeat producer generates a cyclic message with identifier 0x700 + node id to signal
to other devices on the CAN bus the device is still alive and the communication is working
properly.
The interval of the heartbeat message can be set by object 0x1017.
The cyclic message transmitted by the valve can be monitored by the machine controller to
detect a communication failure on the CPM.
Heartbeat Consumer
The LSS services are only available in the STOPPED state of the CANopen communication
state machine. In the other communication states all LSS commands will be ignored.
If the device starts with a not configured node ID (0xFF) then the communication state
machine automatically switches into the state STOPPED. As long as the node ID has the
value 0xFF every NMT command will be ignored and the communication state machine
cannot be switched to another state like PRE-OPERATIONAL or OPERATIONAL. In this
state only LSS commands can be executed.
Since all LSS slave devices respond to the LSS services with the same CAN ID and several
responses may be sent exactly at the same time CAN bus errors within the data segment
may occur. These errors can lead to a bus off state of the sending CAN controller. To
prevent such a situation the CIA305 explicitly demands that only one device may be
requested by the LSS master to respond with a variable data field.
Nevertheless the CPM is able to recover autonomously from the bus off state and ensures
that no deadlock occurs in such a situation.
To prevent a deadlock situation during sending the device will recover from bus off with a
short random time delay. After this delay time was expired the CAN controller will be
activated again.
The bus recovery time from bus off to the new re-activation of the CAN bus depends on the
following parts:
Random delay time 0..7ms
+1 / -0ms because of the CANopen execution in a 1ms task
Bus off recovery time according to the CAN specification 5,6ms @ 250k baud rate
(128x11 bit)
All these parts together lead to a total bus off recovery time in the range from
5.6ms … 13.6ms @250k baud rate.
The LSS services can change the baud rate only within the variable pending baud rate. The
pending baud rate is not yet active. It can be activated via the corresponding LSS
command. In this case the CAN bus will be re-Initialized with the pending baud rate. A new
pending baud rate will be not stored automatically within the EEPROM.
If a new pending baud rate was not yet activated then it can be stored only with the LSS
command store configuration. After the activation of a new pending baud rate it can be
stored either with the corresponding LSS command or with SDO write access to object
0x1010 (store parameters).
A baud rate change via object 0x2400 changes only the value within the variable active
baud rate. This baud rate does not become active until storage via object 0x1010 and
restart. The following figure shows that the can controller will be initialized with the
corresponding baud rate only within the transitions marked with *).
The following figure shows the interrelation between the 3 virtual LSS baud rate variables
(pending – active – saved):
The following figure shows the interrelation between the 3 virtual LSS node-ID variables
(pending – active – saved):
8 Error codes
If the CPM detects an error, an emergency message is transmitted via CAN to signal the
error to the machine controller. In addition the error LED shows a flash signal.
The flash signal and the emergency message contain an error code, which gives more
information about the type of error.
The error code is a two digit code. The two digits will be displayed by the error LED as a
green blink code. The blink code consists of a long pause, 1 st digit, small pause, 2nd digit.
After a long pause the two digit code is repeated.
The blink code is equal to the “Error Code 8” given in chapter 8.1. An error code of e. g.
0x23 has a blink code of “2” and “3”.
The blink code is an optic signal:
First blink sequence (2)
Short pause
Second blink sequence (3)
Long pause
Valve reaction
The valve reaction for error codes can be found in the field “severity level” (see below).
8.1.1 Error code 0x1501: QSC invalid 2 point Q/S deltas on side A
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x1501 0xB201 = 45569 QSC invalid 2 point Q/S deltas on side A Q/S characteristics: plausibility check SA Check for:
100% > SA 0% - CANopen object 0x2720.9 > CANopen object 0x2720.2
(QA 100% > QA 0%)
Otherwise please contact the Bosch Rexroth Service in case of this
error.
Module EMCY Msg: API Log: Severity: Blink Code
8.1.2 Error code 0x1502: QSC invalid 2 point Q/S deltas on side B
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x1502 0xB202 = 45570 QSC invalid 2 point Q/S deltas on side B Q/S characteristics: plausibility check SB Check for:
100% < SB 0% - CANopen object 0x2721.9 < CANopen object 0x2721.2
(QB 100% < QB 0%)
Otherwise please contact the Bosch Rexroth Service in case of this
error.
8.1.3 Error code 0x1511: QSC steadiness violation Q[n] > Q[n+1]
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x1511 0xB211 = 45585 QSC steadiness violation Q[n] > Q[n+1] Q/S characteristics: plausibility check Please contact the Bosch Rexroth Service in case of this error.
steadiness violation Q[n] > Q[n+1].
8.1.4 Error code 0x1512: QSC steadiness violation S[n] > S[n+1]
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x1512 0xB212 = 45586 QSC steadiness violation S[n] > S[n+1] Q/S characteristics: plausibility check Check for:
steadiness violation S[n] > S[n+1]. - CANopen object 0x2721.9 ...2 and 0x2720.2 ...9 must be in ascending
order
Information:
- CANopen object 0x2720.2 .. 0x2720.9 spool position S on side A
- CANopen object 0x2721.2 .. 0x2721.9 spool position S on side B
Convention:
- S[0] = spool position B8 (nominal flow B)
- S[1 .. 6] = spool position B7 .. B2
- S[7] = spool position B1 (opening point B)
- S[8] = spool position A1 (opening point A)
- S[9 .. 14] = spool position A2 .. A7
- S[15] = spool position A8 (nominal flow A)
8.1.35 Error code 0x3261: ADC test voltage < min. limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x3261 0x9261 = 37473 ADC test voltage < min. limit The ADC test voltage has fallen below the Consider software update or replace the module in case of persistent
minimum limit. error.
8.1.36 Error code 0x3262: ADC test voltage > max. limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x3262 0x9262 = 37474 ADC test voltage > max. limit The ADC test voltage has risen above the Consider software update or replace the module in case of persistent
maximum limit. error.
8.1.41 Error code 0x3462: Wrong test reaction for WDA low check
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x3462 0xA162 = 41314 Wrong test reaction for WDA low check Error during voltage monitoring test, wrong Consider software update or replace the module in case of persistent
test reaction for watchdog line low check. error.
Otherwise please contact the Bosch Rexroth Service in case of this
error.
8.1.42 Error code 0x3463: Wrong test reaction for WDA high check
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x3463 0xA163 = 41315 Wrong test reaction for WDA high check Error during voltage monitoring test, wrong Consider software update or replace the module in case of persistent
test reaction for watchdog line high check. error.
Otherwise please contact the Bosch Rexroth Service in case of this
error.
8.1.48 Error code 0x5061: Sensor signal level X < minimum limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x5061 0x9361 = 37729 Sensor signal level X < minimum limit The position sensor signal X has fallen Consider software update or replace the module in case of persistent
below minimum limit. This indicates an error.
invalid or shifted signal from the position Otherwise please contact the Bosch Rexroth Service in case of this
sensor. error.
8.1.49 Error code 0x5062: Sensor signal level X > maximum limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x5062 0x9362 = 37730 Sensor signal level X > maximum limit The position sensor signal X has risen Consider software update or replace the module in case of persistent
above maximum limit. This indicates an error.
invalid or shifted signal from the position Otherwise please contact the Bosch Rexroth Service in case of this
sensor. error.
8.1.50 Error code 0x5071: Sensor signal level Y < minimum limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x5071 0x9371 = 37745 Sensor signal level Y < minimum limit The position sensor signal Y has fallen Consider software update or replace the module in case of persistent
below minimum limit. This indicates an error.
invalid or shifted signal from the position Otherwise please contact the Bosch Rexroth Service in case of this
sensor. error.
8.1.68 Error code 0x60A1: TC1724 > transition zone A high limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x60A1 0x92A1 = 37537 TC1724 > transition zone A high limit The estimated flow Q of the main controller Please contact the Bosch Rexroth Service in case of this error.
is above transition zone A hi-limit even
though the synchronized position S of the
main controller is still found to be within
transition zone A.
8.1.69 Error code 0x60A2: TC1724 < transition zone A low limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x60A2 0x92A2 = 37538 TC1724 < transition zone A low limit The estimated flow Q of the main controller Please contact the Bosch Rexroth Service in case of this error.
is below transition zone A lo-limit even
though the synchronized position S of the
main controller is still found to be within
transition zone A.
8.1.70 Error code 0x60A3: STM8A > transition zone A high limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x60A3 0x92A3 = 37539 STM8A > transition zone A high limit The estimated flow Q of the safety controller Please contact the Bosch Rexroth Service in case of this error.
is above transition zone A hi-limit even
though the synchronized position S of the
main controller is still found to be within
transition zone A.
8.1.71 Error code 0x60A4: STM8A < transition zone A low limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x60A4 0x92A4 = 37540 STM8A < transition zone A low limit The estimated flow Q of the safety controller Please contact the Bosch Rexroth Service in case of this error.
is below transition zone A lo-limit even
though the synchronized position S of the
main controller is still found to be within
transition zone A.
8.1.72 Error code 0x60B1: TC1724 > transition zone B high limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x60B1 0x92B1 = 37553 TC1724 > transition zone B high limit The estimated flow Q of the main controller Please contact the Bosch Rexroth Service in case of this error.
is above transition zone B hi-limit even
though the synchronized position S of the
main controller is still found to be within
transition zone B.
8.1.73 Error code 0x60B2: TC1724 < transition zone B low limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x60B2 0x92B2 = 37554 TC1724 < transition zone B low limit The estimated flow Q of the main controller Please contact the Bosch Rexroth Service in case of this error.
is below transition zone B lo-limit even
though the synchronized position S of the
main controller is still found to be within
transition zone B.
8.1.74 Error code 0x60B3: STM8A > transition zone B high limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x60B3 0x92B3 = 37555 STM8A > transition zone B high limit The estimated flow Q of the safety controller Please contact the Bosch Rexroth Service in case of this error.
is above transition zone B hi-limit even
though the synchronized position S of the
main controller is still found to be within
transition zone B.
8.1.75 Error code 0x60B4: STM8A < transition zone B low limit
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x60B4 0x92B4 = 37556 STM8A < transition zone B low limit The estimated flow Q of the safety controller Please contact the Bosch Rexroth Service in case of this error.
is below transition zone B lo-limit even
though the synchronized position S of the
main controller is still found to be within
transition zone B.
- estimated flow message received but Otherwise please contact the Bosch Rexroth Service in case of this error
cross validation was not triggered
- trigger message received again but cross
validation was not finished
- the estimated flow of the transition zone
A/B is out of range
- the estimated flow of the proportional zone
A/B is out of range
- the estimated flow in the neutral diagnosis
window is not zero
- the estimated flow of has the wrong sign in
relation to position
- flow setpoint message interval out of range Otherwise please contact the Bosch Rexroth Service in case of this error
or missing
- estimated flow message interval out of
range or missing
- UART trigger message interval out of
range or missing
- violation of hold off time between trigger
and estimated flow
- violation of latency time between trigger
and estimated flow
Module EMCY Msg: API Log: Severity: Blink Code
STM yes yes 2 0x0093
8.1.106 Error code 0x8341: Valve did not extend to side A/B
CANopen Error internal Error
Message [Name of Error Code] Error description Proposed remedy
Code Code [hex / dez]
0x8341 0xB341 = 45889 Valve did not extend to side A/B Spool position control: valve main spool did Check for:
not move out of neutral. - blocking of the valve (i.e. by hand lever)
- correct viscosity grade of used hydraulic oil
- correct operation temperature range
- sufficient hydraulic pressure
- sufficient power supply
The Electronic Data Sheet (EDS) is available up on demand. The EDS-file can be
processed by most available CANopen tools to generate an easy to use user interface.
The file to select, depends on the software version (object 0x100A) and the device type of
the CPM-1x (object 0x1018.2). Bosch Rexroth delivers a complete bundle of corresponding
EDS-files.
CAUTION!
The use of a wrong EDS files can cause a wrong configuration or a reduced access to the
interface!
All CPM-1x devices support the CANopen SDO communication used by standard CANopen
tools to read and write parameters.
The default values of the objects are typical, but can differ depending on the ordered
configuration.
Additional information about the parameters and descriptions used in the following chapters
can be found in the CANopen specifications CiA 301 and CiA 408.
The object dictionary is divided into three main chapters:
CANopen communication parameters
0x1000 – 0x1FFF
(Chapter 9.2 “CANopen communication parameters according to CiA 301”)
Bosch Rexroth device specific parameters:
0x2000 – 0x5FFF
(Chapter 9.3 “Input / output data”)
Parameters according to CANopen device profile CiA 408:
0x6000 – 0x6FFF
(Chapter 9.8 “Parameters according to CANopen device profile CiA 408”)
Description: This object contains information about the device type and its functionality.
The low word contains the device profile number according to CANopen standard. For this
device the CANopen device profile is CiA 408 (0x198).
The high word is always 0x0000.
See also CiA Standard CiA 408.
Description: This object provides general error information (error class) according to chapter 8 “Error
codes”.
Bit Meaning
0 Generic error
1 Current error
2 Voltage error
3 Temperature error
4 Communication error
5 Device profile specific error
6 reserved
7 Manufacturer specific error
Description: The object provides a list with the error codes generated by the device.
Subindex 0 Number of error codes stored in the list. Error codes are stored during operation in volatile
memory, after start-up the list is empty.
Writing of 0 to this object erases the list.
Subindex 1…7 List with error codes.
New error codes are always stored at position 1 and old error codes will move down the list.
The current error code can be found also in the object 0x604E.
Description: This device is able to process sync messages generated by another device. The sync
messages are used to generate synchronized communication behavior in the network.
The CAN identifier of the sync message is 0x80 and cannot be changed to any other value.
The device is not able to generate sync messages.
Description: This object provides information about the hardware version of the PCB of CPM-1x.
Description: This object provides information about the firmware version on this CPM-1x. The CANopen
interface and the selection of the corresponding EDS file depend on the firmware version.
It is not possible to set the node-ID to the value range from 128 … 254. In this case, the
original node-ID remains valid. The change of the Node-ID can cause a change of other
objects.
Description: This object provides an interface for the storage of parameters from volatile memory (RAM)
into non-volatile memory (EEPROM).
Most of the parameter changes are only stored in volatile memory and have to be stored to
non-volatile memory with a special command.
A change of most parameters will only be effective after storage and restart of the device.
To store a set of parameters the key word “save” (0x65766173) has to be written to the
matching subindex of this object.
Subindex 1 Save all parameters.
Subindex 2 All communication settings are stored (including node ID and baud rate).
Subindex 3 All application parameters are stored.
A full storage process of all EEPROM based parameters can take up to 4,6 s. Don‘t
switch off the power supply after triggering the storing.
At high CAN bus traffic (small telegram intervals from and to the CPM), a storage
process can generate a flow control error.
A full restore process of all EEPROM based parameters can take up to 4,5 s. At high
CAN bus traffic (small telegram intervals from and to the CPM), a restore process can
generate a flow control error.
With triggering of these data no automatic restart of the device is arranged. However, the
data are taken over only after the restart.
Description: The device generates emergency telegrams in case of an error. This object provides
information about the CAN identifier of this message. For the content of the emergency
telegram see chapter 7.1.2 Emergency Message.
The CAN identifier of the emergency message is specified by CANopen DS301, the value is
0x80 + [Node ID].
31 24 23 16 15 0
reserved Node-ID Heartbeat time
(00h)
MSB LSB
The high word defines the Node-ID of the device producing the heartbeat telegram.
Example: 0x000200C8 Interval must be < 200 ms
Node-ID of generating device is 0x02
(message ID is 0x702)
See also “Heartbeat” in chapter 7.7 Communication monitoring.
It is not possible to disable all communication monitoring functions (Heartbeat and PDO-
timeout).
Description: This object provides general identification information for this device. The information is
used by CANopen tools to select the correct EDS file.
Subindex 1 Vendor identification code (0x24 = Robert Bosch GmbH).
Subindex 2 Product code for this device.
0x00041011 R917009093 (CPM-1x Advanced Safety)
Subindex 3 The revision number is divided in Major Index and Minor Index:
31 16 15 0
Major revision number Minor revision number
MSB LSB
The major index will be increased if the CANopen functionality is changed to the previous
version. The minor index shows changes without impact on the CANopen functionality.
Subindex 4 Serial number of this device.
Value Action
Subindex 1 0x00 Device will go to NMT state Pre-Operational in case of a communication
error
0x01 Device will stay in the current NMT state in case of a communication error
Description: Identifier for the Service Data Objects (SDO). Service data objects are telegrams used to
read and write parameters of the device.
Subindex 1 CAN identifier for the SDO telegram from the SDO client (machine control or configuration
tool) to the SDO server (CPM).
Value is defined by the pre-defined connection set according to CANopen DS301 standard.
Subindex 2 CAN identifier for the SDO telegram from the SDO server (CPM) to SDO client (machine
control or configuration tool).
Storage: On access.
Valid: On storage and restart.
Description: This object defines the content of the PDO1 message. The message can contain up to 8
data bytes.
1) The mapping is set by the device according to the identifier tables (see 10.3.2 “PDO
mapping”).
Storage: On access.
Valid: On storage and restart.
Description: This object defines the content of the PDO2 message. The message can contain up to 8
data bytes. Some objects of the object dictionary can be mapped into the PDO and thus
transmitted constantly between the machine controller and the device.
The value of a mapping entry consists of 4 bytes:
MSB Index, high byte
Index, low byte
Subindex
LSB Length in bit
Not all objects are mapable, consider the documentation of each object.
Description: Communication parameters for the Transmit Process Data Object (TPDO). The process
data object is the CAN message to transfer process data like oil flow actual value from the
CPM to the machine controller.
Subindex 1 CAN identifier of this message. The identifier is set by the device according to the identifier
tables.
If the highest bit of the identifier is set, this will disable the message.
Message disabled: 0x80 XX XX XX(X = any value)
Subindex 2 Defines the trigger for the transmission of this message.
0x00 Message will be sent with the next sync message, if data has changed.
0x01…0xF0 Message will be sent every nth sync. n = value.
0xFE Message will be sent cyclically with time interval according to 0x1800.5
0xFF Message will be sent if data has changed.
Subindex 3 Defines the smallest transmission interval [ms]. The maximum value is 2040 ms.
Subindex 5 Defines a time trigger for the transmission of this message [ms]. The maximum value is
2040 ms.
Storage: On access.
Valid: On storage and restart.
Description: This object defines the content of the PDO message. Each message can contain up to 8
data bytes. Some objects of the object dictionary can be mapped into the PDO and thus
transmitted constantly between the machine controller and the device.
The value of a mapping entry consists of 4 bytes:
MSB Index, high byte
Index, low byte
Subindex
LSB Length in bit
The device will add the objects 0x2005 and 0x2006 automatically.
Description: Value is equal to the temperature measured on the electronic board of the device.
Temperature [°C] = value – 50hex
PDO mapping: Yes
Description: Value is equal to the temperature measured on the electronic board of the device.
Temperature [°C] = value
PDO mapping: Yes
Description: Relative oil flow in A or B port, value range 0…255 equals 0% … 100%.
This object is in 8bit format without the direction of the oil flow. Recommended in
combination with object 0x2004 to indicate the oil flow direction in port A or B.
PDO mapping: Yes
Description: This object value is bit inverse to estimated oil flow (0x2005).
PDO mapping: Yes
Description: Selects the direction of valve actuation. Only valid in connection with object 0x2100 (valve
set point, format unsigned 8).
Value Setting
0x01 Neutral
0x10 B-side
0x40 A-side
0x04 Float (if valve supports float position)
other Not valid.
PDO mapping: Yes
The maximum possible baud rate and number of nodes in a CAN network depends on
different parameters:
quality of shielding of CAN cables
wire type (twisted pair, resistance, capacity)
bus structure (topology)
leakage current of each CAN transceiver chip
(on CPM-1x and other devices)
EMI filtering pattern used on the devices (CPM-1x and other devices)
To reach a maximum stability and availability of the CAN communication, Bosch Rexroth
recommends to run the CAN network at baud rates of 125kBaud or 250kBaud.
The CANopen LSS service “LSS change baud rate” can only be used if the
communication state mode (object 0x2403) is set to 0x00 (external trigger of NMT
states).
CAUTION
No reaction of device possible in communication state mode “Auto”!
If the communication state mode is set to “Auto”, the device will not react on NMT state
commands.
“Enter pre-operation” or “stop remote node”.
Values for all parameters can be changed online. If the values are stored, they are used as
default settings after start-up.
PDO mapping Yes
Subindex 1 Using the parameter curve shape, the relation of the valve towards the flow set point can be
changed from a linear relation (default) to a progressive behavior.
A progressive behavior will improve the machine handling for small movements especially
on joystick controlled machines.
The curve shape can be changed from a linear characteristic (value = 0x0) to a progressive
characteristic (value = 0xF). For the Advanced Safety version of the CPM, this parameter is
RO (read only) and cannot be changed by the customer.
Fig. 20: shows the relation between input signal (Input [%]) and oil flow of the valve (Output
[%]).
The high nibble of the byte (0x00) sets the value for A-side, the low nibble (0x00) works on
the B-side.
Subindex 2, 3 Subindex 2 defines the curve gradient for A-side, subindex 3 for B-side.
The curve gradient is used for a linear reduction of the maximum flow of the valve. This
feature can be used to reduce the speed of a machine movement online during work cycle.
The value will reduce the maximum flow using 255 steps:
0xFF (255) full flow
0x00 (0) no flow
Fig. 21: shows the relation between input signal (Input [%]) and oil flow of the valve (Output
[%]).
Subindex 4, 5, 6, 7 The dynamic behaviour of the valve can be changed using time ramps. This feature can be
used to generate a soft start or stop of motions on a machine.
Four time ramps can be used to control the dynamics of the valve:
A side, 0% to 100% (open), subindex 4
A side, 100% to 0% (close), subindex 5
B side, 0% to 100% (open), subindex 6
B side, 100% to 0% (close), subindex 7
The defined ramp time relates to the time used for a 0% to 100% stroke.
The ramp times can be defined in multiple of 16 ms, the range is 0 ms … 4080 ms.
Fig. 22: shows the relation between the ramp time (Time [ms]) and the oil flow of the valve
(Output [%]).
1 without rounding
2 with rounding
Defines a rounding for the ramp function (see object 0x2600.4 … 0x2600.7) at the beginning
and the end of a ramp.
Two bits are used to define the rounding for each of the four points.
Values: 00 no rounding
01 low
10 medium
11 high rounding
Description: Switching between 2-point and 8-point characteristic for the hydraulic flow behavior.
0 = 8-point characteristic (use all calibration points)
1 = 2-point characteristic (linear interpolation between start and end point)
Switching to 8 point calibration via the CANopen object only makes sense, if the 8 point
calibration has been carried out at the test bench in the production plant. Otherwise no
linearization of the volume flow characteristic is possible.
Description: Swaps the side information for the set point value:
0 = Standard setting, set point values work according to chapters 9.3.10, 9.3.11 and 9.8.8.
1 = Swapped setting, all set point values work with swapped sides (A-side and B-side
swapped).
Other values are handled equal to 1.
Description: Switching between standard position dither and closed loop position dither.
0 = open loop position dither
1 = closed loop position dither
Description: Switching between standard current dither and closed loop position dither.
0 = open loop current dither
1 = closed loop current dither
Description: Switching between static control parameters and temperature dependent control parameters
0 = static control parameters
1 = temperature dependent control parameters
Description: Activation of position control hold current adaption. The adapted hold current improves the
control loop stability after several activations.
0 = static hold current
1 = adapted hold current
Access: Access is only possible via SDOs. Object cannot be mapped into PDOs.
Storage: With “save application parameters”.
Access: Access is only possible via SDOs. Object cannot mapped into PDOs.
Storage: With “save application parameters”.
Valid: After storage and restart.
Description: According to object 0x2720.
Value Range
Subindex 1 0x00 … 0x99999999 SAP code of the valve block.
The complete Bosch Rexroth ordering code is
“R9” + valueBCD
(example: value = 01021344 R901021344).
Subindex 2 AA … ZZ Change index of the valve block.
Description: This object can be used to add an empty byte to the TxPDO (mapping) of the device
PDO mapping: Yes
Description: This object can be used to add an empty byte to the RxPDOs (mapping) of the device.
PDO mapping: Yes
Description: This CANopen object can be used to read all relevant CPM data to restore the
parameterization (as well as the Q/s parameters) on a new device in case of replacement.
In this case, the data is transmitted in an encrypted data container via the CANopen object.
The data size is a total of 1,000 bytes, which will cause 250 CAN-messages to write and
save (for example stored externally or directly in the customer control unit). When restoring
the data, the messages must be written back to the new CPM module in the same order
(subindex for subindex, each containing 4 bytes).
Advantage:
A CPM in an existing M4 control block can be replaced quickly and almost without
performance losses, as communication and the Q/s characteristic parameters are
transferred.
Recommendation:
During commissioning, we recommend to back up the data from the above object for the
first time in order to ensure rapid use of the spare part in case of service.
PDO mapping: No
CAUTION!
If the object 0x604F “device local” is set to value 1, any access to the device control word
(object 0x6040) has no effect. Thus a shutdown of the valve via the device control word is
not possible.
Description: This object contains the status of the device state machine. For details on the device state
machine see section “Device state machine” in chapter 7.4 “State machines” or refer CiA
408.
PDO mapping: Yes
Description: Device error code. A description of each error code is given in chapter 8 “Error codes”.
PDO mapping: Yes
CAUTION!
If the object 0x604F “device local” is set to value 1, any access to the device control word
(object 0x6040) has no effect. Thus a shutdown of the valve via the device control word is
not possible.
If the object 0x6040 “device control word” is mapped into one of the RxPDOs, a device local
value 1 (automatic mode) has no effect.
The device state has to be controlled via the mapped control word.
Description: Contains the name of the device vendor, for CPM this is „BRH“, Bosch Rexroth Hydraulics.
Description: Contains information about the device features according to CANopen CiA 408:
0x05000000 Hydraulic valve, closed loop spool position control
Description: This entry contains the actual dither amplitude of the CPM on A- and B-side. Values are
given in [mA].
Description: This entry contains the actual dither frequency used by the CPM on A- and on B-side.
Values are given in [Hz].
10 Ordering information
To order a valve block with CPM-1x, three ordering sheets are necessary.
Block configuration
sheet:
This page specifies
the addresses for
each CPM in the valve
block.
Protocol parameter
sheet:
This page specifies
the CPM
configuration, which
will be downloaded to
each CPM prior to
delivery.
You are able to adjust
or select the
recommended default
parameters for the
CAN communication.
Message content
sheet:
Describes the PDO
mapping.
The customer can
define the data, which
is transmitted in the
CAN messages.
Use this page to
specify the message
contents.
This page gives an
overview on how to
control the CPM via
CAN bus.
CAUTION
All CPM’s (CANopen protocol) use the CAN identifiers:
0x600 + Node ID(SDO Rx)
0x580 + Node ID(SDO Tx)
which must not be used by other devices in the CAN network.
10.2 Notes
TxPDO
‒ Optional objects
Values (objects 0x2005, 0x2006) are placed automatically at the beginning of the
telegram. The remaining space of the message can be used without limitation.
Dummy mapping
If a byte at the beginning or in the middle of a telegram is not used, the dummy mapping
entries 0x28FE or 0x28FF must be used.
If a byte at the end of a telegram is not used, do not add a mapping entry (mapping value
= 0x00).
Änderungen vorbehalten
Printed in Germany
RE 64820-B/03.2019