Axes Category

Topics in the Axes category have an Axis drop-down box in the topic toolbar at the top where you can select the axis you want to configure. Click the Manage Axes link to configure the axis name, the number of decimal places to show, and whether the axis should be displayed in the application.

Each topic in the Axes category lets you directly edit axis parameters. The topics that follow also have modules with a User Interface to let you interact with the controller to calculate parameter values.

IMPORTANT: These parameters might command motion on the selected axis.

  • Make sure that it is safe for motion to occur on the selected axis.
  • Make sure that the selected axis is away from any end-of-travel limits or software limits.
  • Make sure that there is nothing blocking the selected axis.

Feedback Topic

Automatic Encoder Tuning Module

Use the Automatic Encoder Tuning module to tune encoder signals to get optimum performance. In the Configure workspace, you can find this module in the Basic Editing mode of the Axes category → Feedback topic. Use this module only with analog feedback devices. You must enable the axis before you click the Start button. The module moves the axis and collects data to determine the optimal encoder gain, offset, and phase parameters. The module calculates an ideal distance and velocity for the tuning motion profile. When the process completes, the encoder gain, offset, and phase parameters are applied to the controller. You must click Save All in the Configure workspace menu on the left to save these parameters to the controller so they will be active after the next controller reset.

IMPORTANT: When you set up a system for the first time, tune encoder signals before you use the modules in the Servo topic to tune your servo loop. If the servo gains and filters configured by Machine Setup do not supply a stable servo loop, this module might not be able to command the necessary motion to automatically tune the encoder signals. Refer to the Manual Encoder Tuning Module section of this Help page for information about tuning encoder signals without commanding motion.

Tip: To tune the encoders for the gantry spars, use the Axis drop-down box to select the name of the linear axis (R) or the name of the yaw axis (Theta). The Automation Encoder Tuning module always commands motion on the R axis and tunes the encoders connected to each gantry spar.

Manual Encoder Tuning Module

Use the Manual Encoder Tuning module to adjust encoder gain, offset, and phase parameters and look at the effect on the Lissajous pattern. In the Configure workspace, you can find this module in the Basic Editing mode of the Axes category → Feedback topic.

Collect Data and view the Lissajous pattern

While collecting data, you can manually adjust encoder gain, offset, and phase parameters and look at the effect on the Lissajous pattern. Click Collect Snapshot or Collect Continuous to collect data and display the Lissajous pattern.

If the Enable Motion toggle is On, the axis will move back and forth at a distance and speed determined by the number of encoder cycles that you enter. If the Enable Motion toggle is Off, you must manually move the axis while tuning the encoder parameters.

Click Apply Changes to apply the encoder gain, offset, and phase values to the controller. You must click Save All in the Configure workspace menu on the left to save these parameters to the controller so they will be active after the next controller reset.

Control the motion that occurs when you run the tuning algorithm

Click the Tune Encoder Parameters button to collect data and determine the optimal encoder gain, offset, and phase parameters. If the Enable Motion toggle is On, the axis will move back and forth at a distance and speed determined by the number of encoder cycles that you enter. If the Enable Motion toggle is Off, you must manually move the axis while tuning the encoder parameters.

Click Apply Changes to apply the encoder gain, offset, and phase values to the controller. You must click Save All in the Configure workspace menu on the left to save these parameters to the controller so they will be active after the next controller reset.

Tip: To tune the encoders for the gantry spars, use the Axis drop-down box to select the name of the linear axis (R) or the name of the yaw axis (Theta). The Manual Encoder Tuning module collects data and tunes the encoder parameters for the selected axis. The Manual Encoder Tuning module always commands motion on the R axis.

Direct Parameter Editing

Use the Go to Advanced Editing link if you need to directly edit feedback parameters.

Gantry Topic

This module exposes the parameters used to configure the Decoupling Control. In the Configure workspace, you can find this module in the Axes category → Gantry topic. For more information about gantries in Automation1, see Gantry Systems Overview.

Manually Configuring Decoupling Gantry Control

