Manual Inclination sensor with CANopen interface Firmware Version 1.00 and up Baumer IVO GmbH & Co. KG Dauchinger Strasse 58-62 DE-78056 Villingen-Schwenningen Phone +49 7720 942-0 Fax +49 7720 942-900 [email protected] www.baumer.com 11.12 · 174.02.048/7 Subject to modification in technic and design. Errors and omissions excepted. Contents Page 1. Introduction 3 1.1. 1.2. 3 3 Scope of delivery Product assignment 2. Safety and operating instructions 4 3. CAN-bus and CANopen communication 5 3.1.1. 3.2. 3.3. 3.3.1. 3.3.2. 3.3.3. 3.3.4. 3.3.5. 3.3.6. 3.4. 3.4.1. 3.4.2. CAN-bus properties CANopen CANopen communication Communication profile CANopen message structure Service data communication Process data communication Network management services Layer Setting Services Inclination sensor profile Inclination sensor object overview Detailed object list 5 6 7 7 7 8 9 11 15 18 18 21 4. Diagnostics and useful information 32 4.1. 4.2. 4.3. 32 32 33 Error diagnostics in fieldbus communication Error diagnostics via fieldbus Useful information on the sensor 5. Applications 34 5.1. 5.2. 5.3. 5.4. 34 35 36 37 Write and read SDO objects Configuration Operation Commissioning via CAN 6. Terminal assignment and commisisoning 38 6.1. 6.2. 6.2.1. 6.2.2. 6.2.3. 6.2.4. 6.2.5. 6.3. 38 39 39 40 40 40 41 41 Mechanical mounting Electrical connection Setting the user address Setting the baud rate Terminating resistor Connecting the inclination sensor Terminal assignment Status LEDs (status indicators) Manual_GNAMG_CANopen_EN.doc 21.11.12 2/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Disclaimer of liability The present manual was compiled with utmost care, errors and omissions reserved. For this reason Baumer IVO GmbH & Co. KG rejects any liability for the information compiled in the present manual. Baumer IVO nor the author will accept any liability for direct or indirect damages resulting from the use of the present information. At any time we should be pleased receiving your comments and proposals for further improvement of the present document. 1. Introduction 1.1. Scope of delivery Please check the delivery upon completeness prior to commissioning. Depending on sensor configuration and part number delivery is including: Sensor CD with describing file and manual (also available as download in the Internet) 1.2. Product assignment Product Product code Device name EDS file Product family GNAMG.x225xxx 0x32 GNAM GNAMG_30.eds Inclination sensor GNAMG.x215xxx 0x33 GNAM GNAMG_15.eds Inclination sensor GNAMG.x235xxx 0x34 GNAM GNAMG_60.eds Inclination sensor GNAMG.x155xxx 0x35 GNAM GNAMG_360.eds Inclination sensor Illustration: inclination sensor on base plate Manual_GNAMG_CANopen_EN.doc 21.11.12 3/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 2. Safety and operating instructions Supplementary information This manual is intended as a supplement to already existing documentation (i.e. catalogues, product information and mounting instructions). The manual must be read without fail before initial commissioning of the equipment. Intended purpose of the equipment The inclination sensor is a sensing device. It is only used to determine angular positions and to prepare and provide measured values as electric output signals for the downstream device. The inclination sensor must not be used for any other purpose. Commissioning The inclination sensor may only be installed and mounted by suitably qualified experts. Observe the operating instructions of the machine manufacturer. Safety remarks Prior to commissioning of the equipment check all electrical connections. If installation, electrical connections or any other work performed at the inclination sensor or at t he equipment is not duly and correctly executed this can result in a mulfunction or failure of the inclination sensor. Steps must be taken to eliminate any risk of personal injury, damage to corporate or operating equipment as a result of inclination sensor failure or malfunction by providing suitable safety precautions. The inclination sensor must not be operated outside the limit values specified in the product information. Failure to comply with the safety remarks can result in malfunctions, personal injury or damage to property! Transport and storage Only ever transport or store the inclination sensor in its original packaging. Never drop the inclination sensor nor expose it to major shocks. Mounting Avoid impacts or shocks on the housing. The bus cover must fully and evenly rest on the base plate. Any tolerances in mounting the bus cover to the base plate may affect the absolute slope angle. Electrical commissioning Do not modify the inclination sensor electrically. Do not carry out any wiring work when the inclination sensor is live. Never plug or unplug the electrical connection when the encoder is live. Ensure that the entire equipment is installed in line with EMC requirements. Ambient conditions and wiring affect the electromagnetic compatibility of the inclination sensor. Install inclination sensor and supply cables separately or far away from lines with high interference emissions (frequency converters, contactors etc.) Provide a separate power supply for the inclination sensor where working with consumers that have high interference emissions. Completely shield the inclination sensor housing and connecting cables. Connect the encoder to protective earth (PE) using shielded cables. The braided shield must be connected to the cable gland or plug. Ideally, aim at a bilateral connection to protective earth (PE), the housing via the mechanical assembly, the cable shield via the downstream devices. In case of earth loop problems, earth on one side only as a minimum requirement. Failure to observe these instructions can result in malfunctions, personal injury or damage to property! Manual_GNAMG_CANopen_EN.doc 21.11.12 4/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 3. CAN-bus and CANopen communication CAN bus (CAN: Controller Area Network) was developed by Bosch and Intel for high-speed, economic data transmission in automotive applications. Today CAN bus has been commercialised for use in industrial automation. CAN bus is a fieldbus system (standards administered by CAN in Automation, CiA) for communication between appliances, actors and sensors of different brands. 3.1.1. CAN-bus properties • Data rate of 1 Mbaud with network length capabilities of max. 40m • Bilateral terminated network • Bus medium: twisted pair wire • Realtime capability: Max. defined waiting time for high priority messages. • In theory up to 127 users in one bus line, physically however only 32 (due to driver). • Seized netwide data consistency. Faulty messages are made known as faulty to all nodes in the network. • Message-oriented communication The message comes with an identifier. All nodes in the network check by the identifier whether the message is relevant for them or not. • Broadcasting, Multicasting All nodes get every message at the same time, thus enabling synchronisation. • Multi-Master capability Every fieldbus user is able to transmit or recieve data independently, irrespectible of a priority by master. Every user can start his message if the bus is not busy. If several messages are transmitted at the same time, the user with the highest priority will succeed. • Message priorities Message priority is determined by the identifier. Thus, the bus is quickly transmitting important messages. • Risk of remaining errors Reliability precautions in the network reduce the risk of faulty, inevident data transmissions to less than 10 11 . A 100% reliability in transmission can be taken for granted. • Function guarding Stations with malfunction or breakdown are located. The CAN protocol provides function guarding of the nodes in the network. Defective nodes are restricted in their function or even logged off from the network. • Data transmission with minimized error recovery time Thanks to several error diagnostics faulty messages will be recognized with maximum reliability. Upon recognizing an error the message will be automatically repeated. CAN bus is networking several bus users by bus cable. Every network user is in a position to transmit and receive messages. There is a serial data transmission between the individual network users. Network users for CAN bus euipment might be: • automation equipment, for example PLCs • PCs • input/output modules • drive controls • analysing equipment, for example CAN monitor • operating and input equipment as HMI (human machine interface) • sensors and actuators Manual_GNAMG_CANopen_EN.doc 21.11.12 5/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 3.2. CANopen The CANopen profile was developed under technical supervision of the Steinbeis Transfer Centre for Automation and is based on layer 7 of CAL specification (CAN Application Layer). Compared to CAL, CANopen comprises onyl the functions relevant for this application. CANopen is a user-optimized CAL excerpt and thanks to a simplified system structure and the use of simplified appliances CANopen is optimized for rapid data exchange in realtime systems. Applicable standards of the corresponding profiles are administered by the organisation CAN in Automation (CiA). Some CANopen benefits: • easy access to all device and communication parameters • synchronisation of several appliances • automated network configuration • cyclic and event-triggered process data traffic CANopen provides four communication objects (COB) with different properties: • process-data objects for realtime data (PDO) • service-data-objects for parameter and profile transmission (SDO) • network management (NMT, Heartbeat) • pre-defined objects (for synchronisation, emergency message) All device and communication parameters are sectioned in an object directory. One object comprises object name, data type, number of subindexes, parameter structure and address. According to CiA the object directory is subdivided in three sections: communication profile, device profile and manufacturer-specific profile (see object directory). Manual_GNAMG_CANopen_EN.doc 21.11.12 6/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 3.3. CANopen communication 3.3.1. Communication profile Communication between network users and master (PC / control) is effected by object directories and objects. Adressing the objects is by help of a 16bit index. The individual communication objects are standardized by CANopen communication profile DS 301. They are subdivided into several groups: • Process DataOobjects PDO for process data transmission in realtime • Service Data Objects SDO for write and read access to the object directory • objects for synchronisation and error warnings of CAN users: SYNC-object (synchronisation object) for synchronisation of network users EMCY-object (emergency object) for error warnings of a single device or its periphery • Network Management NMT (network management) for initialization and network control • Layer Setting Services LSS for configuration by serial number, revision number etc within the existing network 3.3.2. CANopen message structure First part of the message is the COB-ID (identifier). Structure of the 11-Bit COB-ID : Function Code 4 Bit Function code Node-ID 7 Bit Node-ID The function code is defining the kind of message and priority. The lower the COB-ID, the higher the priority of the message. Broadcast messages: Function code NMT SYNC COB-ID 0 80h Peer to Peer messages: Function code Emergency 1) PDO1 (tx) 1) PDO2 (tx) 1) SDO (tx) 1) SDO (rx) Heartbeat 1) LSS (tx) 1) LSS (rx) COB-ID 80h + Node-ID 180h + Node-ID 280h + Node-ID 580h + Node-ID 600h + Node-ID 700h + Node-ID 7E4h 7E5h 1): (tx) and (rx) from the inclination sensor’s point of view The Node-ID is optionally set anywhere between 1 and 127 via the CANopen bus (if rotary switch = 0). Default setting of the inclination sensor is Node ID 1. Changing the Node-ID is effected by using service data object 2101h or by LSS. A CAN telegram consists of the COB-ID and a data packet of max. 8 bytes: COB-ID DLC Xxx x Byte 1 xx Byte 2 xx Byte 3 xx Byte 4 xx Byte 5 xx Byte 6 xx Byte 7 xx Byte 8 xx More detailed information on the telegram structure in later chapters. Manual_GNAMG_CANopen_EN.doc 21.11.12 7/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 3.3.3. Service data communication Service data objects are conform to CiA standards. A certain object is accessed by index and subindex. There are data requests or, if required, data are written into the object. General information on SDOs SDO telegram structure: COB-ID DLC Command Object L Object H Subindex Data 0 Data 1 Data 2 Data 3 A SDO-COB-ID is composed as follows: Master -> inclination sensor : 600h + Node-ID Inclination sensor -> master : 580h + Node-ID DLC (Data length code) defines the length of a telegram with following structure: 1 byte command + 2 bytes object + 1 byte subindex + number of data bytes (0..4). The command byte specifies whether data are write or read only and how many data bytes are involved: SDO command 22h 23h 2Bh 2Fh Meaning Download Request Download Request Download Request Download Request Data length max. 4 Byte 4 Byte 2 Byte 1 Byte 60h 40h Download Response Upload Request - confirm download to master request parameter upload from inclination sensor 42h 43h 4Bh 4Fh Upload Response Upload Response Upload Response Upload Response max. 4 Byte 4 Byte 2 Byte 1 Byte parameter to master, max. 4 bytes 80h Abort Message - Inclination sensor gives error code to master transmit parameter to inclination sensor Abort Message means an error in CAN communication. SDO command byte is 80h. Object and subindex are those of the requested objects. The error code is in bytes 5..8. ID DLC 580h + Node-ID 8 Byte 1 80h Byte 2 Object L Byte 3 Object H Byte 4 Byte 5 Byte 6 Byte 7 Byte 8 Subindex ErrByte 0 ErrByte 1 ErrByte 2 ErrByte 3 Byte 8..5 composes the SDO abort message (Byte 8 = MSB). The following messages are supported: 05040001h 06010000h 06010001h 06010002h 06020000h 06090011h 06090030h 06090031h 08000000h 08000020h 08000021h : command byte not supported : incorrect access to an object : Read access to write only : Write access to read only : Object not supported : Subindex not supported : Value is not within the defined limits : Value too high : General error : Incorrect memory signature ("save") : No data saving possible Manual_GNAMG_CANopen_EN.doc 21.11.12 8/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany SDO examples Parameter request master to slave Read resolution object 6000h COB-ID 600h+Node-ID DLC Command 8 40h Object L 00h Object H 60h Subindex Data 0 0 x Data 1 Data 2 Data 3 x x x Object H 60h Subindex Data 0 0 a Data 1 Data 2 Data 3 b C d Response of slave to parameter request COB-ID 580h+Node-ID DLC Command 8 4Bh Object L 00h Write parameter by master into slave Angular position Y-axis set slope long by help of object 6112h preset COB-ID 600h+Node-ID DLC Command 8 22h Object L 12h Object H 61h Subindex Data 0 0 a Data 1 Data 2 Data 3 b c d Object L 12h Object H 61h Subindex Data 0 0 0 Data 1 Data 2 Data 3 0 0 0 Response of slave to write parameter COB-ID 580h+Node-ID DLC Command 8 60h 3.3.4. Process data communication Process data objects serve for process data exchange in realtime. PDO transmision is synchronous or cyclic (asynchronous). The inclination sensor supports PDO1 providing the actual angular position of the two axis of the inclination sensor and defined in the objects 1800h, 1A00h, 6110h and 6120h . Synchronous For synchronous process data transmission the parameter set in object 1800h must be between 1 and F0h (=240). If for example the parameter is 3, the PDO will be transmitted on every third sync telegram (in case the parameter is 1, transmission will be on every sync telegram). In synchronous operation the PDOs are requested by master via sync telegram: byte 0 COB-ID = 80 byte 1 0 Cyclic (asynchronous) For cyclic PDO transmission, the parameter written in object 1800h subindex 2 must be FEh or FFh. In addition, the same object subindex 5 must provide the cycle time in milliseconds. The written time is rounded to 1 ms. If the parameter is 0ms, the PDO’s won’t be transmitted at all. The function is disabled. Manual_GNAMG_CANopen_EN.doc 21.11.12 9/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Overview The following table is giving an overview on several kinds of PDO transmission. Examples: 1800h Sub2 Sub5 FEh 3ms FEh 0ms 3 xxx 1 xxx Brief explanation Cyclic transmission every 3 ms PDO transmission off PDO transmission on every third sync telegram PDO transmission on every sync telegram PDO (slope angle) PDO1 telegram structure: COB-ID DLC 181h 8 ID Length Byte 0.. 3 Byte 4.. 7 Byte 0 Xx Byte 1 Xx Byte 2 Xx Byte 3 Xx Byte 4 Xx Byte 5 Xx Byte 6 Xx Byte 7 Xx : 180h + Node-ID : 8 DataByte : Slope angle in degrees axis Slope Long Y : Slope angle in degrees axis Slope Lateral X Emergency service Internal device errors or bus problems will result in an emergency message: COB-ID DLC 80h+Node8 ID Byte 0 Byte 1 Error Code 00h 01h Byte 2 Byte 3 Error- Xx Register 1001h Byte 4 Xx Byte 5 Xx Byte 6 Xx Byte 7 Xx Byte 0..1: Error Codes Error Code (hex) Meaning 0000 Error Reset or No Error 1000 Generic Error 5530 EEProm error 6010 Software reset (Watchdog) 7510 Internal communication error 8130 Life Guard error or Hearbeat Byte 2: Error-Register Bit Meaning 0 Generic Error 4 Communication error 7 manufacturer specific Manual_GNAMG_CANopen_EN.doc 21.11.12 10/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 3.3.5. Network management services The network management is subdivided into two groups: NMT services for device guarding are for boot-up, start and stop of bus users. NMT services are also available as connection guard. Significance of the NMT commands The commands are transmitted as unconfirmed objects with the following structure: Byte 0 COB-ID = 0 Byte 1 command byte Byte 2 Node ID COB-ID for NMT commands is always zero. The Node-ID is transmitted in byte 2 of the NMT command. Command byte Command byte 01h 02h 80h 81h, 82h Meaning Start Remote Node Stop Remote Node Enter Pre-Operational Mode Reset Remote Node State Event Mapping 1 2 3 4, 5 The Node number is the Node-ID of the requested user. Node-ID = 0 means addressing all users. NMT State Event After boot-up the inclination sensor is in pre-operational mode which is the state for read and write SDO parameters. For PDO parameter requests, the inclination sensor must be set to operational mode first. Power on oder Hardware Reset Init BootUp Message 4/5 4/5 Pre-Operational 3 2 1 3 Stopped/Prepared 4/5 1 Operational Manual_GNAMG_CANopen_EN.doc 21.11.12 2 11/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany The various NMT states Init After boot-up the inclination sensor will give a BootUp message at the CAN bus. Then the inclination sensor will automatically go to PreOperational mode. The COB-ID of the BootUp message is composed by 700h and the Node-ID. COB-ID Byte 0 700h + Node-ID 00 Pre-Operational Mode Read and write of SDO’s is in Pre-Operational mode. Operational Mode In Operational mode the inclination sensor is transmitting the requested PDO's. In addition, this mode is for read and write SDOs. Stopped oder Prepared Mode NMT communication is only possible in Stopped Mode. Read and write SDO parameters is disabled. LSS is also only available in Stopped Mode. Changing the operational state Start Remote Node (1) The start command will set the inclination sensor to operational mode. COB-ID 0 Command byte 1h Node-ID 0..127 Stop Remote Node (2) The stop command will set the inclination sensor to stopped mode or prepared mode. COB-ID 0 Command byte 2h Node-ID 0..127 Enter Pre-Operational Mode (3) Change to Pre-Operational Mode. COB-ID 0 Command byte 80h Node-ID 0..127 Reset Remote Node (4) or Reset Communication (5) The reset command will re-init the inclination sensor. Reset Remote Node (4): COB-ID 0 Command byte 81h Node-ID 0..127 Reset communication (5): COB-ID 0 Command byte 82h Manual_GNAMG_CANopen_EN.doc 21.11.12 Node-ID 0..127 12/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Node und Life Guarding For user guarding either the heartbeat protocol (default) or the nodeguarding protocol (object 2110h Bit 5 = 1) can be applied. The NMT master is able to form a data bank with the corresponding NMT states of every single user. This protocol is for guarding whether a user has left the bus.In addition, every user can monitor whether the control is still active. The NMT master starts the guarding service by a Remote Frame to the requested user. Every Remote Frame will reset the Life-Time at the user. Further the user responds his NMT state. This way, the NMT master is able to check whether the user is in the correct NMT state and can react correspondingly in case of error. Upon Life-Time expiry a „Node Event“ will be triggered. The behaviour in case of error is defined in object 1029h-1h “Communication Error”. Example of a nodeguarding protocol: COB-ID 701h 701h 701h 701h Data/ Remote r d r d Byte 0 00h (0d) FFh (255d) 00h (0d) 7Fh (127d) Possible user NMT-states: 0: BootUp-Event 4: Stopped 5: Operational 127: Pre-Operational In this example the lower 7 bits equal 7Fh, i.e. the inclination sensor is in pre-operational mode. Manual_GNAMG_CANopen_EN.doc 21.11.12 13/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Heartbeat protocol Optionally the new Heartbeat protocol can be utilized. Heartbeat is enabled if in object 2110h bit 5 is on “0”. We recommend for new applications the modern guarding protocol heartbeat. A "Heartbeat-Producer" produces a cyclic heartbeat indication. One or more “Heartbeat-Consumers" can receive this heartbeat indication. If there is no cyclic transmission of the heartbeat message, this will result in a „Heartbeat Event“. The behaviour in case of error is defined in object 1029h-1h "Communication Error". Example of a Heartbeat protocol COB-ID 701h Data/Remote d Byte 0 7Fh (127d) Heartbeat messages are composed of COB-ID and one byte. This byte is transmitting the NMT state. 0: 4: 5: 127: BootUp-Event Stopped Operational Pre-Operational i.e. the inclination sensor is in pre-operational mode (7Fh = 127). Important : Only one of the above nodeguarding options can be active. Default: Optional: Heartbeat NodeGuarding (see object 2110) Manual_GNAMG_CANopen_EN.doc 21.11.12 14/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 3.3.6. Layer Setting Services In spring 2000 CiA presented a new protocol to ensure a uniform presence. Proceedings are defined under Layer Setting Services and Protocol, CiA Draft Standard Proposal 305 (LSS). The inclination sensor comes with the standard Node-ID 1 and standard baud rate 50 kBaud. Several inclination sensors with the same Node-ID can be networked to the bus system. LSS is utilized to address the individual inclination sensor. Every inclination sensor comes with a unique serial number that it must be addressed to. Consequently, any number of inclination sensor with the same Node-ID can be networked to the bus for init via LSS. Both NodeID and baud rate can be configured. LSS is only available in stopped mode. Message structure COB-ID: Master Slave : 2021 = 7E5h Master Slave : 2020 = 7E4h The COB-ID is followed by a LSS command specifier and a data packet of max. 7 bytes. COB-ID cs Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Switch Mode Global 7E5h 04h Mode Mode Reserved : 0 Operational mode 1 Configuration mode Switch Mode Selective The following sequence is for addressing a determined inclination sensor in the bus system 7E5h 40h VendorId Reserved 7E5h 41h ProductCode reserved 7E5h 42h RevisionNumber reserved 7E5h 43h SerialNumber reserved 7E4h 44h Mode reserved VendorId ProductCode RevisionNumber SerialNumber Mode : ECh : Internal product code of the respective inclination sensor : Current revision number of the inclination sensor : Unique, successive serial number : The inclination sensor will respond in the new mode (0=Operational mode; 1=Configuration mode) Setting the Node-ID 7E5h 11h Node-ID reserved 7E4h 11h ErrCode Spec Error Node-ID ErrorCode SpecificError reserved : The new Node-ID of the inclination sensor : 0=OK; 1=Node-ID beyond the range; 2..254=reserved; 255specificError : If ErrorCode=255 application-specific error code. Manual_GNAMG_CANopen_EN.doc 21.11.12 15/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Setting the BitTiming 7E5h 13h tableSel tableInd reserved 7E4h 13h ErrCode SpecError reserved TableSel : Selects BitTiming table TableInd ErrorCode SpecificError 0 : Standard CiA Bit Timing table 1..127 : Reserved for CiA 128..255 : Manufacturer-specific tables : BitTiming entry in table selected (see table below). : 0=OK; 1=BitTiming beyond the range; 2..254=reserved; 255SpecificError : If ErrorCode=255 application-specific error code. Standard CiA Table Baud rate 1000 kBaud 800 kBaud 500 kBaud 250 kBaud 125 kBaud 100 kBaud 50 kBaud 20 kBaud 10 kBaud Table Index 0 1 2 3 4 5 6 7 8 Saving the configuration protocol By this protocol the configured parameters are saved in EEPROM. 7E5h 17h reserved 7E4h 17h ErrCode SpecError Reserved ErrorCode SpecificError : 0=OK;1=saving not supported;2=acess error;3..254=reserved;255specificError : If ErrorCode=255 application-specific error code. Activate BitTiming Parameters The new BitTiming parameters are activated by command specifier 15h. 7E5h 15h Switch Delay Switch Delay Reserved : Delay in ms of slave reset. After the delay the inclination sensor will register with the new baud rate. VendorId request Requesting the VendorId of a selected inclination sensor 7E5h 5Ah Reserved 7E4h 5Ah 32 Bit Vendor ID VendorID Reserved : = ECh Manual_GNAMG_CANopen_EN.doc 21.11.12 16/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Product code request Requesting the product code of a selected inclination sensor 7E5h 5Bh reserved 7E4h 5Bh ProductCode Product code reserved : Manufacturer-defined product code Revision number request Requesting the revision number of a selected inclination sensor 7E5h 5Ch reserved 7E4h 5Ch 32 Bit Revision number Revision number reserved : current revision Serial number request Requesting the serial number of a selected inclination sensor 7E5h 5Dh reserved 7E4h 5Dh 32 Bit Serial number Serial number reserved : unique successive serial number of the inclination sensor Range Selection Inclination sensors can also be selected within a defined range. To do so, the following objects are transmitted one after the other: 7E5h 46h VendorId reserved 7E5h 47h ProductCode reserved 7E5h 48h 7E5h 49h RevisionNumber LOW RevisionNumber HIGH reserved reserved 7E5h 4Ah 7E5h 4Bh SerialNumber LOW SerialNumber HIGH reserved reserved Every inclination sensor with the respective parameters will respond by the following message: 7E4h 4Fh reserved Manual_GNAMG_CANopen_EN.doc 21.11.12 17/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 3.4. Inclination sensor profile 3.4.1. Inclination sensor object overview According to CiA (CAN in Automation) the objects are subdivided into three groups: Standard objects: 1000h, 1001h, 1018h Manufacturer-specific objects: 2000h - 5FFFh Device-specific objects: All remaining objects from 1000h - 1FFFh, 6000h - FFFFh The table below is giving a summary of all SDO objects supported by the inclination sensor. Object Object number in Hex Name --Format U/I = Unsigned/Integer, number = number bit, ARR = Array, REC = Record Access ro = ReadOnly, wo = WriteOnly, rw = ReadWrite Default Default upon first init or restore default Save yes saved in EEPROM Meaning supplementary description Object Name Format Access Default Save U32 ro 0004019Ah Meaning Sub-Index 1000h Device Type 0x019A = 410 = device profile inclination sensor 0x0004 = Two axis with resolution max. 32-bit 1001h Error Register 1003h PreDefined ErrorField 00h Maximum Subindex 01h Latest entry U8 ro 0h rw ro 0h Bit0 = Generic error Bit4 = Communication error (overrun, …) Bit7 = Manufacturer -specific Comprises the last 8 errors or warnings ARR U8 U32 ja 1000h Generic Error 5530h EEPROM Error 6010h Software Reset (Watchdog) 7510h Internal Communication Error 8130h Life Guard Error or Heartbeat Error .. Error or warning, see Sub-Index 01h COB-ID of Sync Oject Device name GNAMG inclination sensor Product Hardware Version in ASCII Product Software Version in ASCII Timer Nodeguarding Guard Time Multiplier .. 08h 1005h 1008h .. Oldest entry Sync COB-ID DeviceName .. U32 U32 U32 .. ro rw ro 1009h 100Ah 100Ch 100Dh 1010h 00h 01h 02h Hardware Version Software Version Guard Time Life Time factor Store Parameters Maximum Subindex Save all parameters Communication parameters Application parameters Manufacturerspecific parameters Restore Default Parameters Größter Subindex Alle Parameter U32 U32 U16 U8 ARR U8 U32 U32 ro ro rw rw U32 rw =“save“ (0x73617665) to save U32 rw =“save“ (0x73617665) to save 03h 04h 1011h 00h 01h Manual_GNAMG_CANopen_EN.doc 21.11.12 .. Number of messages saved (0..8) Latest error or warning 80h ja "GNAM" werkseitig werkseitig 0h 0h ja ja ro rw rw 4h =“save“ (0x73617665) to save =“save“ (0x73617665) to save ARR U8 U32 ro rw 4h =“load“ (0x6C6F6164) to load 18/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object Name Format Access Default Save Meaning 02h Communication Parameters 03h Application Parameters 04h Manufacturer Specific Parameters 1014h Emergency COB-ID U32 rw =“load“ (0x6C6F6164) to load U32 rw =“load“ (0x6C6F6164) to load U32 rw =“load“ (0x6C6F6164) to load U32 rw 1016h ARR Sub-Index 00h 01h Consumer heartbeat time Maximum Subindex Consumer heartbeat time Producer Heartbeat Time Identity Object Maximum Subindex VendorID Product Code 80h + NodeID yes COB-ID of the emergency object yes U8 U32 ro rw 1h 10000h yes U16 rw 0h yes Bit0..15 Consumer Heartbeat time in ms Bit16..23 Node-ID Producer Heartbeat time in ms REC U8 U32 U32 ro ro ro ro 4h ECh 32h 03h Revision Number U32 ro yes Vendor ID specified by CiA Product Code: 0x32 = GNAMG.x225xxx 0x33 = GNAMG.x215xxx 0x34 = GNAMG.x235xxx Product revision number 04h Serial Number U32 ro yes Unique successive serial number 1029h Error behaviour ARR 00h Maximum Subindex U8 01h Communication error U8 ro rw 1h 1h U8 U32 U8 U16 ARR ro rw rw rw 5h 180h+id FEh 203h 1017h 1018h 00h 01h 02h 1800h Worksdefined Worksdefined Error behaviour yes REC 00h 01h 02h 2100h Transmit PDO1 Parameter Maximum subindex COB-ID PDO Type EventTimer Transmit PDO1 Mapping Maximum Subindex Content of PDO1 Content of PDO1 Baud rate U8 I32 I32 U8 ro ro rw 2h 61100020h 61200020h 2h 2101h Node-ID U8 rw 1h yes 2110h Manufacturer_ Options U32 rw 8h yes REC U8 U32 ro ro 3h 00h 01h 02h 05h 1A00h 2201h Statistics 00h Maximum subindex 01h Total of position errors Manual_GNAMG_CANopen_EN.doc 21.11.12 ja ja ja ja 0h = go to pre-operational mode 1h = no change of mode 2h = go to stop mode 3h = Node reset PDO ID = 180h + Node-ID FEh=User defined, cyclic Cycle time in ms Slope angle Slope Long , Y-axis Slope angle Slope Lateral, X-axis Setting the baud rate must be followed by saving operation in EEPROM and re-init. 0=10 kBit/s 1=20 kBit/s 2=50 kBit/s 3=100 kBit/s 4=125 kBit/s 5=250 kBit/s 6=500 kBit/s 7=800 kBit/s 8=1000 kBit/s Node ID available from 1..127 Setting the baud rate must be followed by a saving operation in EEPROM and re-init. Bit3 = 0 no BusOFF reset 1 if BusOFF there is a bus reset Bit5 = 0 Heartbeat protocol active 1 Nodeguarding protocol active yes 19/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object Name Format Access Default Save 02h Time in seconds 03h Total of TimerReset Watchdog 2300h Customer EEPROM range 00h Maximum Subindex 01h Data0 02h Data1 03h Data2 04h Data3 05h Data4 06h Data5 07h Data6 6000h Resolution U32 U32 ro ro U8 U16 U16 U16 U16 U16 U16 U16 U16 ro rw rw rw rw rw rw rw rw 6110h Slope angle Y-axis Slope Long I32 ro 6111h Parameter Y-axis Slope long operating parameter Preset value Y-axis Slope long preset value Offset Y-axis Slope long offset Differential Offset Y-axis Differential slope long offset Slope angle X-axis Slope Lateral U08 rw (ro bei 360°) 0h yes I32 rw (ro bei 360°) ro 0h yes I32 rw (ro bei 360°) 0h yes I32 ro yes Parameters X-axis Slope lateral operating parameter Preset value X-axis Slope lateral preset value Offset X-axis Slope lateral offset Differential Offset X-axis Differential slope lateral offset U08 rw 0h yes I32 rw 0h yes I32 ro 0h yes I32 rw (ro bei 360°) 0h yes Meaning Sub-Index 6112h 6113h 6114h 6120h 6121h 6122h 6123h 6124h Manual_GNAMG_CANopen_EN.doc 21.11.12 ARR I32 7h 0h 0h 0h 0h 0h 0h 0h 1h yes yes Time elapsed since last reset TimerWatchDog yes Any optional data can be saved in this object yes yes yes yes yes yes yes yes yes 0h yes 20/41 0001h = 0.001° 000Ah = 0.01° 0064h = 0.1° 03E8h = 1.0° Value range Depending on device type (measuring range) and parameter in 6000h (resolution): (+measuring range)/resolution ... to ... (-measuring range)/resolution Bit 0 = 1 inversion on 0 inversion off Bit 1 = 1 scaling on 0 scaling off Value range according parameter in object 6000h Calculated offset when writing on object 6112h Supplementary offset, independent from object 6112h and 6113h Value range Depending on device type (measuring range) and parameter in 6000h (resolution): (+measuring range)/resolution ... to ... (-measuring range)/resolution Bit 0 = 1 inversion on 0 inversion off Bit 1 = 1 scaling on 0 scaling off Value range according parameter in object 6000h Calculated offset when writing on object 6122h Supplementary offset, independent from object 6112h and 6123h Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 3.4.2. Detailed object list Object 1000 Device type SubIndex Data type Access Default EEPROM Meaning Parameters Object 1001 Error register SubIndex Data type Access Default EEPROM Meaning Parameters Object 1003 0 Unsigned 32 ReadOnly 0004019Ah No Information ond device profile and device type 0x019A = 410 = device profile inclination sensor 0x0004 = Two axis with resolution max. 32-bit 0 Unsigned 8 ReadOnly 0h No Current error code Bit0 = Generic error Bit4 = Communication error (overrun, …) Bit7 = Manufacturer- specific Pre-defined error field CiA (CAN in Automation) defines here about 200 different error codes. This documentation only describes the sensor-relevant error codes. This object saves the latest 8 errors or warnings that occurred. SubIndex Data type Access Default EEPROM Meaning Parameters SubIndex Data type Access Default EEPROM Meaning Parameters Object 1005 0 Unsigned 8 ReadWrite 0 No Read: Number of errors or warnings Write 0: error reset 0..8 1..8 Unsigned 32 ReadOnly 0 No Errors or warnings occured, subindex 1 being the last, subindex 2 the secondto-last,…… entry Not yet defined COB-ID SYNC Message SubIndex Data type Access Default EEPROM Meaning Parameters 0 Unsigned 32 ReadWrite 80h Yes Defines COB-ID of the synchronisation object (SYNC) Bit 31 not defined Bit 30 1=Sensor generates SYNC messages, 0=no SYNC message generated Bit 29 1=29 Bit SYNC COB-ID (CAN 2.0B), 0=28 Bit SYNC COB-ID (CAN 2.0A) Bit 28..11 Bit 28..11 of 29 Bit SYNC COB-ID Bit 10..0 Bit 10..0 of SYNC COB-ID Manual_GNAMG_CANopen_EN.doc 21.11.12 21/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object 1008 Manufacturer Device Name SubIndex Data type Access Default EEPROM Meaning Parameters Object 1009 Manufacturer Hardware Version SubIndex Data type Access Default EEPROM Meaning Parameters Object 100A No Hardware version in ASCII Data 0..3 Example: 31h 2Eh 30h 30h = "1.00“ 0 Unsigned 32 ReadOnly No Software version in ASCII Data 0..3 Example: 31h 2Eh 30h 30h = "1.00“ Guard Time SubIndex Data type Access Default EEPROM Meaning Parameters Object 100D 0 Unsigned 32 ReadOnly Manufacturer Software Version SubIndex Data t type Access Default EEPROM Meaning Parameters Object 100C 0 Unsigned 32 ReadOnly Depending on the utilized basic encoder No Device name in ASCII Data 0..3: "GNAM" 0 Unsigned 16 ReadWrite 0h Yes Timer for nodeguarding in ms 0...65535 Life Time Factor SubIndex Data type Access Default EEPROM Meaning Parameters 0 Unsigned 8 ReadWrite 0h Yes This factor multiplied by the guard time equals the life time 0...256 Manual_GNAMG_CANopen_EN.doc 21.11.12 22/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object 1010 Save parameter By Object 1010h the relevant objects are saved non-volatile in EEPROM. To prevent any inadvertent saving operation the message „save“ must be written. COB-ID 600h+Node-ID Object 1011 DLC 8 Command 23h Object L 10h Object H 10h Subindex 01 Data 0 73h 's' Data 1 61h 'a' Data 2 76h 'v' Data 3 65h 'e' Restore parameter Object 1011h restores the RAM parameters by the default parameters (see object 1010h. The default parameters are at the same time loaded in EEPROM. To prevent any inadvertent restore operation the message „load“ must be written. COB-ID 600h+Node-ID Object 1014 Command 23h Object L 11h Object H 10h Data 0 6Ch 'l' Data 1 6Fh 'o' Data 2 61h 'a' Data 3 64h 'd' 0 Unsigned 32 ReadWrite 80h+Node-ID Yes Defines COB-ID of the emergency object 80h + Node-ID Consumer heartbeat time SubIndex Data type Access Default EEPROM Meaning Parameters 0 Unsigned 8 Read only 1 No Maximum supported subIndex 1 SubIndex Data type Access Default EEPROM Meaning Parameters 1 Unsigned 32 Read write 10000h Yes Consumer heartbeat time Bit 0..15 Consumer heartbeat time in ms Bit 16..23 Node ID Object 1017 Subindex 01 COB-ID emergency message SubIndex Data type Access Default EEPROM Meaning Parameters Object 1016 DLC 8 Producer heartbeat time SubIndex Data type Access Default EEPROM Meaning Parameters 0 Unsigned 16 ReadWrite 0h Yes Defines the repetition time of the guarding service heartbeat 0 = Disabled 1..65535 = repetition time in ms Manual_GNAMG_CANopen_EN.doc 21.11.12 23/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object 1018 Identity Object SubIndex Data type Access Default EEPROM Meaning Parameters 0 Unsigned 8 ReadOnly 4 No Maximum supported subindex 4 SubIndex Data type Access Default EEPROM Meaning Parameters 1 Unsigned 32 ReadOnly ECh Yes CiA -defined VendorID of Baumer IVO ECh (in the Internet under www.can-cia.de) SubIndex Data type Access Default EEPROM Meaning Parameters 2 Unsigned 32 ReadOnly 32h Yes Product Code 0x32 = GNAMG.x225xxx 0x33 = GNAMG.x215xxx 0x34 = GNAMG.x235xxx SubIndex Data type Access Default EEPROM Meaning Parameters 3 Unsigned 32 ReadOnly SubIndex Data type Access Default EEPROM Meaning Parameters 4 Unsigned 32 ReadOnly 0 Yes Unique successive serial number of the sensor Defined ex works during final test No Sensor revision number Actual software version = xxyy (xx=version, yy=running number) Data 0 = running Data 1 = running Data 2 = version Data 3 = version number LOW number HIGH LOW HIGH See product label Manual_GNAMG_CANopen_EN.doc 21.11.12 24/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object 1029 Error behavior SubIndex Data type Access Default EEPROM Meaning Parameters 0 Unsigned 8 ReadOnly 1 No Maximum supported subindex 1 = maximum supported subIndex SubIndex Data type Access Default EEPROM Meaning Parameters 1 Unsigned 8 ReadWrite 1 Yes Behaviour after communication error 0h = switch to pre-operational mode 1h = no change of mode 2h = switch to stop mode 3h = Node Id reset Object 1800 PDO1 parameters SubIndex Data type Access Default EEPROM Meaning Parameter 0 Unsigned 32 ReadOnly 5 No Maximum supported subindex 5 SubIndex Data type Access Default EEPROM Meaning Parameters SubIndex Data type Access Default EEPROM Meaning Parameters 1 Unsigned 32 ReadWrite 180h + Node-ID Yes COB-ID des PDO 180h + Node-ID 2 Unsigned 8 ReadWrite FEh Yes PDO Type th 1..n..F0h = synchronous PDO (PDO transmission on every n- SYNCtelgram) FEh,FFh = asynchronous PDO (cyclic PDO transmission in reliance on EventTimer) SubIndex Data type Access Default EEPROM Meaning Parameters 5 Unsigned 16 ReadWrite 203h Yes Event Timer for PDO (process data object) 0 = cyclic transmission disabled 1..n..65535 =repetition time of cyclic transmission is n ms. Manual_GNAMG_CANopen_EN.doc 21.11.12 25/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object 1A00 PDO1 Mapping SubIndex Data type Access Default EEPROM Meaning Parameter 0 Unsigned 8 ReadOnly 0 No Maximum supported subindex 2 SubIndex Data type Access Default EEPROM Meaning Parameters 1 Integer 32 ReadOnly 61100020h slope angle Slope Long , Y-axis No Inhalt PDO1 61100020h slope angle Slope Long , Y-axis SubIndex Data type Access Default EEPROM Meaning Parameters 2 Integer 32 ReadOnly 61200020h slope angle Slope Lateral , X-axis No Contents PDO1 61200020h slope angle Slope Lateral , X-axis Object 2100 Baud rate SubIndex Data type Access Default EEPROM Meaning Parameters Object 2101 0 Unsigned 8 ReadWrite 2 = 50 kBaud Yes Read or set a new sensor baud rate After the setting operation the parameters must be stored in EEPROM by object 1010h, followed by a sensor re-init. 0 10 kBaud 1 20 kBaud 2 50 kBaud 3 100 kBaud 4 125 kBaud 5 250 kBaud 6 500 kBaud 7 800 kBaud 8 1000 kBaud Node-ID SubIndex Data type Access Default EEPROM Meaning Parameters 0 Unsigned 8 ReadWrite 1 Yes Read or set a new sensor Node-ID. After the setting operation the parameters must be stored in EEPROM by object 1010h, followed by a sensor re-init. 1..127 Manual_GNAMG_CANopen_EN.doc 21.11.12 26/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object 2110 Manufacturer_Options SubIndex Data type Access Default EEPROM Meaning 0 Unsigned 32 ReadWrite 8h Yes Parameters to guarantee compatibility to former sensors respectively to proceed customer-specific configurations Parameters Object 2201 Object is not supported by EDS file. Any parameterization should be by the manufacturer only. Any customerspecific parameterization should be strictly conform to the table below. Bit3 = 0 no reset if BusOFF 1 bus reset if BusOFF Bit5 = 0 Heartbeat protocol active 1 Nodeguarding protocol active Statistics SubIndex Data type Access Default EEPROM Meaning Parameters 0 Unsigned 8 ReadOnly 3h No Maximum supported subindex 3 SubIndex Data type Access Default EEPROM Meaning Parameters 1 Unsigned 32 ReadOnly 0h Yes Presently not assigned - SubIndex Data type Access Default EEPROM Meaning Parameters 2 Unsigned 32 ReadOnly 0h Yes Operating time in seconds total (object 6508h time elapsed since last reset) 0... 4294967295 SubIndex Data type Access Default EEPROM Meaning Parameters 3 Unsigned 32 ReadOnly 0h Yes WatchDog TimerReset counter 0... 4294967295 Manual_GNAMG_CANopen_EN.doc 21.11.12 27/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object 2300 Customer EEPROM section SubIndex Data type Access Default EEPROM Meaning Parameter 0 Unsigned 8 ReadOnly 8h No Any optional data can be saved in this object 8 SubIndex Data type Access Default EEPROM Meaning Parameter 1...8 Unsigned 16 ReadWrite 0h Yes One 16 bit parameter per each subindex (load in EEPROM by object 1010h) 0 Object list according to DS 410 Object 6000 Resolution SubIndex Data type Access Default EEPROM Meaning Parameters Object 6110 0 Unsigned 16 ReadWrite 0001h = Yes Resolution 0001h = 000Ah = 0064h = 03E8h = 0.001° 0.001° 0.01° 0.1° 1.0° Slope angle Y- axis (Slope long) (not at 360° sensor) SubIndex Data type Access Default EEPROM Meaning Parameters 0 Integer 32 ReadOnly No Slope angle Value range Depending on the device type (measuring range) and parameter in 6000h (resolution): (+measuring range)/resolution ... to ... (-measuring range)/resolution Example: measuring range = ±30° Resolution = 0,001 Value range: +30000...-30000 Manual_GNAMG_CANopen_EN.doc 21.11.12 28/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object 6111 Operating parameter Y-axis (Slope long operating parameter) (not with 360° sensor) SubIndex Data type Access Default EEPROM Meaning 0 Unsigned 8 ReadWrite 0h Yes Inversion: Inversion enable means reverse polarity of the Y-axis. Scaling: Scaling enable means calculating the slope of the Y-axis as follows: Slope Y –axis = physically measured slope + differential offset Y- axis + offset Y-axis When scaling is disabled: Slope Y –axis = physically measured angle Parameters Object 6112 Preset value Y-axis (Slope long preset value) (not with 360° Sensor) SubIndex Data type Access Default EEPROM Meaning Parameters Objekt 6113 Bit 0 = 1 inversion on 0 inversion off Bit 1 = 1 scaling on 0 scaling off 0 Integer 32 ReadWrite 0h Yes Sets the actual slope value Y-axis to the desired value Value range depending on parameters in object 6000h Offset Y-axis (Slope long offset) (not with 360° sensor) SubIndex Data type Access Default EEPROM Meaning 0 Integer 32 ReadOnly 0h Yes Calculated offset when writing on object 6112h Offset Y-axis = Preset value Y-axis at tacc – physically measured slope value Y- axis at tacc – differential offset Y- axis Parameters Objekt 6114 Value range depending on parameters in object 6000h Differential Offset Y-axis (Differential slope long offset) (not with 360° sensor) SubIndex Data type Access Default EEPROM Meaning Parameters 0 Integer 32 ReadWrite 0h Yes Supplementary offset, independent from objects 6112h and 6113h The entered value is directly added to the current slope of the Y- axis Value range depending on parameters in object 6000h Manual_GNAMG_CANopen_EN.doc 21.11.12 29/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object 6120 Slope angle X- axis (Slope lateral) SubIndex Data type Access Default EEPROM Meaning Parameters 0 Integer 32 ReadOnly No Slope angle Value range Depending on the device type (measuring range) and parameter in 6000h (resolution): (+measuring range)/resolution ... to ... (-measuring range)/resolution Example: Measuring range = ±30° Resolution = 0,001 Value range: +30000...-30000 Object 6121 Operating parameters X-axis (Slope lateral operating parameter) SubIndex Data type Access Default EEPROM Meaning 0 Unsigned 8 ReadWrite 0h Yes Inversion: Inversion enabled means reverse polarity of the X-axis. Scaling: Scaling enabled means calculation of slope of the X-axis as follows: Slope X –axis = physically measured slope + differential offset X- axis + offset X-axis If scaling is disabled: Parameters Object 6122 Slope X –axis = physically measured angle Bit 0 = 1 inversion on 0 inversion off Bit 1 = 1 scaling on 0 scaling off Preset value X-axis (Slope lateral preset value) SubIndex Data type Access Default EEPROM Meaning Parameters 0 Integer 32 ReadWrite 0h Yes Sets the actual slope of the X-axis to the required value Value range depending on parameters in object 6000h Manual_GNAMG_CANopen_EN.doc 21.11.12 30/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Object 6123 Offset X-Achse (Slope lateral offset) SubIndex Data type Access Default EEPROM Meaning 0 Integer 32 ReadOnly 0h Yes Calculated offset when writing on object 6122h Offset X-axis = Preset value X-axis ati tacc – physically measured slope Yaxis at tacc – differential offset Y- axis Parameters Object 6124 Value range depending on parameters in object 6000h Differential Offset X-Achse (Differential slope lateral offset) SubIndex Data type Access Default EEPROM Meaning 0 Integer 32 ReadWrite 0h Yes Supplementary offset, independent from objects 6122h and 6123h Parameters The entered value is directly added on the current slope of the X-axis Value range depending on parameters in object 6000h Manual_GNAMG_CANopen_EN.doc 21.11.12 31/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 4. Diagnostics and useful information 4.1. Error diagnostics in fieldbus communication In case the inclination sensor does not react via the CANbus, check all cable connections first. If the cable connections are ok, test fielbus operation next. To do so you need a CAN monitor to record CANopen communication and to map the telegrams . Now the inclination sensor should give a BootUp message upon power off and on again. If there is no BootUp message, check whether the baud rates of inclination sensor, CAN monitor and bus system are in alignment. If you have problems in establishing a connection to a user check Node- ID and baud rate. The baud rate must be all the same. The Node- ID (identifier, address) must be within 1 and 127. Every bus user must be assigned a unique Node-ID, i.e. by no means the same Node ID must be assigned several times. Node-ID and baud rate may also conveniently be assigned by LSS services. 4.2. Error diagnostics via fieldbus The inclination sensor provides several objects and messages to indicate state or error state: object 1001h: This object serves as error register for the device error state. object 1003h: This object saves the last 8 error codes and warnings. object emergency (80h + Node-ID): High-priority error message of a user including error code and error register. SDO Abort Message: If SDO communication does not run properly the SDO response will come with an abort code. Object 1001h Error register This register is indicating an existing device error together with its kind. See separate object meaning Object 1003h Predefined error field In this object the last 8 error codes occurred out of the objects 6503h and 6505h are saved, the latest error as entry in subindex 1, the most ancient error as entry in subindex 8. Object Emergency Error message of a user. Manual_GNAMG_CANopen_EN.doc 21.11.12 32/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany SDO Abort Message If SDO communication does not run properly, the SDO response will come with an abort code: 05040001h 06010000h 06010001h 06010002h 06020000h 06090011h 06090030h 06090031h 08000000h 08000020h 08000021h : Command byte not supported : Incorrect object access : Read access on write only : Write access on read only : Object not supported : Subindex not supported : Value outside the limit : Value too high : General error : Incorrect saving signature ("save") : No data saving possible 4.3. Useful information on the sensor Setting a new Node-ID 1. Setting a new Node-ID is by using Baumer IVO-specific object 2100h. 2. After having set the new Node-ID latter must be stored in EEPROM by object 1010h. 3. Upon next init the sensor will log in with the new Node-ID. Setting a new baud rate 1. Setting a new baud rate is by using Baumer IVO-specific object 2101h. 2. After having set the new baud rate latter must be stored in EEPROM by object 1010h. 3. Upon next init the sensor will log in utilizing the new baud rate. 4. ! DO NOT FORGET TO ALIGN THE NEW BAUD RATE WITH MASTER! Shield The inclination sensor’s base plate should always be grounded. By principle the inclination sensor should be connected by shielded cable. Ideally, aim at a bilateral cable shield if possible. Take care that no compensating currents are drained off the inclination sensor. Manual_GNAMG_CANopen_EN.doc 21.11.12 33/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 5. Applications 5.1. Write and read SDO objects To write or read an object (SDO) always two telegrams are transmitted Write object First the value to write is transmitted by master, then the inclination sensor will confirm. Value (ba) transmitted: COB-ID 600h+Node-ID DLC Command 8 2Bh Object L 00h Object H 23h Subindex Data 0 3h a Data 1 Data 2 Data 3 b x x Confirmation: COB-ID 580h+Node-ID DLC Command 8 60h Object L 00h Object H 23h Subindex Data 0 3h 0 Data 1 Data 2 Data 3 0 0 0 Read object First the required object is requested by master, second the inclination sensor will respond by transmitting the requested value. Master request: COB-ID 600h+Node-ID DLC Command 8 40h Object L 10h Object H 61h Subindex Data 0 0h x Data 1 Data 2 Data 3 x x x Subindex Data 0 0h a Data 1 Data 2 Data 3 b c d Response (dcba) of the inclination sensor to master request: COB-ID 580h+Node-ID DLC Command 8 43h Object L 10h Object H 61h Commissioning When connected the bus the inclination sensor will give a BootUp message. Now it must be configured and adapted to its ambiance. Changing Node-ID and baud rate by LSS Node-ID and baud rate can be changed without having to address the inclination sensor by them. LSS services enable sensor configuration and addressing by product code, revsion number, Vendor ID and serial number. Changing the Node-ID The Node-ID can be changed in object 2101h from 1 to 127. Next step should be a saving operation using object 1010h. Upon next init the sensor will log in with the new Node-ID. Manual_GNAMG_CANopen_EN.doc 21.11.12 34/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Changing the baud rate Object 2100h is for changing the baud rate. Not the real baud rate is written in the object but an index: 0 1 2 3 4 5 6 7 8 Baud rate 10 kBaud 20 kBaud 50 kBaud 100 kBaud 125 kBaud 250 kBaud 500 kBaud 800 kBaud 1000 kBaud Now the baud rate must be saved by object 1010-1. Upon next init the inclination sensor will log in with the new baud rate. Prior to next sensor init the baud rate of the master should be aligned. 5.2. Configuration Changing the resolution See object 6000h Setting a new slope value See objects 6112h and 6122h Changing polarity and scaling See objects 6111h and 6121h Parameter saving in EEPROM Object 1010h saves the objects below non-volatile in EEPROM. To prevent any inadvertent saving operation the message „save“ must be written in subindex 1. COB-ID 600h+Node-ID DLC Command 8 23h Object L 10h Object H 10h Subindex Data 0 01h 73 's’ Data 1 Data 2 Data 3 61 'a’ 76 'v’ 65 'e’ COB-ID 580h+Node-ID DLC Command 8 60h Object L 10h Object H 10h Subindex Data 0 01h 0 Data 1 Data 2 Data 3 0 0 0 Manual_GNAMG_CANopen_EN.doc 21.11.12 35/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 5.3. Operation NMT states After init the inclination sensor is in Pre-Operational Mode which is the state for reading and writing SDOs. To start PDO communication NMT-Start must be transmitted to switch the inclination sensor to Operational Mode. Now the required PDO's are transmitted. Now there is also read and write access to SDOs. Upon stopping the inclination sensor by NMT-Stop it will got to Stopped Mode. This state is only for NMT communication including Heartbeat. NMT-Reset means re-init of the inclination sensor that now will be in Pre-Operational Mode again . The NMT state is indicated by LED (refer to chapter Status LED) Setting the Heartbeat Time For guarding the communication capability a „Producer Hearbeat Time“ must be defined in object 1017h. The service will be utilized upon confirmation of the parameter. Example: Every 100 ms the inclination sensor shall transmit a heartbeat (100 = 64h): COB-ID 600h+Node-ID DLC Command 8 2Bh Object L 17h Object H 10h Subindex Data 0 Data 1 0h 64h 0h DLC Command 8 60h Object L 17h Object H 10h Subindex Data 0 Data 1 0h 0 0 Confirmation: COB-ID 580h+Node-ID COB-ID 701h Data/ Remote Byte 0 d 7Fh Hearbeat messages comprise COB-ID and one byte, latter is transmitting the NMT state. 0: 4: 5: 127: BootUp-Event Stopped Operational Pre-Operational i.e. the inclination sensor is in pre-operational mode (7Fh = 127). Manual_GNAMG_CANopen_EN.doc 21.11.12 36/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 5.4. Commissioning via CAN Comfortable commissioning of the CANopen inclination sensor via CAN (Layer 2) Example: Inclination sensor with Node-ID 1, some NMT and SDO commands Tool applied: CANAnalyser32 by IXXAT Manual_GNAMG_CANopen_EN.doc 21.11.12 37/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 6. Terminal assignment and commisisoning 6.1. Mechanical mounting Release both fastening screws of the bus cover. Carefully loosen the bus cover from the base plate and lift off in the axial direction. Firmly screw the base plate in place using the fastening holes. The bus cover must fully rest against the base plate. Any tolerances in mounting the bus cover to the base plate might affect the absolute slope angle. Alignment of coordinates (y- / y+ / x- / x+) see following diagram: Installation position – sensing range 15°, 30° und 60° The two-dimensional inclination sensor with a sensing range of 15°, 30° and 60° must be mounted with the base plate in horizontal position, i.e. parallel to the horizontal line. The inclination sensor may also be installed upside down, i.e. turned by 180°. The sensor can be inclined both in lateral (X-axis) and longitudinal (Y- axis) direction at the same time. For each axis a separate measured value is provided. As default parameter the inclination sensor will apply the selected sensing range to both the X and Y- axis, for example ±15° with the zero passage being precisely in the horizontal line. Manual_GNAMG_CANopen_EN.doc 21.11.12 38/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany Installation position - Sensing range 360° The inclination sensor featuring a 360º sensing range must be installed in a way that the X-axis as in the illustration is in parallel alignment with gravity. The deflection may not be more than ±3º. Please note that the inclination sensor must fully and evenly rest on the contact surface and whilst inclination/rotation must not be subject to any misalignment in the X- or Y-direction since this would affect the sensing accuracy. The 360° inclination sensor default position is 0° as shown in the following illustration but may be optionally configured by help of the preset function. The measuring direction may also be inverted. Default parameter of the inclination sensor’s sensing direction is clockwise from 0...360°, in case of active inversion counter-clockwise. 6.2. Electrical connection The inclination sensor must fully rest on the base plate and be firmly screwed in place. For e-connection of the bus cover please proceed as follows: Release both fastening screws of the bus cover Carefully loosen the bus cover and lift off from the base plate in the axial direction. 6.2.1. Setting the user address Setting the user address is by EEPROM. The Node-ID (user address) is defined in object 2101h. Another option is decimal setting of the user address using two rotary switches provided in the bus cover. If the switches are on 0 the Node-ID out of the EEPROM will be utilized. As soon as the switches are set to a certain value this will be utilized as user address. Maximum user total is 99. Decimal setting of the user address using two rotary switches 1 and 2 (default 00). Example: 23 Manual_GNAMG_CANopen_EN.doc 21.11.12 39/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany 6.2.2. Setting the baud rate The baud rate is defined in object 2100h. Another option is binary setting of the baud rate using the 3-pin- DIP switches 1 to 3 provided in the bus cover. The baud rate out of the EEPROM will be ingnored as soon as the switches are not on 0. Baud rate 10 kBit/s 20 kBit/s 50 kBit/s * 125 kBit/s 250 kBit/s 500 kBit/s 800 kBit/s 1 MBit/s 1 OFF OFF OFF OFF ON ON ON ON DIP-switch position 2 OFF OFF ON ON OFF OFF ON ON 3 OFF ON OFF ON OFF ON OFF ON * Default 6.2.3. Terminating resistor If the inclination sensor is the final device in the bus line the bus must be terminated using the terminating resistor in the bus cover by switching the one-pin DIP switch to “ON” (default OFF). ON = last user OFF = user X 6.2.4. Connecting the inclination sensor Release the cap nut of the cable gland Push the cap nut and seal insert with contact sleeve onto the cable sheath. Strip the cable sheath and cores, shorten the shield film where existing (see fig.) Bend over the braided shield by approx. 90° Push the seal insert with contact sleeves along as far as the braided shield. Insert the sealing insert with contact sleeve and cable flush into the cable gland and tighten the cap nut. Clamps of the same designation are internally connected to each other. For supply voltage use cable gland 3 only. For the bus lines, either cable gland 1 or 2 may be used. Please observe the admissible cable cross-sections. Guide the cores the shortest way from the cable gland to the terminal connector. Please observe the admissible core cross-sections. Use ferrules in case of flexible cores. Avoid any crossings of data lines with the supply line. Seal up the unused cable gland using a sealing bolt (included in the delivery). Manual_GNAMG_CANopen_EN.doc 21.11.12 40/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany View inside the inclination sensor Cable gland M12 connector 6.2.5. Terminal assignment Pin 1 2 3 4 5 Terminal GND UB GND CAN_H CAN_L Explanation Ground connection relating to UB Supply voltage 10...30 VDC Ground connection relating to UB CAN Bus signal (dominant High) CAN Bus signal (dominant Low) M12-connector (male/female) Terminals with the same designation are connected to each other internally and identical in their functions. Maximum load on the internal clamps UB-UB and GND-GND is 1 A each. 6.3. Status LEDs (status indicators) An integrated DUO-LED is provided on the back of inclination sensor housing. LED green Off Flashing On On Off Off LED red Off Off Off On Flashing Off Manual_GNAMG_CANopen_EN.doc 21.11.12 Status No supply voltage Pre-operational Mode Operational Mode Stopped/Prepared Mode Alert/warning Error 41/41 Baumer IVO GmbH & Co. KG Villingen-Schwenningen, Germany