Danfoa / MorphoSymm

Tools for exploiting Morphological Symmetries in robotics
https://danfoa.github.io/MorphoSymm/
MIT License
49 stars 3 forks source link

Loading Aliengo/Solo/Atlas robot not working #5

Closed itaouil closed 7 months ago

itaouil commented 7 months ago

Hi,

When I try lo load the symmetries for the robot aliengo as follows:

robot, G = load_symmetric_system(robot_name='aliengo')

I get the following error (which does not happen only for mini_cheetah but it does for the others robots as well like atlas, solo and others):

image

itaouil commented 7 months ago

By digging deeper I think it is an issue with the config file associated with aliengo and also some other robots. For example, the config file for aliengo is:

defaults:
  - base_robot

name: a1

hip_height: 0.4

group_label: C2
# QJ: Joint Space symmetries____________________________________
permutation_Q_js: [[3, 4, 5, 0, 1, 2, 9, 10, 11, 6, 7, 8]]
# Reflections are determined by joint frame predefined orientation.
reflection_Q_js: [[-1, 1, 1, -1, 1, 1, -1, 1, 1, -1, 1, 1]]

Except for the name being wrong, and it missing the - self in the defaults attribute compared to the config file of mini_cheetah, it is missing the information regarding TqQ_js.

Danfoa commented 7 months ago

Hi @itaouil,

Latest commit fixes this issue. By default if rep_TqQ is not defined in the robot configuration file, it will be assumed that rep_TqQ is equal to rep_Q.

This configuration is expressed in base_robot.yaml :

https://github.com/Danfoa/MorphoSymm/blob/05914b45cde43f5e1ddd76b6907f5912b355a825/morpho_symm/cfg/robot/base_robot.yaml#L8-L11