ami-iit / yarp-openmct

Repo for YARP and OpenMCT integration.
BSD 3-Clause "New" or "Revised" License
6 stars 1 forks source link

Visualise `inertials` (from all IMUs) #124

Closed nunoguedelha closed 2 years ago

nunoguedelha commented 2 years ago

Visualise the inertial data (rpy, gyro, accelerometer) from all the IMUs available on the robot, e.g. on iCubGenova09:

The sensors Yarp wrapper configuration files are located at ami-iit/robots-configuration#devel_iCubGenova09.

IMU sensor location Config file YARP port Device Type
Head head-inertials_wrapper.xml /icub/head/inertials/measures:o multipleanalogsensorsserver
Left arm left_arm-IMU_wrapper.xml /icub/left_arm/imu/measures:o multipleanalogsensorsserver
Right arm right_arm-IMU_wrapper.xml /icub/right_arm/imu/measures:o multipleanalogsensorsserver
Left leg left_leg-IMU_wrapper.xml /icub/left_leg/imu/measures:o multipleanalogsensorsserver
Right leg right_leg-IMU_wrapper.xml /icub/right_leg/imu/measures:o multipleanalogsensorsserver
Left foot left_foot-IMU_wrapper.xml /icub/left_foot/imu/measures:o multipleanalogsensorsserver
Right foot right_foot-IMU_wrapper.xml /icub/right_foot/imu/measures:o multipleanalogsensorsserver
Torso torso_inertial_wrapper.xml /icub/torso/inertialGYRO analogServer
Device Type Data Format
multipleanalogsensorsserver ( ((Euler x-y-z) timestamp) ((Accelerometer x-y-z) timestamp) ((Gyroscope x-y-z) timestamp) ((Magnetometer x-y-z) timestamp) ) () () () ...
analogServer (Euler x-y-z Accelerometer x-y-z Gyroscope x-y-z Magnetometer x-y-z)
nunoguedelha commented 2 years ago

Implementation Steps

nunoguedelha commented 2 years ago

I have a doubt about the torso data format (/icub/torso/inertialGYRO), I have to check with @S-Dafarra ...

S-Dafarra commented 2 years ago

I have a doubt about the torso data format (/icub/torso/inertialGYRO), I have to check with @S-Dafarra ...

Can you please give me some detail about what you would need to check?

nunoguedelha commented 2 years ago

I need to check the format of the output data on /icub/torso/inertialGYRO. It would be enough if you just read the port on a terminal and send me an output sample.

S-Dafarra commented 2 years ago

I need to check the format of the output data on /icub/torso/inertialGYRO. It would be enough if you just read the port on a terminal and send me an output sample.

There is no such port on iCub3.

I tried to read /icub/left_arm/imu/measures:o and here is the output

(((-0.0625 0.0 0.0) 1661963846.1387887001)) (((-2.66999999999999992895 -1.09000000000000007994 -9.39000000000000056843) 1661963846.13878726959)) (((0.0 0.0 0.0) 1661963846.13878774643)) (((-173.9375 15.8125 283.75) 1661963846.13878893852)) () () () () () ()
(((-0.0625 0.0 0.0) 1661963846.1387887001)) (((-2.66999999999999992895 -1.09000000000000007994 -9.39000000000000056843) 1661963846.13878726959)) (((0.0 0.0 0.0) 1661963846.13878774643)) (((-173.9375 15.8125 283.75) 1661963846.13878893852)) () () () () () ()
(((-0.0625 -0.125 -0.25) 1661963846.18890333176)) (((-2.66999999999999992895 -1.10000000000000008882 -9.39000000000000056843) 1661963846.18890309334)) (((0.0 0.0 0.0) 1661963846.18890309334)) (((-173.9375 15.8125 283.75) 1661963846.18890357018)) () () () () () ()
(((-0.0625 -0.125 -0.25) 1661963846.18890333176)) (((-2.66999999999999992895 -1.10000000000000008882 -9.39000000000000056843) 1661963846.18890309334)) (((0.0 0.0 0.0) 1661963846.18890309334)) (((-173.9375 15.8125 283.75) 1661963846.18890357018)) () () () () () ()
(((-0.0625 -0.125 -0.25) 1661963846.18890333176)) (((-2.66999999999999992895 -1.10000000000000008882 -9.39000000000000056843) 1661963846.18890309334)) (((0.0 0.0 0.0) 1661963846.18890309334)) (((-173.9375 15.8125 283.75) 1661963846.18890357018)) () () () () () ()
nunoguedelha commented 2 years ago

Yes that's the format I was expecting for the arms and legs IMUs ports. I find it strange that the magnetometer values are so high... I had found the port name /icub/torso/inertialGYRO in the configuration files.

S-Dafarra commented 2 years ago

I had found the port name /icub/torso/inertialGYRO in the configuration files.

Can you link which file you are referring to?

nunoguedelha commented 2 years ago

Sorry I didn't mention, the links of the configuration files are in the table in the issue description: https://github.com/ami-iit/robots-configuration/blob/devel_iCubGenova09/iCubGenova09/wrappers/inertials/torso_inertial_wrapper.xml .

Probably the file is not added to the main icub interface configuration file.

nunoguedelha commented 2 years ago

As you mentioned in the meeting today that there is no actual IMU on the torso, or at least yet, and as agreed in the meeting, we drop the torso IMU in these changes. I'll update ASAP the PR.