Error mapping to compensate for mechanical errors

Error mapping to compensate for mechanical errors

COMPENSATE_XY is probably the command you want.
From the TrioBASIC Help:

In some applications both of the X-Y axes of a machine bed require compensation for ballscrew errors depending on the X-Y position:

Axis 0 - Motor Axis - COMPENSATE_XY command A + ADDAX(8)
Axis 1 - Motor Axis - COMPENSATE_XY command B + ADDAX(9)
Axis 8 - Virtual Axis - Run motion X axis commands
Axis 9 - Virtual Axis - Run motion Y axis commands

' Define tables of offsets at table locations 1000 and 3000:

UNITS AXIS( 0 )= 1000
UNITS AXIS( 1 )= 1000
UNITS AXIS( 8 )= UNITS AXIS( 0 )
UNITS AXIS( 9 )= UNITS AXIS( 1 )
ADDAX( 8 ) AXIS( 0 )
ADDAX( 9 ) AXIS( 1 )
COMPENSATE_XY( 1000 , 0 , 8 , 51 , 500 , 0 , 9 , 41 , 400 , 0 ) AXIS( 0 )
COMPENSATE_XY( 3000 , 0 , 8 , 51 , 500 , 0 , 9 , 41 , 400 , 0 ) AXIS( 1 )

' Moves on axes 8 and 9 here will be executed on axes 0 and 1 with compensation
    • Related Articles

    • Error Compensation in CSP Mode

      COMPENSATE_XY in the axis with the following table puts +/- 10 compensation on the axis as it moves. The table has these values: TABLE(0, 0, -10, 10, -10, 10, -10, 10) The COMPENSATE_XY takes the length that is put in the command and divides it into ...
    • AN-313 COMPENSATE_XY

      COMPENSATE_XY is a motion command designed to allow for a superimposed compensation motion to be applied to an axis based on the measured position of 2 axes (X & Y).
    • AN-335 Gantry Error Compensation

      This document explains how to correct the position error between the two motors commanding the Gantry axis (longitudinal axis) of advanced Gantry systems
    • Axis Status Error

      Just picked up my Flex-6 Nano again to do some testing with movelink, for some reason my FLEX-3AX is throwing errors. pressing the error reset button is not changing anything. All 3 axis are the same: Answer: The Fault bit in the CoE status will be ...
    • Clear DX4 encoder error

      For "Clear all encoder errors" write "1" to address 0x3685:01 For the "Clear multiturn errors" write "1" to address 0x3685:02   The data type is UINT16 From a Motion-iX TrioBASIC program you can use either CO_WRITE or CO_WRITE_AXIS to access this ...