International inquiry - Designing a quadruped in Argentina

Greetings,

My name is Tadeo Casiraghi. I am currently working in a research lab in Argentina as part of a team designing a 12 DOF quadruped robot. We would like to build a robot like the one your team has designed, but access to the resources you have used is difficult in Argentina. SLS printing is commercially unavailable and importing components is not easy and expensive. Even if we could import all components, our budget is not enough to make that happen. Due to all this we are trying to emulate your design considering our limitations.

To reduce costs, we are trying to estimate actuator torques while running, jumping, and accelerating to select the best motors that suit our requirements. To validate our simulation, we want to compare our results with real world data, but said data is hard to find.

Do you have any experimental actuator torque/current logs during walking gaits? If so, would you be willing to share this data with us?

All help would be greatly appreciated.
Thank you.
Tadeo Casiraghi

Dear @Tadeo_Casiraghi ,

I am glad to see you are interested by our quadruped.

You will be able to download several logs here : OwnCloud - CNRS LAAS

These logs contain actuator positions, actuator velocities, base linear velocity, base angular velocity (roll pitch yaw) and actuator torques. Actuator torques come from motor current measurements times gear ratio (9) times torque constant (0.025) so if you want motor torques or motor currents you can get them.

You can retrieve data as numpy arrays with data = np.load(log_solo_2021_01_25_1.npz) for instance and then data[‘q’] data[‘v’] data[‘baseLinearVel’] data[‘baseAngularVel’] or data[‘tau’]. Time step is 0.002 second (500 Hz).

For the four experiments the robot is doing a trotting gait (front left – hind right feet touching the ground then front right – hind left).

Feel free to tell me if there is something weird in the data in case I messed up when making the .npz files.

Good luck with your project!

Best regards,
Pierre-Alexandre Léziart

1 Like

Dear @paLeziart ,

Thank you for the quick response and all the information! We’re sorry it took this long to properly thank you, but we wanted to work through the data before answering.

We’ve been working through the data to compare with our simulations, and we have some questions. For these experiments the robot is trotting, but based on the Base Linear Velocity it does not seem to be moving forward in just one direction. Do the 3 data values correspond with the forward, side and vertical axis of the robot? If so, was the robot not moving forward at a constant speed? What kind of movement was taking place in each dataset? (I would add the images separatedly but since I’m a new user im not allowed to add more than one image, so I’ve uploaded all the graphs as one image. The first 4 correspond to the base linear velocity, the last 4 correspond with the footpath)

We also have some questions regarding the path taken by the end-effector/foot. When applying forward kinematics with the q values we get the footpaths. To get this we assumed that, of the 12 rows q had, rows 1,4,7,10 were the ab/ad actuators, 2,5,8,11 were the hip actuators, and 3,6,9,12 were the knee actuators. We also assumed that the q values were the final values, rather than motor values. Finally, we assumed that the link lengths were all 0.16 meters. As observed, in most cases the path is at some points fairly vertical with little horizontal displacement. In one case that’s all it does. Was the robot jumping in its place?. Furthermore, in two of the 3 datasets that show a horizontal displacement it’s heavily skewed to the back. Is this the path that was implemented? Is there something wrong with how we obtained the end effector path?

Thank you again for your data and your time!

Tadeo Casiraghi

Dear @Tadeo_Casiraghi ,

I apology for the delay of my answer, I missed the notification of your reply…

The 3 data values in baseLinearVel correspond to the estimated velocity of the base along the forward, side (to the left) and vertical (upward) axes in m/s. Sorry for the second file (upper right corner on your figure) it seems something went wrong for baseLinearVel, it’s not the right data… The three others are good.

Two of the experiments (upper left and upper right corner) are experiments during which the robot was given a 0 velocity command so it just tries to stay where it is. During the other two experiments the robot was given a forward velocity command. In bottom left corner the robot initially had a 0 velocity command then received a bell-shaped forward velocity command (up to ~0.5 m/s) and finished the experiment with a 0 velocity command. In the bottom right corner the robot also initially had a 0 velocity command then a forward velocity.

You are right for the q values, they are the “actuator” angles and not the motors angle (reduction ratio of 9 if you want to do the conversion).

Feet are always moving with a gait period of 0.32s. The gait is a trotting gait (front left + hind right in swing phase then front right + hind left in swing phase). The trajectory in the air has an apex altitude of 5 cm and guides feet from their initial position on the ground to the position desired by the controller. For the two first experiments since the robot is staying at its initial position then feet have a motion that is mostly vertical: to stay in place the position on the ground where feet land is always roughly the same. For the two other experiments the robot is moving forwards so feet land in front of the shoulder, stay on the ground during the swing phase then follow this bell-like trajectory during swing phase to get back in front of the shoulder (two figures in bottom right corner).

Tomorrow I will send you a link to download more complete recordings with motion capture data so that you also have the ground truth and an easier understanding and analysis of what is happening. I should have done that in the first place, sorry for that.

Best,

Pierre-Alexandre Léziart

1 Like

Hello,

I uploaded recordings of two experiments on this online repository : https://github.com/paLeziart/solo12-recordings

Details about the logs are explained in the README.

Best regards,
Pierre-Alexandre

1 Like