I’m using an Odrive Pro to control a BLDC motor with hall effect sensor (might be the reason of my problem due to it’s lack of precision?!). It’s controlling an inverted pendulum. When I send a command, the motor do not necesserly turn, but maintain a certain force to keep a certain torque. Sometimes, the torque applied is not on the same side of the rotation (which is normal). I think it’s because of that, but I get the following error:
In : dump_errors(odrv0) axis0 active_errors: no error disarm_reason: Error(s): ODriveError.SPINOUT_DETECTED procedure_result: ProcedureResult.DISARMED last_drv_fault: none internal issues: none
As you can see on the figures below, when
The motor normally runs for a few seconds before getting the error and then stops.
Hence, is there a setting to remove that error, because everytime, the motor just stop and the pendulum falls. I have no idea what to do in that case. If you need any other informations, just ask and I’ll upload them, I’m desepered !
What are the unit of these parameters ? Watts ? Amp ? I might be able to fix my problem by adjusting those parameters.
In : odrv0.axis0.controller.config.spinout_electrical_power_threshold Out: 10.0 In : odrv0.axis0.controller.config.spinout_mechanical_power_threshold Out: -10.0 In : odrv0.axis0.controller.config.mechanical_power_bandwidth Out: 20.0 In : odrv0.axis0.controller.config.electrical_power_bandwidth Out: 20.0
EDIT EDIT :
Just found out in the doc that those settings are in Watts
odrv0.axis0.controller.config.spinout_electrical_power_threshold Out: 10.0 odrv0.axis0.controller.config.spinout_mechanical_power_threshold Out: -10.0
Does that mean I have to enter the mechanical power that I need in those variables or is it something else ? I don’t want to blow up my controller.
From a poor desperate guy