You are on page 1of 24

Tuning Vertical Axes in Logix - CIP

About This Topic

Tuning a vertical axis in Logix is not difficult, but the steps must be performed in the proper order. If
the brake release and engage timing have been altered before setting the tuning gains, the task can
become impossible. Symptoms of a poorly tuned vertical axis can include a dipping in position
when the servo on instruction is executed and even an additional dipping when the servo off
instruction is executed. At this point, performing an Autotune may not get the axis back under
control.

In this application guide, we’ll cover an approach to tuning an axis of motion which controls a
vertical load. Using a repeatable process and leveraging existing tuning guidelines, we will use
RSLogix 5000 to properly tune a vertical axis and eliminate lost motion.
Who Should Use This Guide
This application guide is intended for individuals who:
 Have a working knowledge of motion control in the Logix environment
 Would like to learn more about servo drive tuning involving vertical loads
 Would like to learn more about the tuning tools available in RSLogix 5000
Hardware
This application guide applies to the following hardware:
 A Logix integrated motion controller (ControlLogix L7x or CompactLogix 5370)
 Kinetix 5x00 or Kinetix 6500 drives on EtherNet/IP controlling a vertical load with an integrated
holding brake
Software
This application guide uses the following software:
 RSLogix 5000 Version 20 or newer
Document Conventions

Throughout this application guide, we have used the following conventions to help guide you
through the materials.
This style or symbol: Indicates:
Words shown in bold Any item or button that you must click on, or a menu name
(e.g., RSLogix 5000 or OK) from which you must choose an option or command. This will
be an actual name of an item that you see on your screen or
in an example.
Words shown in bold, An item that you must type in the specified field. This is
enclosed in single quotes information that you must supply based on your application
(e.g., 'Controller1') (e.g., a variable).
Note: When you type the text in the field, remember that you
do not need to type the quotes; simply type the words that
are contained within them (e.g., Controller1).
The text that appears inside of this gray box is supplemental
information regarding the lab materials, but not information
that is required reading in order for you to complete the lab
exercises. The text that follows this symbol may provide you
with helpful hints that can make it easier for you to use this
product. Most often, authors use this “Tip Text” style for
important information they want their students to see.

Note: If the mouse button is not specified in the text, you should click on the left mouse button.
Basic Axis Tuning
This first section deals with returning the axis to a known state.

The Scenario

If the user has made any changes to the axis parameters, permanent and unrecoverable changes
may have been saved to the controller project. Some of these parameters are not easily
accessible, so it is recommended that you reset the axis to a known state.

IMPORTANT: The only way to completely reset an axis to a known state is to delete
the axis and add it back into the project. You will first want to record any application
data currently in the project, such as the Module assignment, Motor Catalog Number,
Conversion values, Homing parameters and any Limits applied to the axis.

Reset the Axis to a Known State

As stated above, the only true way to reset the axis to a known state in Logix is to delete the axis
completely and add it back in. There is no Reset to Defaults button. Follow the steps below to
save your current settings and apply them to a new axis.

1. Go Offline from the controller and save your original project.

2. Be sure to Save the altered project to a new file name, just in case you need to revert back to
the original.
Record the Existing Axis Configuration
1. Right-click on the problematic vertical axis and choose Properties.
 On the General category, record the current values as we will require them shortly

The General settings specifically should have been chosen based on your application. Consult
the drive’s user manual for additional guidance.
 On the Motor category, record the current Motor data

 On the Scaling category, record all of the data entered by the user for Scaling

 If the user has intentionally changed the motion polarity for this axis, move to the Polarity
category and record all current settings
 On the Homing category, record all current application parameters

 Based on the application, the user may have manually entered additional axis restrictions or
settings on the various Loop, Planner, Actions or Drive Parameter categories. Work with
them to record them before deleting the axis.

2. Right-click on the axis and choose Delete.

Confirm by answering Yes to the prompt.


