Professional Documents
Culture Documents
Festo Motion FHPP Rockwell
Festo Motion FHPP Rockwell
Festo Motion FHPP Rockwell
www.festo.de
Library of AOI for
motor controller with FHPP
Festo Motion FHPP Add-On Instructions (AOIs)
(Rockwell RSLogix Design Studio 5000)
for Rockwell PLCs
07.12.2020
Table of Contents
1 Important instructions................................................................................................................................... 4
1.1 Designated use ................................................................................................................................... 4
1.2 Safety instructions .............................................................................................................................. 5
1.3 Danger categories ............................................................................................................................... 5
1.4 Marking special information ............................................................................................................... 6
2 Introduction ................................................................................................................................................... 7
2.1 Basic principles ................................................................................................................................... 7
2.2 General information on Festo motor controllers .................................................................................. 7
ii
Table of Contents
7 Examples ..................................................................................................................................................... 50
7.1 Controlling a Festo motor controller .................................................................................................. 50
7.1.1 Prerequisites for ready status............................................................................................... 51
7.1.2 Establishing the ready state ................................................................................................. 51
7.1.3 Homing................................................................................................................................. 51
7.1.4 Setting and operation of "Record selection" ........................................................................ 51
7.1.5 Setting and operation of "Direct mode position control" ..................................................... 52
7.1.6 Setting and operation of "Direct mode force / torque control" ............................................ 52
7.1.7 Setting and operation of "Direct mode speed control" ......................................................... 53
7.2 Parameterisation of a Festo motor controller .................................................................................... 54
7.2.1 Prerequisites for communication .......................................................................................... 54
7.2.2 Reading parameters ............................................................................................................. 55
7.2.3 Writing parameters............................................................................................................... 55
8 Glossary ...................................................................................................................................................... 56
iii
1 Important instructions
1.1 Designated use
The Add-On Instructions (AOIs) of the Festo_Motion_FHPP_Rockwell library are used to control and parameterise
o the CMMD-AS-C8-3A double motor controller,
o the CMMO-ST-C5-1-LKP motor controller,
o the CMMP-AS motor controller family,
o the CMMS-AS and CMMS-ST motor controller family,
o the EMCA-EC motor unit.
You can use them to conveniently integrate the many functions of the device into your RSLogix 5000 control
program. AOIs are integrated into the user program for each motor unit or motor controller (each axis) and called
cyclically using a separate instance. Simultaneous use of other AOIs for controlling the same device is not
permitted.
Read the "Safety instructions" and instructions on the designated use of the relevant devices, components and
modules. If additional commercially available components such as sensors and actuators are connected, the
specified limits for pressures, temperatures, electrical data, torques, etc. must not be exceeded.
Target group
This manual is intended exclusively for technicians trained in control and automation technology, who have
experience in installation, commissioning, programming and diagnostics of positioning systems and the relevant
fieldbus.
Service
If you have a technical problem, please contact your local Festo service partner or use the respective contact
form at the following website.
www.festo.com/contact
4
Important instructions
Warning
Pneumatic and electric axes can move with high force and at high speed. Collisions can lead to serious
injury to people and damage to components.
• Make sure that nobody can place their hand in the positioning range of the axes or other
connected actuators and that there are no objects in the positioning path while the system is
still connected to a power supply.
Warning
Parameterisation errors can cause injury to people and damage to property.
• Only enable the controller if the axis system has been installed and parameterised by
technically qualified staff.
Warning
... means that serious injury to people and damage to property can occur if this warning is not
observed.
Caution
... means that injury to people and damage to property can occur if this warning is not observed.
Note
... means that damage to property can occur if this warning is not observed.
You can find information on how special information is represented under "Marking special information" (see
chapter 1.4).
5
Important instructions
Text markings
1. Figures denote activities that must be carried out in the order specified.
• Bullets denote activities that may be carried out in any desired order.
o denote general listings.
Further conventions
[Project | New] Menu items are framed in square brackets, for example the [New] command in the [Project]
menu opens a new project.
"OK" The names of windows, dialogs and buttons, e.g. "Message window," "Import project,"
"OK" as well as designations are displayed in inverted commas.
CTRL Names of keys on the PC keyboard are represented in the text with uppercase letters
(e.g. ENTER KEY, CTRL, C, F1 etc.).
CTRL+C For some functions you need to press two keys simultaneously. For example, press and hold
down the CTRL key and also press the C key. This is written in the text as CTRL+C.
If "click" or "double-click" is mentioned, this always applies to the left-hand mouse button. If
the right-hand mouse button is to be used, this will be explicitly mentioned.
6
2 Introduction
2.1 Basic principles
Festo_Motion_FHPP_Rockwell AOIs are a library of RSLogix 5000 to access to a Festo motor controller unit, using
the FHPP Protocol. With this library,
o the CMMD-AS motor controllers
o the CMMO-ST-C5-1-LKP motor controllers
o the CMMP-AS motor controllers
o the CMMS-AS and CMMS-ST motor controllers
o the integrated motor unit EMCA-EC
can be controlled and parameterised via their respective fieldbus interface.
A motor controller is controlled by means of the Festo Handling and Positioning Profile (FHPP). The library
contains AOIs to control and parameterise the drives. Refer to the User Documentation of the motor controller for
additional information on operating and setting up.
Architecture
Each motor controller is integrated into the project via the I/O Configuration menu, and exchanges cyclic data
with specific Add-On Instructions from the library.
For each motor controller, a separate instance of a AOI needs to be created for control or
parameterisation.
Note
Always observe the information and safety instructions in the documentation.
7
3 Festo Handling and Positioning Profile (FHPP)
Festo has developed an optimised data profile especially tailored to the target applications for handling and
positioning tasks, the "Festo Handling and Positioning Profile (FHPP)". The FHPP enables uniform control and
programming for the various fieldbus systems and controllers from Festo.
The FHPP defines the following for the user:
o Operating modes
o I/O data structure
o Parameter objects
o Sequence control
Parameter channel
The controller can access all parameter values of the controller by means of the parameter channel. A further
8 SINTs of I/O data are used for this purpose.
The AOIs FPC_xxx for parameterisation are described in chapter 5.5.
8
FHPP
Direct mode
In direct mode operating mode, the important positioning data is transferred directly via the control SINTs.
o Target positions and speeds can be ascertained and specified by the controller during running time,
depending on the operating status.
o No limitations due to the number of saved positioning records.
In direct mode values can be taught/parameterised via the PLC.
The following direct mode types can be selected:
o Direct mode position control
o Direct mode torque control
o Direct mode speed control
FML-CONTROL
o FHPP_CTRL – FHPP Control. This AOI controls the Festo motor controller. The input and output
variables resides in the DT_FML_REF structure.
o FHPP_PLUS – Data exchange of FHPP+ objects. This AOI permits data exchange of freely defined
additional objects, which are selected in the Festo Configuration Tool (FCT).
FML-PARAMETER
o FPC_DIAG – Festo Diagnostics Channel. This transmits a single parameter (PNU) to acquire the active
fault with the highest priority.
o FPC_PNU – Festo Parameter Channel for single parameter transmission. This AOI is used for
transmitting single parameters (PNUs) to/from the motor controller.
o FPC_MULTI – Festo Parameter Channel for multiple parameter transmission. This AOI is used to pass
an array of FHPP parameters (PNUs) to/from the motor controller.
o FPC_DIRMP – Festo Direct Mode Parameters. This AOI reads/writes values to the direct application –
positioning mode parameters (Base Velocity, Acceleration and Deceleration).
o FPC_FILE_ARRAY – Festo Parameter File Upload/Download. This AOI saves and restores parameter
files with the FCT project settings (Festo Configuration Tool Software).
o FPC_DATA_OBJECT – Festo Parameter Channel for internal Data Object transmission. This AOI is used
for transmitting single internal data objects to the motor controller.
9
4 Usage of the library
4.1 Import of the AOI’s
The Add-On Instructions can be imported in the Rockwell RSLogix5000 project file by, using the “Import Add-On
Instruction” for each Instruction. During this process, the programming logic and the dependant User-Defined
Data Types will be imported as well.
Note
Please see next page concerning AOIs that have a V20 designation in the name.
10
Usage of the library
11
Usage of the library
Issue:
When the project is downloaded with the required “instances” of the AOI (Add-On Instruction), the user will
notice that the “instances DO NOT HAVE THE DEFAULT VALUES that were originally assigned to the AOI (Add-On
Instruction).
Facts:
During discussions with Rockwell Technical Support, it was “assumed” that these default values “SHOULD” be
copied to the INSTANCES if the check box was checked.
The Issue is that the box is “grey out” and cannot be selected/checked.
12
Usage of the library
Solution:
For the meantime (pending Rockwell investigation), we found a work around. There is an alternative interface to
the tags within the AOI (Add-On Instruction) that is created as shown next. The user double clicks the
“Parameters and Local Tags” as shown below.
While in this alternate view, the user can select items at the top as shown below. The user needs to select the
AOI “Definition” then to the right, selects Copy all Values or Copy Selected Values. The preferred method when
creating a project is to select “Copy All Values”, however the user may choose the other method to provide a
popup menu to select “specific” tags.
When this has been executed, the default tag values selected will now be copied from the default values to the
instance values. The Rockwell help file describes this in the following manor.
Displays options to copy all default parameter and local tag values to all instance tags, or display a dialog you
can use to copy specific default values to specific instance tags (including copying specific default values to all
instance tags or copying all default values to specific instance tags).
13
5 Add-On Instruction Elements
5.1 FML_READ – Add-On Instruction to prepare the input data
The Add-On Instruction (AOI) FML_READ prepares the raw data from the motor controller and stores them in
normalized form in a data structure of type DT_FML_REF for the control AOI and the parameterisation AOIs.
o Normalising Big Endian / Little Endian fieldbus data
o Normalising the special data format of Modbus/TCP
Note
This AOI must be called before the execution of the control and parameterisation AOIs!
14
FML_READ – prepare the input data
15
FML_READ – prepare the input data
16
FML_READ – prepare the input data
Note
Not all devices support FHPP+. The operating instructions of the motor controller must be checked
before use.
Each object has up to 4 byte (32 bit) width and must be adapted to the fieldbus transfer specialities:
o Big- or Little Endian for objects with 2 or 4 byte width.
o The Modbus/TCP special word alignment.
The FML_READ AOI normalises the FHPP+ objects transferred from the motor controller to the PLC.
The transferred FHPP+ objects are described with the cfgFHPPplusIn variable. Each digit represents the width of
an FHPP+ object.
o 1 stands for an object with 8 bit width,
o 2 stands for an object with 16 bit width,
o 4 stands for an object with 32 bit width.
All other digits are not used!
Up to 10 FHPP+ objects with different sizes may be transferred. The objects are arranged in 8-byte packages. Up
to 3 FHPP+ packages are possible.
In the example above "Control Data" and "Parameter Channel" are used, therefore 16 byte are available for
FHPP+. The FHPP+ objects size is given right of "PLC Configuration".
The "PLC Configuration" must be assigned to cfgFHPPplusIn:= 44224 in the FLM_READ AOI.
The meaning of the digits from left to right:
o 4 = 32 bit object (FHPP+ object 1)
o 4 = 32 bit object (FHPP+ object 2)
o 2 = 16 bit object (FHPP+ object 3)
o 2 = 16 bit place holder
o 4 = 32 bit place holder
Therefore 2 FHPP+ packets are used.
17
FML_READ – prepare the input data
You have to assign the PLC Configuration for reading and writing separately. (cfgFHPPplusIn in AOI
FML_READ and cfgFHPPplusOut in AOI FML_WRITE (see chapter 5.2)).
18
FML_READ – prepare the input data
This structure is only a data container to transfer data between the AOI’s. Please do not modify data
within this structure manually.
19
FML_READ – prepare the input data
Note
There are other considerations for configuring a fieldbus type (i.e. DIL switches). Please refer to the
Festo user manuals for this specific information.
Figure: Control interface configuration of the motor controller in the FCT software
Configure the “desired” I/O memory mapping which relates to the FML_READ AOI (Add-On Instruction) in the
following manor:
Control Data Required FHPP (Festo Handling Positioning Profile) area of memory
Parameter Channel Optional FPC (Festo Parameter Channel) area of memory
FHPP+ Data Optional FHPP+ (Enhanced flexible cyclic area data memory)
20
FML_READ – prepare the input data
After the motor controller is set up, the EtherNet/IP Master for Rockwell RSLogix 5000 must be configured. Add
either a generic module or a module using an EDS (Electronic Data Sheet) file from Festo. Configure the IO
(Inputs/Outputs) data size to match what was previously configured in the FCT (Festo Configuration Tool
Software) project. Afterwards the fieldbus raw data could be mapped to the AOIs FML_READ respectively
FML_WRITE – see figures below.
21
FML_READ – prepare the input data
Figure: EtherNet/IP fieldbus data mapping to the AOI FML_READ and AOI FML_WRITE
The raw fieldbus data need special attention to the specific byte / word arrangement.
Typical values for EtherNet/IP are:
o Modbus := FALSE;
o HighByteFirst := FALSE;
22
FML_READ – prepare the input data
Note
The master must be implemented according to the IO-Link specification 1.1! A matching IODD device
description file can be found in the Festo Support Portal. Also see the IO-Link specific documentation
of the device.
The following figures show an example of the device configuration with an IO-Link master.
23
FML_READ – prepare the input data
Figure: IO-Link fieldbus data mapping to the AOI FML_READ and AOI FML_WRITE
The raw fieldbus data need special attention to the specific byte / word arrangement.
Typical values for IO-Link are:
o Modbus := FALSE;
o HighByteFirst := TRUE;
24
5.2 FML_WRITE – Add-On Instruction to prepare the output data
The FML_WRITE AOI prepares the output data for the motor controller and transfers it. Data preparing consist of:
o Byte arrangement for Big or Little Endian transfer via fieldbus,
o Special word arrangement if Modbus/TCP is used.
Note
The related instance of this AOI must be called after execution of the control AOI and the
parameterisation AOIs!
25
FML_WRITE – prepare the output data
26
FML_WRITE – prepare the output data
27
FML_WRITE – prepare the output data
Note
Not all devices support FHPP+. The operating instructions of the motor controller must be checked
before use.
Each object has up to 4 byte (32 bit) width and must be adapted to the fieldbus transfer specialities:
o Big- or Little Endian for objects with 2 or 4 byte width.
o The Modbus/TCP special word alignment.
The FML_WRITE AOI prepares the FHPP+ objects for the transmission from the PLC to the motor
controller.
The transferred FHPP+ objects are described with the cfgFHPPplusOut variable. Each digit represents the width
of an FHPP+ object.
o 1 stands for an object with 8 bit width,
o 2 stands for an object with 16 bit width,
o 4 stands for an object with 32 bit width.
All other digits are not used!
Up to 10 FHPP+ objects with different sizes may be transferred. The objects are arranged in 8-byte packages. Up
to 3 FHPP+ packages are possible.
In the example "Control Data" and "Parameter Channel" are used, therefore 16 byte are available for FHPP+. The
FHPP+ objects size is given right of "PLC Configuration".
The "PLC Configuration" must be assigned to cfgFHPPplusOut := 44224.
The meaning of the digits from left to right:
o 4 = 32 bit object (FHPP+ object 1)
o 4 = 32 bit object (FHPP+ object 2)
o 2 = 16 bit object (FHPP+ object 3)
o 2 = 16 bit place holder
o 4 = 32 bit place holder
Therefore 2 FHPP+ packets are used.
28
FML_WRITE – prepare the output data
You have to assign the PLC Configuration for reading and writing separately. (cfgFHPPplusIn in AOI
FML_READ(see chapter 5.1) and cfgFHPPplusOut in AOI FML_WRITE).
29
FHPP-CTRL – Add-On Instruction for controlling
Note
The associated FML_READ instance must be called before a call to the FHPP_CTRL instance, because
FML_READ prepares the input data from the motor controller.
After the FHPP_CTRL execution the associated FML_WRITE instance must be called to prepare the
output data for the motor controller in the correct format for fieldbus transfer.
31
FHPP-CTRL – Add-On Instruction for controlling
32
FHPP-CTRL – Add-On Instruction for controlling
SetValueVelocity DINT Velocity set point as a % of the reference value (limited to 100%)
• Direct application - positioning mode: Target velocity
• Direct application - force/torque mode for CMMO-ST or
EMCA-EC: velocity limit
SetValuePosition DINT Position set point in the positioning unit
(Only for direct application - positioning mode)
SetValueForce DINT Force / torque set point as a % of the reference value
(Only for direct application - force/torque mode)
SetValueForceRamp DINT Force /torque ramp set point as a % of the reference value (limited
to 100%)
(Only for direct application - force/torque mode and only for the
CMMP-AS motor controller)
SetValueRotRamp DINT Velocity ramp set point as a % of the reference value (limited to
100%)
(Only for direct application - velocity mode)
SetValueRotVelocity DINT Velocity set point in velocity unit
(Only for direct application - velocity mode)
ExecuteFunction(1) BOOL CMMP-AS only: Activating the cam disc function
= TRUE: Cam disc function active
= FALSE: Cam disc function inactive
SetFunctionNumber(1) INT Cam disc function number:
1 =Synchronisation on external input
2 =Synchronisation on external input with cam disc function
3 =Synchronisation on virtual master with cam disc function
SetFunctionGroup(1) INT Cam disc function group:
0: Only valid value
Remark (1): This input variables are working only with the CMMP-AS family.
33
FHPP-CTRL – Add-On Instruction for controlling
34
FHPP-CTRL – Add-On Instruction for controlling
Remark (1): This input variables are working only with the CMMP-AS family.
35
FHPP_PLUS
Note
The data is transferred to the fieldbus in the parameter sizes 1 byte, 2 byte and 4 byte (see also
chapter 5.1.4 and chapter 5.2.3). Within the PLC, all FHPP+ data is converted to the DINT data type.
Please note the positive/negative signs and value limits.
The availability of the FHPP+ data channel is device-dependent. See the device description for
further information.
36
FPC_xxx – Add-On Instructions for parameterisation
X = The motor controller supports the AOI with Rockwell RSLogix Design Studio 5000.
- = The AOI is not usable with this motor controller.
Note
The associated FML_READ instance must be called before a call to the FPC_xxx instance, because
FML_READ prepares the input data from the motor controller. The cfgFPC input of this AOI must be
set to TRUE.
After the FPC_xxx execution the associated FML_WRITE instance must be called to prepare the
output data for the motor controller in the correct format for fieldbus transfer.
37
FPC_xxx – Add-On Instructions for parameterisation
Note
The FPC_DATA_OBJECT AOI is only usable with the CMMD-AS, the CMMP-AS and the CMMS-AS/-ST
controller types!
Note
The device specific objects are not published! If required, please contact the Festo Service.
38
FPC_xxx – Add-On Instructions for parameterisation
Remark 1:
The device specific objects are not published! If required, please contact the Festo Service.
39
FPC_xxx – Add-On Instructions for parameterisation
40
FPC_xxx – Add-On Instructions for parameterisation
PNU Parameter
540.1 Basic velocity
541.1 Acceleration
542.1 Deceleration
41
FPC_xxx – Add-On Instructions for parameterisation
Note
The FPC_FILE_ARRAY AOI is only usable with the CMMO-ST and EMCA-EC controller type!
The size of the parameter set depends on the controller and the actual firmware. Therefore the size of
the byte array which stores the data is little bigger than the parameter set. The size of the byte array
is 25000 bytes.
Functional description
o The transfer direction is selected with the "Upload" or "Download" input to "TRUE" state.
o The parameter set is stored in a declared byte array.
o If the byte array holds a parameter set, an "Upload" will overwrite it.
o A communication error will abort a transfer immediately.
o Each transfer unit is monitored by a time-out.
o The overall transfer may use a couple of minutes!
42
FPC_xxx – Add-On Instructions for parameterisation
Remark (1): Only one of the both signals "Upload" or "Download" should be set!
43
FPC_xxx – Add-On Instructions for parameterisation
44
FPC_xxx – Add-On Instructions for parameterisation
The example writes to the "Target Value" (PNU=404) of the records 2..6 in the record table.
45
FPC_xxx – Add-On Instructions for parameterisation
46
6 Status and error numbers of the Add-On Instructions
All AOIs uses the status and error system in a similar way (without FHPP_CTRL).
At AOI execution and at data transfer between the PLC and the motor controller many faults may occur. These are
signalled in a couple of two output variables:
Note
If Error = TRUE: a fault is active. Additional information is stored in the Status structure – see “Fault
numbers” (chapter 6.1.3).
If Error = FALSE: The Status structure may hold a AOI status information – see “Status information”
(chapter 6.1.2).
If DONE = TRUE and Error = FALSE then the AOI has finished correctly.
Structure Data
Content
component Type
TRUE: a fault is active, additional Information is given in the other three structure
components.
Err BOOL
FALSE: No fault is active.
The state of the Err component will be copied to the Error output variable!
Category to identify the source of the fault (or AOI status)
0: No fault and no status is active - all things runs well.
Cat DINT 1: The AOI has a fault detected or there is status information present.
2: Reserved
3: The AOI has detected a transmission fault (FPC).
ID DINT Fault or status number (see Tables below)
47
Status and error numbers of the Add-On Instructions
48
Status and error numbers of the Add-On Instructions
49
7 Examples
7.1 Controlling a Festo motor controller
This example uses the motor controller CMMO-ST with the corresponding AOI FHPP_CTRL.
With this AOI, the motor controller CMMO-ST can be controlled using the following four operating and control
mode combinations:
o Record selection
o Direct mode position control
o Direct mode torque control
o Direct mode speed control
The set operating and control mode is only accepted and displayed with the start of a movement, i.e.
with a rising edge at the "StartTask" input.
50
Examples
7.1.3 Homing
User action Feedback
StartHoming = FALSE -> TRUE AcknowledgeStart = TRUE
MotionComplete = FALSE
AxisIsMoving = TRUE
-- AxisIsMoving = FALSE
MotionComplete = TRUE
HomingValid = TRUE
51
Examples
52
Examples
53
Examples
Note
For a description of the parameters supported by the various motor controllers according to FHPP,
please refer to the respective product documentation.
54
Examples
The values written to the motor controller with the AOI FPC_PNU are stored in a volatile memory and are valid
until the control voltage of 24 V at the motor controller is interrupted.
In a non-volatile memory, the values can be assumed permanently by describing PNU 127 Subindex 2 with the
value 1.
The following actions must be performed in order for the described parameters to be assumed permanently:
55
8 Glossary
A
AOI: Add-On Instruction
C
Consistency: A data range, which is defined as consistent, is transmitted complete, i.e. in a bus cycle.
D
Device: Device is a synonym for a Festo motor controller
E
EDS file: Electronic data sheet, which describes the functions and features of a device in standardised form.
F
Festo Configuration Tool (FCT): Commissioning software with uniform project and data management for all
supported device types. The special requirements of a device type are supported by means of plug-ins with the
necessary descriptions and dialogs.
Festo Handling and Positioning Profile (FHPP): Uniform field bus data profile for positioning controllers from
Festo.
Festo Parameter Channel (FPC): FHPP-specific parameter channel version.
H
Homing: Homing defines the reference position and thereby the origin of the measuring reference system of an
axis.
Homing method: Method for defining the reference position.
J
Jog mode: Manual movement in positive or negative direction.
P
PNU: Parameters which can be transmitted via the parameter channel are addressed with the parameter number
(PNU). The parameter number is an integral part of the parameter identifier and serves for identifying or
addressing the individual parameter.
Position record: Positioning command defined in the record table, consisting of target position, positioning
mode, positioning speed and accelerations.
Profile position mode: Operating mode for processing a position record or a direct positioning task.
R
Reference point (REF): Basis point for the incremental measuring system. The reference point defines a known
orientation or position within the positioning path of the drive.
S
Subindex (IND): Integral part of the parameter channel which addresses an element of an array parameter
(subparameter number).
T
Teach mode: Operating mode for setting positions by moving to the target position e.g. when creating position
sets.
56
Copyright:
Festo SE & Co. KG
Ruiter Straße 82
73726 Esslingen
Germany
Phone:
+49 711 347-0
Fax:
+49 711 347-2144
E-mail:
www.festo.com/contact
Reproduction, distribution or sale of this document or communication
Internet:
of its contents to others without express authorization is
www.festo.com
prohibited. Offenders will be liable for damages. All rights reserved
in the event that a patent, utility model or design patent is
registered. Original: en
57