libximc  2.14.29
Data Fields
calibration_t Struct Reference

Calibration structure. More...

Data Fields

double A
 Conversion coefficient equal to the number of millimeters (or other user units) per one step.
unsigned int MicrostepMode
 Controller setting which is determine a step division mode.

Detailed Description

Calibration structure.

Where to find all values for calculations?

How to calculate Speed, Accel, Decel, and AntiplaySpeed in user units when using a stepper motor with encoder or DC/BLDC motor?

  1. Load the correct profile in XILab for your positioner (e.g., 8MT173-25-MEn1.cfg).
  2. Enable Feedback encoder mode if not already enabled.
  3. Enter speed in the "Working speed" field in user units.
  4. In the "User units" tab, disable the "User units" flag to see RPM.
  5. Multiply the RPM value from "Working speed" by coefficient B. Example: 480 * 0.0000009375 = 0.00045. This value for the 8MT173-25-MEn1 in Encoder mode equals 2 mm/s.

    Acceleration, deceleration, and antiplay speed are calculated the same way.

Field Documentation

double A

Conversion coefficient equal to the number of millimeters (or other user units) per one step.

Must be non-zero and positive. Used for position and movement conversion.

  • For stepper motor without encoder, only one coefficient A is used. Conversion formula: [user_unit/steps]. Example: 800 steps = 1 mm, then A = 1/800 = 0.00125
  • When using a stepper motor with encoder or DC/BLDC motors, the position is set in counts, but speed, acceleration/deceleration, and antiplay speed are set in RPM, so two coefficients are required:
    • A. Conversion for position: [user_unit/counts]. Example: 16000 counts = 1 mm, then A = 1/16000 = 0.0000625
    • B. Conversion for speed, acceleration/deceleration, and antiplay speed: [60/ENCODER_COUNTS_PER_TURN * A]. Example: 60 / 4000 * 0.0000625 = 0.0000009375