Skip to content

Transition Machine Coordinate System through Planned Modification

markmaker edited this page Jul 11, 2022 · 3 revisions

Recipe

A machine coordinate system can be reconstructed from three or better more well-known locations, that are sufficiently far away from each other in both X and Y. Before modifying a machine, securely mount and capture multiple fiducials on PCB Z height. These will help reconstruct a machine coordinate system after the machine underwent modification.

The following is a simple recipe using OpenPnP's board fiducial system to help you do the math:

  1. You must do this before you modify the machine!!!

  2. Create a fake (huge) Board in OpenPnP.

    grafik

  3. Add the fiducials that you added to your table as Placements.

    grafik

  4. Capture their location as good as you can using the eye.

    grafik

  5. Run the fiducial check:

    grafik

  6. Now position to each fiducial. It should now be the precision location determined by vision, i.e. the AffineTransform is applied:

    grafik

  7. Now copy what you see in your DRO into the fiducials location, manually:

    grafik

    Note, you can't use the capture button, because it would reverse-apply the AffineTransform, i.e. change nothing.

  8. Repeat for each fiducial.

  9. Once you have these precision fiducial coordinates, make sure to screenshot them, just to be sure to have a technically independent copy:

    grafik

  10. And save the Job:

    grafik

  11. This .job.xml file and more importantly the accompanying .board.xml file is now the very important record of your OpenPnP machine coordinate system. Go check them out where you saved them.

  12. Now you can safely modify the machine.

  13. Afterwards, try to make the coordinates as similar as possible on the controller side (set your homing coordinates, so the coordinates match up roughly, i.e. ±1mm).

  14. Load the Job.

  15. Perform another fiducial check:

    grafik

  16. Now look in the log for lines like this:

    2022-07-11 10:54:38.513 ReferenceFiducialLocator INFO: Machine to placement transform X: X Factor:     1.000681 Y Factor:     0.000620 X Offset:    -0.047904
    2022-07-11 10:54:38.513 ReferenceFiducialLocator INFO: Machine to placement transform Y: X Factor:    -0.000773 Y Factor:     0.999558 Y Offset:    -0.044157
    
    
  17. Enter the coefficients into your X and Y ReferenceLinearAxis:

    grafik

See also the Linear Transformed Axes page.

Clone this wiki locally