Create a New Axis
1. Right-click on the motion group and select New Axis > Axis_CIP_Drive.

 Enter the Axis name as it was originally and select Create


 Right-click on the new axis and select Properties
 On the General category, reassign all values as noted above
 On the Motor category, re-select the Motor Catalog Number from above
 On the Scaling category, re-enter all values entered by the user for scaling
 On the Polarity category, re-select all values recorded above
 On the Homing category, re-enter the application parameters from above
 On the various Loop, Planner, Actions or Drive Parameter categories, re-enter the
application-based parameters noted above
2. Be sure to Apply your changes and Save your work.

Create Logic to Enable and Disable the Axis


You may already have logic in your controller project that enables and disables your drive, or you
may have a faceplate that can perform this (required) function.

Follow the steps below, ONLY if you need to add this functionality to your project.

1. Open a routine where you would like to add the enable and disable instructions.
2. Add a rung that looks like the rung shown below:

3. Add a second rung that looks like the rung shown below:

NOTE: You must create new and unique instruction tags for the MSO and MSF
instructions; existing tags must never be re-used.

When instructed, you can either toggle the Enable_Drive and Disable_Drive tags you just created
above from within Logix or you can add momentary push buttons to your HMI to accomplish this.

4. Be sure to Save your work.


Download the Controller Project

At this point, you will need to download your project to the controller.

1. Select Communications > Who Active.

2. Choose the proper driver in RSLinx Classic, browse through to the proper controller and click
Download.

3. Complete the steps necessary to download the project and put the controller into the Remote
Prog mode.

3. Verify that there are no errors (no yellow triangles) present on the axis or the drive.
Perform the Hookups Tests

You will need to perform the tests found on the Hookups category before attempting to proceed.
Failure to do so could result in a runaway condition and/or damage to your equipment or injury to
personnel.

TIP: This procedure is well-documented in the associated user manual for your
specific drive product. These publications can be found on the literature library at
http://literature.rockwellautomation.com.
Observe the Out-of-Box Performance

First, you will need to observe the current performance of the axis by enabling and disabling it while
observing position trend. This will help you to determine if further work is required.

1. In RSLogix 5000, right-click on the Trend folder and select New Trend.

2. Use the wizard to create a new trend of the axisname.ActualPosition tag as shown.

3. Place the trend in the Run mode and wait for it to start displaying data.

The position data will


display here.

You may need to set Custom display limits for the actual position value to get the resolution you
need. You may wish to change pen colors, too. Consult the proper user manual for your
controller or the online help for the software to learn more about trends.

We will now enable and disable the axis while we observe the actual position value in the trend.

TIP: You are about to enable an axis which may have a limited travel distance. Be
sure to Stop the axis immediately should you discern any potential over travel or
instability on the axis. Failure to do so could result in damage to your equipment or
injury to personnel.

4. Place your controller into the Run mode.


5. Using your enable/disable logic, enable and disable the drive a few times while watching the
position trend.

6. Disable the axis once you have your information.

If the position drop that you are observing is beyond your tolerance or expectations, you will need to
tune the servo and possibly set the mechanical brake release and engage delay times following the
steps included in this document.

If you are satisfied with the drop in position, Save your work and discontinue any further changes.
The Repeatable Tuning Process
Every axis is different but should be tuned properly for the intended application. A step-by-step
tuning guide for CIP axes is available in the associated drive user manual from Literature Library
and should be followed per the application. Only exceptions that apply to vertical axes are called
out in this guide, since they are not currently addressed in the user manuals.

In this guide, tuning intended for a point-to-point application will be shown. Your application may
differ.

Follow the process below to insure proper results when tuning a vertical axis in Logix. The steps
have been formulated from best practices observed over years of vertical axis tuning.

Choose Your Tuning Method

Kinetix 5x00 and Kinetix 6500 drives offer (2) distinct tuning options. You can simply choose to
enable Load Observer that continuously tunes your axis in real-time or you can conduct an
Autotune that tunes your axis one time.
 If the load seen on your axis is highly dynamic (changes based on product, cycle or position),
