robotology / whole-body-controllers

Simulink-based whole body controllers for humanoid robots.
116 stars 43 forks source link

Merge devel into master - minor changes and fixes #130

Closed gabrielenava closed 3 years ago

gabrielenava commented 3 years ago

Should fix https://github.com/robotology/robotology-superbuild/issues/782

I will remove the WIP after a quick check on the files that are going to change with this PR

gabrielenava commented 3 years ago

This line should fix robotology/robotology-superbuild#782:

https://github.com/robotology/whole-body-controllers/pull/130/files#diff-b6e8b8151b0d0ca6bc4683de2f15a202bb8e6509ff267e369f2e86bd1b5e7564R251

Almost all modifications are related to the velocity controller design and the simulink only controller, and seem fine to me.

I saw that a library function has been modified:

https://github.com/robotology/whole-body-controllers/pull/130/files#diff-f06e5dda84358212d4b98db1ac60ac85e289284ce393c9776b46fae02cba9936

I need to check if this function is used in other controllers such as https://github.com/robotology/whole-body-controllers/tree/master/controllers/floating-base-balancing-torque-control, as the number of inputs changed.

cc @traversaro

gabrielenava commented 3 years ago

As I suspected, the modification of the inputs of checkInputSpikes.m broke all controllers, including the ones that are not in whole-body-controllers (for example, iRonCub ones):

image

Therefore I will revert this modification, and apply it in a separate branch that before being merged in devel will also require to update all controllers because of this modification, at least the ones in whole-body-controllers. Also, the users should be warned that such modification is introduced so that they can update their controllers accordingly.

cc @traversaro @nunoguedelha @CarlottaSartore

I proceed reverting the changes in devel branch.

gabrielenava commented 3 years ago

With https://github.com/robotology/whole-body-controllers/pull/130/commits/20ba6af98f3891566bbf831f75c8f9b9b179632a I reverted and tested, now the controllers are working.

I double-checked all others modifications and they seem fine to me.

With https://github.com/robotology/whole-body-controllers/pull/130/commits/7bf78dce0818224a01f624ca6b2b919c4c89a662 I created a checkInputSpikesWithSimulator.m function in the library to restore compatibility also with the Simulink-only simulator. I think for now it is ok, I will open an issue to remove the duplicates and converge to a single function.

Fixed also other small issues.

Now devel can be merged into master.

cc @traversaro @nunoguedelha @CarlottaSartore