Motor Calibration Fails

Hello,

I’ve been working with a 56 V Odrive V3.6 for the past month with no success at anything I’ve tried. I am using it with a HEDL-5640 A13 encoder and a high current T-motor U8 with Kv = 100. I am trying to get the motor to calibrate with no success. I have been going through Getting Started, Troubleshooting, and over topics here without any luck. Here is the procedure I am following:

odrv0.axis0.motor.config.current_lim = 10
odrv0.axis0.motor.config.calibration_current = 10
odrv0.axis0.controller.config.vel_limit = 3
odrv0.axis0.motor.config.pole_pairs = 18
odrv0.axis0.motor.config.torque_constant = 8.27/100
odrv0.axis0.motor.config.motor_type = MOTOR_TYPE_HIGH_CURRENT
odrv0.axis0.encoder.config.cpr = 500
odrv0.save_configuration
odrv0.axis0.requested_state = AXIS_STATE_FULL_CALIBRATION_SEQUENCE

The ODrive beeps but then nothing happens. The motor does not move. I dump the errors and I get this back:

ODRIVE_ERROR_DC_BUS_OVER_REGEN_CURRENT

axis0
motor: MOTOR_ERROR_SYSTEM_LEVEL

I tried some of the suggestions I saw on other topics, such as changing the wiring,

odrvX.axisN.encoder.config.calib_scan_distance
calib_range
motor.config.resistance_calib_max_voltage

but none of them worked. I am getting increasingly frustrated as I cannot figure out what is going on and this is delaying the project I am working on. Any suggestions? Thanks in advance.

I apologize if my formatting is wrong, or I am posting code incorrectly.

Did you try this:

Tried it, and it started but still failed. It’s more than before but not working properly yet.

So I tested some more things. Turns out, it was a combination of a mismatch in the pole pairs, a defective encoder, and the settings odrv0.config.dc_max_negative_current and odrv0.config.max_regen_current. I was also running it using a power supply and then switched over to a battery. I may yet run into other problems, but, for the time being, I got it to calibrate

2 Likes

Some final general advice; make sure your sensor wires are shielded, watch out for ground loops, and add some short protection if you are using a battery.

1 Like