Closed traversaro closed 1 month ago
@traversaro, this feature is a dream! I appreciate it!
Thanks a lot @traversaro! Just a curiosity, have you already tested the PR on the robot?
Thanks a lot @traversaro! Just a curiosity, have you already tested the PR on the robot?
No, I just tested it on the test added in https://github.com/robotology/whole-body-estimators/pull/177 (catching a couple of bugs). The PR does not need any change in the configuration files, so it should be quite straightforward to test on the robot.
The pixi crash on Windows was a byproduct of switching from Visual Studio to Ninja, by doing so the default build type switched to Debug, and conda-forge binaries are not compatible with Debug. Changing to have explicit build type for all projects fixed the problem.
CI is happy, PR is ready for review/test on robot/merge.
With @LoreMoretti we tested it on the robot. We did the following modification
diff --git a/ergoCubSN002/estimators/wholebodydynamics.xml b/ergoCubSN002/estimators/wholebodydynamics.xml
index b662ac180..84e479e7b 100644
--- a/ergoCubSN002/estimators/wholebodydynamics.xml
+++ b/ergoCubSN002/estimators/wholebodydynamics.xml
@@ -27,7 +27,7 @@
</group>
<group name="multipleAnalogSensorsNames">
- <param name="SixAxisForceTorqueSensorsNames">(l_leg_ft, l_foot_front_ft, l_foot_rear_ft, r_leg_ft, r_foot_front_ft, r_foot_rear_ft, r_arm_ft, l_arm_ft)</param>
+ <param name="SixAxisForceTorqueSensorsNames">(l_foot_front_ft, l_foot_rear_ft, r_foot_front_ft, r_foot_rear_ft, r_arm_ft, l_arm_ft)</param>
</group>
Here is the result with the robot on the ground
There is no force on the legs :partying_face:
Great, thanks!
In particular:
multipleAnalogSensorsNames::SixAxisForceTorqueSensorsNames
parameter. This PR just changes the logic so that the list of FT sensors loaded by the model are modified to only include the sensors specified in themultipleAnalogSensorsNames::SixAxisForceTorqueSensorsNames
. So, after this PR you can just specify the FT sensors to use by editing themultipleAnalogSensorsNames::SixAxisForceTorqueSensorsNames
list, without any need to modify the URDF (the only thing that you need to make sure is that the FT sensors specified in the URDF are a superset of the one specified inmultipleAnalogSensorsNames::SixAxisForceTorqueSensorsNames
.multipleAnalogSensorsNames::TemperatureSensorsNames
parameter to specify the temperature sensors to use is not supported anymore, as if the temperature compensation is used, it will be assumed that all the sensors specified inmultipleAnalogSensorsNames::SixAxisForceTorqueSensorsNames
also provide a temperature sensor with the same name.Fix https://github.com/robotology/whole-body-estimators/issues/183 . Fix https://github.com/robotology/whole-body-estimators/issues/32 .