Device Catalog and Machine Setup are the best tools for configuring Decoupling Gantry Control because they holistically configure the gantry axes. However, if you find yourself in an exceptional situation, you can edit parameters manually to configure decoupling gantry control. In that case, be aware that you must also set correct values for other non-gantry parameters for the axes, like default speeds and fault thresholds.

  1. Use Device Catalog and Machine Setup to configure the two gantry axes as if they were independent axes. For example, for a typical H-bridge gantry design, you would configure each spar as if it were a Direct Drive Linear Stage.
  2. In the Axes category in the Configure workspace, select the Gantry topic. If you see the Gantry Alignment Helper in the workspace, click Go to Advanced Editing in the upper right of the screen.
  3. In the Axis drop-down box, select the logical linear (R) axis. Set the values for the parameters that follow:
    1. GantryAxisMask Parameter
    2. GantryLogicalType Parameter
    3. GantryMechanicalDesign Parameter
    4. GantryFeedbackSeparation Parameter

      IMPORTANT: The value of the GantryFeedbackSeparation parameter depends on the mechanical construction of the gantry. Make sure you read the help page before you configure this parameter.

    5. GantryPhysicalDirection Parameter
  4. In the Axis drop-down box, select the logical Yaw (Theta) axis. Set the values for the parameters that follow:
    1. GantryAxisMask Parameter
    2. GantryLogicalType Parameter
    3. GantryMechanicalDesign Parameter
    4. GantryFeedbackSeparation Parameter
    5. GantryPhysicalDirection Parameter
  5. Set the CountsPerUnit Parameter for the Yaw (Theta).
    • For a decoupled gantry with linear physical axes, like a traditional H-bridge gantry, obey these steps:
      1. In the Units topic, in the Axis drop-down box, select the logical linear (R) axis. Note the CountsPerUnit value. In the equation that follows, this value is CountsPerUnit.R.
      2. Use the equation that follows to calculate the CountsPerUnit for the Theta axis. The last part of the equation converts radians to degrees. If you are using other rotary units, you must convert the units.
      3. In the Units topic, in the Axis drop-down box, select the logical Yaw (Theta) axis. Use the value that you calculated to set the CountsPerUnit parameter for the Theta axis.
    • For gantries with rotary physical axes, like dual-drive gimbals, the CountsPerUnit value for the logical difference axis (Theta) is the same as that of the logical average axis (R).
  6. Set the UnitsName parameter for the Yaw (Theta) axis.

Motor Topic

Motor Phasing Module

IMPORTANT: Use this module only with mechanical devices that have AC brushless motors. This module does not support mechanical devices that have gantry axes.

Use the Motor Phasing module to automatically detect and compensate for motor wiring problems. In the Configure workspace, you can find this module in the Basic Editing mode of the Axes category → Motor topic. This module can have an effect on the FeedbackSetup Parameter, CommutationInitializationSetup Parameter, and CommutationOffset Parameter.

The Motor Phasing module automatically sets the test current to 50% of the value of the AverageCurrentThreshold Parameter. If the module fails to calculate results, the test current value is possibly too low.

IMPORTANT: Make sure that it is safe for motion to occur on the specified axis. Also make sure that the specified axis is away from end-of-travel limits and software limits.

Click the Start button. While the axis travels one full electrical cycle, the calculator collects data and calculates the parameter results.

To use adjustment options

You can use the adjustment options to increase the effectiveness of the Motor Phasing module. Make sure that you use the default options the first time that you use the module on an axis. If the results that you get from the default options are not satisfactory, you can specify a larger step interval or smaller step size to get more accurate results.

  1. Select the Use Adjustment Options toggle.
  2. The step delay is the quantity of time, in milliseconds, that the calculator waits to let the encoder settle after the axis moves to a new angle in the electrical cycle.
  3. The step size is the number of degrees in the electrical cycle that the axis steps. If you specify a smaller value for step size, the calculator collects higher-resolution data.
  4. Click the Start button. The Motor Phasing module uses the advanced options while it travels one full electrical cycle and collects data.

When motor phasing is finished, parameter changes that compensate for motor wiring are applied to the controller. You must click Save All in the Configure workspace menu to save these parameters to the controller so that they will be active after the next controller reset.

