Quick start guide for Myxa

Spinup tuning

Starting the motor from standstill is challenging for any sensorless drive, Myxa is no exception.

When commanded to start the motor, Myxa activates the current control mode first, regardless of the commanded control mode - Myxa will switch to the desired mode once the motor is started. The initial current setpoint is set to the value of m.spup_curr_begn, in amperes, where begn stands for “beginning”. Once the spinup process is initiated, Myxa will linearly ramp the current towards the second ramp endpoint defined by the parameter m.spup_curr_end. The duration of the ramp is defined by the parameter ctl.spinup_durat, in seconds; however, Myxa can abandon the ramp early and switch to the normal operating mode if it deems so appropriate. The ramp is illustrated in the following figure:

The ramp can be negative as well:

Myxa will abandon spinup and restart from scratch if the motor did not reach stable operation by the end of the ramp.

Observe also that if the motor is already spinning when the ramp is activated, Myxa will detect that, and skip the ramp, switching to the normal operating mode immediately. This behavior ensures that the motor can be restarted quickly and reliably if the rotor is already spinning in the correct direction. However, high settings of the initial current setpoint can somewhat interfere with this behavior.

In the firmware v0.2, the default values are set as follows:

  • ctl.spinup_durat = 1.5
  • m.spup_curr_begn = 0.2 × m.max_current
  • m.spup_curr_end = 0.025 × m.max_current

If the motor does not spin up sufficiently quickly, or if the rotor freezes for a few seconds before starting, it is recommended to alter the configuration parameters as follows:

  • ctl.spinup_durat = 0.5
  • m.spup_curr_begn = 0.5 × m.max_current
  • m.spup_curr_end = 0.05 × m.max_current

The proposed configuration defines a reverse (negative) current ramp. If the motor overshoots to a high speed after spinup and it is considered unacceptable, the initial current value m.spup_curr_begn can be reduced as necessary. Usage of constant current ramps (i.e., when the endpoints are equal) is likely to lead to substandard performance and therefore not recommended, because the rotor state observer requires some current gradient in order to deduce the initial position of the rotor.

Note that the following constraints must be met, otherwise Myxa may reject the configuration as invalid:

  • m.spup_curr_begnm.max_current
  • m.spup_curr_endm.max_current
  • m.min_current < m.max_current
  • 0.1 ≤ ctl.spinup_durat ≤ 60