Antigravity motor controller alternatives

Hello,

My team won’t be using the motor drivers listed in the documentation to run the Antigravity motors. Do you guys have any recommendations for an OTS ESC to run these motors with? T-Motor has an ESC but I can’t tell if it allows reversed direction.

Any help/recommendations would be greatly appreciated.

Hello,

Do you have a link of the antigravity ESC?

Often, ESC made for quadcopter use sensor less FOC (without encoder feedback) and do not work at low speed. For a robotic application we have to use angle sensor feedback.

I’ll prepare you a list of sensored FOC motor controllers, but know that we didn’t test any. Also, you will have to create your own communication architecture to send them commands at high data rate and retrieve sensor data.

Which robot are you planning to build? Know that space constraints in some of them (such as solo-12 and bolt) are very strong. If you are interested in test beds or solo-8, then the easiest off the shelf solution is to use the Texas instruments dev kit electronic detailed on the GitHub.

Best, Thomas.

1 Like

Hi Thomas,

Here’s the link to the Antigravity ESC: 40A Air Series

My team is building the solo-8. What you touched on is something I forgot to mention in my previous post: support for encoder input. We’d also prefer if the ESC had built in PID. I’ve done some of my own research and was only able to find one ESC that supported encoder input with built in PID, but it’s really expensive.

Note that we are using the same encoders as shown in the actuator module documentation.

A list of sensored motor controllers would be great!

I just came across the ODrive Dual Motor Controller. It looks very promising to me but I wanted to get your thoughts on it in this application.

Hello,

So the Antigravity ESC is a sensorless ESC and cannot be used for position control application.

About the “built in PID” I guess you are talking about a position control loop running on the motor controller right?
The Veronte GIM3 is closer to what we need, but I couldn’t find a complete documentation. My concern is that it might not allow you to set position, velocity AND torque references at the same time. Let me explain…

High frequency position and velocity feedback embedded in the motor controller is indeed preferable, closing the loop entirely on a remote computer is much more challenging because of the lower control frequency and increased latency. In the same time, if you want to take advantage of the ODRI actuator, and control the “cartesian stiffness” of robot, you want to be able to send torque commands.

What we think to be the best, is to be able to have a low level impedance control (position and velocity feedback) with adjustable (and low) gains, plus a feedforward torque term.

i_q = Kp(position_ref - position) + Kd(velocity_ref - velocity) + i_q_feedforward

i_q is the motor current commands (proportional to the joint torque)
i_q_feedforward is the output of a higher level controller performing for example task space inverse dynamics, leg impedance control or simply gravity compensation.

So Kp and Kd would correspond to the P and D of the PID. We do not want to have an integral (I) term because we want to do force control. The integral term would kill the feedforward term and make the joint position controlled.

I began to list the controllers that I had in mind here, again we did not test any of them…


I only listed the open source solution.

About Odrive controller, It’s a great project with a very active community. I was following it at the beginning, and from what I remembered, they had problems with motor with low inductance (this is what we have) You might want to ask them in this forum https://discourse.odriverobotics.com/

I was a bit disappointed when they decided to close source the hardware…

Best, Thomas

2 Likes

That’s what I figured for the Antigravity ESC. Thanks for all the info and recommendations! Looks like the ODrive is the best candidate for my team so we’ll move forward with that.