Motor Hall & Signal Status Module

IMPORTANT: Use this module only with mechanical devices that have AC brushless motors.

Use the Motor Hall & Signal Status module to make sure that the controller is correctly reporting the status of different key inputs. In the Configure workspace, you can find this module in the Basic Editing mode of the Axes category → Motor topic.

This module does not command motion. Thus, you can use it to make sure that the input status is correct. If you think that your axis is not safe to enable, you can continue to use this module to examine the input status and make sure that it is correct.

Use the table of input signals to make sure that changes to standard motion are being applied correctly. Changes include travel limits, brakes, and the ReverseMotionDirection Parameter. The input signals will update when manual or commanded motion is executed on the axis.

Use the Hall Status indicator to make sure that these operations are done correctly:

  • Each Hall State is identified during the course of motion.
  • Motion is executing in the expected direction that is relative to the Hall Sequence.

The Hall Status indicator will update when manual or commanded motion is executed on the axis.

Absolute Encoder Alignment Module

IMPORTANT: This module does not support mechanical devices that have gantry axes.

Use the Absolute Encoder Alignment module to automatically determine the Commutation Offset for axes that use absolute encoder feedback for commutation. In the Configure workspace, you can find this module in the Basic Editing mode of the Axes category → Motor topic.

When you use this module, the axis that you specify must have the configurations that follow:

  • An AC brushless motor.
  • The FeedbackInput1 Parameter must be set to Primary Feedback or Auxiliary Feedback.
  • The feedback device that is reflected by FeedbackInput1 must use absolute feedback.

This module makes sure that the Initialization Method bit is set to Absolute Encoder for the CommutationInitializationSetup Parameter. It also sets the value of the CommutationOffset Parameter to the Commutation Offset that it calculates. This module will detect motor phasing. If necessary, it sets the Primary Feedback Direction or Auxiliary Feedback Direction bit of the FeedbackSetup Parameter.

The Absolute Encoder Alignment module automatically sets the test current to 50% of the value of the AverageCurrentThreshold Parameter. If the module cannot calculate the results, the test current might be too low.

IMPORTANT: Make sure that it is safe for motion to occur on the specified axis. Also make sure that the specified axis is away from end-of-travel limits and software limits.

Click the Start button. The motor moves to specific electrical angles. The module collects data and calculates the Commutation Offset.

When the Absolute Encoder Alignment process is done, the parameter changes are applied to the controller. Save your parameter changes to the controller by clicking the Save All button that is located in the Configure workspace. These changes will have an effect after you reset the controller.

Optimization Topic

Command Shaping Module

Optional Purchase Necessary: This feature is available only if you purchased the Dynamic Controls Toolbox option.

The Command Shaping module lets you easily determine values for the Command Shaping coefficient parameters by configuring one or two command shapers. In the Configure workspace, you can find this module in the Axes category → Optimization topic. For more information about how to configure a set of command shapers, see Command Shaping.

You can also manually adjust the calculated Command Shaping coefficient parameters. To see the coefficient parameters, click the View Coefficients link on the top-right of the module. After you manually set the coefficients, if you want to recalculate the coefficients based on the set of configured shapers, click the View Shapers link, and then click Sync Coefficients.

Cross-Axis Feedforward Module

Optional Purchase Necessary: This feature is available only if you purchased the Dynamic Controls Toolbox option.

The Cross-Axis Feedforward module lets you set the parameters necessary to configure the Cross-Axis Feedforward algorithm. In the Configure workspace, you can find this module in the Axes category → Optimization topic. Cross-Axis Feedforward is a controller-level algorithm that minimizes off axis position errors by splitting the feedforward output generated by the feedforward gains between multiple motors on different axes. For more information about the algorithm and the parameters, see Cross-Axis Feedforward.

Harmonic Cancellation Module

Optional Purchase Necessary: This parameter is available only if you purchased the Dynamic Controls Toolbox option.

HARDWARE: Harmonic Cancellation does not apply when used with the GI4, the GL4, the SI4, or the XL4s.

