Hacker News new | ask | show | jobs
by zkms 3331 days ago
The website mentions "supports power regeneration" but I couldn't find any reference to it inside the code. Can someone who knows about this explain how it works, both in the hardware and in the software? I'm super curious to be honest, I know some basic electronics but have never designed a circuit this complex before.
2 comments

The power electronics are built using MOSFET half-bridges, which naturally support the ability to flow current in either direction. This allows current to flow from battery to motor or from motor to battery (regeneration).

In regeneration the motor is actively slowing down the speed (creating negative torque) by pushing energy into the battery. This is achieved in software by regulating a "negative" current, which causes the inverter to produce a voltage that is lower on average than the back EMF generated by the motor. Because the motor is effectively at a higher voltage than the inverter in this condition, current will flow from high voltage to low voltage and therefore flows back through the MOSFETs (and MOSFET body diodes) into the battery.

This is a bit of an over-simplification as brushless DC motors are actually excited by an AC waveform so the current is constantly reversing each half cycle, but the principle remains the same.

Ah, so the circuit with the MOSFET bridges is symmetric and can convert in both directions, and the software is capable of making that happen. That makes sense, thank you for answering my question in a detailed manner.

As a clarification -- is "back EMF" related to the open-circuit voltage that the motor generates when it's forcibly spun?

So this product is still in development. Hence the hardware is ready for regeneration, but right now the firmware doesn't support it yet.

In principle it works by just putting a high charge current capable battery on the DC bus, and simply dumping the regeneration current onto the bus, and the battery will eat it, as the bus voltage rises.

The "Architecture" heading, a bit down on this page explains more: https://hackaday.io/project/11583-odrive-high-performance-mo...

Ah ok -- thanks for the link!

Do you know how this (dumping regenerative current on the supply bus) would work if there are multiple motor channels on the same bus that are simultaneously regenerating at the same time?