Hello ODrive community,
we have a somewhat unusual rotating system, and I have some more detailed questions about certain aspects of the ODrive Micro to ask later, but let me start with the most basic facts of the problem.
We have a large rotating mass that is externally accelerated from zero, rotates for a while, and then is externally stopped. We intend to add a small motor geared to the mass that would reduce some of the perturbations in the rotation that are introduced by the non-ideal external drive. So with respect to the load, we want to be able to accelerate it and decelerate it by small amounts. AND, since our small motor is battery operated, we would like if possible to recover some of the energy during deceleration, especially the end-of-operation deceleration. There are other considerations, but that’s one half of the nutshell explanation.
The other half is that we want to do as many upfront experiments as possible using the GUI interface before we have to dive in and learn the odrive API interface with its hundreds of commands.
I have seen the Trajectory Control choice in the Configuration menu, and we will use this for some testing. However, there are actually three modes we need to operate in: First, actively accelerating the load (expending battery energy); second, actively decelerating the load at a rate greater than would occur by just letting the motor be braked by regen (net expenditure of battery energy); and third, actively using the motor/controller in generator-mode to recover battery energy during overall deceleration.
At this time, I am not clear as to the difference, if there is any, between the second and third mode in terms of what the H-bridges are doing, but that is a question for later.
Also, for reasons related to the way the mechanical parts interact, there is a desire to operate the controller in Torque Control mode. But that has an issue which I will question below.
For now, here are the main questions:
-
Is there a control mode available in the GUI for setting the controller into a pure generate mode – just keep the H-bridge switching in synchrony with the rotor position to send current back up the high rail from the energy in a rotating source without ever trying to force it one way or the other?
-
Am I correct that there is no way to actively control the motor by an external command stream through the GUI, that only pre-selected values and trajectories can be executed?
-
In attempting to operate in Torque Control mode in the GUI, we routinely get (understandably) an error message saying the controller detected that the motor was not responding as expected and that the operation was being terminated. Since Torque Control basically just turns the controller into a current source, is there any way to make it just pump the computed current profile through the H-bridge in whatever state it happens to be at the instant, irrespective of what the encoders may be telling it about the rotation of the motor?
-
Apparently a lot of users are able to just have the controller accelerate a load expending battery power and then, by sending a deceleration profile, put some of the stored mechanical energy back in the battery. Does the controller automatically make this phase transition seamless? (I assume that the relative phase state of the H-bridge drivers and the Hall Sensor signals reverses at that point, right?) Or is there a change of “modes” occurring?
-
Is there a fundamental difference between how the H-bridge paths are switched (phasing relative to Hall sensors) between active deceleration operation and a pure generator operation?
I’m sorry that this post has gotten overlong, and I’m sure I’ll have other questions but I would appreciate any guidance on these questions – this mechanical system has operational characteristics that are quite different from any that I have encountered before. Thank you in advance for your responses.