How to operate BLDC motor with Odrive high speed and accuracy?

I’m working on a project in which I want to rotate an arm which is connected to the BLDC motor shaft. I want to move the arm with high speed and high torque in 1/3rd rotation of the motor. I set the following parameters.

odrv0.axis0.controller.config.control_mode = CTRL_MODE_POSITION_CONTROL
odrv0.axis1.controller.config.pos_gain = 8
odrv0.axis1.controller.config.vel_gain = 0.02

please any one tell me what should I do next?

hi, i’m not an expert, but why you put in axis"0"

an after that you put Axis “1”:

Did you set the other parameters like
odrv0.axis1.controller.config.vel_integrator_gain
odrv0.axis1.motor.config.current_lim
odrv0.axis1.controller.config.vel_limit…
odrv0.axis1.motor.config.pole_pairs… etc?

1 Like

Thank you for your fast reply. But I unfortunately add axis “1” instead of axis “0”. But I tried
following command but it didn’t work.

why don’t you try by just adjusting gains like lower the position gain and increasing velocity gain It will be helpful

i think that you should share more info to allow us to help you, i don’t understand if you set the other parameters or you don’t, do you have just one axis? what kind of encoder do you use?..
the axis that you set, it move when you send

odrv0.axis0.controller.pos_setpoint ?

1 Like