The Harmonic Cancellation module lets you set the parameters necessary to configure Harmonic Cancellation. In the Configure workspace, you can find this module in the Axes category → Optimization topic. Harmonic Cancellation reduces the tracking error to sinusoidal reference commands, motor force ripple or other position-dependent disturbances, and cross-axis disturbances including those that might be created in a linear axis by an unbalanced rotational axis. For more information, see Harmonic Cancellation.

Servo Topic

Automation1 supplies many different data-driven tuning tools that can help you do servo tuning. When you tune an axis, it is not necessary to use all the tools. During the tuning process, it is typical to use a maximum of two or three different tools. You can access the different tuning tools in the Configure workspace of Automation1 Studio. To do this, find the Axes category and select the Servo topic. In Basic Editing mode, click the gray tabs at the bottom of the screen to change through the modules.

EasyTune Module

The EasyTune module automatically does a series of axis identification and servo parameter optimization steps on the selected axis with minimum user input necessary. In the Configure workspace, you can find this module in the Basic Editing mode of the Axes category → Servo topic. The output of EasyTune is equivalent to servo optimization that is done by an experienced controls engineer. If EasyTune completes successfully, it is not necessary for you to use the other tuning tools unless your application requires very low tracking errors for high-dynamic motion. When you use EasyTune, it is not necessary for the selected axis to be stable or enabled.

If the EasyTune module shows a message that tells you EasyTune does not support the selected axis, move directly to the Repeated Failures path of the Servo Tuning Workflows flowchart.

Each time that you run EasyTune, a log file is automatically saved to the EasyTune directory in your User Files directory.

Troubleshoot EasyTune

EasyTune does not always complete successfully. The table that follows shows common issues that might occur and how you can try to correct them.

Table: Troubleshoot EasyTune

Error Message Solution

EasyTune cannot identify the axis.

Before you start EasyTune, make sure that you are getting valid position feedback from the selected axis.

EasyTune cannot complete because the controller generated an axis fault.

If the axis fault is an End-Of-Travel limit fault or a Software Limit fault, make sure the axis is away from all the limits. Then click the Start button to do EasyTune again.

If the axis fault is a Maximum Velocity Command Fault, increase the values of the VelocityCommandThreshold and VelocityCommandThresholdBeforeHome parameters. Then click the Start button to do EasyTune again.

If the axis fault is a Position Error Fault and it is safe to continue, increase the value of the PositionErrorThreshold Parameter or use a more conservative performance target. Then click the Start button to do EasyTune again.

If the axis fault is an Over Current Fault, use a more conservative performance target. Then click the Start button to do EasyTune again.

EasyTune cannot optimize the axis.

If it is safe to continue, do the EasyTune procedure again. Make sure that you double the Travel Distance (primary units) and Travel Speed (primary units / second).

Classical Tuning Module

In the Configure workspace, you can find this module in the Basic Editing mode of the Axes category → Servo topic.

Manual Servo Tuning

You can use the Manual Servo Tuning tool to manually adjust the servo gains and feedforward gains based on time-series data that is collected during repeated motion. Manual Servo Tuning can help you optimize one move or a small set of moves.

IMPORTANT: Before you use the Manual Servo Tuning tool, the axis that you select must be stable.

Closed Loop Tuning

The Closed Loop Tuning tool commands the selected axis to do a predefined sinusoidal motion profile. The tool automatically measures the motion that occurred and calculates a set of servo gains based on the information that you specified. The function of the Closed Loop Tuning algorithm is to translate a set of tuning specifications, based on the open-loop magnitude crossover frequency and the phase margin, into a set of servo gains.

IMPORTANT: Before you use the Closed Loop Tuning tool, the axis that you select must be stable.

Open Loop Tuning

The Open Loop Tuning tool moves the selected axis by injecting open-loop current into the axis when it is not under closed-loop control. This tool automatically measures the motion that occurred and calculates a set of servo gains based on the information that you specified. If you use this tool, it is not necessary for the selected axis to be stable or enabled. The function of the Open Loop Tuning algorithm is to translate a set of tuning specifications, based on the open-loop magnitude crossover frequency and the phase margin, into a set of servo gains.

