Hello.
I’ve tested the Odrive 3.5 with the Z index encoder OMRON 2500 cpr and motor N5065.
Strange behavior repeats.
startup_motor_calibration - is ok
startup_encoder_index_search - is ok
But if after startup send
odrv0.axis0.requested_state = AXIS_STATE_CLOSED_LOOP_CONTROL
then there is uncontrolled N5065 rotation
And after this odrv0.axis0.error
returns code 49
Here is the video
Here is the json i used as backup-config
{
“config”: {
“brake_resistance”: 2,
“enable_uart”: true,
“enable_i2c_instead_of_can”: false,
“enable_ascii_protocol_on_usb”: true,
“dc_bus_undervoltage_trip_level”: 8,
“dc_bus_overvoltage_trip_level”: 51.840003967285156
},
“axis0”: {
“config”: {
“startup_motor_calibration”: true,
“startup_encoder_index_search”: true,
“startup_encoder_offset_calibration”: false,
“startup_closed_loop_control”: false,
“startup_sensorless_control”: false,
“enable_step_dir”: false,
“counts_per_step”: 2,
“ramp_up_time”: 0.4000000059604645,
“ramp_up_distance”: 12.566370964050293,
“spin_up_current”: 10,
“spin_up_acceleration”: 400,
“spin_up_target_vel”: 400
},
“motor”: {
“config”: {
“pre_calibrated”: false,
“pole_pairs”: 7,
“calibration_current”: 10,
“resistance_calib_max_voltage”: 1,
“phase_inductance”: 0,
“phase_resistance”: 0,
“direction”: 1,
“motor_type”: 0,
“current_lim”: 10,
“requested_current_range”: 70
}
},
“controller”: {
“config”: {
“control_mode”: 3,
“pos_gain”: 20,
“vel_gain”: 0.0005000000237487257,
“vel_integrator_gain”: 0.0010000000474974513,
“vel_limit”: 20000
}
},
“encoder”: {
“config”: {
“mode”: 0,
“use_index”: true,
“pre_calibrated”: true,
“idx_search_speed”: 10,
“cpr”: 10000,
“offset”: 0,
“offset_float”: 0,
“calib_range”: 0.019999999552965164
}
}
},
“axis1”: {
“config”: {
“startup_motor_calibration”: false,
“startup_encoder_index_search”: false,
“startup_encoder_offset_calibration”: false,
“startup_closed_loop_control”: false,
“startup_sensorless_control”: false,
“enable_step_dir”: false,
“counts_per_step”: 2,
“ramp_up_time”: 0.4000000059604645,
“ramp_up_distance”: 12.566370964050293,
“spin_up_current”: 10,
“spin_up_acceleration”: 400,
“spin_up_target_vel”: 400
},
“motor”: {
“config”: {
“pre_calibrated”: false,
“pole_pairs”: 7,
“calibration_current”: 10,
“resistance_calib_max_voltage”: 1,
“phase_inductance”: 0,
“phase_resistance”: 0,
“direction”: 1,
“motor_type”: 0,
“current_lim”: 10,
“requested_current_range”: 70
}
},
“controller”: {
“config”: {
“control_mode”: 3,
“pos_gain”: 20,
“vel_gain”: 0.0005000000237487257,
“vel_integrator_gain”: 0.0010000000474974513,
“vel_limit”: 20000
}
},
“encoder”: {
“config”: {
“mode”: 0,
“use_index”: false,
“pre_calibrated”: false,
“idx_search_speed”: 10,
“cpr”: 8192,
“offset”: 0,
“offset_float”: 0,
“calib_range”: 0.019999999552965164
}
}
}
}