Page 1
Communications Manual MC 5010 MC 5005 MC 5004 WE CREATE MOTION...
Page 2
Dr. Fritz Faulhaber GmbH & Co. KG. This document has been prepared with care. Dr. Fritz Faulhaber GmbH & Co. KG cannot accept any liability for any errors in this document or for the consequences of such errors. Equally, no liability can be accepted for direct or consequential damages resulting from improper use of the equipment.
CiA 301 CANopen application layer and communication profile CiA 402 CANopen device profile for drives and motion control These manuals can be downloaded in pdf format from the web page www.faulhaber.com/ manuals Using this document Read the document carefully before undertaking configuration.
About this document List of abbreviations Abbreviation Meaning Attr. Attribute Controller Area Network CAN in Automation e.V. COB ID Communication Object Identifier Command Specifier EEPROM Electrically Erasable Programmable Read-Only Memory EMCY Emergency High Byte Higher High Byte Higher Low Byte Low Byte Lower High Byte Lower Low Byte...
About this document Symbols and markers NOTICE! Risk of damage. Measures for avoidance Instructions for understanding or optimising the operational procedures Pre-requirement for a requested action 1. First step for a requested action Result of a step 2.
Overview Overview Basic arrangement of a CANopen device Object Communication Application Dictionary Application object 0x1### Communication object Application object 0x2### Communication object 0x3### Communication object Application object Communication object Application object 0x6### Fig. 1: Basic arrangement of a CANopen device Communication services The CANopen master communicates with the object dictionary via the bus system and use of the communication services (see chap.
Overview Pre-conditions for communication FAULHABER drives are delivered in the unconfigured state. For operation in a CAN net- work, a unique node number must be assigned and a Baud rate set at commissioning (see chap. 5, p. 40). After switching on and initialising, the Motion Controller is at first in the Pre-Operational state.
Overview We recommend always using the latest version of the FAULHABER Motion Manager. The FAULHABER Motion Manager is described in the separate “Motion Manager 6” man- ual. The contents of the manual are also available as context-sensitive online help within the FAULHABER Motion Manager.
The “Reload” command overwrites the values last saved as application parameters. If it is desired that the values currently loaded remain available after a “Restore”, these must be saved to the PC using a suitable program (such as FAULHABER Motion Man- ager). 2.4.3...
Page 12
Overview Pre-controls Index Subindex Name Type Attr. Meaning 0x2349 0x01 Torque/force feed forward factor U8 Factor for the torque or force control 0: 0% activation of the pre-control value 128: 100% pre-control 0x02 Torque/Force feed forward delay U8 Setpoint delay: 0: undelayed activation 1: Activation delayed by one sampling 0x234A...
Page 13
Overview Create an application SAVE application parameters 1: Write the “Save” signature to the subindex 04 of the object 0x1010. The current data are saved as the application parameter set 1. SAVE application parameters 2: Write the “Save” signature to the subindex 05 of the object 0x1010.
CANopen protocol description CANopen protocol description Introduction CANopen CANopen is a standard software protocol. A CAN hardware environment is required for communication using CANopen. Up to 127 nodes can be addressed within a CANopen net- work. The maximum transmission speed is 1 MBit/s. CAN standardisation The CiA defines the following aspects in CiA 301: communications structure...
CAN message conveys the error code asynchronously so that the status of the CANopen slave need not be interrogated after an error (see chap. 3.6, p. 24). Communications profile FAULHABER Motion Controllers support the CANopen communications profile to CiA 301 V4: 4 transmission PDOs ...
CANopen protocol description The data assignment of the PDOs is pre-set to the “PDO set for servo drive” as specified in CiA 402 V3, but can be changed by the user (dynamic PDO mapping). Identifier distribution The Communication Object Identifier (COB-ID) consists of a 7-bit node address (Node-ID) and a 4-bit function code.
CANopen protocol description As delivered the system is configured with the node number 1. The COB-IDs are pre-set correspondingly: RxPDO: 201h, 301h, 401h and 501h TxPDO: 181h, 281h, 381h and 481h EMCY: 81 h RxSDO: 581 h ...
0x1A00 to 0x1A03. The mapping procedure necessary for this is described in CiA 301. A suitable tool (such as FAULHABER Motion Manager or System Manager for the PLC con- troller than is used) is necessary for performance of the mapping procedure.
Page 19
CANopen protocol description RxPDO2: Controlword, target position (PP) 11-bit identifier 6 bytes user data 0x300 (768d) + node ID The RxPDO2 contains the 16-bit controlword and the 32-bit value of the destination posi- tion (object 0x607A) for the Profile Position mode (PP). TxPDO2: Statusword, Position Actual Value 11-bit identifier 6 bytes user data...
CANopen protocol description 3.4.3 Dealing with mapping errors If the mapping procedure specified in CiA 301 is not complied with, one of the following SDO errors will be returned: Tab. 6: SDO errors in response the incorrect mapping procedure SDO error Meaning Cause 0x06090030...
CANopen protocol description SDO (Service Data Object) The SDO reads and describes parameters in the OV (object dictionary). The SDO accesses the object dictionary via the 16-bit index and the 8-bit subindex. At the request of the client (PC, PLC (programmable logic controller)) the Motion Controller makes data available (upload) or receives data from the client (download).
Page 22
CANopen protocol description Write OD entries (Client-to-Server, Download-Request) 11-bit identifier 8 bytes user data 0x600 (1536d) + CS(0x2x) Index LB Index HB Subindex LLB (D0) LHB (D1) HLB (D2) HHB (D3) node ID The command specifier CS(0x2x) specifies the number of valid data bytes in D0 to D3 and the transfer code.
CANopen protocol description 3.5.2 SDO error description If the SDO protocol on a page cannot be processed further, an SDO-Abort telegram is sent (see chap. 3.5.1, p. 21). The error types are coded as follows: Error0: Additional error code HB Error1: Additional error code LB ...
The object 0x1001 allows interrogation of the last value of the error register. Tab. 9 lists all the errors that have been reported by emergency messages, providing the respective error is included in the emergency mask for the FAULHABER error register (Tab. 13). Tab. 9:...
CANopen protocol description SYNC object The SYNC object is a message without any user data. The SYNC object is used to trigger syn- chronous PDOs and at the same time to start processes on various items of equipment. The identifier of the SYNC objects is set in the object dictionary under the index 0x1005 (by default 0x80).
CANopen protocol description NMT (Network Management) The network management object governs the CiA 301 state machine of the CANopen device and monitors the network nodes. After switching on and initialising, the Motion Controller is automatically set to the Pre- Operational state. In the Pre-Operational state the device can communicate only with NMT messages and via SDOs.
Page 28
0x82 (130d) Performs a reset of the communications functions. tion FAULHABER Motion Controllers are equipped with a standard configuration for all objects. Once commissioning is complete the application-specific settings can be saved directly in the device. In most cases no further parametrisation is necessary at the sys- tem start.
CANopen protocol description 3.8.1 Boot up Immediately after the initialisation phase the Motion Controller sends a boot-up message. A boot-up message signals the end of the initialisation phase of a module after it has been switched on. A boot-up message is a CAN message with one data byte (byte 0 = 0x00) on the identifier of the node guarding message (0x700 + node ID).
The response to a node guarding error is set by the FAULHABER error register (object 0x2321) (see Tab. 14). The default is to send the emergency message 0x8130.
Heartbeat consumer: If within the heartbeat consumer time no heartbeat message is received from the heartbeat producers that are being monitored, the Motion Control- ler responds with the behaviour specified in the FAULHABER error register (object 0x2320) (see Tab. 12). COB-ID = 1792 + Node-ID...
message from the master, a heartbeat event is triggered. The response to a heartbeat event is determined by the FAULHABER error register error mask (object 0x2321) (see Tab. 12). The default is to send the emergency message 0x8130. If whilst the heartbeat producer is activated an attempt is made to set a node guarding ...
If messages are lost, the controller sends the emergency message 0x8110. Bit 4 (communica- tion error) is set in the error register and Bit 7 (CAN overrun) is set in the FAULHABER error register. The emergency message is sent out after a delay. Issuing of the emergency mes- sage (0x000) does not retract the error.
Fault Register – FAULHABER error register The FAULHABER error register contains the most recent errors in bit-coded form. The errors can be masked by selection of the desired types of error via the error mask object (0x2321). Tab. 13: Error coding...
Page 35
CANopen protocol description Tab. 14: Error mask (0x2321) Index Subindex Name Type Attr. Default value Meaning 0x2321 0x00 Number of Entries Number of object entries 0x01 Emergency Mask 0x00FF Errors for which an error message is sent 0x02 Fault Mask 0x0000 Errors for which the state machine of the drive switches into Fault Reaction Active...
Trace logger: On request the parameter values are requested and read continuously (see chap. 4.2, p. 39). The FAULHABER Motion Manager provides a user-friendly means of setting and evalu- ating the trace functions. Trace recorder The configuration and reading of data with the trace recorder is performed via the SDO.
Page 37
Trace Trigger Source (0x2370.01), Trace Source 1 to 4 (0x2370.07 to 0A) The parameters to be recorded, Trace Source 1 to Trace Source 4, must be entered into the objects 0x2370.07 to 0x2370.0A as pointers to a corresponding object entry (index and sub- index of the desired parameter).
Trace Sample Time (0x2370.06) The sampling rate is stated in object 0x2370.06 as a multiple of the controller sampling time. 4.1.2 Reading the trace buffer The recorded data buffer can be read using the object 0x2371. Tab. 17: Trace Buffer (0x2371) Index Subindex Name Type...
Trace 4.1.3 Typical execution of the trace function 1. Set the trigger type and the type of the data sources (2370.04). 2. Set the trigger source and the signals to be recorded (2370.01, 07 to 0A). 3. Set the recording length (2370.05). 4.
Communications settings Communications settings FAULHABER drives are delivered as standard with a pre-set node number 1 and with auto- matic Baud rate detection (AutoBaud) set. In network mode the network transmission rate in use should be set as the fixed rate.
Communications settings 5.1.2 Setting the baud rate If the automatic baud rate detection (AutoBaud) is active, the drive can be used in a network with any transmission rate in accordance with Tab. 19. The baud rate of the network is detected after no more than 24 telegrams (3 per baud rate) on the bus cable.
Communications settings Setting the node number via the object dictionary As an alternative to the LSS method via the CAN network, the node number can also be set via any interface (CAN, USB, RS232) available on the drive. The setting is performed by writing the object 0x2400.03 in the object dictionary: Tab.
Parameter description Parameter description Communication objects to CiA 301 Device Type Index Subindex Name Type Attr. Default value Meaning 0x1000 0x00 Device Type 0x00420192 Indication of the device type Contains information on the device type, coded in two 16-bit fields: ...
Page 44
Parameter description Manufacturer’s Hardware Version Index Subindex Name Type Attr. Default value Meaning 0x1009 0x00 Manufacturer’s const – Hardware version Hardware Version string The segmented SDO record must be read to determine the manufacturer’s hardware ver- sion. Manufacturer’s Software Version Index Subindex Name Type...
Page 45
Parameter description Tab. 22: “Save” signature Signature ISO 8 859 (“ASCII”) 65 h 76 h 61 h 73 h NOTICE! The flash memory is designed to accommodate 10,000 write cycles. If this command is exe- cuted more than 10,000 times, the correct operation of the flash memory can no longer be guaranteed.
Page 46
Index Subindex Name Type Attr. Default value Meaning 0x1018 0x00 Number of entries Number of object entries 0x01 Vendor ID Manufacturer’s code number (FAULHABER: 327) 0x02 Product Code Product code number 0x03 Revision number – Version number 0x04 Serial number –...
Page 47
Parameter description Server SDO Parameters Index Subindex Name Type Attr. Default value Meaning 0x1200 0x00 Number of entries Number of object entries 0x01 COB ID Client to 0x600 + node CAN object identifier for the server Server (rx) RxSDO 0x02 COB ID Server to 0x580 + node CAN object identifier for the server...
Page 48
Parameter description Receive PDO2 Mapping Index Subindex Name Type Attr. Default value Meaning 0x1601 0x00 Number of Mapped Number of mapped objects Objects 0x01 RxPDO2 Mapping 0x60400010 Pointer to the 16-bit Controlword Entry 1 (0x6040) 0x02 RxPDO2 Mapping 0x607A0020 Pointer to the 32-bit Target Position Entry 2 (0x607A) 0x03...
Page 49
Parameter description Transmit PDO2 Parameter Index Subindex Name Type Attr. Default value Meaning 0x1801 0x00 Number of entries Number of object entries 0x01 COB ID Used by 0x280 + node CAN object identifier of the TxPDO2 TxPDO2 0x02 Transmission Type 255 (asynchr.) Type of PDO transmission Transmit PDO3 Parameter Index...
Page 50
Parameter description Transmit PDO3 Mapping Index Subindex Name Type Attr. Default value Meaning 0x1A02 0x00 Number of Mapped Number of mapped objects Objects 0x01 TxPDO3 Mapping 0x60410010 Pointer to the 16-bit Statusword Entry 1 (0x6041) 0x02 TxPDO3 Mapping 0x606C0020 Pointer to the 32-bit Velocity Actual Entry 2 Value (0x606C) 0x03...
Fault Register – FAULHABER error register The FAULHABER error register contains the most recent errors in bit-coded form. The errors can be masked by selection of the desired types of error via the Error Mask (0x2321) object. Error Mask (0x2321)
Page 52
Parameter description Trace Buffer Index Subindex Name Type Attr. Default value Meaning 0x2371 0x00 Number of Entries Number of object entries 0x01 Trace State Trigger status 0x02 Trace Value of – Signal buffer, channel 1 Channel 1 string 0x03 Trace Value of –...