Frequency Response Module

You can use the Frequency Response module to analyze the characteristics of the servo loop to examine the axis stability and dynamic performance. In the Configure workspace, you can find this module in the Basic Editing mode of the Axes category → Servo topic. The Frequency Response module is the most advanced servo tuning tool in Automation1. It requires more input from you than the other tools. If you want to achieve the highest possible dynamic performance across a wide range of different move profiles, Aerotech recommends that you use this tool.

IMPORTANT: Before you use the Frequency Response module, the axis that you select must be stable.

Motion Options

In the Frequency Response module, the Enable Motion option is available when you select Servo Loop as the Control Loop. It moves the axis in the forward and reverse directions based on the motion parameters, Travel Distance (primary units), and Travel Speed (primary units / second) that you specify. This movement occurs while you are measuring the frequency response. You can use the Enable Motion option to get low-frequency measurements that are more accurate on axes with high friction and on axes with coarse-resolution position encoders.

For an axis that generates linear motion, Aerotech recommends that you start with a Travel Distance of 10 mm. For an axis that generates rotational motion, Aerotech recommends that you start with a Travel Distance of 20 degrees. For the two axis types, set the Travel Speed to 1/10 of the Travel Distance to keep direction reversals to a minimum of ten-second intervals.

For some axes, EasyTune asks you to specify more information about the motion to help identify the selected axis. The information that you must specify includes the Travel Distance (primary units) and Travel Speed (primary units / second) motion parameters.

Response Configuration Options

You can use the Plot Options drop-down box to select which response type to show after the frequency response measurement is completed. If you select more than one response type, the types will overlap on the plot.

The different response types that are available in the Frequency Response module correspond to different input/output signal pairs. When you get a frequency response, Automation1 directly measures and saves the open-loop response. All of the other response types are calculated from the measured open-loop response and the servo parameters.

At the top-right corner of the Frequency Response module, navigate to Plot Options > Response Types. There you can select which response types the application will show after you measure the frequency response. If you select more than one response type, the types will overlap on the plot.

Response Types

Overlap Frequency Response Plots

For some axes, the plant response will change based on different operating conditions. These conditions include the position in travel and the locations of other axes. On the top-right corner of the application, click the Overlap button to overlap two or more frequency response plots. Then you can examine the stability and dynamic performance across different operating conditions at the same time.

Loop Shaping Toolbar

After you do a Frequency Response measurement, you can shape the open-loop frequency response by changing the controller gains and servo loop filters in the loop shaping toolbar. You can also shape the open-loop response on a saved Frequency Response file if the file is open in the module.

There is a small icon at each filter frequency above the magnitude plot that shows the type of filter and the filter number. Low Pass filters are represented by a green rectangle. Notch filters are represented by a blue triangle. Lead-Lag and Resonant filters are represented by a black ellipse.

To automatically put the filters in the best positions, click the Auto-fit servo loop filters button. To automatically set the Enhanced Tracking Control parameters to recommended values, click the Configure Enhanced Tracking Control button.

If you overlap frequency response plots, you can use loop shaping only when all of the responses have the same servo gains and filters. Loop shaping changes apply to all of the overlapped responses.

Stability Metrics

If a disturbance to the servo loop causes oscillations with an amplitude that does not change or one that is quickly increasing, then an axis under closed-loop control is not stable. When this occurs, the controller usually generates a Position Error Fault or an Over Current Fault directly after you enable the axis or command motion. An axis must be stable before you continue to optimize the performance of the controller.

When you examine how stable an axis is, there are three stability margins that you can use: phase margin, gain margin, and sensitivity peak. The Phase Margin (deg) is a calculation option that you can specify for the Closed Loop Tuning and Open Loop Tuning tools. The application shows the phase margin, gain margin, and sensitivity peak directly below the plot in the Frequency Response module. You can make an axis more robust to variation in loading conditions by using more conservative stability margins when you do servo tuning. But this method might have a bad effect on the dynamic performance.

