How current control work?

Hi!! I use odrive with Arduino.The question is If i use power supply (48V/10A), can i set current limit to more than 10A in programme? If so, can someone explain me how current control work? I don’t exactly understand.

Hello @aung_cho_oo. Since I never used Odrive with Arduino I don’t know if this can be done with Arduino. however, you can just set the current limit through Odrivetool with USB. to setup Odrivetool just follow the instructions from Odrive documentation. after that, connect your Odrive and set the current limit with `odrv0.axis0.motor.config.current_lim = “your current limit” ’ then, save the configuration with ‘odrv0.save_configuration()’ and reboot your Odrive with ‘odrv0.reboot’. after that, your Odrive will save the config.

Can i set current limit to more than my power supply current?For example, I use (48V/10A) power supply.
I want to set 12A, is it OK?

Yes you can. As far as I know, Odrive can’t detect how much current your power supply can produce. If you do so, it will work normal until by any chance your motor needs to draw more current (high torque) then it depends of how your power supply will react. Fuse will break (if there’s any), It will get heated up, the voltage will drop, or just simply ‘damaged’. So basically just not good for your power supply, I personally suggest you not to do it.

The power supply should only fail when using high torque at high speed. The power supply always provides 48V, and ODrive converts that to whatever voltage is necessary to spin the motor at the desired RPM. So say you’re spinning at half the maximum speed and hitting the 12A torque limit, then ODrive is outputting 12A at 24V = 288W. Therefore, the power supply must also be outputting 288W, but at 48V that’s only 6A so you should be ok.

I see.So, in order to increase the torque, Odrive decrease voltage and increase the current automatically. Thz you guys.

1 Like