hsp-iit/project-ergocub

Reliable Grasping and Bimanual Manipulation On ErgocubSN00

Closed this issue · 11 comments

This issue is to track the progress of the implementation of @Woolfrey 's module on the robot. Current issues faced;

  • What used to work with @Woolfrey 's module before ICRA demo seems to have changed. The hand movements are very shaky.
  • Unable to reliably collect data to debug. Jon had made yarp ports to publish the reference and actual joint positions. But yarpdatadumper doesn't seem to work as it seems to create a huge log file of many GB's for just joint data.

Suggestions for the way forward for now:

  • @Woolfrey can you change the data format on the yarp ports to Bottle instead of sig vector. That could be the issue with yardatadumper as it seems to want an input in Bottle or images.
  • I will try to finish a yarp-to-ros wrapper to morrow to record the data so that we may use rosbag. Just the references should be sufficient as we can use robot-state-publisher from ROS to get the joint states.
xEnVrE commented

Unable to reliably collect data to debug. Jon had made yarp ports to publish the reference and actual joint positions.

if these are available, instead of using the quite old yarpdatadumper or working to have the data available in ROS, you might want to use the logger device made available by AMI. This is very handy as it allows to replay the data back within a GUI and to check and superimpose all the signals.

I should also have a configuration file ready as we have used it to check the tracking quality of finger joints with Gabriele.

Nonetheless, the yarpdatadumper should definitively work, can you post here the commands you have used to run it?

Nonetheless, the yarpdatadumper should definitively work, can you post here the commands you have used to run it?

yarpdatadumper --name /positionerror
yarp connect /positionError /positionerror

/positionError was Jon's yarp port . No errors were seen but the data gathered for just 20s-1min of operation was over 1.5 GB. I could not use yarpdataplayer. As I said I am guessing the error might be because the yarp port publishes in yarp::sig::Vector format whereas the recorded assumes by default the Bottle format.

xEnVrE commented

As I said I am guessing the error might be because the yarp port publishes in yarp::sig::Vector format whereas the recorded assumes by default the Bottle format.

In the past I always recorded yarp::sig::Vector data without no worries at all, you don't need to use Bottles. I think we should investigate this in more depth to find out the responsible.

xEnVrE commented

Btw, which version of YARP are you using, to start with?

As I said I am guessing the error might be because the yarp port publishes in yarp::sig::Vector format whereas the recorded assumes by default the Bottle format.

In the past I always recorded yarp::sig::Vector data without no worries at all, you don't need to use Bottles. I think we should investigate this in more depth to find out the responsible.

Okay sounds good. What do you need me to collect tot debug this.

Btw, which version of YARP are you using, to start with?

I have no clue of the version when I did this on the ergocub robot laptop last week. I checked it now and it seems to be on 3.8 branch.

xEnVrE commented

But yarpdatadumper doesn't seem to work as it seems to create a huge log file of many GB's for just joint data.

How many seconds were recorded, if you know it?

xEnVrE commented

I have tested collecting some data in simulation with iCub2.7 right now using

 yarpdatadumper --connect /icubSim/torso/state:o  --dir test

and did not see any strange behavior. The data is there inside data.log after I stopped the dumper. Can you check if you can ready anything reasonable inside your data.log? Thank you

But yarpdatadumper doesn't seem to work as it seems to create a huge log file of many GB's for just joint data.

How many seconds were recorded, if you know it?

It should be minimum of 30 seconds and maximum of 120 seconds.

I have tested collecting some data in simulation with iCub2.7 right now using

 yarpdatadumper --connect /icubSim/torso/state:o  --dir test

and did not see any strange behavior. The data is there inside data.log after I stopped the dumper. Can you check if you can ready anything reasonable inside your data.log? Thank you

I could not open data.log because it was too big and the yarp data player just crashed of showed nothing when we opened the file. We have the robot after 4 today. so i can try collecting data again today and maybe even show you if you are free around that time.

xEnVrE commented

so i can try collecting data again today and maybe even show you if you are free around that time.

Sure!

As of this moment, the joints tracking for all joints except the shoulder is okay. The shoulder joints will be re-tuned later this week and early next week. Unfortunately the floppy left wrist reported in this issue for fix robotology/icub-tech-support#1641, is preventing proper manipulation and grasp. I am closing this issue and will re-open another one as I am shifting the milestone.