The application shows these stability metrics above the loop shaping toolbar.

Examine the Data

Click View Details to see the gain margin and phase margin at all of the crossover frequencies.

In the Frequency Response module, the first tab above the plot area shows the unsaved frequency response plots. Each time that you measure a new frequency response, the application adds a new plot to the Unsaved Plots drop-down menu.

You can access frequency response plots in all of the ways that follow:

  • To open a saved frequency response plot file from the Windows file system, click the Open File button.
  • To save a frequency response plot to the Windows file system, click the Save File button. When you save a frequency response, the application moves the plot from the Unsaved Plots drop-down menu to a file tab.
  • To save a frequency response plot as a CSV (comma-separated values) file, do the procedure that follows:

When you save an open plot that shows measured and shaped open-loop results, the application records only the measured result in the Frequency Response file.

IMPORTANT: You cannot save the shaped response of a Frequency Response plot file that was previously saved.

For instructions about how to shape an existing Frequency Response file with servo gain and filter parameters, refer to the procedure that follows:

Direct Parameter Editing

Use the Go to Advanced Editing section only if it is necessary for you to directly edit servo parameters that you cannot change in other tuning tools.

Homing Topic

Homing Module

Use the Homing module to configure the homing parameters for the selected axis. Use this module with axes that you configured with Machine Setup. Click the Configure Homing button to start. In the Configure workspace, you can find this module in the Basic Editing mode of the Axes category → Homing topic.

Configure the Home Type

The Homing module automatically selects the home type that is recommended for your axis. In Configure workspace, you can find this module in the Basic Editing mode of the Axes category → Homing topic. You can also use a different home type by selecting it in the Home Type drop-down in the Advanced Editing mode.

If you are homing to an end-of-travel limit or a homing input, the Limit Type drop-down is in view. Use the Limit Type drop-down to select which input to use for homing.

Do Gantry Alignment

This step is only available for gantries using Decoupling Control.

To use the gantry under Decoupling Control, you must use the Gantry Alignment step to measure the home marker location of each spar and to correctly configure the logical Yaw (Theta) axis home offset.

The module will guide you through each step of the procedure.

  1. Manually move the Linear (R) gantry axis to the approximate center of travel.

  2. If you are using a Flexible gantry, manually move the Yaw (Theta) gantry axis to the approximate center of travel.

  3. If you are using incremental feedback, set a temporary value of the maximum current clamp that will be used during the alignment. Click the Edit link if you want to use a different value than the suggested default.

  4. Click the Start button to start the alignment. The controller does a partial home on the gantry axes. It stops after it measures both marker positions and calculates the Yaw (Theta) home offset. The calculated Yaw (Theta) HomeOffset parameter is applied to the active controller, but the parameter change is not automatically saved to the MCD file.

Configure the Home Location

If the axis has limited travel, configure the Home Location. If you select Other, you must also configure the Program Positive Travel. The Nominal Travel of the axis is shown for reference. If the axis has rotary unlimited travel, these inputs do not show.

To calculate the Home Offset, click the Start button. If the axis has rotary unlimited travel, the module tells you to move the axis to the desired home location. Later it asks you to confirm that the axis is at the desired home location.

If the calculation succeeds, the module shows the calculated Home Offset. When the Home Offset value is satisfactory, click Next to apply it to the Controller. Then test the home cycle (next section).

Configure the Home Cycle Motion

If the Home Type that you select uses motion, configure the Home Speed, Home Ramp Rate, and Home Start Direction. If the Home Type you select does not require motion, these inputs do not show.

The Homing module indicates what percentage of the Max Jog Speed parameter the Home Speed is set to. It also shows a worst case estimate on how long it will take to home the axis.

To test the home cycle using the settings that you selected in the Homing Module, press the Start button. If the home succeeds, the module shows how long it took to home the axis.

When all of the parameter values are satisfactory, click Finish to apply the new homing parameters to the controller. You must click Save All in the Configure workspace menu on the left to save these parameters to the controller so they will be active after the next controller reset.

Direct Parameter Editing

Use the Go to Advanced Editing link if you need to directly edit homing parameters.