you should choose Method 1 and enable Load Observer.
 If your load is essentially always the same, you may choose Method 2 and perform an Autotune.

NOTE: Choose only Method 1 or Method 2 below. Do NOT perform an Autotune in


addition to enabling Load Observer as your axis may become unstable.
Method 1: Enable Load Observer

If you choose to enable Load Observer, there is not much to do. Your axis should perform quite
well under most conditions and should remain stable. It should also respond to unique needs of
controlling a vertical axis without additional intervention.

1. Move to the Load category and verify that the Load Ratio value is set to ‘0’ as shown.

Load Observer does an excellent job of accounting for additional load, but is not intended to be
used when load is absent. Starting at zero gives the feature the optimal scenario.

2. Move to the Load > Observer category and choose Load Observer with Velocity Estimate
for the Configuration mode.

NOTE: Depending on the mechanical advantage and the load and friction of your
vertical axis, Load Observer alone may not completely eliminate the dipping during
an enable. An additional Torque Offset can be added to further improve
performance. See Appendix A in this document for further direction.

3. Press Apply and answer Yes to the prompt to confirm your changes.

IMPORTANT: You must skip the next section if you chose to enable Load Observer,
since you have now effectively tuned your axis.

Be sure to perform the steps for setting the mechanical brake delays found in the final section of
this document.
Method 2: Tune the Axis Using Autotune

There are many exceptions involved with tuning a vertical axis. The user manual does a good job
of explaining non-vertical axis tuning, but the additional steps below will complete the story. You
will want to have the user manual for your specific drive on hand to understand tuning basics.
Remove Any Existing Mechanical Brake Delays
Typically, a vertical axis includes some sort of mechanical holding brake. It could be integrated into
the servo motor or external. If your servo motor includes the holding brake and you have used the
dedicated brake control outputs included on the drive, follow the steps in this section to temporarily
reset the brake delays to zero while tuning is performed. Non-zero values will affect the tuning
process negatively.

TIP: The brake settings absolutely must be set to ‘0’ for the Autotune process to
complete successfully. Take a moment to confirm that this is the case in your
project.

1. From within the Axis Properties dialogue, move to the Actions category, verify that Stop Action
is set to Current Decel & Disable and then select Parameters.

2. Temporarily set both of the brake Delay time values to ‘0’ as shown and press Apply.
Configure the Autotune for the Application
1. Move to the Autotune category and use the user manual to assist you in selecting the proper
values for the parameters identified below. These values are application-based and require
knowledge of the mechanics of the machine, so it is crucial to choose them properly.

2. Set the Direction value to one of the two Bi-Directional options, based on your axis
requirements (some axes can only rotate in one direction, for instance).

IMPORTANT: You must tune a vertical axis in both directions. Gravity helps you
move in one direction and opposes you in the other. Gravity also makes it hard to
stop in one direction and easy in the other. A torque offset will be identified and
applied following a bi-directional tune.

3. Apply your changes.


Perform the Autotune
1. Verify that the drive is disabled.

2. Still on the Autotune category and press Start to invoke the process.

A pop-up window should appear confirming that the process was a success. Consult the user
manual if this is not the case.

3. Press OK at the prompt.

4. You can verify the results of the tuning process by expanding Advanced Compensation and
comparing the Inertia ratio identified with your axis sizing information (if known).
5. You must click Apply Tuned Values to save your changes and complete the tuning process.

6. Using your enable/disable logic, enable and disable the drive a few times while watching the
position trend.

7. Disable the axis when you have your information.

If the position drop that you are observing is still beyond your tolerance or expectations, you will
need to set the mechanical brake delay times following the steps in this document.
Set the Mechanical Brake Delay Timing

This last section of this guide really relies on some experience and practical thinking. Small motors
have small mechanical brakes with small springs. They will react much more quickly than a large
motor with larger components. Physics is at play here. Additionally, the user manual recommends
that if you are using a really large servo motor, you should place an interposing (buffer) relay
between the drive’s brake contacts and the actual armature of the brake. This all adds to the delay
in engaging and releasing the brake.

