I have an Odrive 3.6 and a D6374 motor. I have these connected to a test rig with a 1m linear axis and a 2kg mass. I’m powering the odrive with a 48V, 50A power supply.
When I try more aggressive accelerations (e.g. >400 rev/s^2) the axis will often accelerate then coast to a stop, and if I do a dump_errors() I see:
system: no error axis0 axis: no error motor: Error(s): MOTOR_ERROR_UNKNOWN_TORQUE MOTOR_ERROR_UNKNOWN_VOLTAGE_COMMAND sensorless_estimator: no error encoder: no error controller: Error(s): CONTROLLER_ERROR_SPINOUT_DETECTED
What could be causing this? Could I be exceeding the maximum current my supply can provide, and would that cause such a problem? I was having a problem with noise affecting the USB connection to the odrive which I seem to have resolved with a ferrite ring on the motor cables, but could this be another manifestation of the same problem, e.g. interference on the encoder lines?
Also I have a couple of questions about the trapezoidal trajectories:
- Is there a state I can read which will tell me when the trajectory is complete?
- What’s the purpose of the inertia setting? I’ve done some calculations to estimate (for a given motor torque), and known the system mass, inertia and friction, what acceleration I can expect, and this is what I enter as the trap accel/decel values. Does the inertia value affect the gains in the controllers?
Finally, is there a way the odrive can brake the motor if it enters an error state, rather simply letting it coast to a stop?