Figure 52 Factory set confirmation ........................................................................... 105
Figure 53 Encoder state machine ............................................................................. 106
8
Page 9
1 Introduction
1.1 About absolute encoders
With an absolute encoder each angular position is assigned a
coded position value generated by a code disc equipped with
several parallel fine graduations tracks which are scanned individually. On single turn encoders, i.e. an encoder producing absolute
positions within one revolution, the absolute position information
repeats itself with every revolution. So called multi turn encoders
can also distinguish between revolutions. The numbers of unique
revolutions is determined by the resolution of the multi turn scanning and repeats itself after the total resolution is reached. A major benefit of absolute encoder type is that if the encoder loses
power, the encoder is able to keep track of its position also if the
shaft is turned during the power loss. This is due to the genuine
absolute scanning principle.
An absolute encoder can also be used to calculate a digital speed
value. By internally dividing the difference in position with a small
delta time an accurate speed value can be calculated and transmitted to the subsequent electronics for closed loop control.
Introduction
9
Page 10
Introduction
1.2 About PROFINET technology
PROFINET is the open industrial Ethernet standard of PROFIBUS
& PROFINET International (PI) for automation. PROFINET uses
TCP/IP and IT standards, and is in effect, real-time Ethernet . The
PROFINET concept features a modular structure so that users can
select the cascading functions themselves. They differ essentially
because of the type of data exchange to fulfill the partly very high
requirements of speed.
In conjunction with PROFINET, the two perspectives PROFINET
CBA and PROFINET IO exist. PROFINET CBA is suitable for the
component-based communication via TCP/IP and the real-time
communication for real-time requirements in modular systems
engineering. Both communication options can be used in parallel.
PROFINET IO was developed for real time (RT) and isochronous
real time (IRT) communication with the de-centralized periphery.
The designations RT and IRT merely describe the real-time properties for the communication within PROFINET IO.
To achieve these functions, three different protocol levels are defined:
• TCP/IP for PROFINET CBA and the commissioning of a plant
with reaction times in the range of 100ms
• RT (Real-Time) protocol for PROFINET CBA and PROFINET IO
applications up to 1 ms cycle times
• IRT (Isochronous Real-Time) for PROFINET IO applications in
drive systems with cycles times of less than 1ms
Interfacing the peripherals devices such as encoders is implemented by PROFINET IO. Its basis is a cascading real-time concept. PROFINET IO defines the entire data exchange between
controllers (devices with "master functionality") and the devices
(devices with "slave functionality"), as well as parameter setting
and diagnosis.
PROFINET IO is designed for the fast data exchange between
Ethernet-based field devices and follows the provider-consumer
model. The configuration of an IO-System has been kept nearly
identical to the "look and feel" of PROFIBUS.
10
Page 11
A PROFINET IO system consists of the following devices:
• The IO Controller, which contains the automation program and
controls the automation task.
• The IO Device, which is a field device such as an encoder, mon-
itored and controlled by an IO Controller.
• The IO Supervisor is software typically based on a PC for set-
ting parameters and diagnosing individual IO Devices.
An application relation (AR) is established between an IO Controller and an IO Device. These ARs are used to define communication relations (CR) with different characteristics for the transfer of
parameters, cyclic exchange of data and handling of alarms.
The characteristics of an IO Device are described by the device
manufacturer in a General Station Description (GSD) file. The language used for this purpose is the GSDML (GSD Markup Language) - an XML based language. The GSD file provides the supervision software with a basis for planning the configuration of a
PROFINET IO system.
Within PROFINET IO, process data and alarms are always transmitted in real time (RT). Real time in PROFINET is based on the
definition of IEEE and IEC, which allow for only a limited time for
execution of real-time services within a bus cycle. The RT communication represents the basis for the data exchange for
PROFINET IO and real-time data are always treated with a higher
priority than TCP (UDP)/IP data.
Introduction
11
Page 12
Introduction
1.3 Encoder Profiles
Profiles are pre-defined configurations of the functions and features available from PROFINET for use in specific devices or applications such as encoders. They are specified by PI (PROFIBUS &
PROFINET International) working groups and published by PI. Profiles are important for openness, interoperability and interchangeability, so that the end user can be sure that similar equipments
from different vendors perform in a standardized way.
HEIDENHAIN comply with the definitions in the encoder profile
3.162, version 4.1. The encoder device profile describing encoder
functionality and additional information about PROFINET can be
ordered from PROFIBUS User Organization, PNO.
PROFINET is generally defined by PROFIBUS & PROFINET International (PI) and backed by the INTERBUS Club and, since 2003,
is part of the IEC 61158 and IEC 61784 standards.
PROFINET Guidelines: PROFINET Cabling and Interconnection
Technology V1.99, PROFIBUS International,
Order No. 2.252
13
Page 14
Introduction
1.5 Abbreviations
PI PROFIBUS and PROFINET International
IO Input/Output
DO Drive Object
DU Drive Unit
AR Application Relation
CR Communication Relation
MLS Master Sign-Of-Life
RT Real Time Ethernet
IRT Isochronous Real Time Ethernet
IsoM Isochronous Mode
LLDP Link Layer Discovery Protocol
GSD General Station Description
GSDML General Station Description Markup Language
UDP User Datagram Protocol
TCP Transmission Control Protocol
IP Internet Protocol
DHCP Dynamic Host Configuration Protocol
TFTP Trivial File Transfer Protocol
MAC Media Access Control
I&M Identification & Maintenance
14
Page 15
2 Installation
A summary of the PROFINET guideline: PROFINET Cabling and
interconnection Technology
V 1.99, PROFIBUS International, Order No 2.252 is provided in this
section.
2.1 Cables and standards
Two shielded copper cables twisted in pairs are defined as the
normal transmission medium for PROFINET networks. In such
networks the signal transmission is performed in accordance with
100BASE-TX at a transmission speed of 100 Mbps (FastEthernet).
Only shielded cables and connecting elements are allowed in a
PROFINET network. The individual components have to satisfy
the requirements of Category 5 in accordance with IEC 11801. The
entire transmission path has to meet the requirements of Class D
in accordance with IEC 11801. Furthermore, PROFINET cables
shall have a cable cross-section of AWG 22 in order to enable
even complex cabling structures through minimum damping. For
this reason, the specification of the PROFINET cables supports a
modular setup, which ensures an IEC 11801-compliant structure
on adherence to simple installation rules.
Transmission channels lengths are determined by the type of cable being used. The choice of cable is to be such that a transmission channel length of 100 meter is achieved between two active
network devices. The use of a high number of plug connections
has a negative effect on attenuation and reflection and consequently reduces the transmission channel length. A maximum of
three interconnections can be inserted between two active devices without reduction of the permissible transmission lengths of
100 meters.
Installation
15
Page 16
Installation
Table
Table 2 Power supply connection
2.2 Connectors and pin configuration
M12 connectors are used for connecting the bus lines to the encoder. The M12 connector used is a 4-pin female shielded
D-coded version.
The correct arrangement of the bus connectors are specified as
follows:
Port 1
Port 2
Figure 1 Bus connectors
Note: The encoder provides integrated switch functionality
between the two M12 connectors used for PROFINET
communication. It is important to distinguish between
these ports when IRT-communication is used.
The M12 connector used for power supply of the encoder is constituted by a 4-pin male shielded A-coded version.
The correct arrangement of the power supply line is specified as
follows:
Supply
Figure 2
Power supply connector
Note: Passive T-couplings are not possible to use in a
PROFINET network. All devices must be connected
through active network components.
Signal Function Pin
Tx+ Transmission data + 1
Tx- Transmission data - 3
Rx+ Receiver data + 2
Rx- Receiver data - 4
1 Bus Connection
Signal Function Pin
+E Vo lt Power supply 1
Not connected - 2
0 Volt 0 Volt 3
Not connected - 4
16
Page 17
2.3 Shielding concept of the encoder
Automation systems in an industrial environment are subjected to
high levels of electromagnetic disturbance. Switching large electrical loads creates high interference levels that can be picked up
in various ways by electronic devices with detrimental effects.
Even under such conditions, electric components within an automation system must still guarantee a continuous, uninterrupted
function.
The electromagnetic compatibility (EMC) of the entire plant must
be ensured by using suitably designed components and assembling them correctly to make up the system. Data cabling is considered as a passive system and cannot be tested for EMC compliance individually. Nevertheless, cabling and connection elements for PROFINET supports compliance with devices requirements by providing a high-quality, comprehensive shielding concept.
To achieve the highest possible noise immunity and resistance
against other EMC related disturbances the bus and power supply
cables shall always be shielded. The screen should be connected
to ground on both ends of the cable. In certain cases compensation current might flow over the screen.
2.4 MAC-address
PROFINET IO field devices are addressed using MAC addresses
and IP addresses. All field devices have a unique MAC address.
The MAC address is constituted by a 6 byte Ethernet address for
each individual station and is unique worldwide. The MAC address
consists of two parts, the first 3 bytes represents the manufacturer-specific ID and the last 3 bytes represents a consecutive
number. The MAC address of the encoder is printed on the encoder label for commissioning purposes.
Installation
17
Page 18
Installation
Bus
Module
Meaning
Cause
Off
Off
No power
Red
Green
No connection to anoth-
change
- bus disconnected
Blinking* red
Green
Parameterization fault,
- Slave not configured
Wrong station address
tion
Green
Red
System failure
Diagnosis exists, slave in
data exchange mode
Green
Green
Data exchange and encoder functions properly
Blinking* green
Blinking green
Firmware upgrade in
process
Blinking* red
Blinking red
Failure during firmware
upgrade
*)
The blinking frequency is 0.5 Hz. Minimal indication time is 3 seconds.
2.5 LED indication
The following table defines diagnostic indications shown by the
encoders two bi-colored LEDs.
er device.
Criteria: No data ex-
no data exchange
Criteria: Data exchange
correct, however the encoder did not switch to
the data exchange mode
- Master not availble/
switched off
yet or wrong configuration
assigned
- Actual configuration of
the slave differs from
the nominal configura-
Table 3 Led indication
18
Page 19
3 Configuration example
GSDML file
GSDML-V2.2-JH-PROFINET-Encoder-xxxxxxxx.xml
This chapter will illustrate how to setup and configure a
PROFINET encoder for working in RT Class 1 mode. In the following examples SIMOTION SCOUT V.4.1.5.6 and D435 motion controller is used. Please refer to the manufacturer of the configuration tool if other configuration tools are being used.
3.1 Device description file installation (GSDML)
In order to start using an absolute encoder with PROFINET interface, a device description file needs to be downloaded and imported to the configuration software. The device description file is
called a Generic Station Description Markup Language file and
contains the necessary implementation parameters needed for a
PROFINET IO device.
The GSDML file can be downloaded from
Table 4 GSDML file
Configuration example
www.heidenhain.com
19
Page 20
Configuration example
Installation of GSDML-files
Figure 3 Installation of GSDML file
1. Select Options -> Install GSD File and click the Browse button
to navigate to the location of the GSD file. If a bitmap picture
representing the encoder is requested, make sure that the
bitmap file is located in the same folder as the GSDML file. A
bitmap file is included in the zip-file downloadable from
www. heidenhain.com.
2. Select the GSD file and click the Installbutton to start installing
the selected GSD file.
20
Page 21
3.2 Setting encoder configuration
When the GSD file has been installed the supported encoder
types can be found in the HW Configuration under PROFINET IO>Additional Field Devices->Encoders->JH Group PROFINET Encoders.Select either multi turn 25 bit or single turn 13 bit encoder,
dependent on the type of encoder to be configured. Drag and
drop the encoder onto the PROFINET IO system as shown in the
picture below. In the example below one 25 bit multiturn encoder
was chosen. If more than one encoder shall be configured, then
the following steps need to be done once for each device.
Configuration example
Figure 4 Encoder configuration
21
Page 22
Configuration example
When correctly done, the encoder will appear on the PROFINET
IO system as shown in figure 5 below.
Figure 5 Example of connected encoder
22
Page 23
Configuration example
Figure
The next step will be to choose the data length and the type of
data that should be sent to and from the IO controller. This is done
by choosing different telegrams. Available telegrams for the multiturn 25 bit encoder can be found under Multiturn 25 Bit -> EO
Multiturn. In the example below standard telegram 81 is used.
Drag and drop the telegram onto slot 1, sub slot 2 as shown in
the figure 6 below. For more information regarding the different
telegrams refer to chapter 4.4.
6 Telegram selection
The Standard Telegram 81 will appear on slot 1 sub slot 2
according to figure 7 below.
Figure 7 Selected telegram
Note: The steps above need to be performed once for each
device.
23
Page 24
Configuration example
3.3 Setting encoder device name
In a PROFINET network all IO devices needs to have a unique device name. The encoders are delivered without any device name
preset from the factory. To set the encoder device name, double
click on the encoder icon to open the Properties window.
Figure 8 How to set encoder device name
In the Properties window, enter an appropriate device name in the
Device name field.
24
Figure 9 Device name
Page 25
Make sure that the checkbox Assign IP address via IO controller is
checked if the IP address for the encoder should be assign via the
IO controller.
Then select PLC-> Ethernet->Assign Device Name to open the
Assign device name window.
Figure 10 Assign device name
Configuration example
25
Page 26
Configuration example
Choose the device on which the device name should be changed
and then click on the Assign name button to adopt the changes
and then click on the Close button. The MAC address of the encoder is written on the encoder label.
Figure 11 Assign name
Note: All connected devices need to be assigned a unique
device name.
After changing device name, it is recommended to verify that the
performed change has been done. This is done by opening the
Verify Device Name window found under PLC->Ethernet->Ver ify
Device Name.
Figure 12 How to verify device name
26
Page 27
Configuration example
In the Verify Device Name window, verify that the Device name
has changed and the status is OK as shown in the example according to figure 13 below.
Figure 13 Verify device name
27
Page 28
Configuration example
3.4 Setting encoder parameters
This chapter describes how to change the user parameters in the
encoder.
To set the encoder user parameters double click on the Parameter
Access point field located under slot 1.1 as shown in figure 14, to
open the Properties window.
Figure 14 Parameter Access point
28
Page 29
Configuration example
In the Properties window, choose the Parameters" tab. To set the
parameter data, change the value of the different parameters by
clicking on the drop down list in the Value field for the respective
parameter. For more information regarding parameter data, see
chapter 7.
Figure 15 Parameter data
When the configuration and parameterization of the device has
been done, the settings need to be saved and compiled. This is
done by clicking on the Save and Compile option under the Station tab.
Figure 16 Save and compile
29
Page 30
Configuration example
Then the settings need to be downloaded to the IO-controller. This
is done by clicking on the Download option under the PLC Ta b .
Figure 17 Download settings
30
Page 31
3.5 Isochronous real time settings (RT Class 3)
This example is intended to illustrate the commissioning of a
PROFINET encoder in isochronous operation. In the example below STEP 7 v5.4 SP5 and SIMOTION D435 motion controller is
used. The basic principal for configuration and parameterization of
the encoder is the same as described in chapter 3.2-3.4.
To set the IRT settings of the encoder, double click on the Interface field located under slot 0, sub slot X1 to open the Properties
window.
Figure 18 Open Interface properties
Under the Synchronization tab change the value for the Parameter
RT Class to IRT and the IRT option parameter to High Performance according to the picture below.
Configuration example
Figure 19 RT Class option
31
Page 32
Configuration example
Under the Application tab check the box for Operate IO device/application in isochronous mode.
Figure 20 Interface properties
Under the IO Cycle tab change the Update Time Mode to fixed
factor.
Figure 21 IO Cycle properties
32
Page 33
Before the encoder can operate in IRT mode it is necessary to set
from which port of the encoder the connection to the network
has been done.
To set the topology double click on the port from which the encoder is connected to the network. This is either slot 0 sub slot P1
or slot 0 sub slot P2. In the example in figure 22 below Port 1 is
used on the encoder. For port description of the encoder see
chapter2.2Connectors and pin configuration.
Figure 22Port settings
Under the Topology tab change the Partner port to the used port
of your IO controller.
Configuration example
Figure 23 Topology settings
33
Page 34
Configuration example
When the above steps have been performed, it is recommended
to verify that the setting for the encoder and the IO controller is
correct. This is done by opening the Domain management Window found under Edit->PROFINET IO.
Verify that the RT Class is set to IRT and that the IRT option is set
to High performance.
Figure 24 Domain management
The encoder is now prepared for operating in IRT mode.
34
Page 35
4 PROFINET IO data description
4.1 Encoder profile overview, PNO order no.3.162
This manual is related to encoders that fulfills the demands and
functionality according to encoder profile V4.1 (PNO no 3.162).
The operating functions for encoders according to this profile are
divided into two application classes, named Class 3 and Class 4.
For an overview of the different encoder profile for PROFIBUS
and PROFINET and the related standards, see figure 25 below.
For further information regarding the encoder functionality refer to
the device profile. The profile and PROFINET technical information
can be ordered at PNO in Karlsruhe, Germany
www.profinet.com).
(
PROFINET IO data description
Figure 25 Overview of encoder profiles
35
Page 36
PROFINET IO data description
Significance
Abbreviation
Length
(bits)
Data type
Velocity value A
NIST_A
16
Signed
Velocity value B
NIST_B
32
Signed
Control word
G1_STW
16
Unsigned
Status word
G1_ZSW
16
Unsigned
Position value 1
G1_XIST1
32
Unsigned
Position value 2
G1_XIST2
32
Unsigned
Position value 3
G1_XIST3
64
Unsigned
Control word 2
STW2_ENC
16
Unsigned
Status word 2
ZSW2_ENC
16
Unsigned
4.2 Application Class definition
The PROFINET encoders can be configured as a class 3 or class 4
PROFINET IO device according to the encoder profile V.4.1 (PNO
no 3.162). A Class 4 configured encoder fully supports all functionality according to the encoder profile V4.1.
CLASS 3Encoder with base mode parameter access and limited parame-
terization of the encoder functionality. Isochronous mode isnot
supported.
CLASS 4Encoder with scaling, Preset and base mode parameter access.
Isochronous mode is supported.
4.3 Standard signals
Tabl e 5 below describes the standard signals that are used to configure the IO data. The signals are described in the chapters that
follow.
36
Table 5 Standard signals
Page 37
4.4 Standard telegrams
IO Data (word)
1
2
Byte
0 1 2 3 Set point
STW2_ENC
G1_STW
IO Data (word)
1 2 3 4 5 6 Byte
0 1 2 3 4 5 6 7 8 9 10
11
Actual value
ZSW2_ENC
G1_ZSW
G1_XIST1
G1_XIST2
Configuration of PROFINET encoders are made by choosing different telegram structures. The telegrams are used to specify the
data length and which type of data that are sent to and from the
IO controller. The following standard telegrams are supported.
4.4.1 Standard Telegram 81
Standard telegram 81 uses 4 bytes for output data from the IO
controller to the encoder and 12 bytes of input data from the encoder to the IO-controller.
Output data from the IO controller:
2 bytes Control word 2 (STW2_ENC).
2 bytes Control word (G1_STW).
Table 6 Output data Telegram 81
Input data to the IO controller:
2 bytes Status word 2(ZSW2_ENC).
2 bytes Status word (G1_ZSW).
4 bytes Position value 1 (G1_XIST1).
4 bytes Position value 2 (G1_XIST2).
PROFINET IO data description
Table 7 Input data Telegram 81
37
Page 38
PROFINET IO data description
IO Data (word)
1 2 Byte
0 1 2 3 Set point
STW2_EN
G1_STW
IO Data (word)
1 2 3 4 5 6 7
Byte
0 1 2 3 4 5 6 7 8 9 10
11
12
13
Actual value
ZSW2_ENC
G1_ZSW
G1_XIST1
G1_XIST2
NIST_A
4.4.2 Standard Telegram 82
Standard telegram 82 uses 4 bytes for output data from the IO
controller to the encoder and 14 bytes of input data from the encoder to the controller.
Output data from the IO controller:
2 bytes Control word 2 (STW2_ENC).
2 bytes Control word (G1_STW).
Table 8 Output data Telegram 82
Input data to the IO controller:
2 bytes Status word 2(ZSW2_ENC).
2 bytes Status word (G1_ZSW).
4 bytes Position value 1 (G1_XIST1).
4 bytes Position value 2 (G1_XIST2).
2 bytes Velocity value A (NIST_A)
Table 9 Input data Telegram 82
38
Page 39
4.4.3 Standard Telegram 83
IO Data (word)
1 2 Byte
0 1 2
3
Set point
STW2_ENC
G1_STW
IO Data (word)
1 2 3 4 5 6 7
8
Byte
0 1 2 3 4 5 6 7 8 9 10
11
12
13
14
15
Actual value
ZSW2_ENC
G1_ZSW
G1_XIST1
G1_XIST2
NIST_B
Standard telegram 83 uses 4 bytes for output data from the controller to the encoder and 16 bytes of input data from the encoder
to the controller.
Output data from the IO controller:
2 bytes Control word 2 (STW2_ENC).
2 bytes Control word (G1_STW).
Table 10 Output data Telegram 83
Input data to the IO controller:
2 bytes Status word 2(ZSW2_ENC).
2 bytes Status word (G1_ZSW).
4 bytes Position value 1 (G1_XIST1).
4 bytes Position value 2 (G1_XIST2).
4 bytes Velocity value B (NIST_B)
Standard telegram 84 uses 4 bytes for output data from the controller to the encoder and 20 bytes of input data from the encoder
to the controller.
Output data from the IO controller:
2 bytes Control word 2 (STW2_ENC).
2 bytes Control word (G1_STW).
Table 12 Output data Telegram 84
Input data to the IO controller:
2 bytes Status word 2(ZSW2_ENC).
2 bytes Status word (G1_ZSW).
8 bytes Position value 3 (G1_XIST3).
4 bytes Position value 2 (G1_XIST2).
4 bytes Velocity value B (NIST_B)
Table 13 Input data Telegram 84
40
Note: In standard Telegram 84, G1_XIST2 is used to transfer
error codes and optionally position values if the measuring length exceeds 64 bits.
Page 41
4.5 Manufacturer telegram 59001
IO Data (word)
1 2 Byte
0 1 2
3
Bits
31(MSB)
30-24
23-16
15-8
7-0(LSB)
Preset control bit
Preset value < total resolution
IO Data (word)
1 2 3
4
Byte
0(MSB)
1 2 3(LSB)
4(MSB)
5 6 7(LSB)
Actual value
Position value
32 bit Unsigned in
Velocity value
32 bit Signed int
The manufacturer telegram 59001 is a simplified telegram to get
cyclic data transmission and also the possibility to do a preset via
IO-data without the need of control word and status words.
The preset function can be used to set the actual position of the
encoder to any entered value within the working range of the encoder. If scaling is active and has been done on the encoder it is
only possible to enter a preset value within the working range of
the encoder.
The preset is activated when the most significant bit (bit 31) is set
to 1. The actual preset value should be entered in the following
bits according to below.
Table 14 Output data from IO-controller to encoder
The manufacturer telegram 59001 input data consist of a 4 bytes
position data value and a 4 byte velocity value as shown below.
The velocity value uses the format that is defined in the Velocity
measuring unit.
PROFINET IO data description
Table 15 Input data from encoder to IO-controller
Note: User parameter Class 4 functionality and G1_XIST1
Preset control must be activated in order to activate
the preset in manufacturer telegram 59001.
41
Page 42
PROFINET IO data description
4.6 Format of G1_XIST1 and G1_XIST2
The G1_XIST1 and G1_XIST2 signals consist of the absolute position value in binary format. By default the G1_XIST1 signal is equal
to the G1_XIST2 signal. The format of the actual position values in
G1_XIST1 and G1_XIST2 is shown below.
Format definition for G1_XIST1 and G1_XIST2:
• All values are presented in binary format
• The shift factor is always zero (right aligned value) for both
G1_XIST1 and G1_XIST2.
• The setting in the encoder parameter data affects the position
value in both G1_XIST1 and G1_XIST2.
• G1_XIST2 displays the error telegram instead of the position
value if error occurs.
Example:
25 bit multi turn absolute encoder (8192 steps per
revolution, 4096 distinguishable revolutions)
M = Multi turn value (Distinguishable revolutions)
S = Single turn value (number of steps per revolutions)
Figure 26 Absolute value in G1_XIST1
Figure 27 Absolute value in G1_XIST2
42
Page 43
4.7 Format of G1_XIST3
IO Data
1 2 3
4
Format
64 bit position value
G1_XIST3 is a 64 bit position value which is used to support encoders with a resolution exceeding 32 bits.
Format definition for G1_XIST3:
• Binary format
• The actual position value is always right aligned, a shifting factor
is not used.
• The settings in the encoder parameter data affect the position
value in G1_XIST3 if Class 4 is enabled.
Table 16 Format of G1_XIST3
PROFINET IO data description
43
Page 44
PROFINET IO data description
Bit
Function
0..6
Reserved
7
Fault Acknowledge
8,9
Reserved
10
Control by PLC
11
Reserved
12..15
Controller Sign-of-life
Bit
Valu e
Significance
Comments
7
1
Fault Acknowledge (0->1)
The fault signal is acknowledged with
to a fault depends on the type of fault.
0
No significance
10
1
Control by PLC
Control via interface, EO IO Data is
valid.
0
No Control by PLC
EO IO Data not valid,
except Sign-Of-Li fe
12..15
Controller Sign-Of-Life
4.8 Control word 2 (STW2_ENC)
The control word 2 (STW2_ENC) is referred to as the master sign
of life and it includes the fault buffer handling and Control by PLC
mechanism from PROFIdrive STW1 and the Controller Sign-OfLife mechanism from PROFIdrive STW2. This signal is mandatory
for controlling the clock synchronization.
Table 17 Control word 2 (STW2_ENC)
a positive edge. The encoder reaction
Table 18 Detailed assignment of control word 2 (STW2_ENC)
44
Page 45
4.9 Status word 2 (ZSW2_ENC)
Bit
Function
0..2
Reserved
3
Fault present/No fault
4..8
Reserved
9
Control requested
10 , 11
Reserved
12..15
Encoder Sign-of-life
Bit
Valu e
Significance
Comments
3
1
Fault Present
Unacknowledged faults or currently not
numbers are in the fault buffer.
0
No Fault
9
1
Control
requested
The automation system is requested to assume control.
0
No Control
Control by automation system is not possible,
face.
12..15
Encoder
Sign-Of-Life
The status word 2 (ZSW2_ENC) is referred to as the slave’s sign
of life and it includes the fault buffer handling and Control by PLC
mechanism from PROFIdrive ZSW1 and the Slave Sign-Of-Life
mechanism from PROFIdrive ZSW2. This signal is mandatory for
controlling the clock synchronization.
Table 19 Status word 2 (ZSW2_ENC)
PROFINET IO data description
Table 20 Detailed assignment of status word 2 (ZSW2_ENC)
requested
acknowledged faults (fault messages) are present (in the buffer).The fault reaction is faultspecific and device-specific. The acknowledging
of a fault may only be successful, if the fault
cause has disappeared or has been removed
before. If the fault has been removed the encoder returns to operation. The related fault
only possible at the device or by another inter-
45
Page 46
PROFINET IO data description
Bit
Function
0..7
Function requests: Reference mark search,
measurement on the fly
8..10
Reserved (without effect)
11
Home position mode position mode (Preset)
12
Request set/shift of home position (Preset)
13
Request absolute value cyclically
14
Activate parking sensor
15
Acknowledging a sensor error
4.10 Control word (G1_STW)
The control word controls the functionality of major encoder functions.
Table 21 Control word (G1_STW)
Note: If the sensor parking is activated (bit 14 = 1) the encod-
er is still on the bus with the slave sign of life active
and the encoder error and diagnostics switched off.
46
Page 47
4.11 Status word (G1_ZSW)
Bit
Function
0..7
Function status: Reference mark search, measurement on the fly
8
Probe 1 deflected
9
Probe 2 deflected position mode (Preset)
10
Reserved, set to zero
11
Requirements of error acknowledgment detected
12
Set/shift of home position (Preset) executed
13
Transmit absolute value cyclically
14
Parking sensor active
15
Sensor error
The status word defines encoder states, acknowledgements, error messages of major encoder functions.
PROFINET IO data description
Table 22 Status word (G1_ZSW)
Note: If bit 13 Transmit absolute value cyclically or bit 15 Sen-
sor error is not set there is no valid value or error code
transferred in G1_XIST2.
Note: Bit 13 Transmit absolute value cyclically cannot be set
at the same time as bit 15 Sensor error as these bits
are used to indicate either a valid position value
transmission (bit 13) or the error code transmission
(bit 15) in G1_XIST2.
47
Page 48
PROFINET IO data description
4.12 Real time communication
PROFINET IO uses three different communication channels to exchange data with programmable controllers and other devices.
The non real time channel based on for example TCP (UDP)/IP is
used for parameterization, configuration and acyclic read/write
operations.
The RT or Real Time channel is used for process data transfer and
alarms.
Real-time data are treated with a higher priority than data sent
over the open channel. RT communications overrides the open
channel to handle the data exchange with programmable Controllers.
The third channel, Isochronous Real Time (IRT) is the high performance, high speed channel used for demanding motion Control
applications. IRT data are treated with a higher priority than RT data sent over the RT channel.
48
Figure 28 Real time Communication
Page 49
PROFINET IO data description
PROFINET distinguishes between three real time classes for
transmission of time critical process data. The three RT classes
are:
Real-Time, RT Class 1
• Unsynchronized Real time communication
• Industrial standard switches can be used.
• Typical application area: Factory automation
Real-Time, RT Class 2
• Synchronized and unsynchronized data transmission
• Special switches supporting IRT is needed
• Typical application area: Factory automation
Isochronous Real Time, RT Class 3
The isochronous operation mode is used when real-time positioning with high performance is required. The basic principal is that all
PROFINET devices on the net are clock synchronized with the
controller using a global control broadcast enabling simultaneous
data accusation from all devices with microsecond accuracy. The
data exchange cycles for IRT are usually in the range of a few
hundred microseconds up to a few milliseconds. The difference to
real-time communication is essentially the high degree of determinism, so that the start of a bus cycle is maintained with high
precision. The synchronization is monitored by sign-of life messages in Control word 2 (STW2_ENC) and Status word 2
(ZSW2_ENC).
• Clock synchronized data transmission
• Special switches supporting IRT is needed
• IRT is required for example motion control applications
49
Page 50
Alarms and warnings
Supported channel
diagnostic
Diagnostic data
record
Description
Position error
0x900A
The encoder fails to read the correct
position value
Memory error
0x9000
The encoder fails to read stored
volatile memory
Commissioning
diagnostics
0x9011
User parameter data assignment
error
5 Alarms and warnings
5.1 Diagnostics and Alarms
Diagnostic data is always transferred acyclically using Record Data
communications over the non real time channel. An IO Supervisor
must specifically request the diagnostic or status data from the IO
device using RDO (Record Data Object) services.
Alarm data is transmitted from the IO device to the IO controller
via the RT channel.
Alarm is generated by the encoder when failure occurs which effects the position value. Alarms can be reset (deleted) when all
encoder parameters are within the specified value ranges and the
position value is correct.
5.2 Channel diagnostics
The encoder outputs a diagnostic interrupt to the CPU when it detects one of the supported channel diagnostics.
Table 23 Channel diagnostics
In a SIMATIC STEP 7 system the operation system responds by
calling a diagnostic OB. The OB number and start information provides the cause and location of the error. The error information can
be read by calling a system Function block (SFB54 RALRM for
STEP 7). Then the user can decide how the system should handle
the error.
Note: If the called OB is not included in the program the CPU
50
offset or preset values from the non
will go to stop.
Page 51
5.3 Sensor status word
Supported diagnostic
Error code in
G1_XIST2
Description
Sensor group error
0x0001
The encoder fails to read the correct
position value
Memory error
0x1001
The encoder fails to read stored offset
memory
Command not supported
0x0F01
User parameter data assignment error
G1_STW and STW2_ENC
Master´s sign of life fault
0x0F02
The number of permissible failures the
controller’s life sign was exceeded.
Diagnosis information can be obtained by monitoring of the Error
bit in the Sensor Status word G1_ZSW (bit 15) and evaluation of
the error code transmitted in G1_XIST2.
Table 24 Sensor status word
Alarms and warnings
or preset values from the non volatile
or command error in commands words
51
Page 52
Acyclic Parameter Data
6 Acyclic Parameter Data
6.1 Acyclic data exchange
In addition to the cyclic data exchange, the PROFINET encoder also supports acyclic data exchange. The acyclic data exchange is
transferred over the non-real time channel and is used to read out
and write status information from and to the IO device. The acyclic
data exchange is conducted in parallel to the cyclic data communication.
Example of acyclic data:
• Reading of diagnostic
• Reading of I&M functions
• Reading of PROFIdrive parameters
6.2 Identification and Maintenance (I&M functions)
Encoders according to the encoder profile 3.162 also support I&M
functionality.
The main purpose of the I&M functions is to support the end user
if the device is acting faulty or missing some of its functionality.
The I&M functions could be seen as an electronic nameplate containing common information regarding the device and its manufacturer.
According to the PROFINET specification all IO devices must at
least support the following I&M functions:
• Order ID
• MAC address
• Hardware Version
• Software Version
• Product type
• Manufacturer ID
For more information regarding additional I&M functions supported by the encoder, refer to chapter 7.14.6.
52
Page 53
6.3 Base mode parameter access
Write of Preset value, parameter 65000
Parameter request
Request reference
0x00
Request ID
0x02
0x02 Change value, 0x01read value
DO-ID (axis)
0x01
Drive Object ID
No of parameters
0x01
Attribute
0x10
0x10Va lu e
No of elements
0x00
Parameter number
0xFDE8
Parameter 65000
Sub index
0x0000
Format
0x04
Data type integer 32
Number of values
0x01
The PROFIdrive parameters and the encoder parameter 65000
can be accessed by the Acyclic Data Exchange service using the
Base Mode Parameter access local (Record Data Object 0xB02E).
6.3.1 General characteristics
Acyclic parameter can be transmitted 1(single) or up to 39 (multi)
in one access. A parameter access can be up to 240 bytes long.
6.3.2 Parameter requests and responses
Request header:
Request ID, DO-ID and number of parameters of the access.
Parameter address:
One address for each parameter, if several parameters are accessed.
Parameter value:
If the Request ID is 0x02 (change value) the value is set in the request and if the Request ID is 0x01 (request value), the value appears in the reply.
6.3.3 Changing the preset value
Table 23 below shows the structure of a change value request.
Acyclic Parameter Data
Table 25 Changing the preset value
53
Page 54
Acyclic Parameter Data
Read of Preset value, parameter 65000
Parameter request
Request reference
0x00
Request ID
0x01
0x01read value
DO-ID (axis)
0x01
Drive Object ID
No of parameters
0x01
0x01 Read one parameter
Attribute
0x10
0x10
Value
No of elements
0x00
Parameter number
0xFDE8
Parameter 65000
Sub index
0x0000
Read of Preset value, parameter 65000
Parameter response
Request reference
0x00
mirrored
Response ID
0x01
0x01read value
DO-ID (axis)
0x01
mirrored
No of parameters
0x01
Format
0x04
0x04= Data type unsigned 32
No of values
0x01
Values or errors
0x00,0x00,0x00,0x64
Preset value 100
6.3.4 Reading the preset value
The tables below show the structure of a read value request.
Table 26 Reading the preset value (request)
Table 27 Reading the preset value (response)
54
Page 55
6.4 Supported parameters
6.4.1 Parameter 922, read only
922 unsigned int, presents which telegram is used. Telegram 81,82,83,
84 or 59001 is possible.
6.4.2 Parameter 925, read/write
925 unsigned int, maximum allowed MLS (Master sign-of-life) error. Parameter 925 may be used to set a maximum on how many consecutive
Sign-of-life failures may occur.
6.4.3 Parameter 964, read only
964unsigned int
964[0] = Manufacturer Id. This is set during manufacturing of the encoder.
964[1] = 0DU Drive unit type, always set to 0.
964[2] = 201Software version
964[3] = 2009Software year
964[4] = 2805 Software day and month
964[5] = 1 Number of drive objects (DO)
6.4.4 Parameter 965, read only
965OctetString 2
965[0] =0x3DEncoder profile number
965[1] = 31 or 41 Encoder profile version, set by customer (user_parameters)
6.4.5 Parameter 971, read/write
971 unsigned int, Stores the local parameter set to a non volatile
memory. Preset value is saved when writing value 1 and is set to 0 by the
encoder firmware when finished. This means that the preset value has
been saved when reading back value 0.
6.4.6 Parameter 974, read only
9 74 unsigned int
974[0] = 96Max array length supported by parameter channel.
974[1] = 1Numbers of multi parameters, 1 = no support of multi parameters.
974[2] = 1000max time to process parameter request, n x 10 ms.
Acyclic Parameter Data
55
Page 56
Acyclic Parameter Data
6.4.7 Parameter 975, read only
975unsigned int
975[0] = Manufacturer Id, Set in the production.
975[1] = 7011DO type
975[2] = 201Software version
975[3] = 2009Software year
975[4] = 2805Software day and month
975[5] = 0x0005 PROFIdrive DO type class 5 = encoder interface
975[6] = 0x8000 PROFIdrive SUB class 1, Encoder application class 4 sup-
ported.
975[7] = 0x0001Drive object Id (DO ID).
6.4.8 Parameter 979, read only
979unsigned long
979[0] = 0x00005111 Number of index describing encoder, Numbers of de-
scribed encoders,Version of parameter structure
979[1] = 0x80000000 Sensor type
Bit 31 = 1 if configuration and parameterization is OK
Bit 0 = 0 Rotary encoder, Bit 0 = 1 linear encoder
Bit 1 = 0 always set to 0
Bit 2 = 0 32 bit data, Bit 2 = 1 64 bit data
979[2] = 8192 Encoder scaled resolution
979[3] = 0 Shift factor for G1_XIST1 always set to 0.
979[4] = 0 Shift factor for G1_XIST2 always set to 0.
979[5] = 1 or 4096 Singleturn = 1, Multiturn = 4096
979[6] = 0
979[7] = 0
979[8] = 0
979[9] = 0
979[10] = 0
Used with telegram 81-83.
65000 signed long, preset value 32 bit.
Acyclic Parameter Data
57
Page 58
Acyclic Parameter Data
6.4.16 Parameter 65001, read only
Used with telegram 81-84 and 59001
65001 unsigned long
65001[0] = 0x000C0101 Header, Version of parameter structure
and numbers of index describing the encoder. 12 index and ver-
s i o n 1. 01
65001[1] = Operating status (Bit 4 alarm channel control is always
set with profile version 4.x)
65001[2] = Alarm
65001[3] = Supported alarms
65001[4] = Warning
65001[5] = Warnings supported
65001[6] = 0x00000401 Encoder profile version. Always set to
this value.
65001[7] = Operating time
65001[8] = Offset value
65001[9] = Singleturn value, scaled value
65001[10] = Total measuring length, scaled value (Linear = 1)
65001[11] = Velocity unit
• step/10 ms
• step/100 ms
• step/1000 ms
• RPM
6.4.17 Parameter 65002, read/write
Used with telegram 84
65002 signed long long, Preset value 64 bit.
6.4.18 Parameter 65003, read only
Used with telegram 84
65003 unsigned long long,
65003[0] = 0x0000000000040101Header Version of parameter
structure and numbers of index describing encoder. 4 index and
version 1.01
65003[1] = Offset value 64 bit
65003[2] = Singleturn value 64 bit, scaled value
65003[3] = total measuring range in measuring units 64 bit,
scaled value (Linear =1)
58
Page 59
6.5 Example of reading and writing to a parameter
Hardware components
IO controller
SIEMENS S7-F CPU
CPU 315F-2PN/DP
IO Device
PROFINET encoder
Software components
SIMATIC STEP 7
V5.4 + SP5
GSDML file for
PROFINET encoder
GSDML-V2.2-JH-PROFINETEncoder-xxxxxxxx.xml
This is an example of S7 blocks used for reading and writing to parameter 65000 (preset value). Experience with S7 programming
and Statement List programming language STL is required.
Table 28 Hardware components
Table 29 Software components
Acyclic Parameter Data
59
Page 60
Acyclic Parameter Data
6.5.1 Used blocs
Write record block SFB53 WRREC
Read record block SFB52 RDREC
Instance data blocks DB3 and DB4
Request data block DB1
Response data block DB2
Organization blocks OB1, OB82 and OB86
SFB52
SFB52 is standard S7 block for reading parameters.
SFB53
SFB53 is standard S7 block for writing parameters.
DB1
DB1 is the request data block.
Figure 29 Request data block, DB1
DB2
DB2 is the response data block.
Figure 30 Response data block, DB2
60
Page 61
DB3
DB3 is the instance data block of SFB52
Figure 31 Instance data block, DB3
DB4
DB4 is the instance data block of SFB53
Acyclic Parameter Data
Figure 32 Instance data block, DB
61
Page 62
Acyclic Parameter Data
OB1
OB1 controls the read and write operation.
Figure 33 Organization block, OB1
62
Page 63
Parameters of SFB52
Parameter
Declaration
Data type
Description
REQ
INPUT
BOOL
REQ=1 Enables data transfer
Logical address of the PROFINET IO
address 2039)
INDEX*
INPUT
INT
Record number
Maximum length of the record information in bytes
New record has been received and
is valid.
BUSY
OUTPUT
BOOL
Busy=1 during the read operation
ERROR
OUTPUT
BOOL
Error=1 read error
STAT US
OUTPUT
DWORD
Block status or error code
LEN*
OUTPUT
INT
Length of record information
RECORD
IN_OUT
ANY
Target area for the record
Acyclic Parameter Data
ID INPUT DWORD
module or sub module (PAP-module
MLEN* INPUT INT
VALID OUTPUT BOOL
Table 30Parameters of SFB52
*)
Negative values are interpreted as 16-bit unsigned integers.
63
Page 64
Acyclic Parameter Data
Parameter
Declaration
Data type
Description
REQ
INPUT
BOOL
REQ=1 Enables data transfer
Logical address of the PROFINET IO
address 2039)
INDEX*
INPUT
INT
Record number
Length of the record information in
bytes
DONE
OUTPUT
BOOL
Data record was transferred
BUSY
OUTPUT
BOOL
Busy=1 during the write operation
ERROR
OUTPUT
BOOL
Error=1 write error
STAT US
OUTPUT
DWORD
Block status or error code
RECORD
IN_OUT
ANY
Data record
Parameters of SFB53
ID INPUT DWORD
module or sub module (PAP-module
LEN* INPUT INT
Table 31 Parameters of SFB53
*)
Negative values are interpreted as 16-bit unsigned integers.
64
Page 65
Diagnostic address of slot 1
Acyclic Parameter Data
Figure 34 Diagnostic address of slot 1
65
Page 66
Acyclic Parameter Data
Variable table
With the variable table the user can monitor and modify variables.
Figure 35 Variable table
66
Page 67
Acyclic Parameter Data
To change the value of parameter 65000 with the variable table perform the following
steps:
1) Enable monitoring by clicking the Monitor variable button.
2) Write 02hex to address DB1.DBB 1 by entering B#16#02 in the modify value
column.
3) Write the new preset value in hexadecimal to address DB1.DBD 12 by entering
the value in the modify value column. (Ex.DW#16#000001F4)
4) Click the Modify variable button. The status value of DB1.DBB 12 should now
contain the new value.
5) Run the program-right click on M8.4 and click “Modify address to 1” to run the
program. Then stop the program by right click and click “Modify address to 0”.
6) The status value of DB2.DBD 6 should now have been changed to the new
preset value.
7) Change the value in DB1.DBB 1 to 01hex (B#16#01#) and click modify variable.
8) To set the encoder to the new preset value bit 12 in control word must be set to
1. This is done by writing 1000hex (W#16#1000) to address PQW 2. Then click
the button Modify variable to make the preset of the encoder.
9) The encoder can now at any time be set to the preset value by setting bit 12 in
control word (G1_STW).
67
Page 68
Functional description of the encoder
Function
Code sequence
Class 4 functionality
G1_XIST1 Preset control
Scaling function control
Alarm channel control
Compatibility mode
Preset value
Preset value 64 bit
Measuring units per revolution/Measuring step
To tal measuring range
Measuring units per revolution 64 bit
To tal measuring range 64 bit
Maximum Master Sign of Life failures
Velocity measuring unit
Encoder Profile version
Operating time
Offset value
Offset value 64 bit
7 Functional description of the encoder
This chapter describes the functions that have been implemented
in PROFINET encoders from HEIDENHAIN. The table below
shows the supported functions in the PROFINET encoder.
Ta ble 32 Supported encoder functions
68
Page 69
7.1 Code sequence
Attribute
Meaning
Valu e
CW
Increasing position values with clockwise
rotation (seen from shaft side)
0
CCW
Increasing position values with counter
clockwise rotation (seen from shaft side)
1
Attribute
Meaning
Valu e
Enable
Scaling/preset/code sequence control
enabled
1
Disable
Scaling/preset/code sequence control
disabled
0
The code sequence defines whether the absolute position value
should increase during clockwise or counter clockwise rotation of
the encoder shaft seen from flange side. The code sequence is by
default set to increase the absolute position value when the shaft
is turned clockwise (0).
Table 33 Code sequence
Note: The position value will be affected when the code se-
7.2 Class 4 functionality
This parameter enables or disables the measuring task functions
Scaling, Preset and Code sequence. If the function is enabled,
scaling and Code sequence control affects the position value in
G1_XIST1, G1_XIST2 and G1_XIST3. A preset will in this case always affect G1_XIST2 and G1_XIST3 but if the parameter
G1_XIST1 Preset control is disabled the preset will not affect the
position value in G1_XIST1.
Functional description of the encoder
quence is changed during operation. It might be necessary to perform a preset after the code sequence has
been changed.
Table 34 Class 4 functionality
69
Page 70
Functional description of the encoder
Attribute
Meaning
Valu e
Enable
G1_XIST1 is affected by a preset command
0
Disable
Preset does not affect G1_XIST1
1
Attribute
Meaning
Valu e
Enable
Scaling function is enabled
1
Disable
Scaling function is disabled
0
7.3 G1_XIST1 Preset control
This parameter controls the effect of a preset on the G1_XIST1
actual value.
If Class 4 functionality is activated and G1_XIST1 Preset control is
disabled, the position value in G1_XIST1 will not be affected by a
Preset.
Table 35 G1_XIST1 Preset control
Note: This parameter is disabled by setting the value to 1.
Note: There is no functionality of this parameter if the Class 4
functionality parameter is disabled.
7.4 Scaling function control
This parameter enables or disables the Scaling function of the encoder.
Table 36 Scaling function control
Note: The parameter Class 4 functionality must be enabled
70
to use this parameter.
Page 71
7.5 Alarm channel control
Attribute
Meaning
Valu e
Enable
Profile specific diagnosis is switch on
1
Disable
No profile specific diagnosis (default)
0
This parameter enables or disables the encoder specific Alarm
channel transferred as Channel Related Diagnosis. This functionality is used to limit the amount of data sent in isochronous mode.
If the value is zero (default value) only the communication related
alarms are sent via the alarm channel. If the value is one (1) also
encoder profile specific faults and warnings are sent via the alarm
channel.
Table 37 Alarm channel control
Note: This parameter is only supported in compatibility
mode.
Functional description of the encoder
71
Page 72
Functional description of the encoder
Attribute
Meaning
Valu e
Enable
Compatibility with encoder Profile V3.1
0
Disable
No backward compatibility (default)
1
Function
Compatibility mode enabled (=0)
Compatibility mode
disabled (=1)
Control by PLC
Ignored, the control word
ported and is set to 0.
Supported
User parameter Maximum
Supported
Not supported, one Sign of
PROFIdrive P925 is optional
toring.
User parameter Alarm
Supported
Not supported, the applica-
PROFIdrive parameter.
P965 Profile Version
31 (V3.1)
41 (V4.1)
7.6 Compatibility mode
This parameter defines if the encoder should run in a mode compatible to Version 3.1 of the Encoder Profile. See below for an
overview of functions affected when the compatibility mode is
enabled.
Table 38 Compatibility mode
(STW2_ENC)
Master Sign of Life failures
channel control
Table 39 Compatibility mode overview
72
(G1_STW) and the set point
values are always valid.
Control requested
(ZSW2_ENC) is not sup-
Life failure tolerated,
to control the life sign moni-
tion alarm channel is active
and controlled by a
Page 73
7.7 Preset value
Functional description of the encoder
The preset value function enables adaptation of the position value
from the encoder to a known mechanical reference point of the
system. The preset function sets the actual position of the encoder to zero (= default value) or to the selected preset value. The
preset function is controlled by bits in the control word (G1_STW)
and acknowledged by a bit in the status word (G1_ZSW). A preset
value can be set more than once and it can be stored to the nonvolatile memory using PROFIdrive parameter 9 7 1.
The preset function has an absolute and a relative operating mode
selectable by bit 11 in the Control word (G1_STW). Bit 11 and bit
12 in the Control word controls the preset in the following way.
Normal operating mode: Bit 12 = 0
In this mode, the encoder will make no change in the output value.
Preset mode absolute: Bit 11 =0, Bit 12 = 1
In this mode, the encoder reads the current position value and
calculates an internal offset value from the preset value and the
current position value. The position value is then shifted with the
calculated offset value to get a position value equal to the preset
value. No preset will be made if a negative preset value is used
while trying to initiate an absolute preset.
Preset mode relative: Bit 11 =1, Bit 12 = 1
In this mode the position value is shifted by the preset value,
which could be a negative or a positive value set by encoder parameter 65000 or 65002.
The steps below should be followed by the IO-controller when
modifying the Preset value parameters:
1. Read the requested Preset value parameter and check if the
returned value meets the application requirements. If not,
proceed with the following steps.
2. Write the Preset value into the individual parameter.
3. Store the value in the non-volatile memory by PROFIdrive parameter 971 if the value should be valid also after the next
power on sequence.
Note: The preset function should only be used at encoder
standstill.
Note: The number of possible preset cycles is unlimited.
73
Page 74
Functional description of the encoder
Parameter
Meaning
Data type
Measuring units
per revolution
The single turn resolution
in measuring steps
Unsigned 32
Measuring units
The single turn resolution
exceeding 32 bits.
Unsigned 64
Note: If scaling is used the preset function shall be used after
the scaling function to ensure that the preset value is
entered in the current measuring unit.
Note: There is no preset activated when the preset value is
written to the encoder. The preset function is controlled
by bits in the control and status words (G1_STW and
G1_ZSW) and bit in the operating parameters. The preset value is used when a preset is requested by bit 12
in the control word (G1_STW).
7.8 Scaling function parameters
The scaling function converts the encoder’s physical absolute position value by means of software in order to change the resolution of the encoder. The scaling parameters will only be activated
if the parameter Class 4 functionality and Scaling function control
are enabled. The permissible value range for the scaling is limited
by the resolution of the encoder. The scaling parameters are securely stored in the IO controller and are reloaded into the encoder at each power-up.
7.8.1 Measuring units per revolution
This parameter sets the single turn resolution of the encoder. In
other words it is the number of different measuring steps during
one revolution of the encoder.
Example:
For a 13-bit encoder with a single turn resolution of 13 bits the
permissible value range for "Measuring units per revolution" is between 2
0
and 213 (8192).
74
per revolution
64 bit
in measuring steps for encoders with a resolution
Table 40 Measuring units per revolution
Note: After downloading new scaling parameters, the preset
function must be used to set the encoder starting
point to absolute position 0 or to any required starting
position within the scaled operating range.
Page 75
7.8.2 Total measuring range
This parameter sets the total measuring range of the encoder. The
total measuring range is calculated by multiplying the single turn
resolution with the number of distinguishable revolutions.
Example:
The total measuring range for a 25 bit multi turn encoder with a 13
bit single turn and a 12 bit multi turn resolution is between 2
25
2
(33 554 432).
The total measuring range is calculated as below:
Measuring units per revolution x Total measuring range
= 8192 (2
= 33554432
13
) x 4096 (212)
If the total measuring range is higher than 31 bit, telegram 84 and
acyclic encoder parameter 65002 and 65003 must be used. In
this case the 64 bit values are used and the 32 bit values are set
to zero (0) by the encoder.
The device has two different operating modes, depending on the
specified measuring range. When the device receives a parameter message, it checks the scaling parameters if a binary scaling
can be used. If binary scaling can be used, the device selects operating mode A (see following explanation). If not, operating mode
B is selected.
Functional description of the encoder
0
and
75
Page 76
Functional description of the encoder
A. Cyclic operation (binary scaling)
Cyclic operation is used when operating with 2
X
number of turns
(2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048. 4096... number of
turns). If the desired total measuring range is equal to the specified single turn resolution * 2
X
(where x<= 12) the encoder operates in endless cyclic operation (0 - max - 0 -max). If the position
value increases above the maximum value by rotating the encoder shaft, the encoder continues from 0.
Example of a cyclic scaling:
Measuring units per revolution = 1 000
Total measuring range = 32 000
5
= number of revolutions 32)
(2
Figure 36 Cyclic operation
76
Page 77
Functional description of the encoder
B. Non-cyclic operation
If the desired total measuring range is not equal to the specified
X
single turn resolution * 2
(where x<= 12) the encoder operates
in non-cyclic operation. The non -cyclic operation is affected by the
parameter G1_XIST1 Preset control as described below.
G1_XIST1 Preset control = Enabled
If the position value increases or decreases outside the maximum
value or below 0 with the parameter G1_XIST1 Preset control en-abled, the device outputs the maximum position value within the
scaled total range for both position values G1_XIST1 and
G1_XIST2.
Example of non-cyclic scaling with G1_XIST1 Preset control
enabled:
Measuring units per revolution = 100
Total measuring range = 5000
(number of revolutions 50)
Figure 37 Non cyclic operation, preset control enabled
77
Page 78
Functional description of the encoder
G1_XIST1 Preset control = Disabled
With the parameter G1_XIST1 disabled, and if the position value
increases or decreases outside the maximum value or below 0,
the device will output the maximum position value within the
scaled total range for the position value G1_XIST2. The position
value G1_XIST1 is not limited to the scaled total range. For the
position value G1_XIST1, the device will continue to output a
scaled position value within the encoder’s total measuring range
(up to 33554432 positions for a 25 bit encoder).
Example of non-cyclic scaling with G1_XIST1 Preset control
disabled:
Measuring units per revolution = 100
Total measuring range = 5000
(number of revolutions 50)
Figure 38 Non cyclic operation, preset control disabled
78
Page 79
Handling 64 bit data
Parameter
Meaning
Valu e
Maximum Master
The number of permissible
sign.
1...255
MSB
LSB
4 byte=32 bit
4 byte=32 bit
Siemens hardware configuration tool does not support 64 bit data
type, so when writing larger numbers than 32 bit into the configuration tool, this needs to be done according to below:
Example:
Total measuring range in measuring units = 2
36
= 68719476736= 0x 00 00 00 10 00 00 00 00
2
Take the 4 least significant bytes above and convert to decimal:
0x00 00 00 00 =0
=Total measuring range LSB
Then take the 4 most significant bytes above and convert to
decimal:
0x00 00 00 10 =16=Total measuring range MSB
In the configuration software enter the decimal values:
Total measuring range LSB = 0
Total measuring range MSB = 16
7.9 Maximum Master Sign-of-Life failures
With this parameter the number of allowed failures of the master´s sign of life is defined. The default value is one (1).
Functional description of the encoder
36
Sign-of-Life failures
failures of the masters life
Table 41 Maximum master Sign of life failures
Note: This parameter is only supported in compatibility
mode.
79
Page 80
Functional description of the encoder
Parameter
Meaning
Valu e
Velocity measuring
Definition of the units for
value
See below
Velocity measuring units
Valu e
Steps/s
0
Steps/100ms
1
Steps/10ms
2
RPM
3
7.10 Velocity measuring units
This parameter defines the coding of the velocity measuring units
used to configure the signals NIST_A and NIST_B. Standard telegram 81 has no velocity information included and the encoder
does not use the velocity unit information in this case. Telegram
82,83,84 and 59001 includes velocity output and needs a declaration of the velocity measuring unit.
units
the encoder velocity output
Table 42 Velocity measuring units
The velocity calculations are made with a maximum of 19
resolution. If the resolution is higher than 2
velocity calculations is automatically reduced to 2
19
, the value used for
19
bits
.
Example:
For a 37 bit multi turn encoder with a 2
12
and a 2
velocity calculations will be 2
multi turn resolution, the maximum single turn value for
19
imum resolution can be up to 31 bit, but the value used for velocity calculations will in this case also be 2
25
single turn resolution
. For a single turn encoder the max-
19
.
Note: In case of the steps/s unit, an average is made over
200 ms and the value is multiplied by 5.
Note: If scaling has been set on the device the velocity calcu-
lation is based on the scaled position value. Consequently the accuracy of the velocity value is dependent
of the scaling set to the device.
80
Page 81
7.11 Encoder profile version
Bits
Meaning
0..7
Profile Version, least significant number,
(value range: 0-99), decimal coding
The encoder Profile Version is the version of the encoder profile
document implemented in the encoder. This parameter is not affected by the Compatibility mode settings.
Table 43 Encoder profile
7.12 Operating time
The operating time monitor stores the operating time for the device in operating hours. The operating time is saved every six
minutes in the non-volatile memory in the device. This happens as
long as the device is powered on.
If the operating time function is not used the operating time value
is set to the maximum value (0xFFFF FFFF).
Functional description of the encoder
Table 44 Operating time
81
Page 82
Functional description of the encoder
Parameter
Meaning
Data type
Offset value
The offset value for encoders with a measuring range
of maximum 32 bits
Integer 32
Offset value 64 bit
The offset value for encoders with a measuring range
exceeding 32 bits
Integer 64
7.13 Offset value
The offset value is calculated in the preset function and shifts the
position value with the calculated value. The offset value is stored
in a non volatile memory and can be read from the encoder at any
time. The data type for the offset value is a 32 bit or 64 bit binary
value with sign, whereby the offset value range is equal to the
measuring range of the device.
The preset function is used after the scaling function. This means
that the offset value is indicated according to the scaled resolution
of the device.
Table 45 Offset value
Note: The offset value is read only and cannot be modified
by a parameter write access.
82
Page 83
7.14 Acyclic data
PNU (Prm.no)
Significance
Data type
Read/Write
922
Telegram selection
Unsigned 16
R
925
Number of Controller Sign-of-Life
failures which may be tolerated.
Unsigned 16
R/W
964
Device identification
Array[n]
Unsigned 16
R
965
Encoder Profile number
Octet string 2
R
971
Transfer to non volatile memory
Unsigned 16
W
9 74
Base Mode Parameter Access
service identification
Array[n]
Unsigned 16
R
975
Encoder object identification
Array[n]
Unsigned 16
R
979
Sensor format
Array[n]
Unsigned 32
R
980
List of supported parameters
Array[n]
Unsigned 16
R
The PROFINET encoder support the following acyclic data exchange functions.
7.14.1 PROFIdrive parameters
The encoder profile V4.1 (PNO no. 3.162) has adopted certain
standard PROFIdrive parameter. The following PROFIdrive parameters are supported:
Functional description of the encoder
Table 46 Supported PROFIdrive parameters
83
Page 84
Functional description of the encoder
PNU (Prm.no)
Significance
Data type
Read/Write
61000
Name of station
Octet String
[240]
R
61001
IP of station
Unsigned 32
R
61002
MAC of station
Octet String[6]
R
61003
Default gateway of station
Unsigned 32
R
61004
Subnet Mask Of Station
Unsigned 32
R
65000
Preset value
Integer 32
R/W
65001
Operating status
Array [n]
Integer 32
R
65002
Preset value 64 bit
Integer 64
R/W
65003
Operating status 64 bit
Array [n]
Integer 64
R
7.14.2 Encoder parameter numbers
The table below specifies the encoder specific parameter that is
supported.
Table 47 Encoder parameter numbers
84
Page 85
Functional description of the encoder
PNU
65000
Significance
Preset value
Data type
Integer 32
Access
Read and write
Validity range
Profile specific
Explanation
The preset value sets the value for the preset
rameter 971 and will be reloaded at each start
up if stored.
PNU
65002
Significance
Preset value
Data type
Integer 64
Access
Read and write
Validity range
Profile specific
Explanation
The preset value sets the value for the preset
rameter 971 and will be reloaded at each start
up if stored.
7.14.3 Parameter 65000 and 65002- Preset value
The parameter 65000 and 65002 sets the value for the preset
function. The parameter 65002 should be used if the preset value
exceeds 32 bits.
function. The preset value can be stored in
the non volatile memory by PROFIdrive pa-
Table 48 Parameter 65000, Preset value
Table 49 Parameter 65002, Preset value 64 bit
function. The preset value can be stored in
the non volatile memory by PROFIdrive pa-
85
Page 86
Functional description of the encoder
PNU
65001
Significance
Encoder Operating Status
Data type
Array[n] Integer 32
Access
Read
Validity range
Profile specific
Explanation
The operating status displays the status of
the encoder.
7.14.4 Parameter 650 01-Operating status
This parameter structure is a read only structure where information on the Encoder operating status can be found. It is a complement to the PROFIdrive parameter 979 described in the Profile
for Drive Technology, PROFIdrive V4.1, Order nr 3.172 available
from PROFIBUS and PROFINET International.
Table 50 Parameter 65001, Operating status
86
Page 87
Functional description of the encoder
Sub index
Meaning
0
Header
1
Operating status
2
Faults
3
Supported Faults
4
Warnings
5
Supported warnings
6
Encoder Profile version
7
Operating time
8
Offset value
9
Measuring units per revolution
10
Total measuring range in measuring units
11
Velocity measuring unit
Table 51 Parameter 65001, Sub index
87
Page 88
Functional description of the encoder
Bits
Definition
0
Code sequence
1
Class 4 functionality
2
G1_XIST1 Preset control
3
Scaling function control
4
Alarm channel control
5
Compatibility mode
6...7
Reserved for the Encoder manufacturer
8..31
Reserved for future use
Sub index 1: Operating status
In sub index 1 the status of different encoder functions can be
read out. The mapping of the respective functions is according to
the table below.
Table 52 Parameter 65001, Sub index 1
88
Page 89
7.14.5 Parameter 65003- operating status 64 bit
PNU
65003
Significance
Encoder Operating Status 64 bit
Data type
Array[n] Integer 64
Access
Read
Validity range
Profile specific
Explanation
The status of encoder operating parameters
with 64 bit length.
Sub index
Meaning
0
Header
1
Offset value 64 bit
2
Measuring units per revolution 64 bit
3
Total measuring range in measuring units
64 bit
The parameter structure 65003 is a read only structure where information on the 64 bit parameter values can be found.
Table 53 Parameter 65003, Operating status 64 bit
Functional description of the encoder
Table 54 Parameter 65003, Sub index
89
Page 90
Functional description of the encoder
I&M Parameter
Octets
Comment
Header
Manufacturer specific
10
Not used
I&M Block
MANUFACTURER_ID
2
Manufacturer Id
ORDER_ID
20
Encoder part number
SERIAL_NUMBER
16
Encoder serial number
HARDWARE_REVISION
2
Not used
SOFTWARE_REVISION
4
Software revision
REVISION_COUNTER
2
Not used
PROFILE_ID
2
Encoder Profile number
PROFILE_SPECIFIC_TYPE
2
Type of encoder,
IM_VERSION
2
Version of the I&M profile
IM_SUPPORTED
2
Value = 0 means support of I&M
7.14.6 Identification & Maintenance functions
In addition to the PROFIdrive parameter 964, Device Identification, I&M functions are supported by the encoder. The I&M functions can be accessed with record index 0xAFF0-0xAFF4. The following I&M functions are supported.
90
Table 55 Identification & Maintenance
Page 91
8 Firmware upgrade
The encoder supports a firmware upgrade function. The firmware
upgrade function is developed to offer the possibility to upgrade
the encoders in the future.
Before the upgrade of the encoder can start, the following tools
are needed:
• A running TFTP server
• A WEB browser (Internet Explorer, Firefox, Opera etc.)
The encoder itself puts no restrictions on what TFTP server to
use. The customer can choose to use any TFTP servers.
Firmware upgrade in a PROFINETnetwork.
• This is when the encoder is connected to a PROFINET net-
work. The encoder will be provided with an IP address from the
PROFINETIO controller(with DCP).
Firmware upgrade
91
Page 92
Firmware upgrade
8.1 Firmware upgrade in a PROFINET network
The following prerequisites have to be fulfilled in order to upgrade
the encoder in a PROFINET network:
• The encoder should be attached to the network.
• The encoder must have a valid Device name and a valid IP ad-
dress (assigned with DCP).
• A TFTP server should be enabled on the LAN where the en-
coder is attached. See chapter8.4 for an example how to set
up a TFTP server.
Once the encoder has been assign a valid IP address it should be
accessible on the network. Enter the encoders IP address in the
WEB browser to open the Firmware upgrade page.
Figure 39 Firmware upgrade startpage
92
Page 93
Firmware upgrade
When accessing the encoder with the web browser it will display
a number of parameters. In the firmware upgrade section of the
page, enter the following information:
• Server IP address - Enter the IP address to the TFTP server on
the LAN
• Firmware filename - Enter the full file name of the new firm-
ware file supplied by the TFTP server
• Date - Enter the current date for the upgrade. This is stored as
part of the Upgrade History. The format is yyyy-mm-dd. E.g.
2010 -11-15.
Figure 40 Firmware upgrade settings
93
Page 94
Firmware upgrade
The parameters are set by clicking the Submit Values button. After
clicking the Submit Values button, update the page in the web
browser. To start the upgrade, click on the Upgrade button.
A confirmation page is displayed where the upgrade has to be
confirmed before the device starts the actual firmware upgrade
process. The Continue button needs to be clicked in order to start
the upgrade sequence.
Figure 41 Firmware upgrade confirmation page
94
Page 95
Firmware upgrade
During upgrade a progress page is displayed. Depending upon the
choice of web browser, the auto generated progress page will
take some time to be displayed. However, the progress web page
should always be displayed when the upgrade is finished. If no errors occur during upgrade the encoder will automatically reboot itself and connect to the PROFINET IO-controller with the new
firmware.
Figure 42 Firmware upgrade status page
During the upgrade, both the bus status LED and the device status LED will be flashing green. If an error occurs both LEDS will
be flashing red.
If the upgrade fails check the error code displayed on the progress
page. The error codes are described in chapter 8.3.
95
Page 96
Firmware upgrade
8.2 Error handling
This chapter will list all the possible error codes that can occur during an upgrade error. The error code will be visible on the feedback
webpage. If an error occurs the device will not reboot itself automatically. Instead it will wait upon user action. This is to allow
the user to take the next step. E.g. the user might want to check
some parameters before rebooting or try to run the upgrade procedure again.
Failed to download firmware file from server
Error code: -2
The user should verify the IP address and the image filename. If
any of them is incorrect the user should go back and submit the
correct parameters at the main html page (index.html). If the parameters are correct the user should verify that the TFTP server is
running on the host computer and that the TFTP server settings
are correct.
Host not responding/No contact with host computer
Error code: -3
The user should verify that the host computer is connected to the
encoder. The ping command can be used for this purpose. If connected, go back to upgrade.html and click Confirm to try and upgrade again.
Checksum Error/File image error
Error code: -4
Calculated checksum doesn’t match the one supplied by the image file. The most likely cause for this problem is that there was
an error when downloading the file to the encoder. Go back to
upgrade.html and press Confirm and try again.
Flash Erase/Write Error
Error code: -5
The image might be corrupt. Flash Erase or Write failed. If this error occurs the device can still start with its failsafe image. It will be
displayed by the Execution State parameter on the web Page.
96
Page 97
File Size Error
Error Code: -6
The firmware file is too big to be written to flash.
Insufficient Memory
Error Code: -7
There is not enough memory available to store the firmware file
image.
Invalid Firmware File
Error Code: -8
Firmware file is not supported for this hardware.
Firmware upgrade
97
Page 98
Firmware upgrade
8.3 TFTP server installation
The TFTP ser ver used in this example is a freeware TFTP server
for Windows NT/XP/Vista platforms and it can be downloaded
www.solarwinds.com.
from
Unzip the installation file and double click on the SolarWindsTFTP-Server.exe file to start the installation. Follow the instructions on the screen to complete the installation.
Create a folder on C:\ named TFTP_Root (if it not already exists).
Copy or Move the new firmware file used to the C:\TFTP_Root directory.
Start the SolarWinds TFTP server and click on the File->Configure
tab to open up the Configure window.
98
Figure 43 SolarWinds TFTP server
Page 99
Firmware upgrade
In the Configure window:
• Make sure that the correct network interface is selected in the
Used NIC selection menu. I.e. it is the network interface which
is connected to the encoder network.
• Set up the path to the TFTP root directory. I.e. the TFTP-Root di-
rectory created under C:\.
• Leave the other parameters with their default values.
• Click Start to start the TFTP server service in Windows.
Figure 44 SolarWinds TFTP server settings
Note: The server will listen to port 69. Verify that there is no
firewall blocking the port for incoming/outgoing requests. Disable any firewall temporarily if communication problems occur.
99
Page 100
Encoder replacement using LLDP
9 Encoder replacement using LLDP
The encoder supports Link Layer Discovery Protocol (LLDP).
LLDP is essentially a neighbor discovery protocol used by network devices for advertising of their identity, capabilities and interconnections.
In a PROFINET network all IO devices are recognized by their device name.
Sometimes an IO device needs to be replaced in an automation
system, and this is when LLDP is useful. Using LLDP, the neighbor relations between the individual IO device and the IO controller are analyzed and stored on the IO controller. If an IO device
has been replaced, the IO controller will recognize this and will
redefine the device name.8
Follow the instruction below to exchange an IO device using
LLDP:
Select properties of the PN-IO controllers interface module and
enable Support device replacement without exchangeable medium.
Figure 45 LLDP Properties
100
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.