Study about general BLDC design - Tinymovr

We are two roboticians are we are interested in designing robots with BLDC motors. We are interested and inspired by ODRI project.
We just bought a Tinymovr controller and a MAD5005 KV280 motor but it was difficult to find some data to help design an articulation (which torque ? which I_q ? What is I_q ? Do we need really 10Amps for one motor ? Sounds crazy ?..)

Here is a report about two motors (a small one also, because we had it, and nice to make silent animatronics)

Torque response and speed response and position response in progress (with Leap Motion)

We then will add an ODRI-like belt reductor to build a leg, measure torque and build the frequency response (Bode diagram)

1 Like

Hello tpeyruse,

I will let other answer you about how to size the maximum torque, but I would say it really depend on your application…

About I_q,
To put it simply, I_q is the equivalent current corresponding to a DC model of your motor.

Indeed to control 3 phases PMSM, the motor controllers needs to apply a rotating magnetic field in the stator. This is done by applying 3 120 deg shifted sinusoidal currents in each phases.

The direction of this field is linked to the rotor position (the magnets). The algorithm that will regulate and orient this field by applying phase current is called Field Oriented Control (FOC).

In the FOC algorithm, we define two axis in a frame linked to the rotor: the Quadrature axis (q in I_q) and Direct axis (d in I_d).


The Q axis is the part of the current that will tend to rotate the rotor and so apply torque. The D axis is the part that do not produce torque (it attracts the rotor where it already is), so we want to regulate this part to 0.

Here is a nice introduction to FOC: https://www.roboteq.com/technology/field-oriented-control
another one: https://www.trinamic.com/technology/motor-control-technology/field-oriented-control/

Now, 10 Amps might sounds a lot, but as you’ve seen in your measurements, it doesn’t always mean a lot of power, since you will have quite low voltage between your motor phases.
It depends on your motor speed, Kv and your phase resistance.

I hope this helps,
Best,

Thomas.

2 Likes

Thank you,

the key word is Field Oriented Control. (I thought FOC as an alternative of BLDC… too much letters…). Then, thank you for your words and links, it will help our investigations.
We will report the performances of the leg with the Tinymovr.

Hello,

here is our advancement on the project to make an ODRI actuator with a Tinymovr controller integrated inside. Made in Gers/France :slight_smile:

Here is our temporary code (pygame driven)

2 Likes

Bravo !!
Very nice setup!

1 Like

Here is a new update of the project. Since the last video, we wanted to make a clean integration inside ROS2 Foxy.
Our final objective for this quad robot is to have an animation platform to design the quad robot as a medium platform. A kind of “Street Art Robotics”
The brushless control offers more than classical speed, torque or position control, that is why we are investigating about another kind of motor interface control.
The first one is about constraint programming by optimisation.

Therefore, we :

  • made the URDF od the robot
  • designed a trajectory controller for Tinymovr controllers taking into account absolute angle measurement
  • Plugged a T265 Intel realsense camera to get odometry and main body quaternions
  • designed a specific node to compute direct kinematic with respect to mobile frame but also the Jacobian matrices (is there a node to compute them ?)
  • Using direct kinematic and Jacobians, a Newton Raphson in line algorithm takes a cost function to fix the foot position in the mobile frame.

Here is the video, We are going to share the code on this end of week.

1 Like