Introduction

When setting up PSO on a system for the first time, additional configuration for analog multiplier encoders is required. Because PSO is generated in hardware and can only track a digital square wave signal, it is necessary to first convert your analog encoder to a digital signal. This can be accomplished using the Emulated Quadrature feature, which generates a square wave signal internal to the drive. This can then be routed to the PSO electronics in the drive, or directly to an encoder output channel on the drive.

The purpose of this article is to provide an overview of the following parameters, and how to configure them for generating PSO:

  • Axis > Feedback > Multiplier > EmulatedQuadratureDivider parameter
  • Axis > Feedback > Multiplier > EmulatedQuadratureChannel parameter (Additionally required for Ensemble LAB and A3200 Npaq only)


Note

These instructions apply only to drives with -MXH or -MXR feedback options, or Automation1 drives in A3200 with multiplier options.

  • Drives with the -MXU multiplier option cannot use analog encoders for PSO due to hardware limitations.
  • Drives not using an encoder multiplier do not need this feature.

A3200, Ensemble, and Soloist software: All drives including Automation1 controllers

For most drives in these series, it's only necessary to configure the EmulatedQuadratureDivider parameter. However, it's necessary to select a Divider so that the rate of the quadrature generated doesn't exceed the maximum data rate of the hardware. If this is not done correctly, PSO may "skip" pulses or fail to generate pulses in the right positions. Here's how to configure the parameter for one axis, with an example to follow. You'll need to perform these steps for every axis involved in PSO.

First, we'll need to record four numbers from your parameter file and your system. We'll call these values A through D.

  1. First, run the Configuration Manager software and Connect to the controller.
  2. Open your Active parameter file. On Ensemble and Soloist, you'll need to right-click the controller and select "Retrieve Parameters" as normal.
  3. Expand the parameter file to Axis > Units.
  4. Record the value of the CountsPerUnit parameter for this axis as value A.
  1. Expand the parameter file to Axis > Feedback > Multiplier.
  2. Record the value of the EncoderMultiplicationFactor parameter. We'll call this value B. This is typically a multiple of 4.
  1. Refer to your programs or process and determine the absolute maximum velocity (units per second) at which this axis will travel. We'll call this value C
  2. It's recommended to collect a plot in Digital Scope to check the accuracy of this value.
  3. Optional: To allow for some variance in maximum speed due to tracking error, multiply value C by anywhere between 1.5 to 2 or higher, at your discretion.
  1. Open the Help documents for your respective software
  2. Search for the article titled "PSO Specifications."
    • The Help article's contents may differ depending on your software version and will not be reproduced here.
  3. In the Help article, expand the heading "Maximum PSO Encoder Input Data Rates."
  4. In the table under this heading, locate the entry for your drive and the number of axes you're tracking simultaneously with PSO. Record the PSO tracking rate (MHz) in this table cell. We'll call this value D.

With these values recorded, we can now calculate the EmulatedQuadratureDivider.

  1. We'll calculate a base maximum encoder data rate first: Rate (Hz) = A × C.
  2. Convert this value to MHz by dividing by 1 000 000. Rate (MHz) = Rate (Hz) ÷ 1 000 000
  3. Calculate the base divider: BaseDivider = Rate (MHz) ÷ D.
  4. Round up BaseDivider to the nearest whole number.
  5. Check that B is divisible by the BaseDivider: B ÷ BaseDivider = a whole number. If not, increase the BaseDivider to the nearest whole number that divides B. This is also usually a multiple of 4.
  6. The final value of BaseDivider is your new EmulatedQuadratureDivider value. This is usually either 1 or a multiple of 4. (See note below.)
  7. To check your math, verify that Rate (MHz) (from step 2) ÷ EmulatedQuadratureDivider ≤ D.


Note

Some A3200 and Ensemble controller models, and Automation1 controllers running the A3200 software, require the EmulatedQuadratureDivider to be set at a minimum value of 4 in order to produce emulated quadrature. This is detailed in the corresponding drive entry in the Help article "PSOTRACK INPUT." You'll see a note as follows:

"If the PositionFeedbackType parameter is set to Encoder Multiplier and your drive uses -MXH feedback, the drive generates emulated quadrature signals only if the effective multiplication factor is greater than 4."

We have a system with CountsPerUnit (A) of 4 000 000 counts/unit, an EncoderMultiplicationFactor (B) of 4000, maximum velocity (C) of 15 mm/s, and a PSO tracking rate (D) of 16.6 MHz.

  1. Base maximum encoder data rate: Rate (Hz) = A × C = 4 000 000 * 15 = 60 000 000.
  2. Rate (MHz) = 60 000 000 / 1 000 000 = 60 MHz.
  3. BaseDivider = Rate (MHz) ÷ D = 60 MHz / 16.6 MHz = 3.614...
  4. Round up the divider 3.614... to the nearest whole number, 4.
  5. B ÷ BaseDivider = 4000 ÷ 4 = 1000. No adjustment is necessary.
  6. Our final EmulatedQuadratureDivider is 4. 
  7. This makes the data rate of the emulated quadrature 60 MHz / 4 = 15 MHz ≤ D (16.6 MHz).
Finishing Up:

Set the final value as the new EmulatedQuadratureDivider in your parameter file, then Save the file (A3200) or right-click and Send the parameters to your controller then Commit the parameters (Ensemble, Soloist).

Finally, when tracking an encoder signal using the PSOTRACK INPUT command, it's necessary to choose the correct source number to correspond with the emulated quadrature. Details on input numbers can be found in the "PSOTRACK Input Command" article in any Aerotech software's Help documentation.

  • For A3200, Ensemble, and Soloist controllers this is usually the MXH (Analog Sine Wave) source number found in the Help article.
  • For Automation1 drives used in the A3200 software, this source number is generally labeled as Primary Feedback or Axis 1 Encoder.

Additional steps for Ensemble LAB and A3200 Npaq

The Ensemble LAB and A3200 Npaq controllers, as multi-axis drive racks, are unique. These models have a single multiplier board used for all axes, but programmed on the first axis and produced from a single output. You must set the parameter EmulatedQuadratureChannel in order to send the emulated quadrature to a specific encoder channel.

Default encoder channels on these six-axis drive racks are 0 through 5. Emulated quadrature channels for these controller models are 6, 7, and 8. Assign the EmulatedQuadratureChannel as "To PSO Channel 6" on the first axis producing emulated quadrature for PSO, and use "To PSO Channel 7" and "To PSO Channel 8" for the second and third axes if needed.