Wide Layouts (Surface Align Wide Tool)

This tool is only intended for performing high-accuracy alignment of wide layouts with G2 sensors with six degrees of freedom, using recorded data.

Performing alignment using the Surface Align Ring or Surface Align Wide tools (which results in 6 degrees of freedom) involves considerable setup effort. First, the calibration targets are more difficult to manufacture than a calibration bar. Second, the alignment tools have several parameters that must be properly configured to successfully perform an alignment.

This tool requires acceleration (either by a PC-based application or by GoMax). For more information, see Running GoPxL on a Windows PC.

When you use the Surface Align Ring or Surface Align Wide tools to create the configuration file containing the sensor transformation, always remember to uncheck Enable uniform spacing in the Scan mode section on the Scan page, even if you intend to use uniform spacing in your application. Also enable Multi-Sensor Array Output.

The Surface Align Wide tool aligns a G2 multi-sensor system with two or more sensors in a wide (side-by-side) layout and saves the transformations for each sensor in an XML file. Unlike alignment performed using the Alignment panel on the Scan page, the tool determines the X angle rotation (for information on coordinate systems, see Profile Output), giving you a full six degrees of freedom. This method of alignment will produce higher accuracy scans, and allows for higher scan rates, due to the use of a different algorithm when the sensor combines data from multiple sensors.

Note that in order to perform scans and measurements in production using a system aligned using this tool, you must include the Surface Merge Wide tool (see Surface Merge Wide) in your scanning job, loading the transform XML file created by this tool into the merging tool, to combine the scans from the individual sensors into single frames of Surface scan data. You can then apply any built-in or custom GDK-based Surface tools to the resulting processed data (see Surface Measurement).

After configuring the tool (see below), you must check the Enable Processing checkbox to start processing. After the tool has finished processing the data, it produces the XML file you load into a Surface Merge Wide tool, as well as a Difference Surface data output that you can use to assess the quality of the alignment.

Note that after aligning using this tool, on the Alignment panel on the Scan page, GoPxL indicates that the sensors are unaligned. This is expected.

Alignment Target and Setup

