Motion
Motion
Logix5000 Control
Systems
Catalog Numbers 1756-HYD02,
1756-L60M03SE, 1756-M02AE,
1756-M02AS, 1756-M03SE,
1756-M08SE, 1756-M16SE,
1768-M04SE
User Manual
Important User Information Solid state equipment has operational characteristics differing from those of
electromechanical equipment. Safety Guidelines for the Application,
Installation and Maintenance of Solid State Controls (publication SGI-1.1
available from your local Rockwell Automation sales office or online at
http://literature.rockwellautomation.com) describes some important
differences between solid state equipment and hard-wired electromechanical
devices. Because of this difference, and also because of the wide variety of
uses for solid state equipment, all persons responsible for applying this
equipment must satisfy themselves that each intended application of this
equipment is acceptable.
In no event will Rockwell Automation, Inc. be responsible or liable for
indirect or consequential damages resulting from the use or application of
this equipment.
The examples and diagrams in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with
any particular installation, Rockwell Automation, Inc. cannot assume
responsibility or liability for actual use based on the examples and diagrams.
No patent liability is assumed by Rockwell Automation, Inc. with respect to
use of information, circuits, equipment, or software described in this manual.
Reproduction of the contents of this manual, in whole or in part, without
written permission of Rockwell Automation, Inc., is prohibited.
Throughout this manual, when necessary, we use notes to make you aware
of safety considerations.
SHOCK HAZARD Labels may be on or inside the equipment, for example, a drive or
motor, to alert people that dangerous voltage may be present.
BURN HAZARD Labels may be on or inside the equipment, for example, a drive or
motor, to alert people that surfaces may reach dangerous
temperatures.
Allen-Bradley, CompactLogix, ControlLogix, Logix5000, Logix, Rockwell Automation, TechConnect, PLC-5, SLC 500, Logix5550,
PowerFlex 700S, RSLogix 5000, DriveLogix, PowerFlex, and SoftLogix are trademarks of Rockwell Automation, Inc.
Trademarks not belonging to Rockwell Automation are property of their respective companies.
Summary of Changes
Introduction This publication has new and updated information. To find new and
updated information, look for change bars, as shown next to this
paragraph.
Change See
Added Motion Analyzer and Project Sample information Preface
Updated screen graphics to coincide with software release. Chapters 1, 2, 4, 5 and Appendix C
Added MCT and MCTP Instruction information. Chapter 2
Added new chapter about Kinematics. Chapter 6
Added new introduction information to include articulated Chapter 4
independent and articulated dependent robotic arms.
Added information about the Geometry Wizard and Offset Wizard Chapter 4
dialogs.
Added information about the Offset, Geometry, Joint tabs that were Chapter 4
added to the Coordinate System Properties dialog.
Moved the descriptions of Coordinate System attributes to an Appendix F
appendix.
Added Transform Source Status and Transform Target information. Appendix F
Added dialog information for tuning. Appendix B
Added attribute information. Appendix C
Added Transform Dimension information. Chapter 4
Added Phase Loss information and updated dialog. Appendix B
Created new heading and added Axis_Servo_Drive information. Appendix B
Added information for maximum acceleration and deceleration jerk Appendix B
Notes:
Chapter 1
Start Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Make the Controller the Master Clock . . . . . . . . . . . . . . . . . 14
Add the Motion Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Add SERCOS interface Drives . . . . . . . . . . . . . . . . . . . . . . . 16
Set Up Each SERCOS Interface Module . . . . . . . . . . . . . . . . 17
Add the Motion Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Add Your Axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Set Up Each Axis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Check the Wiring of Each Drive. . . . . . . . . . . . . . . . . . . . . . 24
Tune Each Axis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Get Axis Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Program Motion Control . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
What’s Next? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Chapter 2
Test an Axis with Motion Direct Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Commands Access Motion Direct Commands. . . . . . . . . . . . . . . . . . . . . 32
Choose a Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Motion Direct Command Dialog . . . . . . . . . . . . . . . . . . . . . 37
Motion Direct Command Error Process. . . . . . . . . . . . . . . . . 39
What If the Software Goes Offline or the Controller Changes
Modes? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Can Two Workstations Give Motion Direct Commands? . . . . 42
Chapter 3
Handle Faults Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Choose If Motion Faults Shut Down the Controller . . . . . . . . 44
Choose the Fault Actions for an Axis . . . . . . . . . . . . . . . . . . 45
Set the Fault Action for an Axis . . . . . . . . . . . . . . . . . . . . . . 46
Chapter 4
Create and Configure a Coordinate Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
System Create a Coordinate System . . . . . . . . . . . . . . . . . . . . . . . . . 48
Entering Tag Information. . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Editing Coordinate System Properties. . . . . . . . . . . . . . . . . . 52
Chapter 5
Inhibit an Axis Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
When to Inhibit an Axis . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Example: Inhibit an Axis . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Example: Uninhibit an Axis . . . . . . . . . . . . . . . . . . . . . . . . . 76
Chapter 6
Kinematics in RSLogix 5000 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Software Overview of Kinematics Functionality in RSLogix 5000 . . . . . 77
Useful Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Gather Information about Your Robot . . . . . . . . . . . . . . . . . 79
Summary of Kinematic Steps . . . . . . . . . . . . . . . . . . . . . . . . 80
Determine the Coordinate System Type . . . . . . . . . . . . . . . . 82
Configure an Articulated Independent Robot . . . . . . . . . . . . 84
Configure an Articulated Dependent Robot . . . . . . . . . . . . . 94
Configure a Cartesian Gantry Robot . . . . . . . . . . . . . . . . . . 102
Configure a Cartesian H-bot . . . . . . . . . . . . . . . . . . . . . . . 103
Configure a SCARA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Arm Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Left-Arm and Right-Arm Solutions for Two-Axes Robots . . . 110
Solution Mirroring for Three-Dimensional Robots . . . . . . . . 110
Activating Kinematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Change the Robot Arm Solution. . . . . . . . . . . . . . . . . . . . . 112
Plan for Singularity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Encounter a No-solution Position. . . . . . . . . . . . . . . . . . . . 113
Error Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Chapter 7
Interpret Module Lights (LEDs) Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
1756-M02AE Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
1756-M02AS Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
1756-HYD02 Module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
SERCOS interface Module . . . . . . . . . . . . . . . . . . . . . . . . . 123
Chapter 8
Troubleshoot Axis Motion Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Why does my axis accelerate when I stop it? . . . . . . . . . . . 125
Why does my axis overshoot its target speed? . . . . . . . . . . 127
Why is there a delay when I stop and then restart a jog?. . . 130
Why does my axis reverse dir. when I stop and start it? . . . 132
Chapter 9
Configure Homing Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Guidelines for Homing . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Appendix A
Wiring Diagrams Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
1756-M02AE Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Ultra 100 Series Drive . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Ultra 200 Series Drive . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Ultra3000 Drive. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
1394 Servo Drive (in Torque Mode only) . . . . . . . . . . . . . . 147
1756-M02AS Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
1756-HYD02 Application Example . . . . . . . . . . . . . . . . . . . 150
1756-HYD02 Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
LDTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Temposonic GH Feedback Device . . . . . . . . . . . . . . . . . . . 153
24V Registration Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
5V Registration Sensor. . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Home Limit Switch Input. . . . . . . . . . . . . . . . . . . . . . . . . . 155
OK Contacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Appendix B
Axis Properties Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
General Tab – AXIS_SERVO . . . . . . . . . . . . . . . . . . . . . . . 157
General Tab - AXIS_SERVO_DRIVE . . . . . . . . . . . . . . . . . . 158
General Tab - AXIS_VIRTUAL . . . . . . . . . . . . . . . . . . . . . . 162
General Tab – AXIS_GENERIC. . . . . . . . . . . . . . . . . . . . . . 163
Motion Planner Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Units Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Servo Tab - AXIS_SERVO . . . . . . . . . . . . . . . . . . . . . . . . . 168
Feedback Tab – (AXIS_SERVO) . . . . . . . . . . . . . . . . . . . . . 170
Drive/Motor Tab - (AXIS_SERVO_DRIVE) . . . . . . . . . . . . . 175
Motor Feedback Tab - AXIS_SERVO_DRIVE . . . . . . . . . . . . 182
Aux Feedback Tab - AXIS_SERVO_DRIVE . . . . . . . . . . . . . 183
Conversion Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Homing Tab - AXIS_SERVO. . . . . . . . . . . . . . . . . . . . . . . . 186
Homing Tab - AXIS_SERVO_DRIVE . . . . . . . . . . . . . . . . . . 191
Homing Tab - AXIS_VIRTUAL . . . . . . . . . . . . . . . . . . . . . . 195
Hookup Tab - AXIS_SERVO . . . . . . . . . . . . . . . . . . . . . . . 196
Hookup Tab Overview - AXIS_SERVO_DRIVE . . . . . . . . . . 198
Tune Tab - AXIS_SERVO, AXIS_SERVO_DRIVE . . . . . . . . . 200
Dynamics Tab - AXIS_SERVO, AXIS_SERVO _DRIVE,
AXIS_VIRTUAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Gains Tab - AXIS_SERVO . . . . . . . . . . . . . . . . . . . . . . . . . 208
Appendix C
Axis Attributes Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
How to Access Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . 257
Axis Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Appendix D
Servo Loop Block Diagrams Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
Interpreting the Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . 367
AXIS_SERVO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
AXIS_SERVO_DRIVE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
Appendix E
Axis Data Types Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
AXIS_CONSUMED. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
AXIS_GENERIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
AXIS_SERVO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
AXIS_SERVO_DRIVE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
AXIS_VIRTUAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
Appendix F
Coordinate System Attributes How to Access Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . 393
Coordinate System Attributes . . . . . . . . . . . . . . . . . . . . . . . 393
Introduction Use this manual to setup and program motion control using these
Logix5000 motion modules.
Description of the Modules This table describes the Logix5000 motion modules.
Additional Resources See these manuals for more information about using motion modules
in a Logix5000 control system.
Help for Selecting Drives The Motion Analyzer utility helps you select the appropriate Rockwell
drives and motors based upon your load characteristics and typical
and Motors motion application cycles. The Motion Analyzer guides you through
wizard-like screens to collect information specific to your application.
After you enter the information (such as load inertia, gear box ratio,
feedback device and brake requirements all available through the
robot manufacturer) the Motion Analyzer generates an easy-to-read list
of recommended motors, drives and other support equipment to
interface with the type of robot you are using.
Where to Find Sample Sample projects from Rockwell Automation as well as other vendors
are available from the RSLogix 5000 software Help system menu.
Projects
Start
Introduction Use this chapter for step-by-step procedures on how to set up motion
control.
IMPORTANT If you aren’t using SERCOS interface drives and modules, skip
tasks 3 and 4.
Make the Controller the You must make one module in the chassis the master clock for motion
control. This module is called the coordinated system time (CST)
Master Clock master. The motion modules set their clocks to the CST master.
1.
2.
3.
4.
If you have more than one controller in the chassis, choose one of the
controllers to be the CST master. You can’t have more than one CST
master for the chassis.
IMPORTANT For your motion modules, use the firmware revision that goes with the
firmware revision of your controller. See the release notes for your
controller’s firmware.
2.
3.
4.
5.
6.
7.
8.
Add SERCOS interface Add SERCOS interface drives to the I/O configuration of the controller.
This lets you use RSLogix 5000 software to set up the drives.
Drives
2.
3.
4.
5.
6. Node number of the drive on the SERCOS ring
7.
8.
Set Up Each SERCOS Set the data rate and cycle time for each SERCOS interface module in
your project.
Interface Module
2.
3.
4.
5.
Baud Rate of Drives Number of Drives on the Ring Type of Drives Cycle Time
4 Mb 1 or 2 Kinetix 6000 0.5 ms
NOT Kinetix 6000 1 ms
3 or 4 1 ms
5…8 2 ms
9…16 Can’t do.
8 Mb 1…4 Kinetix 6000 0.5 ms
NOT Kinetix 6000 1 ms
5…8 1 ms
9…16 2 ms
Add the Motion Group Add a motion group to set up the motion planner.
Motion Planner Part of the controller that takes care of position and velocity information for your axes
Coarse Update Period How often the motion planner runs. When the motion planner runs, it interrupts all other
tasks regardless of their priority.
Motion Planner
In this example, the coarse update period = 10 ms. Every 10 ms the controller stops scanning your code
and whatever else it is doing and runs the motion planner.
IMPORTANT Add only one motion group for the project. RSLogix 5000 software
doesn’t let you add more than one motion group.
Action Details
1. Choose your coarse update The coarse update period is a trade-off between updating positions of your axes and
period. scanning your code. Use these guidelines as a rough starting point.
A. How many axes do you have?
• Less than 11 axes — Set the coarse update period to 10 ms.
• 11 axes or more — Set the coarse update period to 1 ms per axis.
B. Leave at least half the controller’s time for the scan of all your code.
C. If you have SERCOS interface motion modules, set the coarse update period to a
multiple of the cycle time of the motion module.
Example: if the cycle time is 2 ms, set the coarse update period to 8 ms, 10 ms,
12 ms, and so on.
D. If you have analog motion modules, set the coarse update period to:
1. At least 3 times the servo update period of the motion module
2. A multiple of the servo update period of the motion module
Action Details
2. Add the motion group.
A.
B.
C.
D.
A.
B.
C.
Action Details
1. Decide which data type to use. If you use this motion module for the axis Then use this data type
1756-M03SE AXIS_SERVO_DRIVE
1756-M08SE
1756-M16SE
1756-L60M03SE
1768-M04SE
1756-M02AE AXIS_SERVO
1756-HYD02
1756-M02AS
No hardware AXIS_VIRTUAL
2. Add an axis.
Analog
SERCOS interface
A.
No Hardware
B.
C.
D.
Set Up Each Axis The following steps show how to set up the axis of a SERCOS
interface drive. The steps are slightly different if you have a different
type of drive.
Action Details
1. Open the properties for the axis.
Select the name that you gave to the drive for this
axis.
A.
Action Details
4. Select the drive and motor
catalog numbers.
A.
A.
A.
Action Details
7. Apply your changes.
A.
B.
Check the Wiring of Each Use the hookup tests to check the wiring of a drive.
Drive
This Test Does This Notes
Test marker Checks that the drive gets the marker You must manually move the
pulse. axis for this test.
Test feedback Checks the polarity of the feedback. You must manually move the
axis for this test.
Test command Checks the polarity of the drive.
and feedback
These tests make the axis move even with the controller in remote
ATTENTION
program mode.
!
• Before you do the tests, make sure no one is in the way of the
axis.
• Do not change the polarity after you do the tests. Otherwise you
may cause an axis-runaway condition.
1.
controller
download
3.
drive
4.
5.
7.
8.
9.
When you tune an axis, it moves even with the controller in remote
ATTENTION
program mode. In that mode, your code is not in control of the axis.
!
Before you tune an axis, make sure no one is in the way of the axis.
1.
controller
download
3.
drive
4.
5.
8.
Get Axis Information You can get information about an axis in several ways.
Use a Get System Value (GSV) instruction or Set System Value (SSV)
Use the Quick View pane to see the state instruction to read or change the configuration at run-time.
and faults of an axis.
Use the tag of the axis for status and faults.
Program Motion Control The controller gives you a set of motion control instructions for your
axes.
• Uses these instructions just like the rest of the Logix5000
See: instructions. You can program motion control in these
• Logix5000 Controllers Common programming languages:
Procedures Manual, 1756-PM001 – ladder diagram (LD)
• Logix5000 Controllers Motion – structured text (ST)
Instructions Reference Manual,
1756-RM007 – sequential function chart (SFC)
• Logix5000 Controllers General • Each motion instruction works on one or more axes.
Instructions Reference Manual,
1756-RM003
• Each motion instruction needs a motion control tag. The tag
uses a MOTION_INSTRUCTION data type. The tag stores the
status information of the instruction.
Use the tag for the motion control operand of motion instruction
ATTENTION
only once. Unintended operation of the control variables may
!
happen if you re-use of the same motion control tag in other
instructions.
Example
If Home_Pushbutton = on and the axis hasn’t been homed (My_Axis_X.AxisHomedStatus = off) then
The MAH instruction homes the axis.
What’s Next? Use these chapters to continue programming your motion control
system.
Notes:
Introduction The Motion Direct Commands feature lets you issue motion
commands while you are online without having to write or execute an
application program. Motion Direct Commands are particularly useful
when you are commissioning or debugging a motion application.
During commissioning, you can configure an axis and monitor the
behavior using Trends in the Controller Organizer. Use of Motion
Direct Commands can “fine-tune” the system with or without load to
optimize its performance. When in the testing and or debugging cycle,
you can issue Motion Direct Commands to establish or reestablish
conditions such as Home. Often during initial development or
enhancement to mature applications you need to test the system in
small manageable areas. These tasks include:
Access Motion Direct Access the Motion Direct Commands for the Motion Group
Commands
To access the Motion Direct Commands for the motion group, right-
click the group in the Controller Organizer.
To access the Motion Direct Commands for an axis, right-click the axis
in the Controller Organizer.
Choose a Command Use this table to choose an instruction and see if it is available as a
Motion Direct Command.
()
You can use this instruction only with 1756-L6x controllers.
Motion Direct Command You must be online to execute a Motion Direct Command. The online
dialog has the Motion Group Shutdown and Execute buttons active. If
Dialog you click either of these, action is taken immediately.
Command
Tree
Operands
Status Text
Display Area
Action Buttons
At the top of the dialog, in the title bar, there is a number at the end of
the axis or group that the command is being applied upon. This is the
Instance reference number. This number increases by one every time
a command is accessed for that axis or group. The number is cleared
when you execute RSLogix software.
Located at the bottom of the dialog are the following buttons: Motion
Group Shutdown, Execute, Close, and Help.
The Motion Group Shutdown button is located to the left of the screen
to avoid accidental invoking of this command when you really want
to execute the command accessed from the Command tree. Clicking
on this button causes the Motion Group Shutdown instruction to
execute. If you click on the Motion Group Shutdown button and it is
successfully executed, a Result message is displayed in the results
window below the dialog. Since the use of this button is an abrupt
means of stopping motion, an additional message is displayed in the
error text field. The message "MOTION GROUP SHUTDOWN
executed!" is displayed with the intention of giving greater awareness
of the execution of this command. If the command fails then an error
is indicated as per normal operation. (See Error Conditions later in this
chapter.)
There is space above the Motion Group Shutdown button and below
the line where status text is displayed when a command is executed.
Execute Button
Clicking the Execute button verifies the operands and initiates the
current Motion Direct Command.
Motion Direct Command Whenever a Motion Direct Command is executed, there are two levels
of error detection that are presented. The first level is verification of
Error Process the command’s operands. If a verification error is detected, a message
“Failed to Verify” is posted on the dialog and an appropriate message
is posted to the error result window. The second level is the initial
motion direct command’s error response return code. If an error code
is detected, a message “Execution Error” is posted on the dialog.
When you select Execute from a Motion Direct Command dialog, the
operands are verified. If any operand fails verification, an error
message “Failed to Verify” is displayed on the dialog and a detailed
error message is displayed in the error result window describing the
fault indicating the instance of Motion Direct Command that the
results apply to. This allows multiple verification errors to be
displayed and provides navigation to the error source, that is, double
clicking the error in the results window will navigate to the
appropriate Motion Direct Command dialog.
When you select Execute from a Motion Direct Command dialog and
the operands are verified as valid, then the command is executed. If
the command fails immediately, then an error message “Execution
Error” is displayed on the dialog. Whether or not an error is detected,
a detailed message is displayed to the Error result window describing
the immediate results of the executed command.
What If the Software Goes If RSLogix 5000 software transitions to offline, Hard Program mode
(PROG), or Hard Run mode (RUN), then any executing Direct
Offline or the Controller Command instruction continues execution and the Execute button is
Changes Modes? disabled.
Can Two Workstations Give Whenever the Execute button is enabled and commands can be
executed from a workstation, the group is locked. This means that
Motion Direct Commands? another workstation cannot execute commands while this lock is in
place. The lock stays in place until the workstation executing
commands relinquishes the lock.
Handle Faults
Choose If Motion Faults By default, the controller keeps running when there is a motion fault.
As an option, you can have motion faults cause a major fault and shut
Shut Down the Controller down the controller.
Action Details
1. Choose a General Fault Type. Do you want any motion fault to cause a major fault and shut down the controller?
A.
B.
C.
D.
Choose the Fault Actions Use the fault actions to set how an axis responds to different types of
faults. The type of faults depends on the type of axis and how you
for an Axis configure it.
Set the Fault Action for an Use the following steps to set the fault actions for an axis.
Axis
1.
2.
3.
4.
• Cartesian
• Articulated Dependent
• Articulated Independent
Create a Coordinate System To create a coordinate system, right click the motion group in the
Controller Organizer and select New Coordinate System.
Enter Tag Information A tag lets you allocate and reference data stored in the controller. A
tag can be a single element, array, or a structure. With
COORDINATE_SYSTEM selected as the Data Type, there are only two
types of tags that you can create.
• A base tag lets you create your own internal data storage.
The following parameters appear on the New Tag dialog when you
are creating a base tag or an alias tag.
Field Entry
Name Type a name for the coordinate system tag.
Name
Enter a relevant name for the new tag. The name can be up to 40
characters and can be composed of letters, numbers, or underscores
(_).
Description
Enter a description of the tag. This is an optional field and is used for
annotating the tag.
Type
For a Coordinate System you may choose either Base or Alias for the
Tag Type. Click on the appropriate radio button for the type of tag
you are creating.
• Alias refers to a tag that references another tag with the same
definition. Special parameters appear on the New Tag dialog
that allow you to identify to which base tag the alias refers.
Alias For:
If you selected Alias as the Tag Type the Alias For: field displays. Enter
the name of the associated Base Tag.
Data Type
Scope
Enter the Scope for the tag. A Coordinated System Tag can only be
Controller Scope.
Style
The Style parameter is not activated. No entry for this field is possible.
After the information for the tag is entered, you have two options. You
can either press the OK button to create the tag or you can press the
Configure Button located next to the Data Type field to use the
Wizard screens to enter the values for the Coordinate System Tag.
Pressing the Configure button next to the Data Type field invokes the
Coordinate System Tag Wizard to let you continue to configure the
Coordinate System tag.
Coordinate System Wizard Screens The Coordinate System Wizard screens walk you through the process
of configuring a Coordinate System. These are the same screens that
appear when you access Coordinate System Properties but instead of
appearing as tabbed screens, they advance you through the process
by individual screens. At the bottom of each screen, is a series of
buttons. To advance to the next screen click on the Next button and
the information you entered is saved and you advance to the next
wizard screen. To end your progression through the wizard screens
click on the Finish button. The information entered to this point is
saved and the coordinate System is stored in the Controller Organizer
under either the Ungrouped Axes folder or the Motion Group (if a
motion group has been associated with the coordinate system).
This screen has the same fields as the General tab found under
Coordinate System Properties.
The Offset screen lets you configure the offsets for the base and end
effector. This screen shows the bitmaps for the offsets related to the
geometry.
The Units screen lets you determine the units that define the
coordinate system. At this screen you define the Coordination Units
and the Conversion Ratios. This screen has the same fields as the
Units tab found under Coordinate System Properties.
Use the Dynamics screen for entering the Vector values used for
Maximum Speed, Maximum Acceleration, and Maximum Deceleration.
It is also used for entering the Actual and Command Position
Tolerance values. This screen has the same fields as the Dynamics tab
found under Coordinate System Properties.
The Tag screen lets you rename your Tag, edit your description and
review the Tag Type, Data Type, and Scope information.
The only fields that you can edit on the Tag screen are the Name and
Description fields. These are the same fields as on the New Tag screen
and the Coordinate System Properties Tag tab.
Edit Coordinate System Create your Coordinate System in the New Tag window, then
configure it. If you did not use the Wizard screens available from the
Properties Configure button on the New Tag screen, you can make your
configuration selections from the Coordinate System Properties screen.
You can also use the Coordinate System Properties screens to edit an
existing Coordinate System tag. These have a series of tabs that access
a specific dialog for configuring the different facets of the Coordinate
System. Make the appropriate entries for each of the fields. An asterisk
appears on the tab to indicate changes have been made but not
implemented. Press the Apply button at the bottom of each dialog to
save your selections.
General Tab
RSLogix 5000 software supports only one Motion Group tag per
controller.
Motion Group
Opens the Motion Group Properties dialog box for the Assigned
Motion Group, where you can edit the Motion Group properties. If no
Motion Group is assigned to this coordinate system, this button is
dimmed.
The New Group button opens the New Tag dialog box, where you
can create a new Motion Group tag. This button is enabled only if no
Motion Group tag has been created.
Type
Selects and displays the type of coordinate system (robot type) in the
Motion Group. Available choices are Cartesian, Articulated Dependent
and Articulated Independent. The type of coordinate system you
choose in this field changes the configuration tabs that are available.
Dimension
Enter the coordinate system dimensions, that is, the number of axes,
that this coordinated system is to support. The options are 1, 2, or 3 in
keeping with its support of a maximum of three axes. Changes in the
Dimension spin box also reflect in the Axis Grid by either expanding
or contracting the number of fields available. Data is set back to the
defaults for any axis that is removed from the Axis Grid due to
reducing the Dimension field.
Transform Dimension
Enter the number of axes in the coordinate system that you want to
transform. The options are 1, 2, or 3 in keeping with its support of a
maximum of 3 axes. The number of axes that you transform must be
equal to or less than the specified coordinate system dimensions. The
transform function always begins at the first axis. For example, if you
have specified that the coordinate system has 3 axes but indicate only
Axis Grid
The Axis Grid is where you associate axes to the Coordinate System.
There are five columns in the Axis Grid that provide information
about the axes in relation to the Coordinate System.
[] (Brackets)
The Brackets column displays the indices in tag arrays used with
the current coordinate system. The tag arrays used in multi-axis
coordinated motion instructions map to axes using these indices.
Coordinate
Axis Name
Coordination Mode
The Coordination Mode column indicates the axes that are used
in the velocity vector calculations. If the type of coordinate
system is specified as Cartesian, then Primary axes are used in
these calculations. For non-Cartesian coordinate systems the
coordination mode for the axes defaults to Ancillary.
The Enable Coordinate System Auto Tag Update checkbox lets you
determine whether or not the Actual Position values of the current
coordinated system are automatically updated during operation. Click
on the checkbox to enable this feature. The Coordinate System Auto
Tag Update feature can ease your programming burden if you would
need to add GSV statements to the program in order to get the desired
result. However, by enabling this feature the Coarse Update rate is
increased. Whether to use the Coordinate System Auto Tag Update
feature depends upon the trade-offs between ease in programming
and increase in execution time. Some users may want to enable this
feature in the initial programming of their system to work out the
kinks and then disable it and enter the GSV statements to their
program to lower their execution time.
Press Apply to implement your entries or cancel to not save the new
entries.
To edit the Geometry parameters for the robotic arm, select the
Geometry tab.
Geometry Tab The Geometry tab of the Coordinate System Properties is where you
can specify the link lengths and zero angle orientation values for
articulated robotic arms.
The Link Length box displays fields to let you specify a value for the
length of each link in an articulated robotic arm (coordinate system).
The measurement units for the articulated coordinate system are
defined by the measurement units configured for the affiliated
Cartesian coordinate system. The two coordinate systems are linked or
affiliated with each other by an MCT instruction.
When specifying the link length values be sure that the values are
calculated using the same measurement units as the linked Cartesian
coordinate system. For example, if the manufacturer specifies the
robot link lengths using millimeter units and you want to configure
the robot using inches, then you must convert the millimeter link
measurements to inches and enter the values in the appropriate link
length fields.
To edit the Units properties, select the Units tab to access the
Coordinate System Properties Units dialog.
Units Tab The Units tab of the Coordinate System Properties is where you
determine the units that define the coordinate system. This screen is
where you define the Coordination Units and the Conversion Ratios.
Coordination Units
The Coordination Units field lets you define the units to be used for
measuring and calculating motion related values such as position,
velocity, and the like. The coordination units do not need to be the
same for each coordinate system. Enter units that are relevant to your
application and maximize ease of use. When you change the
Coordination Units, the second portion of the Coordination Ratio
Units automatically changes to reflect the new units. Coordination
Units is the default.
Axis Grid
The Axis Grid of the Units dialog displays the axis names associated
with the Coordinate System, the conversion ratio, and the units used
to measure the conversion ratio.
Axis Name
The Axis Name column contains the names of the axes assigned
to the Coordinate System in the General screen. These names
appear in the order that they were configured into the current
coordinate system. This column is not editable from this screen.
Conversion Ratio
Offsets Tab The Offsets tab of the Coordinate System Properties dialog is where
you define the end effector and base offset values for the robotic arm.
This tab shows the top and/or sides view of a typical robotic arm
based on the type of coordinate system and coordinate Transform
dimension values specified on the General tab. The number of
available offset fields in each box is determined by the number of
axes associated with the coordinate system.
When specifying the end effector and base offset values be sure that
the values are calculated using the same measurement units as the
linked Cartesian coordinate system. For example, if the manufacturer
specifies the robot offset using millimeter units and you want to
configure the robot using inches then, you must convert the millimeter
link measurements to inches and enter the values in the appropriate
offset fields.
The end effector offset value specifies the dimensions of the end
effector. The correct end effector offsets are typically available from
the manufacturer. The end effector indicators are X1e, X2e, and X3e in
the corresponding graphic.
Joints Tab The Joints tab is only accessible if you are configuring or editing an
articulated coordinate system. This screen is where you define the
Axis Name
The Axis Name column displays the names of the axes associated to
the coordinate system. The names appear in the order that they were
configured into the coordinate system. This is a read-only field.
Joint Ratio
The Joint Ratio column (shown in white) is divided into two columns
that define the relationship between the axis position units to the joint
axis units. The left-half of the Joint Ratio column is a configurable field
that lets you specify a value for the axis position units (numerator).
The right-half of the Joint Ratio column is a configurable field that lets
you specify a value for the joint axis units (denominator). Keep in
mind that Joint axis units are always specified as degrees.
Joint Units
The Joint Units column is a read-only field that displays the configured
axis position units to the joint units. The Axis Position units are
defined in the Axis Properties – Units dialog. Joint units are always
defined as Degrees.
Dynamics Tab The Dynamics dialog is accessible only if you are configuring a
Cartesian Coordinate System. The Dynamics tab is for entering the
Vector values used for Maximum Speed, Maximum Acceleration, and
Maximum Deceleration. It is also used for entering the Actual and
Command Position Tolerance values.
Vector Box
In the Vector box, values are entered for Maximum Speed, Maximum
Acceleration, and Maximum Deceleration and are used by the
Coordinated Motion instructions in calculations when their operands
are expressed as percent of Maximum. The Coordination Units to the
right of the edit boxes automatically change when the coordination
units are redefined at the Units dialog.
Maximum Speed
Maximum Acceleration
Maximum Deceleration
In the Position Tolerance Box, values are entered for Actual and
Command Position Tolerance values. See the Logix5000 Motion
Instruction Set Reference Manual, publication number 1756-RM007,
for more information regarding the use of Actual and Command
Position Tolerance.
Actual
Command
Dynamics Tab Manual Adjust At this dialog you can make changes to the Vector and Position
Tolerance values.
These changes can be made either online or offline. The blue arrows
to the right of the fields indicate that they are immediate commit
fields. This means that the values in those fields are immediately
updated to the controller if online or to the project file if offline.
Reset Button
The Reset Button reloads the values that were present at the time this
dialog was entered. The blue arrow to the right of the Reset button
means that the values are immediately reset when the Reset button is
clicked.
Tag Tab The Tag tab is for reviewing your Tag information and renaming the
tag or editing the description.
Use this tab to modify the name and description of the coordinate
system. When you are online, all of the parameters on this tab
transition to a read-only state, and cannot be modified. If you go
online before you save your changes, all pending changes revert to
their previously-saved state.
Name
Displays the name of the current tag. You can rename the tag at this
time. The name can be up to 40 characters and can include letters,
numbers, and underscores (_). When you rename a tag, the new
name replaces the old one in the Controller Organizer after click on
the OK or Apply button.
Description
Displays the description of the current tag, if any is available. You can
edit this description. The edited description replaces the existing
description when you click on either the OK or Apply button.
Tag Type
Indicates the type of the current Coordinate System tag. This type may
be:
• Base
• Alias
Data Type
Displays the data type of the current Coordinate System tag, which is
always COORDINATE_SYSTEM. This field cannot be edited and is for
informational purposes only.
Scope
Displays the scope of the current Coordinate System tag. The scope
for a Coordinate System tag can be only controller scope. This field is
not editable and is for informational purposes only.
Inhibit an Axis
Introduction Use this chapter to block the controller from using an axis.
When to Inhibit an Axis Use the following information to determine when to inhibit an axis.
Example 1
Example 2
Suppose you have two production lines that use the same SERCOS
ring. And suppose one of the lines gets a fault. In that case, inhibit the
axes on that line. This lets you run the other line while you take care
of the fault.
2. Open the servo loops of all the axes. Use an instruction such as the Motion Servo Off
(MSF) instruction.
This lets you stop motion under your control. Otherwise the axes turn off on their own when
you inhibit or uninhibit one of them.
This opens the servo loops of all the axes that are connected to
the module. For a SERCOS interface module, the SERCOS ring
also shuts down.
SERCOS Ring
Drive Motor
The controller automatically restarts the connections. The SERCOS ring also phases back up.
Inhibit only certain types of axes. You can inhibit only these types of axes:
• AXIS_SERVO
• AXIS_SERVO_DRIVE
• AXIS_GENERIC_DRIVE
To inhibit all of the axes of a motion Do you want to inhibit all of the axes of a motion module?
module, inhibit the module instead.
• YES — Inhibit the motion module instead.
• NO — Inhibit the individual axes.
It’s OK to inhibit all of the axes of a module one-by-one. It’s just easier to inhibit the module.
Example: Suppose your motion module has two axes and you want to inhibit both of those
axes. In that case, just inhibit the module.
If you inhibit all of the axes on a SERCOS ring, the drives phase up to phase 2. This happens
whether you inhibit all the axis individually or you inhibit the motion module.
Phase Phase
2 2
Drive Drive
Inhibited
Motion Motion
Module Module
Phase Phase
2 2
Inhibited
Drive Drive
Inhibited
! !
"#
$%
&& &
'
'
'
'
This axis is off. And this axis is off. All axes are off.
Your condition to inhibit Your condition to All axes are off. Give the command to inhibit the
the axis is on. uninhibit the axis is off. axis.
This axis is off. And this axis is off. All axes are off.
Your condition to Your condition to inhibit All axes are off. Give the command to uninhibit
uninhibit the axis is on. the axis is off. the axis.
Introduction This chapter provides you with the information you need when using
the Kinematics functionality within RSLogix 5000 software. This
chapter also provides you with guidelines for robot-specific
applications.
• All data is available via the controller resulting in one HMI for
both the controller and robot arm.
• Cartesian
• Articulated Dependant
• Articulated Independent
Useful Terms Understanding the terms used in this chapter enables you to properly
configure your robot.
Term Definition
Forward Kinematics The solution of source positions given the target positions. In practice this would be computing the
Cartesian positions given the Joint positions.
Forward Transform The solution of source positions given target positions.
Inverse Kinematics The solution of joint positions given Cartesian positions. Typically, converts Cartesian positions to joint
positions.
Inverse Transform The solution of target positions given source positions.
Joint axis A rotary robotic coordinate axis typically having overtravel rather than rollover limits.
Kinematics The family of mathematical equations that convert positions back and forth between two linked geometries.
Orientation Robotic term for directional attitude or rotation about a point in Cartesian (3D) space. Orientation is
expressed as three ordered rotations around the X, Y, and Z Cartesian axes.
Reference frame An imaginary Cartesian coordinate system used to define a Cartesian origin and reference orientation.
Source system One of two coordinate systems used in a Kinematics transform and having special properties. When
connected to a target system by means of a Kinematics transform, motion commanded at the source
system’s inputs produces motion at both the source and target system’s outputs (if the physical axes are
connected).
Target system One of two coordinate systems used in a Kinematics transform and having special properties. When
connected to a source system by means of a Kinematics transform, motion commanded at the target
system’s inputs produces motion in both the source and target system’s outputs (if the physical axes are
connected).
Transform General term for conversion equations which map values in one coordinate space to values in another
coordinate space.
Translation Robotic term for a linear movement or offset in Cartesian (3 dimensional) space. Translation describes the
distance between two Cartesian points.
Zero Angle Offset Offset on a rotary axis in the Joint Coordinate system between where the Kinematics equations were
derived and where you want your zero position to be.
Gather Information about Before you begin the configuration steps for the Kinematics
transformation function you need to gather specific information about
Your Robot your robot and application parameters. Specifications for your robot
can be found in the documentation provided by the manufacturer
while other required information is application dependent. Before you
begin configuring the RSLogix 5000 Kinematics for motion control you
should know:
Summary of Kinematic After you create a Joint (target) coordinate system tag for your Motion
control project there are general steps to follow for Kinematics.
Steps
1. Determine and then configure the type of coordinate system you
need for your robot. Refer to page 82.
WARNING
The correct relationship between the Joint reference frame and
the Cartesian reference frame must be established. Failure to
do this can allow your robot to move to unexpected positions
causing machine damage and/or injury or death to personnel.
Typical Cartesian Coordinate System Configuration for Articulated Typical Joint Coordinate System Configuration for an Articulated
Independent robot. Independent robot.
Articulated Dependent
Cartesian
TCP
X1 Axis
Sliding rail
Stationary Rails
Articulated Independent
The reference frame is the Cartesian coordinate frame that defines the
origin and the three primary axes (X1, X2, and X3). These axes are
used to measure the real Cartesian positions.
WARNING
Failure to properly establish the correct reference frame for
your robot can cause the robotic arm to move to unexpected
positions causing machine damage and/or injury or death to
personnel.
Side View
When your robot is physically in the The RSLogix 5000 Actual Position
position illustrated in tags for the axes must read as
Figure 2 - Articulated Independent J1 = 0
J2 = 0
J3 = 0
Figure 3 - Articulated Independent J1 = 0
J2 = 90
J3 = -90
Side View
If your robot’s physical position and joint angle values can not match
those shown in Figure 2 - Articulated Independent or Figure 3 -
Articulated Independent then use one of the Alternate Methods for
Establishing the Joint-to-Cartesian reference frame relationship.
For each Use one of these methods to establish the reference frame
Incremental axis Each time the robot’s power is cycled.
Absolute axis Only when you establish absolute home.
Each axis for the robot has the mechanical hard stop in each of the
positive and negative directions. Manually move or press each axes of
the robot against its associated mechanical hard stop and redefine it to
the hard limit actual position provided by the robot manufacturer. J1 is
the axis at the base of the robot that rotates around X3.
When the robot is moved so that Link1 is parallel to the X3 axis and
Link2 is parallel to X1 axis as shown in Figure 2 - Articulated
Independent, the RSLogix 5000 Actual Position tag values should be
equal to:
• J1 = 0
• J2 = 90 degrees
• J3 = -90 degrees
If the RSLogix 5000 software read-out Set the Zero Angle Orientations on the
values are Coordinate System Properties dialog to
J1 = 10 Z1 = -10
J2 = 80 Z2 = 10
J3 = -85 Z3 = -5
Program a MRP instruction for all three axes with the following values:
• J1 = 0
• J2 = 90 degrees
• J3 = -90 degrees
If the range-of-motion values for the Typically, the work envelope would be
articulated robot are
J1 = ± 170
J2 = 0 to 180
J3 = ± 100
L1= 10
L2 = 12
Top view - Depicts the envelope of the tool center point sweep in J1 and J3 while J2 remains
at a fixed position of 0 degrees.
Side view - Depicts the envelope of the tool center point sweep in J2 and J3 while J1 remains
at a fixed position of 0 degrees.
• Link lengths
• Base offsets
• End-effector offsets
IMPORTANT Be sure that the values for the link lengths, base offsets and
end-effector offsets are entered into the Configuration
Parameters dialog using the same measurement units.
Robot Origin
X3e = -X3e1 + X3e2
X3e = -3 + 1.5
X1b = 3.0 inches X3e = -1.5 inches
If the robot is two dimensional, then X3b and X3e would be X2b and X2e respectively.
Link Lengths
For an articulated independent robot with The length of Is equal to the value of the distance between
2 dimensions L1 J1 and J2
• L1 = 10.0
• L2 = 12.0
Base Offsets
The base offset is a set of coordinate values the redefines the origin of
the robot. The correct base offset values are typically available from
the robot manufacturer. Enter the values for the base offsets in the
X1b and X3b fields of the Coordinate System Properties dialog.
For the robot shown in our example, the Base Offset values are:
• X1b = 3.0
• X3b = 4.0
End-Effector Offsets
The robot can have an end-effector attached to the end of robot link
L2. If there is an attached end-effector then you must configure the
end-effector offset value on the Coordinate System Properties dialog.
The end-effector offsets are defined with respect to the tool reference
frame at the tool tip.
Some robots also have an offset defined for the J3 joint as illustrated in
the robot example (refer to on page 90). You can account for this
value when computing the X3e end-effector offset value. In the value
for X3e offset is entered as the sum of X3e1+X3e2 (-3+1.5 = -1.5). The
configured value for X3e is -1.5.
For the robot shown in our example, the end-effector values are:
• X1e = 2.0
• X3e = -1.5
Configure an Articulated The Articulated Dependent robot has motors for the elbow and the
shoulder located at the base of the robot. The dependent link controls
Dependent Robot J3 at the elbow. Use these guidelines when configuring an Articulated
Dependent robot.
WARNING
Before turning ON the Transform and/or establishing the
reference frame, be sure to do the following for the joints of the
target coordinate system:
• set and enable the soft travel limits.
• enable the hard travel limits.
Failure to do this can allow the robot to move outside of the
work envelope causing machine damage and/or serious injury
or death to personnel.
WARNING
Failure to properly establish the correct reference frame for
your robot can cause the robotic arm to move to unexpected
positions causing machine damage and/or injury or death to
personnel.
Side View
X3
When your robot is physically in the The RSLogix 5000 Actual Position
position illustrated in tags for the axes must read as
Figure 2 - Articulated Dependent J1 = 0
J2 = 0
J3 = 0
Figure 3 - Articulated Dependent J1 = 0
J2 = 90
J3 = 0
.
Side View
If your robot’s physical position and joint angle values can not match
those shown in Figure 2 - Articulated Dependent or in Figure 3 -
Articulated Dependent then, use one of the methods outlined in this
section to establish the Joint-to-Cartesian reference frame relationship.
WARNING
Failure to properly establish the correct reference frame for
your robot can cause the robotic arm to move to unexpected
positions potentially resulting in damage to property or injury to
personnel.
For each Use one of these methods to establish the reference frame
Incremental axis Each time the robot’s power is cycled.
Absolute axis Only when you establish absolute home.
Each axis for the robot has the mechanical hard stop in each of the
positive and negative directions. Manually move or press each axes of
the robot against its associated mechanical hard stop and redefine it to
the hard limit actual position provided by the robot manufacturer. J1 is
the axis at the base of the robot that rotates around X3.
When the robot is moved so that Link1 is parallel to the X3 axis and
Link2 is parallel to X1 axis as shown in Figure 3 - Articulated
Dependent, the RSLogix5000 values for the Actual Position tags
should be:
• J1 = 0
• J2 = 90 degrees
• J3 = 0 degrees
If the RSLogix 5000 Actual Position tags do not show these values,
configure the Zero Angle Orientation for the joint(s) that do not
correspond.
If the RSLogix 5000 software read-out Set the Zero Angle Orientations on the
values are Coordinate System Properties dialog to
J1 = 10 Z1 = -10
J2 = 80 Z2 = 10
J3 = 5 Z3 = -5
Program a Motion Redefine Position (MRP) instruction for all the three
axis to with the following values 0, 90, and 0 degrees.
If the range-of-motion values for the Typically, the work envelope would be
articulated robot are
J1 = ± 170
J2 = 0 to 180
J3 = ± 60
L1= 10
L2 =12
Top view - Depicts the envelope of the tool center point sweep in J1 and J3 while J2 remains at a
fixed position of 0 degrees.
• Link lengths
• Base offsets
• End-effector offsets
IMPORTANT Be sure that the values for the link lengths, base offsets and
end-effector offsets are entered into the Configuration
Parameters dialog using the same measurement units.
Robot Origin
If the robot is two-dimensional, then X3b and X3e would be X2b and X2e respectively.
Link Lengths
For an articulated dependent robot with The length of Is equal to the value of the distance
between
two dimensions L1 J1 and J2
For the robot shown in our example, the Link Length values are:
• L1 = 10.0
• L2 = 12.0
Base Offsets
The base offset is a set of coordinate values the redefines the origin of
the robot. The correct base-offset values are typically available from
the robot manufacturer. Enter the values for the base offsets in the
X1b and X3b fields of the Coordinate System Properties dialog.
For the robot shown in our example, the Base Offset values are:
• X1b = 3.0
• X3b = 4.0
End-Effector Offsets
The robot can have an end-effector attached to the end of robot link
L2. If there is an attached end-effector then you must configure the
end-effector offset value on the Coordinate System Properties dialog.
The end-effector offsets are defined with respect to the tool reference
frame at the tool tip.
For the robot shown in our example, the end-effector values are:
• X1e = 2.0
• X3e = -3.0
Configure a Cartesian Use these guidelines when configuring a Cartesian Gantry robot.
Gantry Robot
Establish the Reference Frame
Link Lengths
Base Offsets
End-Effector Offsets
Configure a Cartesian H-bot The H-bot is a special type of Cartesian two-axis gantry robot. This
type of machine has three rails positioned in the form of a letter H.
Two motors are positioned at the end of each leg of the robot. Unlike
Sliding Member
X2 X2 Virt
TCP X1
X1 Virt
Sliding rail
Stationary Rails
In the Cartesian H-bot illustration above, the X1 and X2 axes are the
real axes on the robot. X1 Virt and X2 Virt are configured as the virtual
axes.
• Motor A (X1 axis) is rotated, the robot move along a straight line
at + 45 degree angle.
with two Cartesian coordinate systems and a -45 degree rotation easily
performs the function.
The machine moves the tool center point (TCP) to the programmed
coordinates in CS2. The -45 degree rotation introduced by the
Kinematics, counteracts the 45 degree rotation introduced by the
mechanics of the machine and the H-bot moves to the CS1 configured
coordinates. As a result, a programmed move of X1virt=10, X2virt=5 moves to
a real mechanical position of X1=10, X2=5.
Link Lengths
Base Offsets
End-Effector Offsets
Configure a SCARA The typical SCARA has two revolute joints and a single prismatic joint.
Configuring a SCARA robot in RSLogix 5000 software, uses the
Articulated Independent two-axis geometry. Use these guidelines
when configuring a SCARA.
The reference frame for the SCARA geometry is at the base of link L1.
• Link lengths
• Base offsets
• End-effector offsets
IMPORTANT Be sure that the values for the link lengths, base offsets and
end-effector offsets are entered into the Configuration
Parameters dialog using the same measurement units.
L1= 10
L2= 8
Figure 1 - SCARA
Link Lengths
For the robot shown in Figure 1 - SCARA, the Link Length values
are:
• L1 = 10
• L2 = 8
Base Offsets
End-Effector Offsets
Arm Solutions A Kinematic arm solution is the position of all joints on the robot that
correspond to a Cartesian position. When the Cartesian position is
inside the workspace of the robot then at least one solution will
always exist. Many of the geometries have multiple joint solutions for
a single Cartesian position.
Left-Arm and Right-Arm A robot having an arm configuration has two Kinematics solutions
when attempting to reach a given position (point A shown on the
Solutions for Two-Axes figure below). One solution satisfies the equations for a right-armed
Robots robot, the other solution satisfies the equations for a left-armed robot.
Left-Arm Solution
Right-Arm Solution
Solution Mirroring for For a three-dimensional Articulated Independent robot there are four
possible solutions for the same point.
Three-Dimensional Robots
• Left-Arm
• Right-Arm
• Left-Arm Mirror
• Right-Arm Mirror
For example, consider the Cartesian point XYZ (10,0,15). The joint
position corresponding to this point has four joint solutions. Two of
the solutions are the same as the solutions for the two dimensional
case. The other two solutions are mirror image solutions where J1 is
rotated 180 degrees.
J3
J3
J2
J2
J3
J3
J2
J2
Activating Kinematics
WARNING
Be sure to choose an arm solution before activating the
Kinematic function. Failure to do so can result in machine
damage and/or serious injury or death to personnel.
Change the Robot Arm You can switch the robot from a left-arm solution to a right-arm
solution or vice versa. This is done automatically when a joint move is
Solution programmed forcing a left/right change to occur. After the change is
performed the robot stays in the new arm solution when Cartesian
moves are made. The robot arm solution changes again (if required)
when another joint move is made.
Plan for Singularity A singularity occurs when an infinite number of joint positions
(mathematical solutions) exist for a given Cartesian position. The
Cartesian position of a singularity is dependent on the type of the
robot geometry and the size of the link lengths for the robot. Not all
robot geometries have singularity positions.
• the robot manipulator folds its arm back onto itself and the
Cartesian position is at the origin.
• the robot is fully stretched at or very near the boundary of its
workspace.
WARNING
Avoid programming your robot towards a singularity position
when programming in Cartesian mode. The velocity of the robot
increases very rapidly as it approaches a singularity position
and can result in injury or death to personnel.
Encounter a No-solution
Position
WARNING
Avoid programming your robot towards a no solution position
when programming in Cartesian mode. The velocity of the robot
increases very rapidly as it approaches this position and can
result in injury or death to personnel.
Errors can occur for certain movement conditions for either the
source or target coordinate system after a transformation has
been established. These type of errors are reported in the MCT
instruction error codes. Singularity and other movement error
conditions are also reported in the MCT error codes.
You can monitor the status of the Kinematics functions using RSLogix
5000 software status bits.
Introduction Use this chapter to interpret the lights on the front of your module.
2 AXIS SERVO
CH 0 CH 1
FDBK FDBK
DRIVE DRIVE
OK
FDBK Light
DRIVE Light
CH0 CH1
FDBK FDBK
DRIVE DRIVE
OK
FDBK Light
If you are using this axis, make sure the module is configured
and an axis tag has been associated with the module.
Flashing green The axis is in the normal servo loop inactive state. None. The servo axis state can be changed by executing motion
instructions.
Steady green The axis is in the normal servo loop active state. None. The servo axis state can be changed by executing motion
instructions.
Flashing red The axis servo loop error tolerance has been • Correct the source of the problem.
exceeded. • Clear the servo fault condition using the Motion Axis
Fault Reset instruction.
• Resume normal operation.
Steady red An axis SSI feedback fault has occurred. • Correct the source of the problem by checking the SSI
device and power connections.
• Clear the servo fault condition using the Motion Axis
Fault Reset instruction.
• Resume normal operation.
DRIVE Light
• The axis is not used. None, if the axis is not used or is a position- only type.
• The axis is a position- only axis type.
Otherwise, make sure the module is configured, an axis tag has
been associated with the module, and the axis type is servo.
Flashing green The axis drive is in the normal disabled state. None. The servo axis state can be changed by executing motion
instructions.
Steady green The axis drive is in the normal enabled state. None. The servo axis state can be changed by executing motion
instructions.
Flashing red The axis drive output is in the shutdown state. • Check for faults that may have generated this state.
• Execute the Motion Axis Shutdown Reset instruction.
• Resume normal operation.
Steady red The axis drive is faulted. • Check the drive status.
• Clear the Drive Fault condition at the drive.
• Clear the servo fault condition using the Motion Axis
Fault Reset instruction.
• Resume normal operation.
• Check the configuration for the Drive Fault.
• If configured to be normally open and there is no voltage,
this is the normal condition.
• If configured to be normally closed and 24V dc is applied,
this is the normal condition.
AX0 AX1
FDBK FDBK
DRIVE DRIVE
OK
FDBK Light
If you are using this axis, make sure the module is configured
and an axis tag has been associated with the module.
Flashing green The axis is in the normal servo loop inactive state. None. The servo axis state can be changed by executing motion
instructions.
Steady green The axis is in the normal servo loop active state. None. The servo axis state can be changed by executing motion
instructions.
Flashing red The axis servo loop error tolerance has been • Correct the source of the problem.
exceeded. • Clear the servo fault condition using the Motion Axis
Fault Reset instruction.
• Resume normal operation.
Steady red An axis LDT feedback fault has occurred.y • Correct the source of the problem by checking the LDT
and power connections.
• Clear the servo fault condition using the Motion Axis
Fault Reset instruction.
• Resume normal operation.
DRIVE Light
• The axis is not used. None, if the axis is not used or is a position- only type.
• The axis is a position- only axis type.
Otherwise, make sure the module is configured, an axis tag has
been associated with the module, and the axis type is servo.
Flashing green The axis drive is in the normal disabled state. None. The servo axis state can be changed by executing motion
instructions.
Steady green The axis drive is in the normal enabled state. None. The servo axis state can be changed by executing motion
instructions.
Flashing red The axis drive output is in the shutdown state. • Check for faults that may have generated this state.
• Execute the Shutdown Reset motion instruction.
• Resume normal operation.
Steady red The axis drive is faulted. • Check the drive status.
• Clear the Drive Fault condition at the drive.
• Clear the servo fault condition using the Motion Axis
Fault Reset instruction.
• Resume normal operation.
• Check the configuration for the Drive Fault.
• If configured to be normally open and there is no voltage,
this is the normal condition.
• If configured to be normally closed and 24V dc is applied,
this is the normal condition.
2. If the lights keep turning solid red, contact your distributor, Rockwell
Automation representative, or Rockwell Automation support.
Notes:
Introduction This chapter helps you troubleshoot some situations that could
happen while you are running an axis.
Why does my axis While an axis is accelerating, you try to stop it. The axis keeps
accelerating for a short time before it starts to decelerate.
accelerate when I stop it?
Example You start a Motion Axis Jog (MAJ) instruction. Before the axis gets to
its target speed, you start a Motion Axis Stop (MAS) instruction. The
axis continues to speed up and then eventually slows to a stop.
Look for
Cause When you use an S-curve profile, jerk determines the acceleration and
deceleration time of the axis.
The following trends show how the axis stops with a trapezoidal
profile and an S-curve profile.
WDUJHW
VSHHG
DFFHOHUDWLRQ
VWRS
The axis slows down as soon as you start the The axis continues to speed up until the S-curve profile brings
stopping instruction. the acceleration rate to 0.
Corrective action If you want the axis to slow down right away, use a trapezoidal
profile.
Why does my axis While an axis is accelerating, you try to stop the axis or change its
speed. The axis keeps accelerating and goes past its initial target
overshoot its target speed? speed. Eventually it starts to decelerate.
Example You start a Motion Axis Jog (MAJ) instruction. Before the axis gets to
its target speed, you try to stop it with another MAJ instruction. The
speed of the second instruction is set to 0. The axis continues to speed
up and overshoots its initial target speed. Eventually it slows to a stop.
Look for
Cause When you use an S-curve profile, jerk determines the acceleration and
deceleration time of the axis.
The following trends show how the axis stops with a trapezoidal
profile and an S-curve profile.
The axis slows down as soon as you start the The stopping instruction reduces the acceleration of the axis. It
stopping instruction. The lower acceleration doesn’t now takes longer to bring the acceleration rate to 0. The axis
change the response of the axis. continues past its target speed until acceleration equals 0.
Corrective action Use a Motion Axis Stop (MAS) instruction to stop the axis or set up
your instructions like this.
8VHWKHVDPHDFFHOHUDWLRQUDWHDV
WKHLQVWUXFWLRQWKDWVWRSVWKHD[LV
2UXVHDORZHUDFFHOHUDWLRQ
8VHWKHVDPHDFFHOHUDWLRQUDWHDV
WKHLQVWUXFWLRQWKDWVWDUWVWKHD[LV
2UXVHDKLJKHUDFFHOHUDWLRQ
Why is there a delay when I While an axis is jogging at its target speed, you stop the axis. Before
the axis stops completely, you restart the jog. The axis continues to
stop and then restart a jog? slow down before it speeds up.
Example You use a Motion Axis Stop (MAS) instruction to stop a jog. While the
axis is slowing down, you use a Motion Axis Jog (MAJ) instruction to
start the axis again. The axis doesn’t respond right away. It continues
to slow down. Eventually it speeds back up to the target speed.
Look for
Cause When you use an S-curve profile, jerk determines the acceleration and
deceleration time of the axis. An S-curve profile has to get acceleration
to 0 before the axis can speed up again. The following trends show
how the axis stops and starts with a trapezoidal profile and an S-curve
profile.
The axis speeds back up as soon as you start the jog The axis continues to slow down until the S-curve profile
again. brings the acceleration rate to 0.
Corrective action If you want the axis to accelerate right away, use a trapezoidal profile.
Why does my axis reverse While an axis is jogging at its target speed, you stop the axis. Before
the axis stops completely, you restart the jog. The axis continues to
direction when I stop and slow down and then reverse direction. Eventually the axis changes
start it? direction again and moves in the programmed direction.
Example You use a Motion Axis Stop (MAS) instruction to stop a jog. While the
axis is slowing down, you use a Motion Axis Jog (MAJ) instruction to
start the axis again. The axis continues to slow down and then moves
in the opposite direction. Eventually goes back to its programmed
direction.
Look for
Cause When you use an S-curve profile, jerk determines the acceleration and
deceleration time of the axis.
The following trends show how the axis stops and starts with a
trapezoidal profile and an S-curve profile.
The axis speeds back up as soon as you start the jog The jog instruction reduces the deceleration of the axis. It now
again. The lower deceleration doesn’t change the takes longer to bring the acceleration rate to 0. The speed
response of the axis. overshoots 0 and the axis moves in the opposite direction.
Corrective action Use the same deceleration rate in the instruction that starts the axis
and the instruction that stops the axis.
Configure Homing
Introduction Homing puts your equipment at a specific starting point for operation.
This starting point is called the home position. Typically, you home
your equipment when you reset it for operation.
• Use a Home Offset that is in the same direction as the Home Direction.
• Use a Home Offset that is greater than the deceleration distance.
• If the Home Offset is less than the deceleration distance:
• The axis simply slows to a stop. The axis doesn’t reverse direction to move to the
Home Position. In this case, the MAH instruction doesn’t set the PC bit.
• On a rotary axis, the controller adds 1 or more revolutions to the move distance.
This makes sure that the move to the Home Position is unidirectional.
Guideline Details
7. Choose a starting direction for Which direction do you want to start the homing sequence in?
the homing sequence.
• Positive direction — choose a Forward direction.
• Negative direction — choose a Negative direction.
Sequence Description
Active immediate home This sequence sets the axis position to the Home Position without moving the axis. If
feedback isn’t enabled, this sequence enables feedback.
Active home to switch in forward The switch homing sequence is useful for multi-turn rotary and linear applications.
bidirectional
Sequence Description
Active home to marker in forward The marker homing sequence is useful for single-turn rotary and linear encoder applications
bidirectional because these applications have only one encoder marker for full axis travel.
1. The axis moves in the Home Direction at the Home Speed to the marker and stops.
2. The axis moves back to the marker or it moves to the Offset position. The axis moves
at the Home Return Speed. If the axis is a Rotary Axis, the move back to the Home
Position takes the shortest path (that is, no more than ½ revolution).
The accuracy of this homing sequence depends on the homing speed and the delay to detect
the marker transition.
Example: Suppose your Home Speed is 1 in./s and it takes 1 μs to detect the marker.
Sequence Description
Active home to switch and marker in This is the most precise active homing sequence available.
forward bidirectional
1. The axis moves in the Home Direction at the Home Speed to the home limit switch
and stops.
2. The axis reverses direction and moves at the Home Return Speed until it clears the
home limit switch.
3. The axis keeps moving at the Home Return Speed until it gets to the marker.
4. The axis moves back to the marker or it moves to the Offset position. The axis moves
at the Home Return Speed. If the axis is a Rotary Axis, the move back to the Home
Position takes the shortest path (that is, no more than ½ revolution).
If the axis is past the home limit switch at the start of the homing sequence, the axis reverses
direction and starts the return leg of the homing sequence.
Active home to switch in forward This active homing sequence is useful for when an encoder marker is not available and either
unidirectional unidirectional motion is required or proximity switch is being used.
1. The axis moves in the Home Direction at the Home Speed to the home limit switch.
2. The axis moves to the Home Offset position if it’s in the same direction as the Home
Direction.
Active home to marker in forward This active homing sequence is useful for single-turn rotary and linear encoder applications
unidirectional when unidirectional motion is required.
1. The axis moves in the Home Direction at the Home Speed to the marker.
2. The axis moves to the Home Offset position if it’s in the same direction as the Home
Direction.
Sequence Description
Active home to switch and marker in This active homing sequence is useful for multi-turn rotary applications when unidirectional
forward unidirectional motion is required.
1. The axis moves in the Home Direction at the Home Speed to the home limit switch.
2. The axis keeps moving at the Home Speed until it gets to the marker.
3. The axis moves to the Home Offset position if it’s in the same direction as the Home
Direction.
Passive Homing
Sequence Description
Passive Immediate Home This is the simplest passive homing sequence type. When this sequence is performed, the
controller immediately assigns the Home Position to the current axis actual position. This
homing sequence produces no axis motion.
Passive Home with Switch This passive homing sequence is useful for when an encoder marker is not available or a
proximity switch is being used.
When this sequence is performed in the Passive Homing Mode, an external agent moves the
axis until the home switch is detected. The Home Position is assigned to the axis position at
the moment that the limit switch is detected. If you are using a Home Offset, then the Home
Position is offset from the point where the switch is detected by this value.
Passive Home with Marker This passive homing sequence is useful for single-turn rotary and linear encoder applications.
When this sequence is performed in the Passive Homing Mode, an external agent moves the
axis until the marker is detected. The home position is assigned to the axis position at the
precise position where the marker was detected. If you are using a Home Offset, then the
Home Position is offset from the point where the switch is detected by this value.
Passive Home with Switch then This passive homing sequence is useful for multi-turn rotary applications.
Marker
When this sequence is performed in the Passive Homing Mode, an external agent moves the
axis until the home switch and then the first encoder marker is detected. The home position is
assigned to the axis position at the precise position where the marker was detected. If you
are using a Home Offset, then the Home Position is offset from the point where the switch is
detected by this value.
Notes:
Wiring Diagrams
Introduction Use the diagrams in this appendix to wire the motion control
equipment of your control system.
1756-M02AE Module
2 1
+OUT-0 +OUT-1 General Cable To servo drive
4 3 C0720
-OUT-0 -OUT-1
6 5
+ENABLE-0 +ENABLE-1
8 7
-ENABLE-0 -ENABLE-1 General Cable To servo drive
10 9 C0721
DRVFLT-0 DRVFLT-1
12 11
CHASSIS CHASSIS
14 13
IN_COM IN_COM General Cable To home
16 15 C0720 limit switch
HOME-0 HOME-1
18 17
REG24V-0 REG24V-1
General Cable To registration
20 19 C0720 sensor
REG5V-0 REG5V-1
22 21
+OK -OK
24 23
CHASSIS CHASSIS
26 25
+CHA-0 +CHA-1
28 27
-CHA-0 -CHA-1
30 29
+CHB-0 +CHB-1 General Cable To encoder
32 31 C0722
-CHB-0 -CHB-1
34 33
+CHZ-0 +CHZ-1
36 35
-CHZ-0 -CHZ-1
Notes
This example shows the wiring for Axis 1 Wire Axis 0 the same way.
+ENABLE
J1-20 ENABLE Interface
-ENABLE J1
General Cable Cable
From
C0721 DRVFLT J1-25 READY-
1756-M02AE
IN_COM
Notes
• This is an example of one way to wire the drive.
• See Ultra 100 Series Drive Installation Manual, publication
number 1398-5.2, for other configurations.
J1-5 24VDC
J1-24 READY+
J1-6 or 13 24VCOM
+ENABLE
J1-20 ENABLE Interface
General Cable -ENABLE J1
From Cable
C0721 DRVFLT J1-25 READY-
1756-M02AE
IN_COM
Notes
• This is an example of one way to wire the drive.
1398-CFLAExx Cable
1.0 in.
Individually Jacketed pairs
24V
BRAKE
RESET
1398-CFLAE J1
5.0 in.
WHT/ORG 22GA
49 BRAKE +
WHT/YEL 22GA
50 BRAKE -
DRAIN
TAN 28GA
21 RESET
Wires DRAIN
Stripped
Back WHT/RED 22GA
5 24VDC
.25 in. WHT/BLK 22GA
6 24VCOM
DRAIN
WHT/GRN 22GA
22 COMMAND +
WHT/BLU 22GA
23 COMMAND -
DRAIN
26 24VDC
BROWN 28GA
24 READY +
RED 28GA
20 ENABLE
ORANGE 28GA
25 READY -
YELLOW 28GA
13 24VCOM
DRAIN
Wires
Terminated
GREEN 28GA
with 7 AOUT +
BLUE 28GA
Ferrules 8 AOUT -
VIOLET 28GA
9 BOUT +
GRAY 28GA
10 BOUT -
WHITE 28GA
11 IOUT +
BLACK 28G
12 IOUT -
DRAIN
AUX PWR +5 RED 22GA 2 AXIS SERVO RED 22GA AUX PWR +5
3 3
AUXCOM ECOM BLACK 22GA AUX PWR CH0 CH1 AUX PWR BLACK 22GA AUXCOM ECOM 2
2
DRAIN (optional) FDBK FDBK (optional) DRAIN
DRIVE DRIVE
AXIS 0 OK
AXIS 1
ANALOG COMMAND + WHT/GRN 22GA +OUT-0 2 1 +OUT-1 WHT/GRN 22GA ANALOG COMMAND +
25 2 4 3 1 25
ANALOG COMMAND - WHT/BLU 22GA -OUT-0 -OUT-1 WHT/BLU 22GA ANALOG COMMAND -
26 4 6 5 3 26
DRAIN CHASSIS CHASSIS DRAIN
12 8 7 11
10 9
IO POWER BROWN 28GA +ENABLE-0 +ENABLE-1 BROWN 28GA IO POWER
29 6 12 11 5 29
INPUT 1 ENABLE 2 RED 28GA -ENABLE-0
8 -ENABLE-1 RED 28GA 2 INPUT 1 ENABLE
31 14 13 7 31
OUTPUT 1 READY 3 ORANGE 28GA DRVFLT-0
10 DRVFLT-1 ORANGE 28GA 3 OUTPUT 1 READY
39 16 15 9 39
IO COM YELLOW 28GA IN_COM IN_COM YELLOW 28GA IO COM
27 14 18 17 13 27
DRAIN DRAIN
20 19
22 21
AOUT + GREEN 28GA +CHA-0 +CHA-1 GREEN 28GA AOUT +
16 26 24 23 25 16
AOUT - BLUE 28GA -CHA-0 -CHA-1 BLUE 28GA AOUT -
17 28 26 25 27 17
BOUT + VIOLET 28GA +CHB-0 +CHB-1 VIOLET 28GA BOUT +
18 30 28 27 29 18
BOUT - GRAY 28GA -CHB-0 -CHB-1 GRAY 28GA BOUT -
19 32 30 29 31 19
IOUT + WHITE 28GA +CHZ-0 +CHZ-1 WHITE 28GA IOUT +
20 34 32 31 33 20
IOUT - BLACK 28GA -CHZ-0 -CHZ-1 BLACK 28GA IOUT -
21 36 34 33 35 21
DRAIN CHASSIS CHASSIS DRAIN
24 36 35 23
2090-U3AE-D44xx Cable.
Pin 31
Pin 1
Pin 44
5V DC +5V DC RED
Field Power +5 COM BLK ENC. PWR -1
Supply
WHT +ENABLE 1
BLK -ENABLE 1 TB2 7 A1 ENABLE
ENA/DR OK 1 RED DRVFLT 1 TB2 19 DROK
BLK IN_COM TB2 18 DROK
A 1394CCAExx
Axis 1 AQB1
Notes
1394-CFLAExx Cable
1.0 in.
5.0 in.
RED 22GA
+5V 3
BLACK 22GA
+5VCOM 9
DRAIN
ORANGE 22GA
CHANNEL A HIGH 4
WHT/ORG 22GA
CHANNEL A LOW 10
YELLOW 22GA
CHANNEL B HIGH 5
WHT/YEL 22GA
CHANNEL B LOW 11
GREEN 22GA
CHANNEL Z HIGH 6
WHT/GRN 22GA
CHANNEL Z LOW 12
DRAIN
VREF+ 1
BLUE 22GA
TREF+ 2
WHT/BLU 22GA
VREF- 7
DRAIN
TREF- 8
VIOLET 22GA
(DROK-0)
WHT/VIO 22GA
(24V EN COM)
GRAY 22GA
(24V)
WHT/GRY 22GA
(AX_-ENABLE)
DRAIN
RED 22GA
TO SYSTEM
BLACK 22GA
FAULT STRING
DRAIN
1756-M02AS Module
+OUT-0 +OUT-1
General cable C0720 To servo drive or valve
-OUT-0 -OUT-1
+ENABLE-0 +ENABLE-1
-ENABLE-0 -ENABLE-1
General cable C0721 To servo drive, valve, or pump
DRVFLT-0 DRVFLT-1
CHASSIS CHASSIS
IN_COM IN_COM
General cable C0720 To home limit switch
HOME-0. HOME-1.
REG24V-0 REG24V-1
General cable C0720 To registration sensor
REG5V-0 REG5V-1
+OK -OK
CHASSIS CHASSIS
+CLOCK-0 +CLOCK-1
-CLOCK-0 -CLOCK-1
+DATA-0 +DATA-1
General cable C0722 To Synchronous Serial
-DATA-0 -DATA-1 Interface (SSI)
SSI COM SSI COM
CHASSIS. CHASSIS.
43394
Notes
This example shows the wiring for Axis 1 Wire Axis 0 the same way.
1756-HYD02 Application This example uses a 1-axis loop with a differential LDT input.
Example
24V Power Supply
PC with
RSLogix 5000™ + –C
Drive Output
Servo or IMPORTANT: This
Proportional module’s analog
ControlLogix 1756-HYD02 Amplifier output require an
controller external amplifier to
drive the valve.
+ OUT
– OUT
CHASSIS Valve
+INT & –INT
+RET & –RET Piston-type Hydraulic
CHASSIS Cylinder and LDT
+C–
+/– 15V dc
Power Supply
for LDTs
1756-HYD02 Module
+OUT-0 +OUT-1
General cable C0720 To valve driver/amplifier
-OUT-0 -OUT-1
+ENABLE-0 +ENABLE-1
To hydraulic control unit
-ENABLE-0 -ENABLE-1 or
General cable C0721
DRVFLT-0 DRVFLT-1 To valve or pump
CHASSIS CHASSIS
IN_COM IN_COM To home
General cable C0720
HOME-0 HOME-1 limit switch
REG24V-0 REG24V-1
General cable C0720 To registration
REG5V-0 REG5V-1 sensor
+OK -OK
CHASSIS CHASSIS
+INT-0 +INT-1
-INT-0 -INT-1
+RET-0 +RET-1
General cable C0722 To LDT
-RET-0 -RET-1
LDT CMN LDT CMN
CHASSIS CHASSIS
43394
Notes
• This example shows the wiring for Axis 1. Wire Axis 0 the same
way.
• Use transducers that use an external interrogation signal.
• Do not exceed the specified isolation voltage between power
sources.
LDTs These diagrams show the connections for Temposonic and Balluff
LDTs.
Temposonic GH Feedback
Device
Temposonic 1756-HYD02
GH Series Temposonic GH RTB
Cable Color Code
+Interrogate or +Start Yellow + Int - 0
3 26
-Interrogate or - Start Green - Int - 0
4 28
+24 V DC
Customer
24 V DC LDT
Power
Supply Supply Common
To Local
Ground Bus
Temposonic
GH Series Temposonic GH
Cable Color Code
+ Supply V DC Red or Brown
5
Supply Com White LDT Cmn
6 33
Supply
General cable REG24V Output
From the motion module
C0720 IN_COM Common
43395
Notes
5V Registration Sensor
5V dc
Field Power 5V
Supply Sourcing-Type
+ – Registration
Sensor
Supply
General cable REG5V Output
From the motion module
C0720 IN_COM Common
43395
Notes
Notes
• The home limit switch inputs to the servo module are designed
for 24V dc nominal operation.
• Wire these inputs for current sourcing operation.
OK Contacts
24V dc
Field Power
Supply
+ –
OK Pilot
Relay
General cable +OK
From the motion module
C0720 -OK 43397
OK Pilot
Relay CR1
Start 24V ac/dc
Contacts Stop CR1 or 120V ac
typical
M1
43398
CR1
Notes
Notes:
Axis Properties
General Tab – AXIS_SERVO The General screen depicted below is for an AXIS_SERVO data type.
Axis Configuration Selects and displays the intended use of the axis:
Module Selects and displays the name of the motion module to which the axis
is associated. Displays <none> if the axis is not associated with any
motion module.
Channel Selects and displays the 1756-M02AE motion module channel - either
0 or 1 - to which the axis is assigned. Disabled when the axis is not
associated with any motion module.
General Tab - The General screen shown below is for an AXIS_SERVO DRIVE Data
Type.
AXIS_SERVO_DRIVE
Axis Configuration Selects and displays the intended use of the axis:
Motion Group Selects and displays the Motion Group to which the axis is associated.
An axis assigned to a Motion Group appears in the Motion Groups
branch of the Controller Organizer, under the selected Motion Group
sub-branch. Selecting <none> terminates the Motion Group
association, and moves the axis to the Ungrouped Axes sub-branch of
the Motions Groups branch.
Module Selects and displays the name of the SERCOS drive to which the axis
is associated. Displays <none> if the axis is not associated with any
drive.
Node Displays the base node of the associated SERCOS drive. Disabled
when the axis is not associated with any drive.
IMPORTANT Do you want to use the auxiliary feedback port of a Kinetix 6000 drive as a
feedback-only axis?
If YES, then make sure the drive has firmware revision 1.80 or
later.
This also places a spat (*) on the Aux Feedback tab and you must go
there and select the appropriate values. On the Drive/Motor tab the
Loop Configuration is changed to Aux Feedback Only.
Motion Group Selects and displays the Motion Group to which the axis is associated.
An axis assigned to a Motion Group appears in the Motion Groups
branch of the Controller Organizer, under the selected Motion Group
sub-branch. Selecting <none> terminates the Motion Group
association, and moves the axis to the Ungrouped Axes sub-branch of
the Motions Groups branch.
Axis Configuration Selects and displays the intended use of the axis:
Motion Group Selects and displays the Motion Group to which the axis is associated.
An axis assigned to a Motion Group appears in the Motion Groups
branch of the Controller Organizer, under the selected Motion Group
sub-branch. Selecting <none> terminates the Motion Group
association, and moves the axis to the Ungrouped Axes sub-branch of
the Motions Groups branch.
Module Selects and displays the name of the motion module to which the axis
is associated. Displays <none> if the axis is not associated with any
motion module.
Motion Planner Tab The Motion Planner tab is where you set/edit the number of Output
Cam execution targets, the type of stop action to use, enable or
disable Master Delay Compensation, enable or disable Master Position
Filter, and set the bandwidth for Master Position Filter Bandwidth. The
Motion Planner tab has the same fields regardless of the type of axis.
Output Cam Execution Targets Determines how many Output Cam execution nodes (instances) are
created for a specific axis. Note that the Execution Target parameter
for the MAOC/MDOC instructions specify which of the configured
execution nodes the instruction is affecting. In addition, the number
Program Stop Action Select how a specific axis is stopped when the processor undergoes a
mode change, or when an explicit Motion Group Programmed Stop
(MGPS) instruction is executed.
Master Delay Compensation Use this checkbox to Enable/Disable Master Delay Compensation.
Checkbox Master Delay Compensation is used balance the delay time between
reading the master axis command position and applying the
associated slave command position to the slave’s servo loop. This
feature ensures that the slave axis command position accurately tracks
the actual position of the master axis that is, zero tracking error.
Enable Master Position Filter Use this checkbox to Enable/Disable Master Position Filter. The
Checkbox default is disabled and must be checked to enable position filtering.
Master Position Filter, when enabled, effectively filters the specified
master axis position input to the slave axis’s gearing or position
camming operation. The filter smooths out the actual position signal
from the master axis, and thus smooths out the corresponding motion
of the slave axis.
When this feature is enabled the Master Position Filter Bandwidth field
is enabled.
Master Position Filter The Master Position Filter Bandwidth field is enabled when the Enable
Bandwidth Position Filter checkbox is selected. This field controls the bandwidth
for master position filtering. Enter a value in Hz in this field to set the
bandwidth to for the Master Position Filter.
Units Tab The Units tab is the same for all axis data types. Use this tab to
determine the units to define your motion axis.
Position Units User-defined engineering units (rather than feedback counts) used for
labeling all motion-related values (for example, position, velocity, and
so on) These position units can be different for each axis.
Average Velocity Timebase Specifies the time (in seconds) to be used for calculating the average
velocity of the axis. This value is computed by taking the total
distance the axis travels in the amount of time specified, and dividing
this value by the timebase.
Servo Tab - AXIS_SERVO Click on the Servo tab from the Axis Properties for AXIS_SERVO to
access the Servo dialog.
External Drive Configuration Select the drive type for the servo loop:
Loop Configuration Select the configuration of the servo loop. For this release, only
Position Servo is available.
Enable Drive Fault Input Check this box if you wish to enable the Drive Fault Input. When
active the motion module receives notice whenever the external drive
detects a fault.
Drive Fault Input Specifies the usual state of the drive fault input when a fault is
detected on the drive.
Enable Direct Drive Ramp Clicking on the Enable Direct drive Ramp Control check box lets you
Control set the Direct Drive Ramp Rate in volts per second for when an MDO
instruction is executed.
Direct Drive Ramp Rate The Direct Drive Ramp Rate is a slew rate for changing the output
voltage when a Direct Drive On (MDO) instruction is executed. A
Direct Drive Ramp Rate of 0 disables the output rate limiter letting the
Direct Drive On voltage to be applied directly.
Attribute 1/Attribute 2 Select up to two axis attributes whose status are transmitted – along
with the actual position data – to the Logix processor. The values of
the selected attributes can be accessed via the standard GSV or Get
Attribute List service.
The servo status data update time is precisely the coarse update
period.
Feedback Tab – The Feedback tab lets you to select the type of Feedback used with
your Servo axis.
(AXIS_SERVO)
Feedback Type Select the appropriate Feedback for your current configuration. Your
options are dependent upon the motion module to which the axis is
associated.
Synchronous Serial Interface The 1756-M02AS servo module provides an interface to transducers
(SSI) with Synchronous Serial Interface (SSI) outputs. SSI outputs use
standard 5V differential signals (RS422) to transmit information from
the transducer to the controller. The signals consist of a Clock
generated by the controller and Data generated by the transducer.
Linear Displacement The 1756-HYD02 Servo module provides an interface to the Linear
Transducer (LDT) Magnetostrictive Displacement Transducer, or LDT. A Field
Programmable Gate Array (FPGA) is used to implement a
multi-channel LDT Interface. Each channel is functionally equivalent
and is capable of interfacing to an LDT device with a maximum count
of 240,000. The LDT interface has transducer failure detection and
digital filtering to reduce electrical noise.
Code Type The type of code, either Binary or Gray, used to report SSI output. If
the module’s setting does not match the feedback device, the
positions jump around erratically as the axis moves.
Data Length The length of output data in a specified number of bits between 8 and
31. The data length for the selected feedback device can be found in
its specifications.
Clock Frequency Sets the clock frequency of the SSI device to either 208 (default) or
625 kHz. When the higher clock frequency is used, the data from the
feedback device is more recent, but the length of the cable to the
transducer must be shorter than with the lower frequency.
Enable Absolute Feedback This checkbox allows you to either enable (checked) or disable
(unchecked) the Absolute Feedback feature. The default is enabled. If
Enable Absolute Feedback is set, the servo module adds the Absolute
Feedback Offset to the current position of the feedback device to
establish the absolute machine reference position. Absolute feedback
devices retain their position reference even through a power-cycle,
therefore the machine reference system can be restored at power-up.
Absolute Feedback Offset If Absolute feedback is enabled, this field becomes active. You can
enter the amount of offset, in position units, to be added to the
current position of the Feedback device.
LDT Type This field selects the type of LDT to use to provide feedback to the
Hydraulic module. The available types are PWM, Start/Stop Rising, or
Start/Stop Falling.
Recirculations Use this field to set the number of repetitions to use to acquire a
measurement from an LDT.
Calibration Constant This is a number that is engraved on the LDT by the manufacturer. It
specifies the characteristics of the individual LDT. Each LDT has its
own calibration constant therefore, if you change the LDT, you must
change the Calibration constant.
Length This value defines the stroke of travel of the hydraulic cylinder. The
length value is used with the number of recirculations to determine
the minimum servo update period.
Scaling Scaling defines the relationship between the LDT unit of measure
(length field) and the unit of measure defined at the Units tab.
Enable Absolute Feedback This field is grayed out because it is always active when Feedback
Type is LDT.
Absolute Feedback Offset Enter the amount of offset, in position units, to be added to the
current position of the LDT.
Calculate Button
Drive/Motor Tab - Use this tab to configure the servo loop for an AXIS_SERVO_DRIVE
axis, and open the Change Catalog dialog box.
(AXIS_SERVO_DRIVE)
Amplifier Catalog Number Select the catalog number of the amplifier to which this axis is
connected.
Catalog Number Select the catalog number of the motor associated with this axis.
When you change a Motor Catalog Number, the controller recalculates
the values of the following values using (among other values) the
default Damping Factor of 0.8.
Maximum Acceleration
Maximum Deceleration
Limits tab Position Error Tolerance
Custom Stop Action Attributes dialog Stopping Torque
Custom Limit Attributes dialog Velocity Limit
Drive Resolution Type in the number of counts per motor revolution, motor inch, or
motor millimeter. This value applies to all position data. Valid values
range from 1 to 2^32 - 1. One Least Significant Bit (LSB) for position
data equals 360° / Rotational Position Resolution.
Drive Enable Input Checking To activate Drive Enable Input Checking click on the checkbox. When
active (box is checked) the drive regularly monitors the state of the
Drive Enable Input. This dedicated input enables the drive’s power
structure and servo loop. If Drive Enable Input Checking is not active
then no such checking of the Drive Enable Input occurs.
Drive Enable Input Fault Click on the checkbox to activate the Drive Enable Input Fault. When
active, a fault detected on the external drive notifies the motion
module via Drive Fault Input.
Attribute 1/Attribute 2 Select up to two axis attributes whose status are transmitted – along
with the actual position data – to the Logix processor. The values of
the selected attributes can be accessed via the standard GSV or Get
Attribute List service.
The servo status data update time is precisely the coarse update
period.
Change Catalog…button The Change Catalog button accesses the motor database and provides
for selecting a new motor catalog number. There are three boxes that
can be used for refine the selection process.
Catalog Number Lists the available catalog numbers from the Motor Database based on
any selection criteria from the Filters fields.
Filters There are three optional Filter fields that allow you to refine your
search of the Motor Database. The Filter boxes are defaulted to all.
Voltage
Lets you select a voltage rating from the pull-down list to broaden or
narrow your search. The default is all.
Family
The Family filter box pull down list lets you narrow your motor search
by restricting it to a particular family of motors. The default is all.
Feedback Type
The Feedback Type filter box pull-down list lets you manipulate your
motor search by acceptable Feedback types. The default is all.
Calculate... button The Calculate button takes you to an input screen that is designed to
calculate the Drive Resolution and Conversion Constant based upon
your input for Position Unit Scaling and Position Range for Linear
Positioning mode. If you are in Rotary Positioning Mode then it
calculates the Drive Resolution, Conversion Constant, and Position
Unwind based upon your inputs for Position Unit Scaling and Position
Unit Unwind.
When the Conversion screen has Linear as the value for Position
Mode, clicking on the Calculate button displays the following screen.
Position Unit Scaling Position Unit Scaling defines the relationship between the Position
Units defined on the Units tab and the units selected to measure
position.
Per The units used for Position Unit Scaling. The options are: Motor Inch,
Motor Millimeter, or Motor Rev
Position Range Maximum travel limit that your system can go.
Position Unit Unwind For Rotary applications, the Position Unit Unwind field displays. Enter
the value for the maximum number of unwinds in position units per
unwind cycle.
Calculate Parameters The Calculate Parameters shows the values that are to be calculated
based upon the values entered for the Position Unit Scaling and
Position Range.
Drive Resolution Recalculates the resolution based upon the new values entered on this
screen.
Conversion Constant Recalculates the Conversion Constant based upon the new values
entered on this screen.
When the Conversion screen has Rotary as the value for Position
Mode, clicking on the Calculate button displays the following screen.
Motor Feedback Tab - Use this tab to configure motor and auxiliary feedback device (if any)
parameters, for an axis of the type AXIS_SERVO_DRIVE.
AXIS_SERVO_DRIVE
The Axis Configuration selection made on the General tab, and the
Loop Configuration selection made on the Drive tab determine which
sections of this dialog box – Motor and Auxiliary Feedback – are
enabled.
Feedback Type This field displays the type of feedback associated with the selected
motor.
Cycles The number of cycles of the associated feedback device. This helps
the Drive Compute Conversion constant used to convert drive units to
feedback counts. Depending on the feedback type you select, this
value may be either read-only or editable.
Interpolation Factor This field displays a fixed, read-only value for each feedback type.
This value is used to compute the resolution of the feedback device.
Aux Feedback Tab - The Auxiliary Feedback tab is enabled only if the Drive tab’s Loop
Configuration field is set to Aux Feedback Only, Aux Position Servo,
AXIS_SERVO_DRIVE Dual Position Servo, Dual Command Servo, or Aux Dual Command
Servo.
Use this tab to configure motor and auxiliary feedback device (if any)
parameters, for an axis of the type AXIS_SERVO_DRIVE.
Feedback Type For applications that use auxiliary feedback devices, select the type of
auxiliary feedback device type. These are drive dependent.
Cycles The number of cycles of the auxiliary feedback device. This helps the
Drive Compute Conversion constant used to convert drive units to
feedback counts. Depending on the feedback type selected, this value
may either be read-only or editable.
Interpolation Factor This field displays a fixed constant value for the selected feedback
type. This value is used to compute the resolution of the feedback
device.
Conversion Constant and Position Unwind and the labels for these
values.
Conversion Tab Use this tab to view/edit the Positioning Mode, Conversion Constant,
and if configured as Rotary, the Unwind values for an axis, of the tag
types AXIS_SERVO, AXIS_SERVO_DRIVE and AXIS_VIRTUAL.
Positioning Mode This parameter is not editable for an axis of the data type
AXIS_CONSUMED. Instead, this value is set in and taken from a
producing axis in a networked Logix processor. This value can be
edited for AXIS_SERVO, AXIS_SERVO_DRIVE and AXIS_VIRTUAL.
Conversion Constant Type the number of feedback counts per position unit. This
conversion – or “K” – constant allows axis position to be displayed,
and motion to be programmed, in the position units set in the Units
tab. The conversion constant is used to convert axis position units into
feedback counts and vice versa for the AXIS_SERVO type and for the
AXIS_SERVO_DRIVE, the number of counts per motor revolution, as
set in the Drive Resolution field of the Drive tab.
Position Unwind This parameter is not editable for an axis of the data type
AXIS_CONSUMED. Instead, this value is set in and taken from a
producing axis in a networked Logix processor. For a Rotary axis
(AXIS_SERVO), this value represents the distance (in feedback counts)
used to perform automatic electronic unwind. Electronic unwind
allows infinite position range for rotary axes by subtracting the
unwind distance from both the actual and command position, every
time the axis travels the unwind distance.
Homing Tab - AXIS_SERVO Use this tab to configure the attributes related to homing an axis of the
type AXIS_SERVO or AXIS_SERVO_DRIVE.
Position Type the desired absolute position, in position units, for the axis after
the specified homing sequence has been completed. In most cases,
this position is set to zero, although any value within the software
travel limits can be used. After the homing sequence is complete, the
axis is left in this position.
Offset Type the desired offset (if any) in position units the axis is to move,
upon completion of the homing sequence, to reach the home
position. In most cases, this value is zero.
Sequence Select the event that causes the Home Position to be set.
Limit Switch If a limit switch is used, indicate the normal state of that switch (that
is, before being engaged by the axis during the homing sequence):
• Normally Open
• Normally Closed
Direction For active homing sequences, except for the Immediate Sequence
type, select the desired homing direction.
Direction Description
Forward Uni-directional The axis jogs in the positive axial direction until a homing
event (switch or marker) is encountered, then continues in
the same direction until axis motion stops (after
decelerating or moving the Offset distance).
Direction Description
Forward Bi-directional The axis jogs in the positive axial direction until a homing
event (switch or marker) is encountered, then reverses
direction until motion stops (after decelerating or moving
the Offset distance).
Reverse Uni-directional The axis jogs in the negative axial direction until a
homing event (switch or marker) is encountered, then
continues in the same direction until axis motion stops
(after decelerating or moving the Offset distance).
Reverse Bi-directional The axis jogs in the negative axial direction until a
homing event (switch or marker) is encountered, then
reverses direction until motion stops (after decelerating
or moving the Offset distance).
Speed Type the speed of the jog profile used in the first leg of an active
homing sequence. The homing speed specified should be less than
the maximum speed and greater than zero.
Return Speed The speed of the jog profile used in the return leg(s) of an active
homing sequence. The home return speed specified should be less
than the maximum speed and greater than zero.
Homing Tab - Use this tab to configure the attributes related to homing an axis of the
type AXIS_SERVO_DRIVE.
AXIS_SERVO_DRIVE
Position Type the desired absolute position, in position units, for the axis after
the specified homing sequence has been completed. In most cases,
this position is set to zero, although any value within the software
travel limits can be used. After the homing sequence is complete, the
axis is left in this position.
Offset Type the desired offset (if any) in position units the axis is to move,
upon completion of the homing sequence, to reach the home
position. In most cases, this value is zero.
Sequence Select the event that causes the Home Position to be set.
Limit Switch If a limit switch is used, indicate the normal state of that switch (that
is, before being engaged by the axis during the homing sequence).
• Normally Open
• Normally Closed
Direction For active homing sequences, except for the Immediate Sequence
type, select the desired homing direction.
Direction Description
Forward Uni-directional The axis jogs in the positive axial direction until a homing
event (switch or marker) is encountered, then continues in
the same direction until axis motion stops (after
decelerating or moving the Offset distance).
Forward Bi-directional The axis jogs in the positive axial direction until a homing
event (switch or marker) is encountered, then reverses
direction until motion stops (after decelerating or moving
the Offset distance).
Reverse Uni-directional The axis jogs in the negative axial direction until a
homing event (switch or marker) is encountered, then
continues in the same direction until axis motion stops
(after decelerating or moving the Offset distance).
Reverse Bi-directional The axis jogs in the negative axial direction until a
homing event (switch or marker) is encountered, then
reverses direction until motion stops (after decelerating
or moving the Offset distance).
Speed Type the speed of the jog profile used in the first leg of an active
homing sequence. The homing speed specified should be less than
the maximum speed and greater than zero.
Torque Level The torque level, with units % continuous torque, that the axis motor
must reach to complete the Home-to-Torque sequence. This feature is
only available on the Kinetix family of drives.
Return Speed The speed of the jog profile used in the return leg(s) of an active
homing sequence. The home return speed specified should be less
than the maximum speed and greater than zero.
Homing Tab - Use this tab to configure the attributes related to homing an axis of the
type AXIS_VIRTUAL.
AXIS_VIRTUAL
Position Type the desired absolute position, in position units, for the axis after
the specified homing sequence has been completed. In most cases,
this position is set to zero, although any value within the software
travel limits can be used. After the homing sequence is complete, the
axis is left at this position.
Hookup Tab - AXIS_SERVO Use this tab to configure and initiate axis hookup and marker test
sequences for an axis of the type AXIS_SERVO.
Test Increment Specifies the amount of distance traversed by the axis when executing
the Output & Feedback test. The default value is set to approximately
a quarter of a revolution of the motor in position units.
Feedback Polarity The polarity of the encoder feedback, this field is automatically set by
executing either the Feedback Test or the Output & Feedback Test.
• Positive
• Negative
Output Polarity The polarity of the servo output to the drive, this field is automatically
set by executing the Output & Feedback Test.
• Positive
• Negative
Test Marker Runs the Marker test, which ensures that the encoder A, B, and Z
channels are connected correctly and phased properly for marker
detection. When the test is initiated, you must manually move the axis
one revolution for the system to detect the marker. If the marker is not
detected, check the encoder wiring and try again.
Test Feedback Runs the Feedback Test, which checks and, if necessary, reconfigures
the Feedback Polarity setting. When the test is initiated, you must
manually move the axis one revolution for the system to detect the
marker. If the marker is not detected, check the encoder wiring and
try again.
Test Output & Feedback Runs the Output & Feedback Test, which checks and, if necessary,
reconfigures both the polarity of encoder feedback (the Feedback
Polarity setting) and the polarity of the servo output to the drive (the
Output Polarity setting), for an axis configured for Servo operation in
the General tab.
Hookup Tab Overview - Use this tab to configure and initiate axis hookup and marker test
sequences for an axis of the type AXIS_SERVO_DRIVE.
AXIS_SERVO_DRIVE
Test Increment Specifies the amount of distance traversed by the axis when executing
the Command & Feedback test. The default value is set to
approximately a quarter of a revolution of the motor in position units.
Drive Polarity The polarity of the servo loop of the drive, set by executing the
Command & Feedback Test.
• Positive
• Negative
Proper wiring guarantees that the servo loop is closed with negative
feedback. However there is no guarantee that the servo drive has the
same sense of forward direction as the user for a given application.
ATTENTION
Modifying polarity values, automatically input by
running the Command & Feedback Test, can cause a
runaway condition.
Test Marker Runs the Marker test, which ensures that the encoder A, B, and Z
channels are connected correctly and phased properly for marker
detection. When the test is initiated, you must manually move the axis
one revolution for the system to detect the marker. If the marker is not
detected, check the encoder wiring and try again.
Test Feedback Runs the Feedback Test, which checks and, if necessary, reconfigures
the Feedback Polarity setting. When the test is initiated, you must
manually move the axis one revolution for the system to detect the
marker. If the marker is not detected, check the encoder wiring and
try again.
Test Command & Feedback Runs the Command & Feedback Test, which checks and, if necessary,
reconfigures both the polarity of encoder feedback (the Feedback
Polarity setting) and the polarity of the servo output to the drive (the
Output Polarity setting), for an axis configured for Servo operation in
the General tab.
Tune Tab - AXIS_SERVO, Use this tab to configure and initiate the axis tuning sequence for an
axis of the types AXIS_SERVO or AXIS_SERVO_DRIVE.
AXIS_SERVO_DRIVE
Travel Limit Specifies a limit to the excursion of the axis during the tune test. If the
servo module determines that the axis is not able to complete the
tuning process before exceeding the tuning travel limit, it terminates
the tuning profile and report that this limit was exceeded.
Speed Determines the maximum speed for the tune process. This value
should be set to the desired maximum operating speed of the motor
(in engineering units) prior to running the tune test.
Torque/Force The maximum torque of the tune test. Force is used only when a
(AXIS_SERVO_DRIVE) linear motor is connected to the application. This attribute should be
set to the desired maximum safe torque level prior to running the tune
test. The default value is 100%, which yields the most accurate
measure of the acceleration and deceleration capabilities of the
system.
Torque (AXIS_SERVO) The maximum torque of the tune test. This attribute should be set to
the desired maximum safe torque level prior to running the tune test.
The default value is 100%, which yields the most accurate measure of
the acceleration and deceleration capabilities of the system.
Damping Factor Specifies the dynamic response of the servo axis. The default is set to
0.8. When gains are tuned using a small damping factor, a step
response test performed on the axis may generate uncontrolled
oscillation. The gains generated using a larger damping factor would
produce a system step response that has no overshoot and is stable,
but may be sluggish in response to changes.
The tuning procedure uses the Damping Factor that is set in this field.
However, when the controller recalculates certain attributes in
response to a Motor Catalog Number change (on the Motor/Feedback
tab), the controller uses the default Damping Factor value of 0.8, and
not a different value set in this field.
Start Tuning Click on this button to begin the tuning test. If the tuning process
completes successfully the following attributes are set.
Maximum Acceleration
Maximum Deceleration
The Tune Bandwidth dialog opens for Servo drives, where you can
"tweak" bandwidth values.
Dynamics Tab - Use this tab to view or edit the dynamics related parameters for an
axis of the type AXIS_SERVO or AXIS_SERVO_DRIVE configured for
AXIS_SERVO, AXIS_SERVO
_DRIVE, AXIS_VIRTUAL
Publication LOGIX-UM002B-EN-P - January 2007
204 Axis Properties
Maximum Speed The steady-state speed of the axis, it is initially set to Tuning Speed by
the tuning process. This value is typically set to about 90% of the
maximum speed rating of the motor. This provides sufficient
“head-room” for the axis to operate at all times within the speed
limitations of the motor. The Maximum Speed value entered is used
when the motion instruction is set with Speed Units=% of Maximum.
If a motion instruction has a Speed Units= units per sec value entered
then, the speed is taken from the motion instruction faceplate.
Maximum Acceleration The maximum acceleration rate of the axis, in Position Units/second,
it is initially set to about 85% of the measured tuning acceleration rate
by the tuning process. If set manually, this value should typically be
set to about 85% of the maximum acceleration rate of the axis. This
provides sufficient “head-room” for the axis to operate at all times
within the acceleration limits of the drive and motor. The Maximum
Acceleration value entered is used when the motion instruction is set
with Accel Units=% of Maximum. When a motion instruction is
configured with Accel Units=units per sec2 field then, the Maximum
Acceleration is taken from the motion instruction faceplate.
Maximum Deceleration The maximum deceleration rate of the axis, in Position Units/second,
it is initially set to approximately 85% of the measured tuning
deceleration rate by the tuning process. If set manually, this value
should typically be set to about 85% of the maximum deceleration rate
of the axis. This provides sufficient “head-room” for the axis to
operate at all times within the deceleration limits of the drive and
motor. The Maximum Deceleration value entered is used when the
motion instruction is set with decel Units=% of Maximum. When a
motion instruction is configured with Decel Units=units per sec2 field
then, the Maximum Deceleration is taken from the motion instruction
faceplate.
Maximum Acceleration Jerk The jerk parameters apply to S-curve profile moves using the Motion
Axis Jog (MAJ) or Motion Axis Move (MAM) instructions. The
Maximum Acceleration Jerk rate of the axis, in Position Units/second3,
defaults to 100% of the maximum acceleration time after tuning. The
speed and acceleration rate for this calculation are determined during
S-curvethe tuning process.
MaxAccel2
= Maximum Acceleration Jerk
Speed
The Maximum Accel Jerk value entered is used when the motion
instruction is set with Jerk Units=% of Maximum. When a Single-axis
Motion Instruction has Jerk Units=units per sec3 then the maximum
acceleration jerk value is derived from the motion instruction
faceplate. The jerk units for the motion instruction also allow for Jerk
Units=% of Time, with 100% of Time. This means that the entire
S-curve move will have Jerk limiting. This is the default mode. An
S-curve move with 0% of Time will result in a trapezoidal profile, and
have 0% Jerk limiting. If set manually, enter the value in
units=Position Units/second3 units. You can also use the Calculate
button to view this value in terms of units=% of Time.
Maximum Deceleration Jerk The jerk parameters only apply to S-curve profile moves using the
MAJ or MAM instructions.
MaxDecel2
= Maximum Deceleration Jerk
Speed
The Maximum Decel Jerk value entered is used when the motion
instruction is set with Jerk Units=% of Maximum. When a Single-axis
motion instruction has Jerk Units=units per sec3 then the Max
Deceleration Jerk value is derived from the Motion Instruction
faceplate. The jerk units for the motion instruction also allow for Jerk
Units=% of Time, with 100% of Time meaning the entire S-curve move
will have Jerk limiting, which is the default mode. An S-curve move
with 0% of Time will result in a trapezoidal profile, and have 0% Jerk
limiting. If set manually, enter the value in units=Position
Units/second3 units. You can also use the optional Calculate button to
view the value in terms of units=% of Time.
Manual Adjust Click on this button to open the Dynamics tab of the Manual Adjust
dialog for online editing of the Maximum Speed, Maximum
Acceleration, Maximum Deceleration, Maximum Acceleration Jerk,
and Maximum Deceleration Jerk. When values are changed on this
dialog, either by manually changing the spin control or entering
numeric values, the new values are instantaneously sent to the
controller.
Calculate Button This dialog lets you set and view the Maximum Acceleration or
Deceleration Jerk in Jerk Units=% of Time. Use the slider to select the
value unit=% of Time. The numeric value in the Maximum
Accel\Decel Jerk status box updates as the slider is moved. Click on
the OK button to accept the new value, or click the Cancel button to
leave without changing the value.
The Unit=% of Time is allowed for Jerk limiting only via the
Instruction Faceplate. Only the Profile=S-curve allows Jerk control
(Programmable S-curve). The units for programming Jerk limiting are
Gains Tab - AXIS_SERVO Use this tab to perform these offline functions.
for an axis of the type AXIS_SERVO, which has been configured for
Servo operations (set in the General tab of this dialog box), with
Position Loop Configuration.
The drive module uses a nested digital servo control loop consisting
of a position loop with proportional, integral and feed-forward gains
around an optional digitally synthesized inner velocity loop. The
parameters on this tab can be edited in either of two ways:
Proportional (Position) Gain Position Error is multiplied by the Position Loop Proportional Gain, or
Pos P Gain, to produce a component to the Velocity Command that
ultimately attempts to correct for the position error. Too little Pos P
Gain results in excessively compliant, or mushy, axis behavior. Too
large a Pos P Gain, on the other hand, can result in axis oscillation
due to classical servo instability.
To set the gain manually, you must first set the appropriate output
scaling factor (either the Velocity Scaling factor or Torque Scaling
factor) in the Output tab of this dialog. Your selection of External
Drive Configuration type – either Torque or Velocity – in the Servo tab
of this dialog determines which scaling factor you must configure
before manually setting gains.
If you know the desired loop gain in inches per minute per mil or
millimeters per minute per mil, use the following formula to calculate
the corresponding P gain:
If you know the desired unity gain bandwidth of the position servo in
Hertz, use the following formula to calculate the corresponding P
gain:
The typical value for the Position Proportional Gain is ~100 Sec-1.
Integral (Position) Gain The Integral (that is, summation) of Position Error is multiplied by the
Position Loop Integral Gain, or Pos I Gain, to produce a component to
the Velocity Command that ultimately attempts to correct for the
position error. Pos I Gain improves the steady-state positioning
performance of the system. Increasing the integral gain generally
increases the ultimate positioning accuracy of the system. Excessive
integral gain, however, results in system instability.
In certain cases, Pos I Gain control is disabled. One such case is when
the servo output to the axis’ drive is saturated. Continuing integral
control behavior in this case would only exacerbate the situation.
When the Integrator Hold parameter is set to Enabled, the servo loop
automatically disables the integrator during commanded motion.
Assuming a Pos P Gain value of 100 Sec-1 this results in a Pos I Gain
value of 2.5 ~0.1 mSec-1 - Sec-1.
Proportional (Velocity) Gain This parameter is enabled for all loop types except Torque loop.
If you know the desired unity gain bandwidth of the velocity servo in
Hertz, you can use the following formula to calculate the
corresponding P gain.
Integral (Velocity) Gain This parameter is enabled for all loop types except Torque loop.
In certain cases, Vel I Gain control is disabled. One such case is when
the servo output to the axis’ drive is saturated. Continuing integral
control behavior in this case would only exacerbate the situation.
When the Integrator Hold parameter is set to Enabled, the servo loop
automatically disables the integrator during commanded motion.
The typical value for the Velocity Proportional Gain is ~15 mSec-2.
Velocity Feedforward Velocity Feedforward Gain scales the current Command Velocity by
the Velocity Feedforward Gain and adds it as an offset to the Velocity
Command. Hence, the Velocity Feedforward Gain allows the
following error of the servo system to be reduced to nearly zero when
running at a constant speed. This is important in applications such as
electronic gearing, position camming, and synchronization
applications, where it is necessary that the actual axis position not
significantly lag behind the commanded position at any time. The
optimal value for Velocity Feedforward Gain is 100%, theoretically. In
reality, however, the value may need to be tweaked to accommodate
velocity loops with non-infinite loop gain and other application
considerations.
Manual Adjust Click on this button to access the Gains tab of the Manual Adjust
dialog for online editing.
Gains Tab - Use this tab to perform the following offline functions:
AXIS_SERVO_DRIVE • Adjust, or "tweak" gain values that have been automatically set
by the tuning process (in the Tune tab of this dialog)
• Manually configure gains for the velocity and position loops
• for an axis of the type AXIS_SERVO_DRIVE.
The drive module uses a nested digital servo control loop consisting
of a position loop with proportional, integral and feed-forward gains
around an optional digitally synthesized inner velocity loop. The
specific design of this nested loop depends upon the Loop
Configuration selected in the Drive tab. For a discussion, including a
diagram, of a loop configuration, click on the following loop
configuration types:
Velocity Feedforward Velocity Feedforward Gain scales the current command velocity
(derivative of command position) by the Velocity Feedforward Gain
and adds it as an offset to the Velocity Command. Hence, the Velocity
Feedforward Gain allows the following error of the servo system to be
reduced to nearly zero when running at a constant speed. This is
important in applications such as electronic gearing and
synchronization applications, where it is necessary that the actual axis
position not significantly lag behind the commanded position at any
time. The optimal value for Velocity Feedforward Gain is 100%,
theoretically. In reality, however, the value may need to be tweaked
to accommodate velocity loops with non-infinite loop gain and other
application considerations.
Proportional (Position) Gain Position Error is multiplied by the Position Loop Proportional Gain, or
Pos P Gain, to produce a component to the Velocity Command that
ultimately attempts to correct for the position error. Too little Pos P
Gain results in excessively compliant, or mushy, axis behavior. Too
large a Pos P Gain, on the other hand, can result in axis oscillation
due to classical servo instability.
To set the gain manually, you must first set the Torque scaling in the
Output tab of this dialog.
If you know the desired loop gain in inches per minute per mil or
millimeters per minute per mil, use the following formula to calculate
the corresponding P gain:
If you know the desired unity gain bandwidth of the position servo in
Hertz, use the following formula to calculate the corresponding P
gain:
The typical value for the Position Proportional Gain is ~100 Sec-1.
Integral (Position) Gain The Integral (that is, summation) of Position Error is multiplied by the
Position Loop Integral Gain, or Pos I Gain, to produce a component to
the Velocity Command that ultimately attempts to correct for the
position error. Pos I Gain improves the steady-state positioning
performance of the system. Increasing the integral gain generally
increases the ultimate positioning accuracy of the system. Excessive
integral gain, however, results in system instability.
In certain cases, Pos I Gain control is disabled. One such case is when
the servo output to the axis’ drive is saturated. Continuing integral
control behavior in this case would only exacerbate the situation.
When the Integrator Hold parameter is set to Enabled, the servo loop
automatically disables the integrator during commanded motion.
established for the drive system (in the Output tab of this dialog box).
Once this is done, the Pos I Gain can be computed based on the
current or computed value for the Pos P Gain using the following
formula:
Assuming a Pos P Gain value of 100 Sec-1 this results in a Pos I Gain
value of 2.5 ~0.1 mSec-1 - Sec-1.
Proportional (Velocity) Gain This parameter is enabled only for external drives configured for
Torque loop operation in the Servo tab.
If you know the desired unity gain bandwidth of the velocity servo in
Hertz, you can use the following formula to calculate the
corresponding P gain.
The typical value for the Velocity Proportional Gain is ~250 mSec-1.
Integral (Velocity) Gain This parameter is enabled only for external drives configured for
Torque loop operation in the Servo tab.
In certain cases, Vel I Gain control is disabled. One such case is when
the servo output to the axis’ drive is saturated. Continuing integral
control behavior in this case would only exacerbate the situation.
When the Integrator Hold parameter is set to Enabled, the servo loop
automatically disables the integrator during commanded motion.
The typical value for the Velocity Proportional Gain is ~15 mSec-2.
Manual Adjust Click on this button to access the Gains tab of the Manual Adjust
dialog for online editing.
Set Custom Gains Click on this button to open the Custom Gain Attributes dialog.
Attribute The following attribute value can be monitored and edited in this
dialog box.
Table 2.A
Attribute Description
VelocityDroop This 32-bit unsigned attribute – also
referred to as "static gain" – acts as a very
slow discharge of the velocity loop
integrator. VelocityDroop may be used as a
component of an external position loop
system where setting this parameter to a
higher, nonzero value eliminates servo
hunting due to load/stick friction effects.
This parameter only has effect if
VelocityIntegralGain is not zero. Its value
ranges from 0 to 2.14748x10^12.
Output Tab - AXIS_SERVO Use this dialog for offline configuration of:
Velocity Scaling The Velocity Scaling attribute is used to convert the output of the
servo loop into equivalent voltage to an external velocity servo drive.
This has the effect of “normalizing” the units of the servo loop gain
parameters so that their values are not affected by variations in
feedback resolution, drive scaling, or mechanical gear ratios. The
Velocity Scaling value is typically established by servo’s automatic
tuning procedure but these values can be calculated, if necessary,
using the following guidelines.
If the axis is configured for a velocity external servo drive (in the
Servo tab of this dialog), the software velocity loop in the servo
module is disabled. In this case the Velocity Scaling value can be
calculated by the following formula:
Torque Scaling The Torque Scaling attribute is used to convert the acceleration of the
servo loop into equivalent % rated torque to the motor. This has the
effect of “normalizing” the units of the servo loops gain parameters so
that their values are not affected by variations in feedback resolution,
drive scaling, motor and load inertia, and mechanical gear ratios. The
Torque Scaling value is typically established by the controller’s
automatic tuning procedure but the value can be manually calculated,
if necessary, using the following guidelines:
Torque Scaling = 100% Rated / (3000 RPS2) = 0.0333% Rated/ Revs Per
Second2
If the Torque Scaling value does not reflect the true torque to
acceleration characteristic of the system, the gains also does not reflect
the true performance of the system.
Enable Low-pass Output Filter Select this to enable the servo’s low-pass digital output filter. De-select
this to disable this filter.
Low-pass Output Filter With Enable Low-pass Output Filter selected, this value sets the
Bandwidth bandwidth, in Hertz, of the servo’s low-pass digital output filter. Use
this output filter to filter out high frequency variation of the servo
module output to the drive. All output from the servo module greater
than the Filter Bandwidth setting is filtered-out, and not sent to the
drive.
Manual Adjust Click on this button to access the Output tab of the Manual Adjust
dialog for online editing.
Output Tab Overview - Use this dialog box to make the following offline configurations:
AXIS_SERVO_DRIVE • set the torque scaling value, which is used to generate gains
• enable and configure the Notch Filter
• enable and configure servo’s low-pass digital output filter
Motor Inertia The Motor Inertia value represents the inertia of the motor without
any load attached to the motor shaft in Torque Scaling units.
Load Inertia Ratio The Load Inertia Ratio value represents the ratio of the load inertia to
the motor inertia.
Torque Scaling The Torque Scaling attribute is used to convert the acceleration of the
servo loop into equivalent % rated torque to the motor. This has the
effect of "normalizing" the units of the servo loops gain parameters so
that their values are not affected by variations in feedback resolution,
drive scaling, motor and load inertia, and mechanical gear ratios. The
Torque Scaling value is typically established by the controller’s
automatic tuning procedure but the value can be manually calculated,
if necessary, using the following guidelines:
Torque Scaling = 100% Rated / (3000 RPS2) = 0.0333% Rated/ Revs Per
Second2
If the Torque Scaling value does not reflect the true torque to
acceleration characteristic of the system, the gains also do not reflect
the true performance of the system.
Enable Notch Filter Select this to enable the drive’s notch filter. De-select this to disable
this filter.
Notch Filter With Enable Notch Filter selected, this value sets the center frequency
of the drive’s digital notch filter. If the Notch Filter value is set to zero,
the notch filter is disabled.
Enable Low-pass Output Filter Select this to enable the servo’s low-pass digital output filter. De-select this to dis-
able this filter.
Low-pass Output Filter With Enable Low-pass Output Filter selected, this value sets the
Bandwidth bandwidth, in Hertz, of the servo’s low-pass digital output filter. Use
this output filter to filter out high frequency variation of the servo
module output to the drive. All output from the servo module greater
than the Filter Bandwidth setting is filtered-out, and not sent to the
drive.
Manual Adjust Click on this button to open the Output tab of the Manual Adjust
dialog for online editing of Torque/Force Scaling, the Notch Filter
Frequency, and the Low-pass Output Filter parameters.
Limits Tab - AXIS_SERVO Use this tab to make the following offline configurations:
Soft Travel Limits Enables software overtravel checking for an axis when Positioning
Mode is set to Linear (in the Conversion tab of this dialog). If an axis
is configured for software overtravel limits and if that axis passes
beyond these maximum travel limits (positive or negative), a software
overtravel fault is issued. The response to this fault is specified by the
Soft Overtravel setting (in the Fault Actions tab of this dialog).
Software overtravel limits are disabled during the tuning process.
Maximum Positive Type the maximum positive position to be used for software
overtravel checking, in position units.
Maximum Negative Type the maximum negative position to be used for software
overtravel checking, in position units.
The Maximum Negative limit must always be less than the Maximum
Positive limit.
Position Error Tolerance Specifies how much position error the servo tolerates before issuing a
position error fault. This value is interpreted as a +/- quantity.
This value is set to twice the following error at maximum speed based
on the measured response of the axis, during the autotuning process.
In most applications, this value provides reasonable protection in case
of an axis fault or stall condition without nuisance faults during
normal operation. If you need to change the calculated position error
tolerance value, the recommended setting is 150% to 200% of the
position error while the axis is running at its maximum speed.
Position Lock Tolerance Specifies the maximum position error the servo module accepts in
order to indicate the Position Lock status bit is set. This is useful in
determining when the desired end position is reached for position
moves. This value is interpreted as a +/- quantity.
Output Limit Provides a method of limiting the maximum servo output voltage of a
physical axis to a specified level. The servo output for the axis as a
function of position servo error, both with and without servo output
limiting, is shown below.
The servo output limit may also be used if the drive cannot accept the
full ±10 Volt range of the servo output. In this case, the servo output
limit value effectively limits the maximum command sent to the
amplifier. For example, if the drive can only accept command signals
up to ±7.5 Volts, set the servo output limit value to 7.5 volts.
Manual Adjust Click on this button to open the Limits tab of the Manual Adjust dialog
for online editing of the Position Error Tolerance, Position Lock
Tolerance, and Output Limit parameters.
Limits Tab - Use this tab to make the following offline configurations:
AXIS_SERVO_DRIVE • enable and set maximum positive and negative software travel
limits, and
• configure both Position Error Tolerance and Position Lock
Tolerance,
Hard Travel Limits Enables a periodic test that monitors the current state of the positive
and negative overtravel limit switch inputs, when Positioning Mode is
set to Linear (in the Conversion tab of this dialog). If an axis is
configured for hardware overtravel checking and if that axis passes
beyond a positive or negative overtravel limit switch, a Positive Hard
Overtravel Fault or Negative Hard Overtravel Fault is issued. The
response to this fault is specified by the Hard Overtravel setting (in
the Fault Actions tab of this dialog).
Soft Travel Limits Enables software overtravel checking for an axis when Positioning
Mode is set to Linear (in the Conversion tab of this dialog). If an axis
is configured for software overtravel limits and if that axis passes
beyond these maximum travel limits (positive or negative), a software
overtravel fault is issued. The response to this fault is specified by the
Soft Overtravel setting (in the Fault Actions tab of this dialog).
Software overtravel limits are disabled during the tuning process.
Maximum Positive Type the maximum positive position to be used for software
overtravel checking, in position units.
Maximum Negative Type the maximum negative position to be used for software
overtravel checking, in position units.
The Maximum Negative limit must always be less than the Maximum
Positive limit.
Position Error Tolerance Specifies how much position error the servo tolerates before issuing a
position error fault. This value is interpreted as a +/- quantity.
This value is set to twice the following error at maximum speed based
on the measured response of the axis, during the autotuning process.
In most applications, this value provides reasonable protection in case
of an axis fault or stall condition without nuisance faults during
normal operation. If you need to change the calculated position error
tolerance value, the recommended setting is 150% to 200% of the
position error while the axis is running at its maximum speed.
Position Lock Tolerance Specifies the maximum position error the servo module accepts in
order to indicate the Position Lock status bit is set. This is useful in
determining when the desired end position is reached for position
moves. This value is interpreted as a +/- quantity.
Peak Torque/Force Limit The Peak Torque/Force Limit specifies the maximum percentage of
the motors rated current that the drive can command as either positive
or negative torque/force. For example, a torque limit of 150% shall
limit the current delivered to the motor to 1.5 times the continuous
current rating of the motor.
Continuous Torque/Force Limit The Continuous Torque/Force Limit specifies the maximum
percentage of the motors rated current that the drive can command on
a continuous or RMS basis. For example, a Continuous Torque/Force
Limit of 150% limits the continuous current delivered to the motor to
1.5 times the continuous current rating of the motor.
Manual Adjust Click on this button to open the Limits tab of the Manual Adjust dialog
for online editing of the Position Error Tolerance, Position Lock
Set Custom Limits Click this button to open the Custom Limit Attributes dialog.
From this dialog box you can monitor and edit the limit-related
attributes.
Attributes The following attribute values can be monitored and edited in this
dialog box.
Table 2.B
Attribute Description
VelocityLimitBipolar This attribute sets the velocity limit
symmetrically in both directions. If the
command velocity exceeds this value,
VelocityLimitStatusBit of the DriveStatus
attribute is set. This attribute has a value
range of 0 to 2.14748x1012.
AccelerationLimitBipolar This attribute sets the acceleration and
deceleration limits for the drive. If the
command acceleration exceeds this value,
AccelLimitStatusBit of the DriveStatus
attribute is set. This attribute has a value
range of 0 to 2.14748x1015.
TorqueLimitBipolar This attribute sets the torque limit
symmetrically in both directions. When
actual torque exceeds this value
TorqueLimitStatus of the DriveStatus
attribute is set. This attribute has a value
range of 0 to 1000.
VelocityLimitPositive This attribute displays the maximum
allowable velocity in the positive direction.
If the velocity limit is exceeded, bit 5
("Velocity Command Above Velocity Limit")
VelocityLimitStatusBit of the DriveStatus
attribute is set. This attribute has a value
range of 0 to 2.14748x1012.
VelocityLimitNegative This attribute displays the maximum
allowable velocity in the negative direction.
If the velocity limit is exceeded, bit 5
("Velocity Command Above Velocity Limit")
VelocityLimitStatusBit of the DriveStatus
attribute is set. This attribute has a value
range of -2.14748x1012 to 0.
Table 2.B
Attribute Description
VelocityThreshold This attribute displays the velocity
threshold limit. If the motor velocity is less
than this limit, VelocityThresholdStatus of
the DriveStatus attribute is set. This
attribute has a value range of 0 to
2.14748x1012.
VelocityWindow This attribute displays the limits of the
velocity window. If the motor’s actual
velocity differs from the command velocity
by an amount less that this limit
VelocityLockStatus of the DriveStatus
attribute is set. This attribute has a value
range of 0 to 2.14748x1012.
VelocityStandstillWindow This attribute displays the velocity limit for
the standstill window. If the motor velocity
is less than this limit
VelocityStandStillStatus of the DriveStatus
bit is set. This attribute has a value range of
0 to 2.14748x1012.
AccelerationLimitPositive This attribute limits the maximum
acceleration ability of the drive to the
programmed value. If the command
acceleration exceeds this value,
AccelLimitStatusBit of the DriveStatus
attribute is set. This attribute has a value
range of 0 to 2.14748x1015.
AccelerationLimitNegative This attribute limits the maximum
acceleration ability of the drive to the
programmed value. If the command
acceleration exceeds this value, the
AccelLimitStatus bit of the DriveStatus
attribute is set. This attribute has a value
range of -2.14748x1015 to 0.
TorqueLimitPositive This attribute displays the maximum torque
in the positive direction. If the torque limit
is exceeded, the TorqueLimitStatus bit of
the DriveStatus attribute is set. This
attribute has a value range of 0 to 1000.
TorqueLimitNegative This attribute displays the maximum torque
in the negative direction. If the torque limit
is exceeded, the TorqueLimitStatus bit of
the DriveStatus attribute is set. This
attribute has a value range of -1000 to 0.
TorqueThreshold This attribute displays the torque threshold.
If this limit is exceeded, the
TorqueThreshold bit of the DriveStatus
attribute is set. This attribute has a value
range of 0 to 1000.
Offset Tab - AXIS_SERVO Use this tab to make offline adjustments to the following Servo Output
values:
• Friction Compensation
• Velocity Offset
• Torque Offset
• Output Offset
Friction/Deadband
Compensation
Friction Compensation The percentage of output level added to a positive current Servo
Output value, or subtracted from a negative current Servo Output
value, for the purpose of moving an axis that is stuck in place due to
static friction.
The Friction Compensation value should be just less than the value
that would break the “sticktion”
A larger value can cause the axis to “dither”, that is, move rapidly back
and forth about the commanded position.
Friction Compensation Window To address the issue of dither when applying Friction Compensation
and hunting from the integral gain, a Friction Compensation Window
is applied around the current command position when the axis is not
being commanded to move. If the actual position is within the Friction
Compensation Window the Friction Compensation value is applied to
the Servo Output but scaled by the ratio of the position error to the
Friction Compensation Window. Within the window, the servo
integrators are also disabled. Thus, once the position error reaches or
exceeds the value of the Friction Compensation Window attribute, the
full Friction Compensation value is applied. If the Friction
Compensation Window is set to zero, this feature is effectively
disabled.
Backlash Compensation
Reversal Offset Backlash Reversal Offset provides the capability to compensate for
positional inaccuracy introduced by mechanical backlash. For
example, power-train type applications require a high level of
accuracy and repeatability during machining operations. Axis motion
is often generated by a number of mechanical components, a motor, a
gearbox, and a ball-screw that may introduce inaccuracies and that are
subject to wear over their lifetime. Therefore, when an axis is
commanded to reverse direction, mechanical play in the machine
(through the gearing, ball-screw, and so on) may result in a small
amount of motor motion without axis motion. As a result, the
feedback device may indicate movement even though the axis has not
physically moved.
Stabilization Window The Backlash Stabilization Window controls the Backlash Stabilization
feature in the servo control loop.
Velocity Offset Provides a dynamic velocity correction to the output of the position
servo loop, in position units per second.
Torque Offset Provides a dynamic torque command correction to the output of the
velocity servo loop, as a percentage of velocity servo loop output.
Output Offset Corrects the problem of axis “drift”, by adding a fixed voltage value
(not to exceed ±10 Volts) to the Servo Output value. Input a value to
achieve near zero drive velocity when the uncompensated Servo
Output value is zero.
Manual Adjust Click on this button to open the Offset tab of the Manual Adjust dialog
for online editing of the Friction/Deadband Compensation, Backlash
Compensation, Velocity Offset, Torque Offset, and Output Offset
parameters.
Offset Tab - Use this tab to make offline adjustments to the following Servo Output
values:
AXIS_SERVO_DRIVE
• Friction Compensation,
• Velocity Offset, and
• Torque Offset
Friction Compensation The percentage of output level added to a positive current Servo
Output value, or subtracted from a negative current Servo Output
value, for the purpose of moving an axis that is stuck in place due to
static friction.
The Friction Compensation value should be just less than the value
that would break the “sticktion”. A larger value can cause the axis to
“dither”, that is, move rapidly back and forth about the commanded
position.
Friction Compensation Window To address the issue of dither when applying Friction Compensation
and hunting from the integral gain, a Friction Compensation Window
is applied around the current command position when the axis is not
being commanded to move. If the actual position is within the Friction
Compensation Window the Friction Compensation value is applied to
the Servo Output but scaled by the ratio of the position error to the
Friction Compensation Window. Within the window, the servo
integrators are also disabled. Thus, once the position error reaches or
exceeds the value of the Friction Compensation Window attribute, the
full Friction Compensation value is applied. If the Friction
Compensation Window is set to zero, this feature is effectively
disabled.
Backlash Compensation
Reversal Offset Backlash Reversal Offset provides the capability to compensate for
positional inaccuracy introduced by mechanical backlash. For
example, power-train type applications require a high level of
accuracy and repeatability during machining operations. Axis motion
is often generated by a number of mechanical components, a motor, a
gearbox, and a ball-screw that may introduce inaccuracies and that are
subject to wear over their lifetime. Therefore, when an axis is
commanded to reverse direction, mechanical play in the machine
Stabilization Window The Backlash Stabilization Window controls the Backlash Stabilization
feature in the servo control loop.
Velocity Offset Provides a dynamic velocity correction to the output of the position
servo loop, in position units per second.
Torque/Force Offset Provides a dynamic torque command correction to the output of the
velocity servo loop, as a percentage of velocity servo loop output.
Manual Adjust Click on this button to open the Offset tab of the Manual Adjust dialog
for online editing of the Friction/Deadband Compensation, Backlash
Fault Actions Tab - Use this tab to specify the actions that are taken in response to these
faults:
AXIS_SERVO
• Drive Fault
• Feedback Noise Fault
• Feedback Loss Fault
• Position Error Fault
• Soft Overtravel Fault
Select one of the following fault actions for each fault type:
• Status Only - If a fault action is set to Status Only, then when the
associated fault occurs, no action is taken. The application
program must handle any motion faults. In general, this setting
should only be used in applications where the standard fault
actions are not appropriate.
ATTENTION Selecting the wrong fault action for your application can cause
a dangerous condition resulting in unexpected motion, damage
to the equipment, and physical injury or death. Keep clear of
moving machinery.
Drive Fault The Drive Fault field lets you specify the fault action to be taken when
a drive fault condition is detected, for an axis with the Drive Fault
Input enabled (in the Servo tab of this dialog) that is configured as
Servo (in the General tab of this dialog). The available actions for this
fault are Shutdown and Disable Drive.
Feedback Noise The Feedback noise field lets you specify the fault action to be taken
when excessive feedback noise is detected. The available actions for
this fault are Shutdown, Disable Drive, Stop Motion, and Status Only.
Feedback Loss The Feedback Loss field lets you specify the fault action to be taken
when feedback loss condition is detected. The available actions for
this fault are Shutdown, Disable Drive, Stop Motion, and Status Only.
Position Error The Position Error field lets you specify the fault action to be taken
when position error exceeds the position tolerance set for the axis, for
an axis configured as Servo (in the General tab of this dialog). The
available actions for this fault are Shutdown, Disable Drive, Stop
Motion, and Status Only.
Soft Overtravel The Soft Overtravel field lets you specify the fault action to be taken
when a software overtravel error occurs, for an axis with Soft Travel
Limits enabled and configured (in the Limits tab of this dialog) that is
configured as Servo (in the General tab of this dialog). The available
actions for this fault are Shutdown, Disable Drive, Stop Motion, and
Status Only.
Fault Actions Tab - Use this tab to specify the actions that are taken in response to the
following faults:
AXIS_SERVO_DRIVE
• Drive Thermal Fault
• Motor Thermal Fault
• Feedback Noise Fault
• Feedback Fault
• Position Error Fault
• Hard Overtravel Fault
• Soft Overtravel Fault
• Phase Loss
Select one of the following fault actions for each fault type:
• Status Only - If a fault action is set to Status Only, then when the
associated fault occurs, no action is taken. The application
program must handle any motion faults. In general, this setting
should only be used in applications where the standard fault
actions are not appropriate.
ATTENTION Selecting the wrong fault action for your application can cause
a dangerous condition. Keep clear of moving machinery.
Drive Thermal Specifies the fault action to be taken when a Drive Thermal Fault is
detected, for an axis configured as Servo (in the General tab of this
dialog). The available actions for this fault are Shutdown, Disable
Drive, Stop Motion, and Status Only.
Motor Thermal Specifies the fault action to be taken when a Motor Thermal Fault is
detected, for an axis configured as Servo (in the General tab of this
dialog). The available actions for this fault are Shutdown, Disable
Drive, Stop Motion, and Status Only.
Feedback Noise Specifies the fault action to be taken when excessive feedback noise is
detected. The available actions for this fault are Shutdown, Disable
Drive, Stop Motion, and Status Only.
Feedback Specifies the fault action to be taken when Feedback Fault is detected.
The available actions for this fault are Shutdown, Disable Drive, Stop
Motion, and Status Only.
Position Error Specifies the fault action to be taken when position error exceeds the
position tolerance set for the axis, for an axis configured as Servo (in
the General tab of this dialog). The available actions for this fault are
Shutdown, Disable Drive, Stop Motion, and Status Only.
Hard Overtravel Specifies the fault action to be taken when an axis encounters a travel
limit switch, for an axis configured as Servo (in the General tab of this
dialog). The available actions for this fault are Shutdown, Disable
Drive, Stop Motion, and Status Only.
Soft Overtravel Specifies the fault action to be taken when a software overtravel error
occurs, for an axis with Soft Travel Limits enabled and configured (in
the Limits tab of this dialog) that is configured as Servo (in the General
tab of this dialog). The available actions for this fault are Shutdown,
Disable Drive, Stop Motion, and Status Only.
Phase Loss Specifies the fault action to be taken when a phase loss situation
occurs for an axis configured as Servo (on the General tab of this
dialog). The available actions for this fault are Shutdown, Disable
Drive, Stop Motion and Status Only. The default is Shutdown. When
Status Only is chosen Logix 5000 motion commands continue and the
drive uses available stored DC bus energy to operate the axes.
Set Custom Stop Action Opens the Custom Stop Action Attributes dialog.
Use this dialog to monitor and edit the Stop Action-related attributes.
Attribute Description
StoppingTorque This attribute displays the amount of torque
available to stop the motor. This attribute
has a value range of 0...1000.
StoppingTimeLimit This attribute displays the maximum
amount of time that the drive amplifier
remains enabled while trying to stop. It is
useful for very slow velocity rate change
settings. This attribute has a value range of
0...6553.5.
BrakeEngageDelayTime When servo axis is disabled and the drive
decelerates to a minimum speed, the drive
maintains torque until this time has
elapsed. This time allows the motor’s brake
to be set. This attribute has a value range of
0...6.5535.
BrakeReleaseDelayTime When the servo axis is enabled , the drive
activates the torque to the motor but
ignores the command values from the Logix
controller until this time has elapsed. This
time allows the motor’s brake to release.
This attribute has a value of 0...6.5535.
ResistiveBrakeContactDelay The Resistive Brake Contact Delay attribute
is used to control an optional external
Resistive Brake Module (RBM). The RBM
sits between the drive and the motor and
uses an internal contactor to switch the
motor between the drive and a resisted
load.
Tag Tab Use this tab to modify the name and description of the axis. When
you are online, all of the parameters on this tab transition to a
read-only state, and cannot be modified. If you go online before you
Name Displays the name of the current tag. You can rename this tag, if you
wish.
Description Displays the description of the current tag, if any is available. You can
edit this description, if you wish.
Tag Type Indicates the type of the current tag. This type may be:
• Base
• Alias
• Consumed
Data Type Displays the axis data type of the current tag.
Scope Displays the scope of the current tag. The scope is either controller
scope, or program scope, based on one of the existing programs in
the controller.
Style Displays the default style in which to display the value of the tag.
Note that style is only applicable to an atomic tag; a structure tag does
not have a display style.
Axis Attributes
Introduction Use this chapter to get configuration, status, and fault information
about an axis. The controller stores information about an axis as
attributes of the axis.
Topic Page
How to Access Attributes 257
Axis Attributes 258
How to Access Attributes The Access column shows how to access the attribute.
Example Use a Get System Value (GSV) instruction to get the value.
Use the tag for the axis or a GSV instruction to get the
value. It’s easier to use the tag.
This attribute controls whether or not the servo module uses the
absolute position capability of the feedback device. If Absolute
Feedback Enable is set to True, the servo module adds the Absolute
Feedback Offset to the current position of the feedback device to
establish the absolute machine reference position. Since absolute
feedback devices retain their position reference even through a
power-cycle, the machine reference system can be restored at
power-up.
To find the best Acceleration Feedforward Gain, run a simple project that
jogs the axis in the positive direction and monitors the Position Error of
the axis during the jog. Usually Acceleration Feedforward is used in
tandem with Velocity Feedforward to achieve near zero following error
during the entire motion profile. To fine tune the Acceleration
Feedforward Gain, the Velocity Feedforward Gain must first be optimized
using the procedure described above. While capturing the peak Position
Error during the acceleration phase of the jog profile, increase the
Acceleration Feedforward Gain until the peak Position Error is as small
as possible, but still positive. If the peak Position Error during the
acceleration ramp is negative, the actual position of the axis is ahead of
the command position during the acceleration ramp. If this occurs,
decrease the Acceleration Feedforward Gain such that the Position Error
is again positive. To be thorough the same procedure should be done for
the deceleration ramp to verify that the peak Position Error during
deceleration is acceptable. Note that reasonable maximum velocity,
acceleration, and deceleration values must be entered to jog the axis.
The Set and Get service responses provide a status response with each
attribute that was processed. That status value is defined by CIP as
follows: UINT16, Values 0-255 (0x00-0xFF) are reserved to mirror
common service status codes. Values 256 – 65535 are available for
object/class attribute specific errors.
Attribute Error ID AXIS_SERVO INT GSV* Attribute ID associated with non-zero Attribute Error Code.
AXIS_SERVO_DRIVE Tag
The Attribute Error ID is used to retain the ID of the servo attribute that
returned a non-zero attribute error code resulting in an Axis
Configuration Fault. The Attribute Error ID defaults to zero and, after a
fault has occurred may be reset to zero by reconfiguration of the motion
module.
Feedback Polarity
The Feedback Polarity bit attribute can be used to change the sense of
direction of the feedback device. This bit is only valid for auxiliary
feedback devices. When performing motor/feedback hookup diagnostics
on an auxiliary feedback device using the MRHD and MAHD
instructions, the Feedback Polarity bit is configured for the auxiliary
feedback device to insure negative feedback into the servo loop. Motor
feedback devices must be wired properly for negative feedback since
the Feedback Polarity bit is forced to 0, or non-inverted.
Aux Feedback AXIS_SERVO BOOL Tag Set for an auxiliary feedback source when one of these happens:
Fault AXIS_SERVO_DRIVE
• The differential electrical signals for one or more of the feedback
channels (for example, A+ and A-, B+ and B-, or Z+ and Z-) are at
the same level (both high or both low). Under normal operation,
the differential signals are always at opposite levels. The most
common cause of this situation is a broken wire between the
feedback transducer and the servo module or drive;
• Loss of feedback “power” or feedback “common” electrical
connection between the servo module or drive and the feedback
device.
The controller latches this fault. Use a Motion Axis Fault Reset (MAFR)
or Motion Axis Shutdown Reset (MASR) instruction to clear the fault.
The Aux Feedback Ratio attribute is used in calculating range limits and
default value calculations during configuration based on the selected
motor’s specifications. The value is also used by the drive when running
the dual feedback servo loop configuration.
Aux Feedback AXIS_SERVO_DRIVE DINT GSV Cycles per Aux Feedback Unit
Resolution
The Motor and Aux Feedback Resolution attributes are used to provide
the A-B drive with the resolution of the associated feedback device in
cycles per feedback unit. These parameters provide the SERCOS drive
with critical information needed to compute scaling factors used to
convert Drive Counts to Feedback counts.
Aux Feedback AXIS_SERVO_DRIVE INT GSV The Motor Feedback Units attribute establishes the unit of measure that
Units is applied to the Motor Feedback Resolution attribute value. The Aux
Feedback Units attribute establishes the unit of measure that is applied
to the Aux Feedback Resolution attribute value. Units appearing in the
enumerated list cover linear or rotary, english or metric feedback
devices.
0 = revs
1 = inches
2 = mm
Aux Position AXIS_SERVO REAL GSV Important: To use this attribute, choose it as one of the attributes for
Feedback AXIS_SERVO_DRIVE Tag Real Time Axis Information for the axis. Otherwise, you won’t see the
right value as the axis runs. See Axis Info Select 1.
• The greater the Average Velocity Timebase value, the better the
speed resolution but the slower the response to changes in
speed.
• The minimum Average Velocity Timebase value is the Coarse
Update period of the motion group.
The Average Velocity resolution in Position Units per second may be
calculated using the equation below.
Feedback Counts
Average Velocity Timebase [Seconds] x K
Position Unit
Axis AXIS_CONSUMED SINT GSV State of the axis configuration state machine
Configuration AXIS_GENERIC
The Axis Configuration State attribute is used for debugging to indicate
State AXIS_SERVO where in the axis configuration state-machine this axis presently is.
AXIS_SERVO_DRIVE Even consumed and virtual axes will utilize this attribute.
AXIS_VIRTUAL
If the attribute is:
Abort Process
If this bit is set, any active tuning or test process on the axis is aborted.
Shutdown Request
If this bit is set, the axis is forced into the shutdown state. For an
AXIS_SERVO data type, the OK contact opens and the DAC output goes
to 0.
If this bit is set, the servo module forces the DAC output for the axis to
zero volts. This bit only has an affect if the axis is in the Direct Drive
State with the drive enabled but no servo action.
If this bit is set, any active registration or watch event procedures are
cancelled.
The Axis Data Type attribute and is used to determine which data
template, memory format, and set of attributes are created and
applicable for this axis instance. This attribute can only be set as part of
an axis create service.
Feedback
Consumed
Virtual
A virtual axis having full motion planner operation but not associated
with any physical device.
Generic
Servo
Servo Drive
Generic Drive
Axis Event Bits AXIS_CONSUMED DINT GSV Lets you access all the event status bits in one 32-bit word. This
AXIS_GENERIC attribute is the same as the Axis Event tag.
AXIS_SERVO
Event Status Bit
AXIS_SERVO_DRIVE
Watch Event Armed Status 0
AXIS_VIRTUAL
Watch Event Status 1
Reg Event 1 Armed Status 2
Reg Event 1 Status 3
Reg Event 2 Armed Status 4
Reg Event 2 Status 5
Home Event Armed Status 6
Home Event Status 7
Axis Fault AXIS_CONSUMED DINT Tag The axis faults for your axis:
AXIS_GENERIC
Type of Fault Bit
AXIS_SERVO
Physical Axis Fault 0
AXIS_SERVO_DRIVE
AXIS_VIRTUAL Module Fault 1
Config Fault 2
If this bit is set, the tuning or test process has been aborted.
Shutdown Acknowledge
If this bit is set, the axis has been forced into the shutdown state.
If this bit is set, the DAC output for the axis has been set to zero volts.
If this bit is set, the active home procedure has been aborted.
If this bit is set, the active registration or watch position event procedure
has been aborted.
If this bit is set, the Servo loop has switched to a new position
coordinate system. The controller uses this bit when processing new
position data from the servo module or drive to account for the offset
implied by the shift in the reference point. The bit is cleared when the
conroller acknowledges completion of the reference position change by
clearing its Change Cmd Reference bit.
Axis Status Bits AXIS_CONSUMED DINT GSV* Lets you access all the axis status bits in one 32-bit word. This attribute
AXIS_GENERIC is the same as the Axis Status tag.
AXIS_SERVO
Axis Status Bit
AXIS_SERVO_DRIVE
Servo Action Status 0
AXIS_VIRTUAL
Drive Enable Status 1
Shutdown Status 2
Config Update In Process 3
Inhibit Status 4
Axis Type is not only used to qualify many operations associated with
the axis servo loop, it also controls the behavior of the servo module’s
Axis Status LEDs. An Axis Type of “1” (Feedback Only) results in the
DRIVE LED being blanked, while a value of “0” (Unused) blanks both the
FDBK and DRIVE LEDs.
RSLogix 5000 software also uses the current configured value for Axis
Type to control the look of many of the dialogs associated with
configurating an axis.
Backlash AXIS_SERVO REAL GSV Backlash Reversal Offset provides the user the capability to compensate
Reversal Offset AXIS_SERVO_DRIVE SSV for positional inaccuracy introduced by mechanical backlash. For
example, power-train type applications require a high level of accuracy
and repeatability during machining operations. Axis motion is often
generated by a number of mechanical components such as a motor, a
gearbox, and a ball-screw, which can introduce inaccuracies and which
are subject to wear over their lifetime. Hence, when an axis is
commanded to reverse direction, mechanical play in the machine
(through the gearing, ball-screw, and so on.) may result in a small
amount of motor motion without axis motion. As a result, the feedback
device may indicate movement even though the axis has not physically
moved.
If the servo loop is tuned for peak performance with the load applied, the
axis is at best under-damped and at worst unstable in the condition
where the gear teeth are not engaged. In the worst case scenario, the
motor axis and the input gear oscillates wildly between the limits
imposed by the output gear teeth. The net effect is a loud buzzing sound
when the axis is at rest. If this situation persists the gearbox wears out
prematurely. To prevent this condition, the conventional approach is to
de-tune the servo so that the axis is stable without the gearbox load
applied. Unfortunately, system performance suffers.”
For all other Axis Data Types if this axis is to be produced then this
attribute is set to the connection instance under the local controller’s
map instance (1) that is used to send the remote axis data via the C2C
connection.
C2C Map AXIS_CONSUMED SINT GSV Producer/Consumed axis’s associated C2C map instance
Instance AXIS_GENERIC
When the Axis Data Type attribute is specified to be ‘Consumed’ then
AXIS_SERVO this axis is associated to the consumed data by specifying both the C2C
AXIS_SERVO_DRIVE Map Instance and the C2C Connection Instance. For all other Axis Data
AXIS_VIRTUAL Types if this axis is to be produced then this attribute is set to 1 (one) to
indicate that the connection is off of the local controller’s map instance.
Command AXIS_CONSUMED REAL GSV Important: To use this attribute, make sure Auto Tag Update is Enabled
AXIS_GENERIC Tag for the motion group (default setting). Otherwise, you won’t see the right
Acceleration
value as the axis runs.
AXIS_SERVO
AXIS_SERVO_DRIVE Command Acceleration in Position Units / Sec2
AXIS_VIRTUAL Command Acceleration is the commanded speed of an axis, in the
configured axis Position Units per second per second, as generated by
any previous motion instructions. It is calculated as the current
increment to the command velocity per coarse update interval.
Command Acceleration is a signed value—the sign (+ or -) depends on
which direction the axis is being commanded to move.
Note that the 1756M02AE encoder based servo module uses 4X encoder
feedback decoding (both edges of channel A and B are counted). The
count direction is determined from both the direction of the edge and the
state of the opposite channel. Channel A leads channel B for increasing
count. This is the most commonly used decode mode with incremental
encoders, since it provides the highest resolution.
For example, suppose this servo axis utilizes a 1000 line encoder in a
motor coupled directly to a 5 pitch lead screw (5 turns per inch). With a
user defined Position Unit of Inches, the conversion constant is
calculated as shown below:
Damping Factor AXIS_SERVO REAL GSV The Damping Factor attribute value is used in calculating the maximum
AXIS_SERVO_DRIVE SSV Position Servo Bandwidth (see below) during execution of the MRAT
(Motion Run Axis Tune) instruction. In general the Damping Factor
attribute controls the dynamic response of the servo axis. When gains
are tuned using a small damping factor (like 0.7), a step response test
performed on the axis would demonstrate under-damped behavior with
velocity overshoot. A gain set generated using a larger damping factor,
like 1.0, would produce a system step response that has no overshoot
but has a significantly lower servo bandwidth. The default value for the
Damping Factor of 0.8 should work fine for most applications.
Volts
The Drive ID attribute contains the ASA Product Code of the drive
amplifier associated with the axis. If the Product Code does not match
that of the actual drive amplifier, an error is generated during the
configuration process.
Drive Capacity AXIS_SERVO_DRIVE REAL GSV Important: To use this attribute, choose it as one of the attributes for
Tag Real Time Axis Information for the axis. Otherwise, you won’t see the
right value as the axis runs. See Axis Info Select 1.
Do you want any of these faults to give the controller a major fault?
• YES — Set the General Fault Type of the motion group = Major
Fault.
• NO — You must write code to handle these faults.
Do you want any of these faults to give the controller a major fault?
• YES — Set the General Fault Type of the motion group = Major
Fault.
• NO — You must write code to handle these faults.
2 = Negative Polarity
Custom Polarity
Positive/Negative Polarity
Fractional Unwind
In some cases, however, the user may also want to specifically configure
Drive Resolution value to handle fractional unwind applications or
multi-turn absolute applications requiring cyclic compensation. In these
cases where the Unwind value for a rotary application does not work out
to be an integer value, the Rotational Position Scaling attribute may be
modified to a value that is integer divisible by the Unwind value.
If the application uses a 3:1 gearbox, and the user's Position Unit is, say,
Revs of the gearbox output shaft, the Conversion Constant is still
rational, since our scaling is Load Referenced! The user simply sets the
Conversion Constant to 200,000 Drive Counts/Output Shaft Rev based
on the default Drive Resolution value of 200,000 Drive Counts/Aux Rev.
The system would work in this configuration without any loss of
mechanical precision, that is, a move of 1 output shaft revolution would
move the output shaft exactly 1 revolution.
Bits
0 = Scaling type
0 – standard
1 – custom
1 = Scaling unit
0 – rotary
1 – linear
2 = Linear scaling unit
0 – metric
1 – english
3 = Data Reference
0 – motor
1 – load
Scaling Type
The Scaling Type bit attribute is used to enable custom scaling using the
position, velocity, acceleration, and torque scaling parameters defined
by the SERCOS Interface standard. When the bit is clear (default), these
scaling parameters are all set based on the preferred Rockwell
Automation SERCOS drive scaling factors. Currently there is no Logix
support for custom scaling.
Scaling Unit
If the Scaling Unit is set to rotary, the Linear Scaling Unit bit has no
affect.
Data Reference
Tag Bit
Servo Action Status 0
Drive Enable Status 1
Shutdown Status 2
Process Status 3
Bus Ready Status 4
Reserved 5
Home Input Status 6
Reg 1 Input Status 7
Reg 2 Input Status 8
Pos Overtravel Input Status 9
Neg Overtravel Input Status 10
Enable Input Status 11
Accel Limit Status 12
Absolute Reference Status 13
Reserved 14
Reserved 15
Velocity Lock Status 16
Velocity Standstill Status 17
Velocity Threshold Status 18
Torque Threshold Status 19
Torque Limit Status 20
Velocity Limit Status 21
Position Lock Status 22
Power Limit Status 23
Reserved 24
Low Velocity Threshold Status 25
High Velocity Threshold Status 26
Tag Bit
Servo Action Status 0
Drive Enable Status 1
Shutdown Status 2
Process Status 3
Bus Ready Status 4
Reserved 5
Home Input Status 6
Reg 1 Input Status 7
Reg 2 Input Status 8
Pos Overtravel Input Status 9
Neg Overtravel Input Status 10
Enable Input Status 11
Accel Limit Status 12
Absolute Reference Status 13
Reserved 14
Reserved 15
Velocity Lock Status 16
Velocity Standstill Status 17
Velocity Threshold Status 18
Torque Threshold Status 19
Torque Limit Status 20
Velocity Limit Status 21
Position Lock Status 22
Power Limit Status 23
Reserved 24
Low Velocity Threshold Status 25
High Velocity Threshold Status 26
0 = motor revs
1 = aux revs
2 = motor inches
3 = aux inches
4 = motor mm
5 = aux mm
When the load limit of the motor is exceeded, the Overload Warning bit
is set. If the condition persists, an Overload Fault occurs. This warning
bit gives the control program an opportunity to reduce motor loading to
avoid a future shutdown situation.
2 = hydraulic servo
When the application requires the servo module axis to interface with
an external velocity servo drive, the External Drive Type should be
configured for velocity servo. This disables the servo module’s internal
digital velocity loop. If the External Drive Type attribute is set to torque
servo, the servo module’s internal digital velocity loop is active. This
configuration is the required configuration for interfacing to a torque
loop servo drive. If the External Drive Type attribute is set to hydraulic
servo, the object will enable certain features specific to hydraulic servo
applications. In general, selecting the hydraulic External Drive Type
configures the servo loop the same as selecting the velocity servo
External Drive Type.
Set when one of the feedback sources associated with the drive axis has
a problem that prevents the drive from receiving accurate or reliable
position information from the feedback device.
Set when one of the feedback sources for the axis can’t send accurate or
reliable position information because there is a problem.
The Friction Compensation value should be just under the value that
would break the sticktion. A larger value causes the axis to dither. Dither
is when the axis moves rapidly back and forth centered on the
commanded position.
The Home Switch Normally Closed bit attribute determines the normal
state of the home limit switch used by the homing sequence. The normal
state of the switch is its state prior to being engaged by the axis during
the homing sequence. For example, if the Home Switch Normally Closed
bit is set (true) then the condition of the switch prior to homing is closed.
When the switch is engaged by the axis during the homing sequence,
the switch is opened, which constitutes a homing event.
Home Direction AXIS_GENERIC SINT GSV 0 = unidirectional forward
AXIS_SERVO SSV
1 = bidirectional forward
AXIS_SERVO_DRIVE
AXIS_VIRTUAL 2 = unidirectional reverse
3 = bidirectional reverse
Home Event AXIS_CONSUMED BOOL Tag Set when a home event has been armed through execution of the MAH
Armed Status AXIS_GENERIC (Motion Axis Home) instruction. Cleared when a home event occurs.
AXIS_SERVO
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
Home Event AXIS_CONSUMED BOOL Tag Set when a home event has occurred. Cleared when another MAH
Status AXIS_GENERIC (Motion Axis Home) instruction is executed.
AXIS_SERVO
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
Home Event Task AXIS_CONSUMED DINT MSG User Event Task that is triggered to execute when a Home event occurs.
AXIS_GENERIC An instance value of 0 indicates that no event task has been configured
to be triggered by the Home Event.
AXIS_SERVO
AXIS_SERVO_DRIVE This attribute indicates which user Task is triggered when a home event
AXIS_VIRTUAL occurs. The user Task is triggered at the same time that the Process
Complete bit is set for the instruction that armed the home event. This
attribute is set through internal communication from the user Task object
to the Axis object when the Task trigger attribute is set to select the
Home Event Task Instance attribute of the Axis. This attribute should not
be set directly by an external device. This attribute is available to be
read externally (Get attributes List) for diagnostic information.
Home Input AXIS_SERVO BOOL Tag If this bit is:
Status AXIS_SERVO_DRIVE • ON — The home input is active.
• OFF — The home input is inactive.
In most cases, Home Position is set to zero, although any value, within
the Maximum Positive and Negative Travel limits of the axis (if enabled),
may also be used. (A description of the Maximum Positive and Negative
Travel configuration attributes may be found in the Servo and Drive Axis
Object specifications). For a rotary axis, the Home Position is
constrained to be a positive number less than the Position Unwind value
divided by the Conversion Constant.
When configured for absolute Homing Mode, the Home Position value is
applied directly to the absolute feedback device to establish an absolute
position reference for the system.
Home Return AXIS_GENERIC REAL GSV Position Units / Sec
Speed AXIS_SERVO SSV
The Home Return Speed attribute controls the speed of the jog profile
AXIS_SERVO_DRIVE used after the first leg of an active bidirectional homing sequence.
Home Sequence AXIS_GENERIC SINT GSV 0 = immediate (default)
AXIS_SERVO SSV
1 = switch
AXIS_SERVO_DRIVE
AXIS_VIRTUAL 2 = marker
4 = torque limit
Integrator Hold AXIS_SERVO SINT GSV When the Integrator Hold Enable attribute value is configured TRUE, the
Enable AXIS_SERVO_DRIVE SSV servo loop temporarily disables any enabled integrators while the
command position is changing. This feature is used by point-to-point
moves to minimize the integrator wind-up during motion. When the
Integrator Hold Enable attribute value is FALSE, all active integrators are
always enabled.
0 = disabled
1 = enabled
Inter Module AXIS_SERVO BOOL Tag If this bit is on, the analog servo cards of a SoftLogix5800 controller
Sync Fault aren’t synchronized. The hardware or vbfirmware of the card causes this
fault. For example, the cable between 2 cards isn’t connected.
Interpolated AXIS_CONSUMED REAL GSV Interpolated Actual Position in Position Units
Actual Position AXIS_GENERIC Tag Interpolated Actual Position is the interpolation of the actual position,
based on past axis trajectory history, at the time specified by the
AXIS_SERVO “Interpolated Time” attribute.
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
Jog Status AXIS_CONSUMED BOOL Tag Set if a Jog motion profile is currently in progress. Cleared when the Jog
AXIS_GENERIC is complete or is superseded by some other motion operation.
AXIS_SERVO
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
LDT Calibration AXIS_SERVO REAL GSV This attribute provides for setting a calibration constant for LDT devices.
Constant This attribute is only active if the Transducer Type is set to LDT.
This attribute provides a selection for the units of the LDT calibration
constant attribute. This attribute is only active if the Transducer Type is
set to LDT.
LDT Length AXIS_SERVO REAL GSV This attribute provides for setting the length of an LDT device. This
attribute is only active if the Transducer Type is set to LDT.
LDT Length Units AXIS_SERVO SINT GSV 0=m
1 = in
This attribute provides a selection for the units of the LDT length
attribute. This attribute is only active if the Transducer Type is set to LDT.
LDT AXIS_SERVO SINT GSV This attribute provides the number of recirculations. This attribute is
Recirculations only active if the Transducer Type is set to LDT and LDT Type is set to
PWM.
LDT Scaling AXIS_SERVO REAL GSV This attribute provides for setting the scaling factor for LDT devices.
This attribute is only active if the Transducer Type is set to LDT.
LDT Scaling Units AXIS_SERVO SINT GSV 0 = Position Units/m
1 = Position Units/in
This attribute provides a selection for the units of the LDT scaling
attribute. This attribute is only active if the Transducer Type is set to
LDT.
1 = Start/Stop Rising
2 = Start/Stop Falling
This attribute provides a selection for the LDT Type. It provides the
following enumerated values: PWM, Start/Stop Rising, and Start/Stop
Falling. This attribute is only active if the Transducer Type is set to LDT.
Load Inertia Ratio AXIS_SERVO_DRIVE REAL GSV %Rated / Pos Units per Sec2
SSV
The Motor Inertia value represents the inertia of the motor without any
load attached to the motor shaft in Torque Scaling units of %Rated / Pos
Units per Sec2. The Load Inertia Ratio attribute’s value represents the
ratio of the load inertia to the motor inertia. Auto-tuning uses the Motor
Inertia value to calculate the Load Inertia Ratio based on the following
equation.
If the Load Inertia Ratio value is known, the Motor Inertia value can also
be used to calculate a suitable Torque Scaling value for the fully loaded
motor without performing an auto-tune. The equation used by
RSLogix5000 to calculate the Torque Scaling value is as follows:
Note: The software travel limits are not enabled until the selected
homing sequence is completed.
Note: The software travel limits are not enabled until the selected
homing sequence is completed.
Maximum Speed AXIS_GENERIC REAL GSV Position Units / Sec
AXIS_SERVO SSV
The value of the Maximum Speed attribute is used by various motion
AXIS_SERVO_DRIVE instructions (for example, MAJ, MAM, MCD, and so on) to determine
AXIS_VIRTUAL the steady-state speed of the axis. These instructions all have the option
of specifying speed as a percent of the Maximum Speed attribute value
for the axis. The Maximum Speed value for the axis is automatically set
to the Tuning Speed by the MAAT (Motion Apply Axis Tune) instruction.
This value is typically set to ~90% of the maximum speed rating of the
motor. This provides sufficient “head-room” for the axis to operate at all
times within the speed limitations of the motor.
Memory Usage AXIS_CONSUMED DINT MSG Amount of memory consumed for this instance (in bytes)
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
Memory Use AXIS_CONSUMED INT GSV Controller memory space where instance exists.
AXIS_GENERIC
105 (0x69) = I/O space
AXIS_SERVO
AXIS_SERVO_DRIVE 106 (0x6a) = Data Table space
AXIS_VIRTUAL
RSLogix 5000 software uses this attribute to create axis instances in I/O
memory for axes that are either to be produced or consumed. The
Memory Use attribute can only be set as part of an axis create service
and is used to control which controller memory the object instance is
created in.
Module Channel AXIS_GENERIC SINT GSV Zero based channel number of the module. 0xff, indicates unassigned.
AXIS_SERVO
The axis is associated to a specific channel on a motion module by
AXIS_SERVO_DRIVE specifying the Module Channel attribute.
The ASA class code of the object in the motion module which is
supporting motion; for example, 0xAF is the ASA object ID of the “Servo
Module Axis Object” residing in the 1756-M02AE module.
Module Fault AXIS_CONSUMED BOOL Tag Set when a serious fault has occurred with the motion module
AXIS_GENERIC associated with the selected axis. Usually a module fault affects all axes
associated with the motion module. A module fault generally results in
AXIS_SERVO the shutdown of all associated axes. Reconfiguration of the motion
AXIS_SERVO_DRIVE module is required to recover from a module fault condition.
AXIS_VIRTUAL
Do you want this fault to give the controller a major fault?
• YES — Set the General Fault Type of the motion group = Major
Fault.
• NO — You must write code to handle these faults.
Module Fault Bits AXIS_CONSUMED DINT GSV* Lets you access the module fault bits in one 32-bit word. This attribute is
AXIS_SERVO the same as the Module Faults tag.
AXIS_SERVO_DRIVE
Module Fault Bit
Control Sync Fault 0
Module Sync Fault 1
Timer Event Fault 2
Module Hardware Fault 3
SERCOS Ring Fault 4
Inter Module Sync Fault 5
Module Sync AXIS_SERVO BOOL Tag If this bit is set, the motion module lost communication with the
Fault AXIS_SERVO_DRIVE controller and missed several position updates in a row.
• The motion module can miss up to 4 position updates. After that,
the motion module shuts down.
• This bit clears when communication is reestablished.
Mot Feedback AXIS_SERVO_DRIVE BOOL Tag Set for the A Quad B feedback device when one of these happens:
Fault • The differential electrical signals for one or more of the feedback
channels (for example, A+ and A-, B+ and B-, or Z+ and Z-) are at
the same level (both high or both low). Under normal operation,
the differential signals are always at opposite levels. The most
common cause of this situation is a broken wire between the
feedback transducer and the servo module or drive.
• Loss of feedback “power” or feedback “common” electrical
connection between the servo module or drive and the feedback
device.
The controller latches this fault. Use a Motion Axis Fault Reset (MAFR)
or Motion Axis Shutdown Reset (MASR) instruction to clear the fault.
INT; The Motor Data attribute is a structure with a length element and an
array of bytes that contains important motor configuration information
SINT needed by an A-B SERCOS drive to operate the motor. The length
element represents the number of valid data elements in the data array.
[256]} The meaning of data within the data array is understood only by the
drive. The block of data stored in the Motor Data attribute is derived at
configuration time from an RSLogix 5000 motion database file.
Motor Electrical AXIS_SERVO_DRIVE REAL GSV Important: To use this attribute, choose it as one of the attributes for
Angle Tag Real Time Axis Information for the axis. Otherwise, you won’t see the
right value as the axis runs. See Axis Info Select 1.
Degrees
Feedback Polarity
The Feedback Polarity bit attribute can be used to change the sense of
direction of the feedback device. This bit is only valid for auxiliary
feedback devices. When performing motor/feedback hookup diagnostics
on an auxiliary feedback device using the MRHD and MAHD
instructions, the Feedback Polarity bit is configured for the auxiliary
feedback device to insure negative feedback into the servo loop. Motor
feedback devices must be wired properly for negative feedback since
the Feedback Polarity bit is forced to 0, or non-inverted.
Motor Feedback AXIS_SERVO_DRIVE DINT GSV Feedback Counts per Cycle
Interpolation
The Feedback Interpolation attributes establish how many Feedback
Factor
Counts there are in one Feedback Cycle. The Feedback Interpolation
Factor depends on both the feedback device and the drive feedback
circuitry. Quadrature encoder feedback devices and the associated drive
feedback interface typically support 4x interpolation, so the Interpolation
Factor for these devices would be set to 4 Feedback Counts per Cycle
(Cycles are sometimes called Lines). High Resolution Sin/Cosine
feedback device types can have interpolation factors as high as 2048
Counts per Cycle. The product to the Feedback Resolution and the
corresponding Feedback Interpolation Factor is the overall resolution of
the feedback channel in Feedback Counts per Feedback Unit. In our
example, a Quadrature encoder with a 2000 line/rev resolution and 4x
interpolation factor would have an overall resolution of 8000 counts/rev.
If the Load Inertia Ratio value is known, the Motor Inertia value can also
be used to calculate a suitable Torque Scaling value for the fully loaded
motor without performing an auto-tune. The equation used by
RSLogix5000 to calculate the Torque Scaling value is as follows:
The ability to configure the number of Output Cam Execution Targets for
a specific axis reduces the memory required per axis for users who do
not need Output Cam functionality, or only need 1 or 2 Output Cam
Execution Targets for a specific axis. Each axis can be configured
differently.
Output Cam Lock AXIS_CONSUMED DINT GSV Set of Output Cam Lock Status bits
Status AXIS_GENERIC Tag
The Output Cam Lock Status bit is set when an Output Cam has been
AXIS_SERVO armed. This would be initiated by executing an MAOC instruction with
AXIS_SERVO_DRIVE Immediate execution selected, when a pending output cam changes to
AXIS_VIRTUAL armed, or when the axis approaches or passes through the specified axis
arm position. As soon as this output cam current position moves beyond
the cam start or cam stop position, the Output Cam Lock bit is cleared.
This bit is also cleared if the Output Cam is terminated by a MDOC
instruction.
Output Cam Lock AXIS_CONSUMED DINT Tag A set of bits that are set when an Output Cam is locked to the Master
Status AXIS_SERVO Axis. The bit number corresponds with the execution target number. One
bit per execution target.
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
Output Cam AXIS_CONSUMED DINT GSV A set of bits that are set when an Output Cam is waiting for an armed
Pending Status AXIS_GENERIC Tag Output Cam to move beyond its cam start/cam end position.
The bit number corresponds with the execution target number. One bit
AXIS_SERVO per execution target.
AXIS_SERVO_DRIVE The Output Cam Pending Status bit is set if an Output Cam is currently
AXIS_VIRTUAL pending the completion of another Output Cam. This would be initiated
by executing an MAOC instruction with Pending execution selected. As
soon as this output cam is armed, being triggered when the currently
executing Output Cam has completed, the Output Cam Pending bit is
cleared. This bit is also cleared if the Output Cam is terminated by a
MDOC instruction.
Output Cam AXIS_CONSUMED DINT GSV A set of bits that are set when the Output Cam has been initiated. The
Status AXIS_GENERIC Tag bit number corresponds with the execution target number. One bit per
execution target.
AXIS_SERVO The Output Cam Status bit is set when an Output Cam has been
AXIS_SERVO_DRIVE initiated. The Output Cam Status bit is reset when the cam position
AXIS_VIRTUAL moves beyond the cam start or cam end position in “Once” execution
mode with no Output Cam pending or when the Output Cam is
terminated by a MDOC instruction.
The servo output limit may be used as a software current or torque limit
if you are using a servo drive in torque (current) loop mode. The
percentage of the drive’s maximum current that the servo controller
commands is equal to the specified servo output limit. For example, if
the drive is capable of 30 Amps of current for a 10 Volt input, setting the
servo output limit to 5V limits the maximum drive current to 15 Amps.
The servo output limit may also be used if the drive cannot accept the
full ±10 Volt range of the servo output. In this case, the servo output limit
value effectively limits the maximum command sent to the amplifier. For
example, if the drive can only accept command signals up to ±7.5 Volts,
set the servo output limit value to 7.5 volts.
Output Limit AXIS_SERVO BOOL Tag If this bit is:
Status • ON — The servo output is at or past the Output Limit value.
• OFF — The servo output is within the Output Limit value
Position Cam AXIS_CONSUMED BOOL Tag Set if a Position Cam motion profile is currently in progress. Cleared
Status AXIS_GENERIC when the Position Cam is complete or is superseded by some other
motion operation.
AXIS_SERVO
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
Position AXIS_SERVO REAL GSV In some External Velocity Servo Drive applications where the level of
Differential Gain SSV damping provided by the external drive is insufficient for good position
servo loop performance, additional damping may be achieved via the
Position Loop Differential Gain. Assuming a non-zero Position Loop
Differential Gain value, the difference between the current Position Error
value and the last Position Error value is computed. This value is then
multiplied by the Position Loop Differential Gain to produce a component
to the Servo Output or Velocity Command that attempts to correct for the
change in position error, creating a “damping” effect. Increasing this
gain value results in greater “damping” of the axis.
The self tuning routine sets the position error tolerance to twice the
following error at maximum speed based on the measured response of
the axis. In most applications, this value provides reasonable protection
in case of an axis fault or stall condition without nuisance faults during
normal operation. If you need to change the calculated position error
tolerance value, the recommended setting is 150% to 200% of the
position error while the axis is running at its maximum speed.
Position Feedback is the current value of the Fine Actual Position into
the position loop summing junction, in configured axis Position Units.
Within the servo loop, the Position Feedback represents the current
position of the axis.
Position Integral AXIS_SERVO REAL GSV 1/mSec-Sec
Gain AXIS_SERVO_DRIVE SSV
Position Integral Gain (Pos I Gain) improves the steady-state positioning
performance of the system. By using Position Integral Gain, it is possible
to achieve accurate axis positioning despite the presence of such
disturbances as static friction or gravity. Increasing the integral gain
generally increases the ultimate positioning accuracy of the system.
Excessive integral gain, however, results in system instability.
If the axis is configured for an external velocity loop servo drive, the Pos
I Gain should be zero–most analog velocity loop servo amplifiers have
integral gain of their own and do not tolerate any amount of Pos I Gain in
the position loop without producing severe oscillations. If Pos I Gain is
necessary for the application, the velocity integrator in the drive must be
disabled.
In certain cases, Pos I Gain control is disabled. One such case is when
the servo output to the axis’ drive is saturated. Continuing integral
control behavior in this case would only exacerbate the situation.
Another common case is when performing certain motion. When the
Integrator Hold Enable attribute is set, the servo loop automatically
disables the integrator during commanded motion.
Assuming a Pos P Gain value of 100 Sec-1 this results in a Pos I Gain
value of 2.5 ~0.1 mSec-1-Sec-1
Position Integrator Error is the running sum of the Position Error, in the
configured axis Position Units, for the specified axis. For an axis with an
active servo loop, the position integrator error is used, along with other
error terms, to drive the motor to the condition where the actual position
is equal to the command position.
Position Lock AXIS_SERVO BOOL Tag If this bit is:
Status AXIS_SERVO_DRIVE • ON — The axis position error is less than or equal to the Position
Lock Tolerance value of the axis.
• OFF — The axis position error is greater than the Position Lock
Tolerance value of the axis.
Position Lock AXIS_SERVO REAL GSV Position Units
Tolerance AXIS_SERVO_DRIVE SSV
The Position Lock Tolerance attribute value specifies how much position
error the motion module tolerates when giving a true Position Locked
Status indication. When used in conjunction with the Position Locked
Status bit, it is a useful parameter to control positioning accuracy. The
Position Lock Tolerance value should be set, in Position Units, to the
desired positioning accuracy of the axis.
Position Polarity AXIS_SERVO_DRIVE INT GSV This attribute is derived from the Drive Polarity attribute. See IDN 55 in
IEC 1491.
%Rated
Power Supply ID AXIS_SERVO_DRIVE INT GSV The Power Supply ID attribute contains the enumeration of the specific
A-B Power Supply or System Module catalog numbers associated with
the axis. If the Power Supply ID does not match that of the actual supply
hardware, an error is generated during the drive configuration process.
Precharge AXIS_SERVO_DRIVE BOOL Tag The drive’s precharge resistor gets too hot if you cycle 3-phase power
Overload Fault too many times. If that happens, this bit turns on.
Primary AXIS_SERVO_DRIVE INT GSV This attribute is derived from the Servo Loop Configuration attribute.
See IDN 32 in IEC 1491.
Operation Mode
Process Status AXIS_SERVO BOOL Tag Set when there is an axis tuning operation or an axis hookup diagnostic
AXIS_SERVO_DRIVE test operation in progress on the axis.
1 = high frequency
Registration 1 AXIS_CONSUMED DINT MSG These attributes show which task is triggered when the registration
AXIS_GENERIC event happens.
Event Task
AXIS_SERVO • An instance of 0 means that no event task is configured to be
triggered by the registration event.
Registration 2 AXIS_SERVO_DRIVE
• The task is triggered at the same time that the Process Complete
Event Task AXIS_VIRTUAL bit is set for the instruction that armed the watch event.
• The controller sets these attributes. Don’t set them by an
external device.
The figure below shows how the registration position is latched by the
registration input when a registration event occurs. The latching
mechanism can be implemented in the controller software (soft
registration) or, for greater accuracy, in physical hardware (hard
registration).
0 = custom
1 = feedback only
3 = position servo
8 = velocity servo
9 = torque servo
Servo Output Level is the current voltage level of the servo output of the
specified axis. The Servo Output Level can be used in drilling
applications, for example, where the servo module is interfaced to an
external Torque Loop Servo Drive, to detect when the drill bit has
engaged the surface of the work piece.
Servo Polarity AXIS_SERVO DINT GSV 0 = Feedback Polarity Negative
Bits
1 = Servo Polarity Negative
This Feedback Polarity Negative bit attribute controls the polarity of the
encoder feedback and, when properly configured, insures that when the
axis is moved in the user defined positive direction that the axis Actual
Position value increases. This bit can be configured automatically using
the MRHD and MAHD motion instructions.
This Servo Polarity Negative bit attribute controls the polarity of the
servo output to the drive. When properly configured along with the
Feedback Polarity Negative bit, it insures that when the axis servo loop
is closed that it is closed as a negative feedback system and not an
unstable positive feedback system. This bit can be configured
automatically using the MRHD and MAHD motion instructions.
Servo Status AXIS_SERVO DINT Tag Lets you access the status bits for your servo loop in one 32-bit word.
This tag is the same as the Servo Status Bits attribute.
This attribute provides for setting the Clock Frequency in kHz of the SSI
device. This attribute is only active if the Transducer Type is set to SSI.
SSI Code Type AXIS_SERVO SINT GSV 0 = Binary
1 = Gray
This attribute provides for setting the whether the SSI device is using
Binary or Gray code. This attribute is only active if the Transducer Type is
set to SSI.
SSI Data Length AXIS_SERVO SINT GSV This attribute provides for setting the data length of the SSI device.
This attribute is only active if the Transducer Type is set to SSI.
Start Positions are useful to correct for any motion occurring between
the detection of an event and the action initiated by the event. For
instance, in coil winding applications, Start Command Positions can be
used in an expression to compensate for overshooting the end of the
bobbin before the gearing direction is reversed. If you know the position
of the coil when the gearing direction was supposed to change, and the
position at which it actually changed (the Start Command Position), you
can calculate the amount of overshoot, and use it to correct the position
of the wire guide relative to the bobbin.
Start Command AXIS_CONSUMED REAL GSV Start Command Position in Position Units
AXIS_GENERIC Tag Whenever a new motion planner instruction starts for an axis (for
Position
example, using a MAM instruction), the value of the axis command
AXIS_SERVO position and actual position is stored at the precise instant the motion
AXIS_SERVO_DRIVE begins. These values are stored as the Start Command Position and
AXIS_VIRTUAL Start Actual Position respectively in the configured Position Units of the
axis.
Start Positions are useful to correct for any motion occurring between
the detection of an event and the action initiated by the event. For
instance, in coil winding applications, Start Command Positions can be
used in an expression to compensate for overshooting the end of the
bobbin before the gearing direction is reversed. If you know the position
of the coil when the gearing direction was supposed to change, and the
position at which it actually changed (the Start Command Position), you
can calculate the amount of overshoot, and use it to correct the position
of the wire guide relative to the bobbin.
Start Master AXIS_CONSUMED REAL GSV Start Master Offset in Master Position Units
Offset AXIS_GENERIC Tag The Start Master Offset is the position offset that was applied to the
master side of the position cam when the last Motion Axis Move (MAM)
AXIS_SERVO instruction with the move type set to “Absolute Master Offset” or
AXIS_SERVO_DRIVE “Incremental Master Offset” was executed. The Start Master Offset is
AXIS_VIRTUAL returned in master position units. The Start Master Offset will show the
same unwind characteristic as the position of a linear axis.
Stopping Status AXIS_CONSUMED BOOL Tag Set if there is a stopping process currently in progress. Cleared when the
AXIS_GENERIC stopping process is complete. The stopping process is used to stop an
axis (initiated by an MAS, MGS, Stop Motion fault action, or mode
AXIS_SERVO change).
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
Telegram Type AXIS_SERVO_DRIVE INT GSV Set to a value of 7, which means Application Telegram. See IDN 15 in
IEC 1491.
This attribute returns the status of the last run MRHD (Motion Run
Hookup Diagnostic) instruction that initiates a hookup diagnostic
process on the axis. Use this attribute to determine when the MRHD
initiated operation has successfully completed. Conditions may occur,
however, that make it impossible to properly perform the operation.
When that happens, the test process is automatically aborted and a test
fault reported that is stored in the Test Status output parameter.
Time Cam Status AXIS_CONSUMED BOOL Tag Set if a Time Cam motion profile is currently in progress. Cleared when
AXIS_GENERIC the Time Cam is complete or is superseded by some other motion
operation.
AXIS_SERVO
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
Timer Event Fault AXIS_SERVO BOOL Tag If this bit is set, the motion module has a problem with its timer event
AXIS_SERVO_DRIVE that synchronizes the module’s servo loop to the master timebase of the
chassis (that is, Coordinated System Time). To clear this bit, reconfigure
the motion module.
Torque Command AXIS_SERVO_DRIVE REAL GSV Important: To use this attribute, choose it as one of the attributes for
Tag Real Time Axis Information for the axis. Otherwise, you won’t see the
right value as the axis runs. See Axis Info Select 1.
%Rated
Torque Feedback AXIS_SERVO_DRIVE REAL GSV Important: To use this attribute, choose it as one of the attributes for
Tag Real Time Axis Information for the axis. Otherwise, you won’t see the
right value as the axis runs. See Axis Info Select 1.
%Rated
The torque limit specifies the maximum percentage of the motors rated
current that the drive can command as either positive or negative torque.
For example, a torque limit of 150% shall limit the current delivered to
the motor to 1.5 times the continuous current rating of the motor.
Torque Limit AXIS_SERVO_DRIVE REAL GSV %Rated
Negative SSV
This attribute maps directly to a SERCOS IDN. See the SERCOS Interface
standard for a description. This attribute is automatically set. You
usually don’t have to change it.
Torque Limit AXIS_SERVO_DRIVE REAL GSV %Rated
Positive SSV
This attribute maps directly to a SERCOS IDN. See the SERCOS Interface
standard for a description. This attribute is automatically set. You
usually don’t have to change it.
This parameter displays the present source (if any) of any torque limiting
for the axis.
0 = Not Limited
1 = Neg.e Torque Limit
2 = Pos. Torque Limit
3 = Amp Peak Limit
4 = Amp I(t) Limit
5 = Bus Regulator Limit
6 = Bipolar Torque Limit
7 = Motor Peak Limit
8 = Motor I(t) Limit
9 = Voltage Limit
Torque Limit AXIS_SERVO_DRIVE BOOL Tag Set when the magnitude of the axis torque command is greater than the
Status configured Torque Limit.
Torque Offset AXIS_SERVO REAL GSV Torque Offset from –100% to +100%
AXIS_SERVO_DRIVE SSV Torque Offset compensation can be used to provide a dynamic torque
command correction to the output of the velocity servo loop. Since this
Tag value is updated synchronously every Coarse Update Period, the Torque
Offset can be tied into custom outer control loop algorithms using
Function Block programming.
Torque Polarity AXIS_SERVO_DRIVE INT GSV This attribute is derived from the Drive Polarity attribute. See IDN 85 in
IEC 1491.
Note that if the Torque Scaling value does not reflect the true torque to
acceleration characteristic of the system, the gains also do not reflect
the true performance of the system.
Torque Threshold AXIS_SERVO_DRIVE REAL GSV %Rated
SSV
This attribute maps directly to a SERCOS IDN. See the SERCOS Interface
standard for a description. This attribute is automatically set. You
usually don’t have to change it.
Torque Threshold AXIS_SERVO_DRIVE BOOL Tag Set when the magnitude of the physical axis Torque Feedback is less
Status than the configured Torque Threshold.
Transform State AXIS_CONSUMED BOOL Tag If the bit is:
Status AXIS_GENERIC • ON — The axis is part of an active transform.
AXIS_SERVO • OFF — The axis isn’t part of an active transform.
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
Since the Tune Inertia value represents a measure of the true system
inertia, this situation can occur when driving a high inertia load relative
to the motor, that is, a high inertia mismatch. But it can also occur when
working with a drive that is undersized for the motor or with a system
having low feedback resolution. In general, the lower the Tune Inertia
the better the performance of the digital servo loops approximates that
of an analog servo system.
The product of the Tune Inertia (% Rated/MCPS) and the Velocity Servo
BW (Hertz) can be calculated to directly determine quantization noise
levels. Based on this product, the tuning algorithm can take action to
limit high frequency noise injection to the motor.
For motors with a Tune Inertia BW product of 1000 or more, the LP Filter
is applied with a Filter BW of 5x the Velocity Servo Bandwidth in Hertz.
This limits the amount of phase lag introduced by the LP filter to ~12
degrees which is relatively small compared to the 30 to 60 degrees of
phase margin that we have for a typical tuned servo system. With a
typical tuned LP filter BW value of 200 Hz, we can expect the high
frequency quantization noise in the 1 KHz range to be attenuated roughly
by a factor of 5.
When the Tune Inertia BW product reaches 4000 or more, the LP filter
alone is not going to be enough to manage the quantization noise level.
So the tune algorithm begins to taper the system bandwidth by the ratio
of 4000/(Tune Inertia * Vel Servo BW). This holds the quantization noise
level at a fixed value, independent of the Tune Inertia BW product. For
example, a motor with a Tune Inertia value of 213 and a Vel Servo BW of
41 Hz (8733 Inertia BW product) tunes with a Pos P Gain of 46 and a Vel
P Gain of 117 and LP Filter BW of 93. This is a good noise-free gain set.
The Tune Rise Time attribute returns the axis rise time as measured
during the tuning procedure. This value is only applicable to axes
configured for interface to an external velocity servo drive. In this case,
the Tune Rise Time attribute value is used to calculate the Tune Velocity
Bandwidth.
Tune Speed AXIS_SERVO REAL GSV % / KiloCounts Per Sec
Scaling
The Tune Speed Scaling attribute returns the axis drive scaling factor
measured during the tuning procedure. This value is only applicable to
axes configured for interface to an external velocity servo drive. In this
case, the Tune Speed Scaling attribute value is directly applied to the
Velocity Scaling attribute by a subsequent MAAT (Motion Apply Axis
Tune) instruction.
Tune Status AXIS_SERVO INT GSV 0 = tune process successful
AXIS_SERVO_DRIVE 1 = tune in progress
2 = tune process aborted by user
3 = tune process timed out
4=
• AXIS_SERVO — tune process failed due to servo fault
• AXIS_SERVO_DRIVE — tune process failed due to drive fault
5 = axis reached Tuning Travel Limit
6 = axis polarity set incorrectly
More codes for a AXIS_SERVO_DRIVE…
7 = tune measurement fault
8 = tune configuration fault
The Tune Status attribute returns status of the last run MRAT (Motion
Run Axis Tuning) instruction that initiates a tuning procedure on the
targeted axis. Use the attribute to determine when the MRAT initiated
operation has successfully completed. Conditions may occur, however,
that make it impossible for the control to properly perform the operation.
When this is the case, the tune process is automatically aborted and a
tune fault reported that is stored in the Tune Status output parameter.
In certain cases, Vel I Gain control is disabled. One such case is when
the servo output to the axis’ drive is saturated. Continuing integral
control behavior in this case would only exacerbate the situation.
Another common case is when performing certain motion. When the
Integrator Hold Enable attribute is set, the servo loop automatically
disables the integrator during commanded motion.
The typical value for the Velocity Integral Gain is ~15 mSec-1-Sec-1.
Assuming a Vel P Gain value of 0.25 Sec-1 this results in a Vel I Gain
value of ~15.6 mSec-1-Sec-1-
Velocity Integrator Error is the running sum of the Velocity Error, in the
configured axis Position Units per Second, for the specified axis. For an
axis with an active velocity servo loop, the velocity integrator error is
used, along with other error terms, to drive the motor to the condition
where the velocity feedback is equal to the velocity command.
Velocity Limit AXIS_SERVO_DRIVE REAL GSV Position Units / sec
Bipolar SSV
This attribute maps directly to a SERCOS IDN. See the SERCOS Interface
standard for a description. This attribute is automatically set. You
usually don’t have to change it.
Velocity Limit AXIS_SERVO_DRIVE REAL GSV Position Units / sec
Negative SSV
This attribute maps directly to a SERCOS IDN. See the SERCOS Interface
standard for a description. This attribute is automatically set. You
usually don’t have to change it.
Velocity Limit AXIS_SERVO_DRIVE REAL GSV Position Units / sec
Positive SSV
This attribute maps directly to a SERCOS IDN. See the SERCOS Interface
standard for a description. This attribute is automatically set. You
usually don’t have to change it.
Velocity Limit AXIS_SERVO_DRIVE BOOL Tag Set when the magnitude of the commanded velocity to the velocity servo
Status loop input is greater than the configured Velocity Limit.
Velocity Lock AXIS_SERVO_DRIVE BOOL Tag Set when the magnitude of the physical axis Velocity Feedback is within
Status the configured Velocity Window of the current velocity command.
Velocity Offset AXIS_SERVO REAL GSV Velocity Offset in Position Units / Sec
AXIS_SERVO_DRIVE SSV Velocity Offset compensation can be used to give a dynamic velocity
correction to the output of the position servo loop. Since this value is
Tag updated synchronously every Coarse Update Period, the Velocity Offset
can be tied into custom outer control loop algorithms using Function
Block programming.
Velocity Polarity AXIS_SERVO_DRIVE INT GSV This attribute is derived from the Drive Polarity attribute. See IDN 42 in
IEC 1491.
When configured for a torque (current) loop servo drive, the servo
module’s digital velocity loop provides damping without the requirement
for an analog tachometer. The Velocity Error is multiplied by the Velocity
Proportional Gain to produce a component to the Servo Output or Torque
Command that ultimately attempts to correct for the velocity error,
creating the damping effect. Thus, increasing the Velocity Proportional
Gain results in smoother motion, enhanced acceleration, reduced
overshoot, and greater system stability. The velocity loop also allows
higher effective position loop gain values to be used, however, too much
Velocity Proportional Gain leads to high frequency instability and
resonance effects. Note that units for Velocity Proportional Gain are
identical to that of the Position Proportional Gain making it easy to
perform classic inches/min/mil calculations to determine static stiffness
or damping.
Maximum Bandwidth
For example, if the bandwidth of the drive’s torque loop is 100 Hz and the
damping factor, Z, is 0.8, the velocity bandwidth is approximately 40 Hz.
Based on this number the corresponding gains for the loop can be
computed. Note that the bandwidth of the torque loop includes feedback
sampling delay and filter time constant.
The velocity loop in the motion controller is not used when the servo
module is configured for a velocity loop servo drive, Thus, establishing
the Velocity Proportional Gain is not required in this case.
The typical value for the Velocity Proportional Gain is ~250 Sec-1.
If you know the desired unity gain bandwidth of the velocity servo in
Hertz, use the following formula to calculate the corresponding P gain.
In general, modern velocity servo systems typically run with a unity gain
bandwidth of ~40 Hertz. The typical value for the Velocity Proportional
Gain is ~250 Sec-1.
Maximum Bandwidth
For example, if the bandwidth of the drive’s torque loop is 100 Hz and the
damping factor, Z, is 0.8, the velocity bandwidth is approximately 40 Hz.
Based on this number the corresponding gains for the loop can be
computed. Note that the bandwidth of the torque loop includes feedback
sampling delay and filter time constant.
If the axis is using a velocity servo drive, the software velocity loop in
the servo module is disabled. In this case the Velocity Scaling value can
be calculated by the following formula:
Watch Event Task AXIS_CONSUMED DINT MSG Shows which task is triggered when the watch event happens.
AXIS_GENERIC • An instance of 0 means that no event task is configured to be
AXIS_SERVO triggered by the watch event.
AXIS_SERVO_DRIVE • The task is triggered at the same time that the Process Complete
bit is set for the instruction that armed the watch event.
AXIS_VIRTUAL
• The controller sets this attribute. Don’t set it by an external
device.
Watch Position AXIS_CONSUMED REAL GSV Watch Position in Position Units
AXIS_GENERIC Tag Watch Position is the current set-point position of an axis, in the
configured axis Position Units, as set up in the last, most recently
AXIS_SERVO executed, MAW (Motion Arm Watch) instruction for that axis.
AXIS_SERVO_DRIVE
AXIS_VIRTUAL
Introduction This appendix shows the servo loop block diagrams for common
motion configurations.
Topic Page
Interpreting the Diagrams 367
AXIS_SERVO 368
AXIS_SERVO_DRIVE 370
Interpreting the Diagrams The diagrams use these labels for axes attributes.
AXIS_SERVO
Topic Page
Position Servo with Torque Servo Drive 368
Position Servo with Velocity Servo Drive 369
Torque
Offset
Acc
d2/dt FF
Gain
Velocity
Offset
Output
Offset
Output &
Filter Friction Servo
Vel
BW Comp. Polarity
d/dt FF
Gain
Position
Command Velocity
(Coarse) Position Command Velocity
Error Error Low Torque
Fine
Interpolator
Σ Pos P
Gain
Σ Σ Vel P
Gain
Σ Pass
Output
Scaling Σ Output
Limit
16 Bit
DAC
Servo
Filter Drive
Position
Command Servo
Velocity
Feedback Output
Level
Error Error
Position Pos I Vel I
Accum Accum
Feedback Gain Gain
-ulator -ulator
Position Velocity
Integrator Integrator
Error Error
Low
Servo Config = Position
Motor
Pass
Filter
S
Encoder
Polarity
d/dt
Position Ch A/B
Feedback Encoder
(Coarse) Input
Position 16-bit
AQB
Accum- Encoder
Encoder
ulator Counter
Watch
Event Watch
Event
Handler
Watch
Position
Ch Z
Homing Marker
Event Input
Marker
Event Marker
Handler Latch
Registration
Event
Regist.
Regist. Registration
Event
Latch Input
Handler
Torque
Offset
Acc
d2/dt FF
Gain
Velocity
Offset
Output
Offset
Output &
Filter Friction Servo
Vel
BW Comp. Polarity
d/dt FF
Gain
Position
Command Velocity
(Coarse) Command
Position
Error Low Velocity
Σ Σ Σ Σ Σ
Fine Pos P Output Output 16 Bit
Pass Servo
Interpolator Gain Scaling Limit DAC
Filter Drive
Position
Command Servo
Velocity
Output
Feedback
Level
Error
Position Pos I
Accum
Feedback Gain
-ulator
Position
Integrator
Error
Servo Config = Position Servo
Motor
Encoder
Polarity
Position Ch A/B
Feedback Encoder
(Coarse) Input
Position 16-bit
AQB
Accum- Encoder
Encoder
ulator Counter
Watch
Event Watch
Event
Handler
Watch
Position
Ch Z
Homing Marker
Event Input
Marker
Event Marker
Handler Latch
Registration
Event
Regist.
Regist. Registration
Event
Latch Input
Handler
AXIS_SERVO_DRIVE
Topic Page
Motor Position Servo 371
Auxiliary Position Servo 372
Dual Feedback Servo 373
Motor Dual Command Servo 374
Auxiliary Dual Command Servo 375
Dual Command Feedback Servo 376
Velocity Servo 376
Torque Servo 377
Drive Gains 377
Torque
Offset
Acc
d2/dt FF
Velocity Gain
Offset
Output Output
Low Pass Notch Pos/Neg
Filter Filter Torque
Vel BW Limit
d/dt FF BW
Gain Accel
Command
Position Torque
Command Velocity Velocity Command
(Coarse) Position Command Error
Fine Error Pos P Vel P Torque Frict. Low Notch Torque Torque
Ȉ Ȉ Ȉ Ȉ Ȉ Ȉ Pass
Interpolator Gain Gain Scaling Comp Filter Filter Limit Amplifier
Position
Command
Error Error
Pos I Velocity Vel I
Position Accum Feedback Accum
Gain Gain
Feedback -ulator -ulator
Position Motor
Velocity
Integrator Integrator
Error Low Error
Pass
Filter
Feedback
Polarity
Motor
Feedback
Hardware Channel
Motor
Feedback
Feedback
Position
Position
Feedback Aux
(Coarse) Feedback
Position Hardware Channel Aux
Accum- Feedback
ulator Feedback
Position
Torque
Offset
Acc
d2/dt FF
Gain
Velocity
Offset
Output Output
Notch Pos/Neg
Low Pass
Filter Torque
Vel Filter
BW Limit
d/dt FF BW
Gain
Error Error
Position Pos I Vel I
Accum Accum
Feedback Gain Gain
-ulator -ulator
Position Velocity
Motor
Integrator Integrator
Error Error
Low
Pass
Filter
Feedback
Polarity
Motor
Feedback
Channel
Hardware
Motor
Feedback
Feedback
Position
Position
Feedback Aux
(Coarse) Feedback
Channel
Position Hardware
Aux
Accum- Feedback
Feedback
ulator Position
Torque
Offset
Acc
d2/dt FF
Gain
Velocity
Offset
Output Output
Notch Pos/Neg
Low Pass
Filter Torque
Vel Filter
BW Limit
d/dt FF BW
Gain
Error Error
Position Pos I Vel I
Accum Accum
Feedback Gain Gain
-ulator -ulator
Position Velocity
Motor
Integrator Integrator
Error Error
Low
Pass
Filter
Feedback
Polarity
Motor
Feedback
Channel
Hardware
Motor
Feedback
Feedback
Position
Position
Feedback Aux
(Coarse) Feedback
Channel
Position Hardware
Aux
Accum- Feedback
Feedback
ulator Position
Velocity
Offset
Acc
d/dt FF
Gain
Velocity
Command Output Output
Notch Pos/Neg
(Coarse) Low Pass
Torque Filter Torque
Vel Filter
Fine Offset BW Limit
FF BW
Interpolator
Gain
Position Accel
Velocity Torque
Command Command
Command Command
(Coarse) Position Velocity
Error Error Low
Fine
Interpolator Σ Pos P
Gain Σ Σ Σ Vel P
Gain Σ Torque
Scaling Σ Frict.
Comp
Pass
Notch
Filter
Torque
Limit
Torque
Amplifier
Filter
Position
Command Velocity
Feedback
Error Error
Position Pos I Vel I
Accum Accum
Feedback Gain Gain
-ulator -ulator
Position Velocity
Motor
Integrator Integrator
Error Error
Low
Pass
Filter
Feedback
Polarity
Motor
Feedback
Channel
Hardware
Motor
Feedback
Feedback
Position
Position
Feedback Aux
(Coarse) Feedback
Channel
Position Hardware
Aux
Accum- Feedback
Feedback
ulator Position
Velocity
Offset
Acc
d/dt FF
Gain
Velocity
Command Output Output
Notch Pos/Neg
(Coarse) Low Pass
Torque Filter Torque
Vel Filter
Fine Offset BW Limit
FF BW
Interpolator
Gain
Error Error
Position Pos I Vel I
Accum Accum
Feedback Gain Gain
-ulator -ulator
Position Velocity
Motor
Integrator Integrator
Error Error
Low
Pass
Filter
Feedback
Polarity
Motor
Feedback
Channel
Hardware
Motor
Feedback
Feedback
Position
Position
Feedback Aux
(Coarse) Feedback
Channel
Position Hardware
Aux
Accum- Feedback
Feedback
ulator Position
Velocity Servo
Torque Servo
Drive Gains
Notes:
Introduction When you add an axis to your project, RSLogix 5000 software makes a
tag for the axis. The tag stores status and fault information for the axis.
The layout of the tag depends on the type of axis.
AXIS_CONSUMED
Member Data Type Style
AxisFault DINT Hex 4
PhysicalAxisFault BOOL Decimal 5
ModuleFault BOOL Decimal 6
ConfigFault BOOL Decimal 7
AxisStatus DINT Hex 8
ServoActionStatus BOOL Decimal 9
DriveEnableStatus BOOL Decimal 10
ShutdownStatus BOOL Decimal 11
ConfigUpdateInProcess BOOL Decimal 12
InhibitStatus BOOL Decimal 13
MotionStatus DINT Hex 14
AccelStatus BOOL Decimal 15
DecelStatus BOOL Decimal 16
MoveStatus BOOL Decimal 17
JogStatus BOOL Decimal 18
GearingStatus BOOL Decimal 19
HomingStatus BOOL Decimal 20
StoppingStatus BOOL Decimal 21
AxisHomedStatus BOOL Decimal 22
AXIS_GENERIC
Member Data Type Style
AxisFault DINT Hex 4
PhysicalAxisFault BOOL Decimal 5
ModuleFault BOOL Decimal 6
ConfigFault BOOL Decimal 7
AxisStatus DINT Hex 8
ServoActionStatus BOOL Decimal 9
DriveEnableStatus BOOL Decimal 10
ShutdownStatus BOOL Decimal 11
ConfigUpdateInProcess BOOL Decimal 12
InhibitStatus BOOL Decimal 13
MotionStatus DINT Hex 14
AccelStatus BOOL Decimal 15
DecelStatus BOOL Decimal 16
MoveStatus BOOL Decimal 17
JogStatus BOOL Decimal 18
GearingStatus BOOL Decimal 19
HomingStatus BOOL Decimal 20
StoppingStatus BOOL Decimal 21
AxisHomedStatus BOOL Decimal 22
PositionCamStatus BOOL Decimal 23
TimeCamStatus BOOL Decimal 24
PositionCamPendingStatus BOOL Decimal 25
TimeCamPendingStatus BOOL Decimal 26
GearingLockStatus BOOL Decimal 27
PositionCamLockStatus BOOL Decimal 28
MasterOffsetMoveStatus BOOL Decimal 29
CoordinatedMotionStatus BOOL Decimal 30
AxisEvent DINT Hex 43
WatchEventArmedStatus BOOL Decimal 44
WatchEventStatus BOOL Decimal 45
RegEvent1ArmedStatus BOOL Decimal 46
RegEvent1Status BOOL Decimal 47
RegEvent2ArmedStatus BOOL Decimal 48
RegEvent2Status BOOL Decimal 49
HomeEventArmedStatus BOOL Decimal 50
AXIS_SERVO
Member Data Type Style
AxisFault DINT Hex 4
PhysicalAxisFault BOOL Decimal 5
ModuleFault BOOL Decimal 6
ConfigFault BOOL Decimal 7
AxisStatus DINT Hex 8
ServoActionStatus BOOL Decimal 9
DriveEnableStatus BOOL Decimal 10
ShutdownStatus BOOL Decimal 11
ConfigUpdateInProcess BOOL Decimal 12
InhibitStatus BOOL Decimal 13
MotionStatus DINT Hex 14
AccelStatus BOOL Decimal 15
DecelStatus BOOL Decimal 16
MoveStatus BOOL Decimal 17
JogStatus BOOL Decimal 18
GearingStatus BOOL Decimal 19
HomingStatus BOOL Decimal 20
StoppingStatus BOOL Decimal 21
AxisHomedStatus BOOL Decimal 22
PositionCamStatus BOOL Decimal 23
TimeCamStatus BOOL Decimal 24
PositionCamPendingStatus BOOL Decimal 25
TimeCamPendingStatus BOOL Decimal 26
GearingLockStatus BOOL Decimal 27
PositionCamLockStatus BOOL Decimal 28
MasterOffsetMoveStatus BOOL Decimal 29
CoordinatedMotionStatus BOOL Decimal 30
AxisEvent DINT Hex 43
WatchEventArmedStatus BOOL Decimal 44
WatchEventStatus BOOL Decimal 45
RegEvent1ArmedStatus BOOL Decimal 46
RegEvent1Status BOOL Decimal 47
RegEvent2ArmedStatus BOOL Decimal 48
RegEvent2Status BOOL Decimal 49
HomeEventArmedStatus BOOL Decimal 50
AXIS_SERVO_DRIVE
Member Data Type Style
AxisFault DINT Hex 4
PhysicalAxisFault BOOL Decimal 5
ModuleFault BOOL Decimal 6
ConfigFault BOOL Decimal 7
AxisStatus DINT Hex 8
ServoActionStatus BOOL Decimal 9
DriveEnableStatus BOOL Decimal 10
ShutdownStatus BOOL Decimal 11
ConfigUpdateInProcess BOOL Decimal 12
InhibitStatus BOOL Decimal 13
MotionStatus DINT Hex 14
AccelStatus BOOL Decimal 15
DecelStatus BOOL Decimal 16
MoveStatus BOOL Decimal 17
JogStatus BOOL Decimal 18
GearingStatus BOOL Decimal 19
HomingStatus BOOL Decimal 20
StoppingStatus BOOL Decimal 21
AxisHomedStatus BOOL Decimal 22
PositionCamStatus BOOL Decimal 23
TimeCamStatus BOOL Decimal 24
PositionCamPendingStatus BOOL Decimal 25
TimeCamPendingStatus BOOL Decimal 26
GearingLockStatus BOOL Decimal 27
PositionCamLockStatus BOOL Decimal 28
MasterOffsetMoveStatus BOOL Decimal 29
CoordinatedMotionStatus BOOL Decimal 30
AxisEvent DINT Hex 43
WatchEventArmedStatus BOOL Decimal 44
WatchEventStatus BOOL Decimal 45
RegEvent1ArmedStatus BOOL Decimal 46
RegEvent1Status BOOL Decimal 47
RegEvent2ArmedStatus BOOL Decimal 48
RegEvent2Status BOOL Decimal 49
HomeEventArmedStatus BOOL Decimal 50
AXIS_VIRTUAL
Member Data Type Style
AxisFault DINT Hex 4
PhysicalAxisFault BOOL Decimal 5
ModuleFault BOOL Decimal 6
ConfigFault BOOL Decimal 7
AxisStatus DINT Hex 8
ServoActionStatus BOOL Decimal 9
DriveEnableStatus BOOL Decimal 10
ShutdownStatus BOOL Decimal 11
ConfigUpdateInProcess BOOL Decimal 12
InhibitStatus BOOL Decimal 13
MotionStatus DINT Hex 14
AccelStatus BOOL Decimal 15
DecelStatus BOOL Decimal 16
MoveStatus BOOL Decimal 17
JogStatus BOOL Decimal 18
GearingStatus BOOL Decimal 19
HomingStatus BOOL Decimal 20
StoppingStatus BOOL Decimal 21
AxisHomedStatus BOOL Decimal 22
PositionCamStatus BOOL Decimal 23
TimeCamStatus BOOL Decimal 24
PositionCamPendingStatus BOOL Decimal 25
TimeCamPendingStatus BOOL Decimal 26
GearingLockStatus BOOL Decimal 27
PositionCamLockStatus BOOL Decimal 28
MasterOffsetMoveStatus BOOL Decimal 29
CoordinatedMotionStatus BOOL Decimal 30
AxisEvent DINT Hex 43
WatchEventArmedStatus BOOL Decimal 44
WatchEventStatus BOOL Decimal 45
RegEvent1ArmedStatus BOOL Decimal 46
RegEvent1Status BOOL Decimal 47
RegEvent2ArmedStatus BOOL Decimal 48
RegEvent2Status BOOL Decimal 49
HomeEventArmedStatus BOOL Decimal 50
How to Access Attributes The Access column shows how to access the attribute
Example Use a Get System Value (GSV) instruction to get the value.
Use the tag for the coordinate system to get the value.
Coordinate System
Attributes
Attribute Data Type Access Description
Accel Status BOOL Tag Use the Accel Status bit to determine if the coordinated (vectored) motion is
currently being commanded to accelerate.
The acceleration bit is set when a coordinated move is in the accelerating phase
due to the current coordinated move. It is cleared when the coordinated move has
been stopped or the coordinated move is in the decelerating phase.
Actual Pos Tolerance BOOL Tag Use the Actual Pos Tolerance Status bit to determine when a coordinate move is
Status within the Actual Position Tolerance.
The Actual Position Tolerance Status bit is set for AT term type only. The bit is set
when interpolation is complete and the actual distance to programmed endpoint
is less than the configured AT value.
The bit remains set after an instruction completes. The bit is reset if either a new
instruction is started or the axis moves such that the actual distance to
programmed endpoint is greater than the configured AT value
Actual Position REAL[8] Tag Array of actual position of each axis associated to this motion coordinate system
in Coordinate Units.
Actual Position Tolerance REAL GSV Coordination Units
SSV The Actual Position Tolerance attribute value is a distance unit used when
instructions such as MCLM, MCCM and so on specify a Termination Type of
Actual Position.
Axes Configuration Faulted DINT GSV Shows which axes in this coordinate system have a configuration fault.
Axes Servo On Status DINT GSV Shows which axes in this coordinate system are on (via MSO).
Axis Fault DINT GSV The Axis Fault Bits attribute is a roll-up of all of the axes associated to this motion
coordinate system. A bit being set indicates that one of the associated axes has
Tag that fault.
Type Bit
Physical Axis Fault 0
Module Fault 1
Config Fault 2
Axis Inhibit Status BOOL Tag If this bit is:
• ON — An axis in the coordinate system is inhibited.
• OFF — None of the axis in the coordinate system are inhibited.
Command Pos Tolerance BOOL Tag Use the Command Position Tolerance Status bit to determine when a coordinate
Status move is within the Command Position Tolerance.
The Command Position Tolerance Status bit is set for all term types whenever the
distance to programmed endpoint is less than the configured CT value. The bit
will remains set after an instruction completes. The bit is reset when a new
instruction is started.
Command Position REAL GSV Coordination Units
Tolerance
SSV The Command Position Tolerance attribute value is a distance unit used when
instructions such as MCLM, MCCM and so on specify a Termination Type of
Command Position.
Config Fault BOOL Tag The Configuration Fault bit is set when an update operation targeting an axis
configuration attribute of an associated motion module has failed. Specific
information concerning the Configuration Fault may be found in the Attribute Error
Code and Attribute Error ID attributes associated with the motion module.
Coordinate System Auto SINT GSV The Coordinate System Auto Tag Update attribute configures whether the Actual
Tag Update Position attribute is automatically updated each motion task scan. This is similar
SSV to, but separate from the Motion Group’s “Auto Tag Update” attribute.
The deceleration bit is set when a coordinated move is in the decelerating phase
due to the current coordinated move. It is cleared when the coordinated move has
been stopped or the coordinated move is complete.
SSV The value of the Maximum Speed attribute is used by various motion instructions
(for example, MCLM, MCCM and so on) to determine the steady-state speed of
the coordinate system vector when the speed is specified as a percent of the
Maximum.
Module Fault BOOL Tag The Module Fault bit attribute is set when a serious fault has occurred with the
motion module associated with the selected axis. Usually a module fault affects
all axes associated with the motion module. A module fault generally results in
the shutdown of all associated axes. Reconfiguration of the motion module is
required to recover from a module fault condition.
Modules Faulted DINT GSV Shows which axes in this coordinate system have a module fault.
Tag If this bit is on Then this axis has a servo axis fault
0 0
1 1
2 2
Physical Axis Fault BOOL Tag If the Physical Axis Fault bit is set, it indicates that there is one or more fault
conditions have been reported by the physical axis. The specific fault conditions
can then be determined through access to the fault attributes of the associated
physical axis.
Ready Status BOOL Tag The Ready bit is set when all associated axes are enabled. It is cleared after an
MCSD, MGSD or a fault on any of the associated axes.
Shutdown Status BOOL Tag The Coordinate System bit will be set after an MCSD or MGSD is executed and all
associated axes have stopped. A MCSR or a MGSR will reset the coordinate
system and clear the bit. Coordinated moves cannot be initiated while this bit is
set.
Stopping Status BOOL Tag The stopping bit is set when a MCS instruction is executed. The bit will remain
set until all coordinated motion is stopped. The bit is cleared when all coordinated
motion has stopped.
Transform Source Status BOOL Tag If the bit is:
• ON — The coordinate system is the source of an active transform.
• OFF — The coordinate system isn’t the source of an active transform.
Transform Target Status BOOL Tag If the bit is:
• ON — The coordinate system is the target of an active transform.
• OFF — The coordinate system isn’t the target of an active transform.
You can complete this form and mail (or fax) it back to us or email us at
[email protected]
Cat. No. Pub. No. LOGIX-UM002B-EN-P Pub. Date January 2007 Part No. 957988-76
Please complete the sections below. Where applicable, rank the feature (1=needs improvement, 2=satisfactory, and 3=outstanding).
Overall Usefulness 1 2 3 How can we make this publication more useful for you?
Other Comments You can add additional comments on the back of this form.
Your Name
Your Title/Function Would you like us to contact you regarding your comments?
Location/Phone ___No, there is no need to contact me
___Yes, please call me
___Yes, please email me at _______________________
___Yes, please contact me via _____________________
Return this form to: Rockwell Automation Technical Communications, 1 Allen-Bradley Dr., Mayfield Hts., OH 44124-9705
Fax: 440-646-3525 Email: [email protected]
Other Comments
PLEASE REMOVE
PLEASE FOLD HERE
NO POSTAGE
NECESSARY
IF MAILED
IN THE
UNITED STATES
1 ALLEN-BRADLEY DR
MAYFIELD HEIGHTS OH 44124-9705
Rockwell Automation Rockwell Automation provides technical information on the Web to assist
you in using its products. At http://support.rockwellautomation.com, you can
Support find technical manuals, a knowledge base of FAQs, technical and application
notes, sample code and links to software service packs, and a MySupport
feature that you can customize to make the best use of these tools.
Installation Assistance
Rockwell tests all of its products to ensure that they are fully operational
when shipped from the manufacturing facility. However, if your product is
not functioning, it may need to be returned.
United States Contact your distributor. You must provide a Customer Support case
number (see phone number above to obtain one) to your distributor in
order to complete the return process.
Outside United Please contact your local Rockwell Automation representative for
States return procedure.