Ultimately, your servo has to be enabled long enough and tuned steady enough to fully grab and
hold the load before you can release the holding brake. On the other end, your brake needs to grab
and hold before the servo can release the load, too.

TIP: Always think of your motor’s brake as a parking or holding brake and never as
a stopping brake. Using your motor’s brake for stopping a moving load can greatly
reduce the life expectancy of the components. In some cases, it may destroy your
brake completely.

1. Verify that your drive is disabled.

2. Return to RSLogix 5000 and open the Axis Properties for the vertical axis in question again.
Now that once the axis is tuned properly, we can calibrate the brake settings.

3. Move to the Actions category and open the Parameters dialogue as above.

4. Open the Technical Data sheet for the motor or actuator family used in your system.
 Start by entering the published values for Release and Engage using the Motor Brake
Specifications table for your particular product family

NOTE: The values are published in milliseconds but entered into Logix in seconds.

 Test the values by enabling and disabling the drive with the trend in process:
 If an unacceptable position drop is still observed during the enable process, increase the
ReleaseDelay timing by 10ms and repeat until satisfied.
 If an unacceptable position drop is still observed during the disable process, increase the
EngageDelay timing by 10ms and repeat until satisfied.
5. Be sure to Save your work.

This concludes the vertical axis tuning guide.


Appendix A – Applying a Torque Offset
If it seems that Load Observer alone is not able to stabilize the vertical axis responsively enough for
your needs, you may need to manually add a torque offset to overcome the effects of gravity. This
offset will be applied at all times that the axis is energized or moving, because it will take more
torque to overcome gravity than to fall with gravity.

Adding a torque offset is a very simple process. Simply enable the axis, but do not command any
motion. Observe the value of the torque being applied in order to hold the vertical axis steady. This
will be the torque offset applied for steady state. Follow the steps below to accomplish this task.

Configure the Real-time Display Parameters

First, we’ll need to configure the software to provide the torque required to hold the axis to us.

1. Move to the Drive Parameters category.

2. With the axis disabled, check the boxes to receive real-time information for TorqueReference,
as shown.

3. Press Apply to save your changes.


Determine the Torque Offset

Next, we’ll need to enable the axis and observe the torque required to hold the axis statically.

1. Using your enable/disable logic, enable the axis and leave it enabled.

2. Observe the TorqueReference value on the screen and try to get a rough idea of the average
value required to hold the axis in place.

Record this value as you will need it shortly.

3. Disable the axis when you have your information.


Apply a Torque Offset

Then, we will need to apply this torque offset in the axis properties so that the gravity offset is
present whenever the axis is enabled.

1. Move to the Parameter List category.

2. Choose the Load option from the Parameter Group drop down list.

3. With the axis disabled, manually enter the value of the TorqueReference that you saw on
average above into the TorqueOffset value as shown.

4. Press Apply to save your changes.

TIP: You can also add logic to write this value to the controller at a frequency
required by your application. Use an SSV instruction to write this offset in a startup
routine, for instance. Consult the online help in the software for additional details.
Test Your Work

1. Using your enable/disable logic, enable and disable the drive a few times while watching the
position trend.

2. Disable the axis when you have your information.

If the position drop that you are observing is still beyond your tolerance or expectations, you will
need to set the mechanical brake delay times following the steps in this document.
Appendix B – Safe Torque-Off Considerations
If your vertical axis additionally involves a drive with the safe torque-off feature, there are some
additional concepts and settings that must be considered. Please refer to the document, Vertical
Load Best Practices for Safe Torque-Off, for guidance with this topic.

See Rockwell Automation Knowledge Base for document #623831 for this information:
https://rockwellautomation.custhelp.com/app/answers/detail/a_id/623831
Disclaimer
This method has been tested in a lab and proven to work well under lab conditions. Adding a large
load or using non-integrated brake control logic could lead to dangerous conditions or tuning
challenges. Please proceed with extreme caution during start up and commissioning under these
conditions.

You might also like