Configuring Pattern Recognition for Dispense Coordinates

James Nishida6 min read
Motion ControlOther ManufacturerTutorial / How-to
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

The engineer sees correct dispensing on one tray but shifted, rotated, or wrongly indexed deposits on another tray. Treat PR as the layer that converts a recognized tray, feature, or layout into machine dispense coordinates. Before anything else, confirm whether the machine uses PR for vision alignment, pattern generation, or both.

PR Function Identification

  1. Open the active recipe and identify the inputs to PR. Image features, fiducials, search regions, and match results indicate vision-based pattern recognition. Row counts, column counts, pitch, radius, and angular spacing indicate geometric pattern generation.
  2. Run the machine without dispensing and observe which coordinates change. If every point moves by a common offset or rotation after recognition, PR is aligning a stored pattern to the tray. If changing row, column, or pitch settings creates a different list of targets, it is generating the pattern.
  3. Check whether the recipe contains both functions. Many dispensing systems first generate nominal part locations and then use vision recognition to transform those locations into the machine coordinate frame.

Do not move on until the displayed target list can be tied to one of these behaviors. The distinction determines whether a placement error comes from recognition, coordinate transformation, or pattern definition.

Observed input or output PR function Next check
Match position or angle Vision alignment Coordinate frames and transform
Rows, columns, or pitch Pattern generation Layout geometry
Generated targets plus match result Generation and alignment Test each stage separately

Coordinate-Frame Check

Pattern recognition does not normally replace programmed dispense points. It relates nominal pattern coordinates to the machine coordinates used by the motion system. Label the frames before troubleshooting:

  • Machine frame: the fixed axes used by the motion controller.
  • Recipe frame: nominal coordinates in which the dispense pattern was taught or calculated.
  • Tray or workpiece frame: the actual position and orientation of the current part carrier.
  • Camera frame: image coordinates measured by the vision system, when a camera is involved.
  1. Select one nominal target and record its recipe coordinates.
  2. Run PR and record the resulting machine target.
  3. Translate the tray without changing its geometry, then repeat recognition.
  4. Compare the coordinate changes. A matching translation shows that the recognized offset is reaching the target calculation. A stationary target indicates that the result is not applied, is applied to another frame, or has been overwritten.

With translation only, the basic relationship is X_machine = X_recipe + ΔX and Y_machine = Y_recipe + ΔY. If tray rotation is allowed, the controller must rotate the nominal points before adding translation. The transformation can be expressed as [X_machine,Y_machine] = R(θ)[X_recipe,Y_recipe] + [ΔX,ΔY]. Rotation about the wrong origin causes errors that increase with distance from that origin.

Layout-Geometry Decision

Once the coordinate transform responds correctly, classify the tray geometry. A recipe built for one geometry cannot place targets correctly on another merely by changing a common offset.

Layout Defining data Typical indexing error
Rectangular grid Origin, row and column counts, X and Y pitch Wrong pitch, reversed axis, or swapped row and column order
Offset rows Grid data plus alternating row offset and possibly different item counts Every second row shifted or assigned an extra target
Concentric circles Center, radius for each ring, points per ring, start angle Wrong center, angular direction, or ring indexing
  1. Display the complete target list or dry-run path.
  2. Check the first target, the first target of the next row or ring, and the last target. These positions expose origin, indexing, and accumulated pitch errors faster than checking adjacent points alone.
  3. For an offset-row tray, compare odd and even rows. If only alternating rows are wrong, inspect the row-offset rule rather than camera calibration.
  4. For concentric circles, compare error direction around a ring. Radial error points to radius or center data; tangential error points to start angle, angular increment, or rotation convention.

Recognition and Transform Branches

If a camera supplies the recognition result, separate image matching from motion-coordinate conversion. A good image match can still produce a bad dispense location when calibration, feature selection, or frame mapping is wrong.

  1. Confirm that the intended feature is found inside the intended search region. Repeated selection of a similar neighboring feature causes target jumps by one tray pitch or one repeated-pattern interval.
  2. Compare the reported feature position and angle with the physical movement applied to the tray. If the signs are reversed, inspect axis direction and coordinate-frame orientation.
  3. Move the tray in one machine axis at a time. The reported correction should follow the corresponding calibrated direction. Cross-coupled movement indicates a camera-to-machine mapping problem.
  4. Rotate the tray slightly and inspect targets near and far from the chosen alignment origin. Growing error away from the origin indicates an incorrect rotation center, scale, or angular transform.
  5. If recognition is stable but all deposits share the same residual displacement, inspect the taught relationship between the recognized feature and the dispense feature. That feature-to-dispense offset is distinct from the tray-position correction.

Configuration Procedure

  1. Define the physical dispense pattern in the recipe frame. Enter the correct rectangular, offset-row, or circular geometry and generate the nominal target list.
  2. Choose a repeatable tray or workpiece reference. For vision alignment, train or select a feature that is unique enough to avoid neighboring matches.
  3. Establish the relationship between the recognized reference and the pattern origin. Confirm it by viewing the transformed first target before enabling material flow.
  4. Configure the transform components actually required by the mechanics: translation for shifted trays and rotation when tray orientation varies. Do not apply rotation compensation until its center and direction have been checked.
  5. Run a no-dispense path through boundary points, alternating rows, and each circular ring. Confirm that every commanded target belongs to a real container and that no valid location is skipped.
  6. Enable dispensing only after the dry-run coordinates agree with the physical layout. Use test material or a non-production workpiece for the first marked pattern.

Verification and Recurring Pitfalls

Symptom Likely cause Deciding check
All targets shifted equally Origin or feature-to-dispense offset Compare the same target before and after a known tray translation
Error grows across rows Pitch or scale Compare the first and last target
Alternating rows are wrong Missing or reversed row offset Compare odd and even row starts
Error grows with distance during rotation Wrong rotation center or transform Compare near-origin and far-corner targets
Occasional one-position jump Recognition of a repeated neighboring feature Review the found feature and search region
  1. Test a tray at the nominal taught position and record the residual error at representative targets.
  2. Translate the tray within its permitted loading variation and repeat the test.
  3. Rotate it within its permitted loading variation when rotation compensation is configured.
  4. Check the first and last targets, both odd and even rows, all corners, and representative points on every ring.
  5. Approve the recipe only when recognition selects the intended reference, the generated target count matches the physical layout, and residual placement error remains within the process tolerance at every checked position.

Frequently Asked Questions

Why does PR change the dispense coordinates?

PR applies the recognized tray translation and, when configured, rotation to nominal recipe points so the motion targets follow the actual workpiece position.

Why does every dispense point have the same offset?

A common offset points to the pattern origin, recognized-reference offset, or feature-to-dispense relationship. Compare one target before and after a known tray translation to isolate the applied correction.

Why does the dispense error increase across the tray?

Increasing error usually comes from incorrect pitch, scale, rotation center, or angular transformation. Compare the first and last targets and then test points near and far from the alignment origin.

Why does PR fail on every second row?

An offset-row pattern requires an alternating horizontal displacement and may use a different item count in adjacent rows. Inspect the odd-row and even-row start coordinates and indexing rules.

How do I verify PR before dispensing material?

Run a no-dispense path after translating and, if applicable, rotating the tray. Verify the first and last targets, alternating row starts, all corners, and representative points on every circular ring against the permitted process tolerance.

Back to blog