This alignment tool requires the use of a pyramid plate alignment target, which consists of rows and columns of truncated pyramid forms. You can find CAD files for a 3x3 pyramid target under Tools\Alignment CAD\Pyramid Plate in the Utilities package (e.g., 14405-x.x.xx.xx_SOFTWARE_GO_Utilities.zip, available on LMI's Product Downloads page).

The alignment target LMI provides in a CAD file is appropriate for sensors angled up to roughly 15° from vertical. For information on alignment target requirements, see below.

A 3x3 pyramid plate. Exact dimensions of the plate and the pyramids will depend on the sensors in your system.

The following requirements should be satisfied for best results:

  1. Make sure the alignment target surface is not too shiny or too dark to be scanned.

  2. Edges do not need to be perfectly sharp: The alignment tool performs a plane fit to points within the planar surfaces and excludes data close to the edges.

  3. For highest accuracy, use a target sized so that each sensor covers the area of only one column. However, if an application requires that sensors must be angled so that their laser planes mostly overlap, two sensors can see the same column.

  4. Pyramid heights should be at least 1/5 of the measurement range of the sensor. For example, the measurement range of a Gocator 2520 is 25 mm; for this type of sensor, the pyramid height should be at least 5 mm. (For measurement range specifications, see Sensors.)

  5. Pyramid tops should be at least 1/10 of the sensor's FOV, taking into account the location of the target along the Z axis in the sensor's measurement range. For example, at the midpoint in the measurement range of a Gocator 2520, the FOV is 28.75 mm; for this type of sensor, the pyramid tops should be at least 2.875 mm along each side.

  6. The pyramid angle (the angle between the side planes and the base plane) must be greater than 30°.

  7. Pyramid sides should preferably not be angled from a sensor's Z axis by more than 60 degrees. So for example, if you use an alignment target with 45° pyramid sides, a sensor's Z axis shouldn't be angled by much more than 15 degrees from vertical. For sensors angled 30 degrees from vertical, for example, an alignment target whose pyramid sides are angled only 30 degrees would be more appropriate.

  8. Maximize the target size to ensure that as much of the base area is visible to the sensor. Keep in mind however that the target size should be smaller than the FOV.

  9. The flat area at the base of the pyramids must be visible to the sensors.

  10. Only one row of pyramids is required for the alignment procedure, but using additional rows improves the accuracy of the alignment.

  11. Pyramids should be roughly centered in the FOV of each sensor.

  12. For best results, all four sides of a pyramid should be visible to a sensor.

  13. Given the size of the top widths of the pyramids and the distance of the sensors to the alignment target, the top widths should be represented by a minimum of 100 to 200 data points along the X axis in the scan data.

  14. Flatness should be roughly the Z resolution of the sensor.

  15. To maximize the accuracy of the alignment, block any unwanted planar data during scanning, such as the conveyer belt beneath the target. To do this, you can shrink the sensor’s active area in the Acquire > Scan page to exclude this data while scanning the target. Remember to reset the active area after the alignment. For more information on setting the active area, see Active Area.

  16. After you have scanned the alignment target, verify in the scan data that each of the five planar segments of each pyramid (the top and the four sides) is represented by at least 100 x 100 data points. If the point count along the X axis is less than 100, one alternative way is to scan the target in a smaller Y Spacing to meet the 100 x 100 points per segment threshold.

Alignment Procedure

The following provides the steps involved in performing a high-accuracy, tool-based alignment.

To perform the alignment:

1. Fabricate an alignment target appropriate for your system (wide layout versus ring layout).

For details on the alignment target, see Alignment Target and Setup.

2. If you have not already done so, set up and configure the multi-sensor system.

 

The following sections describe installing, setting up, and configuring a system:

Installation

Network and Sensor Setup

Sensor Management and Maintenance

Creating a Sensor System

Configuring Acquisition

Be sure to disable Uniform Spacing and enable Multi-Sensor Array Output in the Scan mode section on the InspectScan page.

Although you can scan the alignment target without acceleration, you must perform the alignment using PC-based acceleration (for more information, see Running GoPxL on a Windows PC). Because starting acceleration after having performed a scan clears scan data from a sensor, if you are going to perform alignment on-sensor, you should start acceleration before continuing.

You can also optionally download the scan data and perform the alignment on the scanned target using GoPxL on Windows. For more information, see Working with Scan Data.

3. Enable recording by clicking the Record button to the right above the data viewer.

GoPxL shows recording is enabled.

4. Start the transport system and then perform a scan of the alignment target.
5. Turn off recording.

6. Download the recording and make note of the downloaded file's location.

7. Launch a PC instance of GoPxL.

For more information, see Running GoPxL on a Windows PC.

8. Upload the recording of the alignment target in the PC instance.

9. On the InspectTools page, add a Surface Align Wide tool.
10. (Optional) If you have a previously saved configuration file, expand the Configuration File section and choose Load from the Operation drop-down, load that file, and go to step 14.

11. In the expandable Sensors section, set Sensor Count to the number of sensors in the system.

12. Under Sensor Parameters, select the sensors, one by one, and configure the parameters related to the sensor's position.

For more information, see Sensor Parameters.

13. Expand the Target section and configure the parameters related to the alignment target.

For more information, see Pyramid Plate Target Parameters.

14. Configure the tool's remaining parameters (see Parameters).
15. Enable any measurements or the Processed Surface outputs if needed.

These outputs can be useful for diagnostics.

16. Check the Enable Processing checkbox.

The tool processes the scan data, using the provided sensor positions or rotations and alignment target characteristics, and saves a configuration file to C:/GoTools/SurfaceAlign. If the alignment process succeeds, the Alignment Status field in the Configuration File section displays the time and date of the alignment.

You must load the resulting configuration file in a Surface Merge Wide tool, typically in a separate job, which transforms and merges the multi-sensor scan data into a common coordinate system. You can then apply other measurement tools to the merged scan data. For more information on the merging tool, see Surface Merge Wide.

Inputs

You configure the tool's inputs in the expandable Inputs section.

Inputs
Name Description
Enable Batching

Leave this setting unchecked.

Surface Input

The data the tool applies measurements to or processes.

Parameters

You configure the tool's parameters in the expandable Parameters section.

Parameters
Parameter Description

Enable Processing

Causes the tool to perform the alignment. If the alignment is successful, the tool creates an XML alignment (calibration) file containing the transformations of the sensors that you must use with the Surface Merge Wide tool when scanning production targets to merge scan data. Make note of the XML file indicated in the log pane for use with Surface Merge Wide.

Make sure to properly configure the tool before enabling this option. Disable it after performing the alignment; otherwise, the tool will continue performing the alignment on new frames of data, which will have an impact on performance.

Operation

Actions that apply to the tool's configuration files. One of the following:

  • Normal:  The tool automatically chooses this operation after you have chosen another operation.
  • Load: Displays a list of configuration files you can load. After you select a file, the tool loads it and displays a message in the log. The settings in the file, such as the number of sensors and their X and Y origin, are updated in the tool's parameters.
  • Save: Saves the tool's settings to a configuration file (in C:\GoTools\SurfaceAlign\). Provide the name of the configuration file in the Configuration Name parameter (without an extension) and press Enter or Tab. Saving the initialization file saves you time if you need to adjust the positions of the sensors in the system and perform the alignment again as a rough starting point for the alignment procedure.
  • Delete: Deletes the file you select.
  • Refresh: Refreshes the list of files.
Sensors An expandable section that contains sensor related parameters.

Sensor Count

Indicates the number of sensors in the system.

Sensor Parameters

A drop-down that displays the settings of the selected sensor.

For descriptions of the individual sensor parameters used for the alignment, see Sensor Parameters.

Target

An expandable section that contains parameters related to the pyramid plate target's specifications.

For descriptions of the pyramid plate parameters, see Pyramid Plate Target Parameters. For information on alignment targets, see Alignment Target and Setup.

Transform Format

The transformation format the tool uses. Typically, you can leave this at its default setting. Choosing a different format may be useful if you need to compare what the sensors detect to the transformation format used in your CAD package, for example. The setting does not affect alignment. One of the following:

  • Standard Angles ABC
  • Euler Angles ZYX
  • Euler Angles XYZ
  • Euler Angles ZYZ
  • Euler Angles ZXZ
  • Affine Angles YZX

Alignment Mode

The coordinate system used in the aligned system. One of the following:

Sensors

The Y axis is in the direction of motion. The resulting Y rotation of sensors is such that the average Y rotation is 0. X, Y, and Z = 0 are at average sensor center

Target Y Angle

The resulting Y rotation of sensors is such that the target surface is aligned to be horizontal. This mode is recommended when aligning to a conveyor on which the target is placed flat. X, Y, and Z = 0 are at average sensor center.

Sampling Step

The step in data points in both directions with which the surface is processed. Choosing a higher sampling step reduces the processing time the tool requires, but reduces fit accuracy. Useful if the surface being processed has a large number of data points. Typically, you will want to use as low a sampling step as possible; use a high sampling step only for initial testing purposes.

Resolution Reduction

Reduces the lateral resolution of the heightmap to reduce processing time.

External ID

The external ID of the tool that appears in GoHMI Designer. For more information, see GoHMI and GoHMI Designer.

Sensor Parameters
Parameter Description

Sensor Model

 

Sets the model of the sensor selected in Sensor Parameters.

Origin X {n} / Origin Y {n}

The X and Y origin of sensor {n}. In order for the alignment to succeed, you must enter the rough spatial relationship between the sensors. Use the known values based on physically measuring the mounted sensors, or estimate these values from unaligned scan data.

Represents the estimated X and Y position of the intersection of the sensor's Z axis with the pyramid plate, relative to the center of a bounding box that encompasses the intersections of all sensors in the system. The accuracy of the values should be at least 1/10 the distance between pyramids. So, for example, with a distance of 25 mm between pyramids, the minimum accuracy is of these values is 2.5 mm.

For more information, see Setting Origin X and Origin Y.

Pyramid Plate Target Parameters
Parameter Description

X Count

Y Count

The count of the truncated pyramids on the pyramid plate, along the X and Y axis, respectively, that are used in the alignment. For example, if you are using only two sensors in a system, and they are each scanning a different column in a 3x3 pyramid plate, X Count would be set to 2. In a system where the sensors are angled so that they scan the same column, X Count would be set to 1.

Plate Width

Plate Length

Plate Height

The width, length, and height of the pyramid plate.

Top Width

Bottom Width

The width of the top of the truncated pyramids and the base of the pyramids, respectively.

Pyramid Height

The height of the truncated pyramids.

X Distance

Y Distance

The distance between the centers of the truncated pyramids along the X and Y axis, respectively.

Setting Origin X and Origin Y

The Origin X {n} and Origin Y {n} settings in the Surface Align Wide tool represent the estimated, real-world, X and Y position of the intersection of a sensor's Z axis with the flat surface of the pyramid plate, relative to the center of a bounding box that encompasses the intersections of all sensors in the system.

For example, in the following example of a two-sensor system, with the sensors placed side by side (no displacement along the Y axis), the X position of the intersection of the left sensor's Z axis and the alignment target's flat surface is roughly -25 mm, and the X position for the right sensor is 25 mm. You would use these values in the Origin X parameters of the appropriate sensor.

In the following, a three-sensor system with sensors positioned at different Y locations (viewed from above), the Origin X and the Origin Y value of each sensor is set to the distance (X and Y position) of the intersections between the alignment target surface and the sensors' Z axes, relative to the center of the bounding box that encompasses the intersections.

Note however that for sensor systems with sensors positioned at different Y locations, you can set Origin Y to 0 if the entire alignment target is scanned during the alignment procedure: the algorithm uses the edges of the alignment target to determine the Y component of the sensors' origin. If you do not scan the entire alignment target during the procedure, you must enter an estimate of the Y position of the sensors' origins.

It is very important to consult the specifications of the sensors in your system to determine the direction of X and Y. In multi-sensor systems, the Y axis is determined by the Main sensor's orientation.

If your application requires that sensors should be angled, remember to take this into account when estimating the values needed for Origin X and the Origin Y, paying attention to where the Z axis of each sensor intersects with the alignment target's lower flat surface.

Outputs

All tools provide measurements, geometric features, or data as outputs.

Measurements
Measurement

Standard Deviation

Alignment uncertainty (an indicator of alignment quality).

X Origin{n}

Y Origin{n}

Z Origin{n}

The X, Y, and Z transformations calculated for sensor {n}.

X Angle {n}

Y Angle {n}

Z Angle {n}

The X, Y, and Z angle transformations calculated for sensor {n}.

Data
Type Description

Difference Surface

Use this for diagnostic purposes. Useful for understanding where inaccuracies may be coming from, for example, if a plane on the alignment target is distorted.