Hello everyone,
We are currently in the process of evaluating a few new motors.
The motors are low inductance and we need a high PWM drive frequency to avoid getting a big ripple current. The rough specifications are 9uH line to line inductance, 2A max continuous current, and a rated voltage of 72V.
We were looking at the ODrive S1 and Pro as possible candidates for this application. On the surface they have similar specs but the Pro mentions 48KHz ripple current in parenthesis. What does that mean exactly? Can the ODrive Pro drive the motor at 48KHz PWM?
Besides the controller we are planning on adding a choke in series with the motor phases in order to further alleviate the current ripple issue.
Thank you in advance for your time and help.
We were looking at the ODrive S1 and Pro as possible candidates for this application. On the surface they have similar specs but the Pro mentions 48KHz ripple current in parenthesis. What does that mean exactly? Can the ODrive Pro drive the motor at 48KHz PWM?
Both the S1 and Pro switch at a fixed 24kHz. Because of the center-aligned PWM and modulation scheme, the motor sees an effective 48kHz for ripple current purposes – that’s what the note on the Pro page means. The S1 is identical there, it’s just not listed on its page.
So no ripple difference between the two. The Pro’s advantage is voltage and current: 58V/100A max vs ~50V/40A on the S1 (but the S1 can do 80A at voltages under 36V), and 99% vs 78% modulation depth, which is just the effective maximum utilizable percentage of your DC bus voltage. Neither gets to your motor’s rated 72V, but that’ll only affect the top speed.
Besides the controller we are planning on adding a choke in series with the motor phases in order to further alleviate the current ripple issue.
Assuming you mean a series inductor instead of a choke (chokes I usually associate just with ferrite beads/rings/clamps, which won’t do much to increase inductance), that’s a fine strategy – just make sure the inductor’s saturation current is 2-3x your motor’s peak current.
The main risk with low-inductance motors is that the ripple current (which is inversely proportional to motor inductance) adds additional power dissipation. The fact the motor is only rated for 2A continuous means this could be an issue – you can definitely see 5-10A effective of additional heating due to the ripple. So the series inductors are likely required here.
That being said, 72V motor + 2A rated continuous + 9uH line-line is a combo I don’t think I’ve seen before. Are you able to share what motor this is?
Hello, thank you very much for your reply as you provided a lot of insight on the inner workings of the available ODrive boards.
Indeed I was referring to an in series inductor as a choke in my original post, but the aim is to use a properly sized inductor. As you mentioned we aim to get one rated for 10A or so (around 5 times the peak continuous current of the motor).
The motor in question is the STM-51-12-M in 4Y configuration from ALVA.
Dataheet
Thanks! Two main things to note:
First, it’s 36 poles (18 pole pairs), so your top speed will be set by electrical frequency, not voltage. The S1/Pro are good to ~1000-1200Hz electrical in practice (the datasheet numbers are conservative), which is ~3500-4000 RPM on this motor vs its 10,000 RPM rating. Back-EMF at 4000 RPM is only ~15V (3.83 V/kRPM), so a ~36V bus covers it on either board, and a lower bus voltage also means less ripple (ripple scales with bus voltage / inductance). At that voltage and current the Pro doesn’t buy you anything over the S1. What top speed do you need?
Second, re: the inductor – I meant 2-3x the peak current, not the continuous. The 4Y does 23.8A for 1s, and the ODrive will gladly command up to your current/torque limit in response to pos/vel error or torque commands. So you’ll want to double check the inductor’s saturation current (usually a separate number from its RMS/thermal rating), and either size it for the peak you’ll actually command (with a ~2x min factor of safety) or cap the peak with axis0.config.motor.current_soft_max to suit the inductor (~4-5A for a 10A-sat part).
Also, make sure you run the motor calibration with the inductors installed, so the measured phase R/L (and the current loop gains calculated from them) include them.
For the inductor value: a quick sim on this winding (0.76ohm / 8.95uH L-L) has the motor w/o external inductance seeing ~4-6A RMS of ripple near top speed, which would result in 20-40W ripple losses in a motor rated for 25W continuous loss in the first place. Adding about ~1uH per phase per volt of bus (36uH at 36V, 48uH at 48V) gets it under ~1A RMS / ~1W ripple loss.
If you’re able to share a bit more as to your end application/requirements/use case/etc, I’d be happy to give further thoughts/recommendations.
Thank you for your reply and apologies for taking a bit to get back.
We do not have a specific speed requirement. Our aim is to setup a test rig to experiment with the frameless motor so the possible max value of 4000 RPM will not be a problem. For our application we would not be looking at the extreme scenarios (such as stalling at full speed). as of now.
In addition, I made a mistake in my previous posts. The motor is wired in an 8Y configuration instead of a 4Y.
This helps a lot when looking at the new peak current value of 11.9A, line to line resistance of 3.05R , and 35.8uH line to line inductance.
Assuming a maximum bus voltage of 48V, we were looking at inductances of about 1uH per phase as you previously suggested which should help decrease the maximum ripple current to less than 1A considering the far higher inductance of the 8Y configuration.
The 8Y helps a lot. Re-running the sim with the 8Y numbers (3.05 ohm / 35.8uH line-line, so ~18uH per phase), the bare motor at 48V sees ~2A RMS of ripple / ~20W near top speed, vs ~6A / ~40W for the 4Y. Still most of the 25W budget, so the inductors are still worth having, but it’s a much smaller problem.
One clarification-- I meant ~1uH per phase per volt of bus, i.e. ~48uH total per phase at 48V . 1uH on top of the motor’s own 18uH won’t do anything. So for the 8Y you’d add ~30uH per phase, which gets you to ~0.8A RMS / ~3W, and ~50uH gets ~0.6A / ~1.5W, not worth having much past that.
48V is the right bus for the 8Y, since the back-EMF constant is 7.66 V/kRPM, so 4000 RPM is ~31V. That fits under the S1’s ~37V usable (78% of 48V) with ~2.5A of headroom for IR drop before it runs out of voltage, and under the Pro’s ~47V with ~6A. Same as before w/ the inductor sat, you want sat rating to be 2-3x whatever you set current_soft_max to – 4-5A on the 8Y is ~0.4Nm, about 4x the continuous torque rating, so that should be fine.