osrf / srcsim

Space Robotics Challenge
Other
9 stars 4 forks source link

hand_desired_configuration doesn't appear to work #43

Closed osrf-migration closed 7 years ago

osrf-migration commented 7 years ago

Original report (archived issue) by Rud Merriam (Bitbucket: rmerriam).


The HandDesiredConfigurationRosMessage appears not to work. Let me know if anyone else has gotten it to work.

This message should cause the hand to change configuration but doesn't. Checking the data with rostopic shows the data is valid.

#!text

rostopic pub -1 /ihmc_ros/valkyrie/control/hand_desired_configuration ihmc_msgs/HandDesiredConfigurationRosMessage '1' '2' '1'
osrf-migration commented 7 years ago

Original comment by Joey Gannon (Bitbucket: joeygannon).


Bumping for visibility. Any updates on this?

osrf-migration commented 7 years ago

Original comment by Rud Merriam (Bitbucket: rmerriam).


osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


I don't think the hand_desired_configuration interface will be supported. We are still documenting the grasping control, but an early example can be viewed in the following repository:

There are currently some quirks with grasping that will be fixed by the following pull request:

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


Note, I still need to figure out how to publish the joint_states for the fingers in that example package.

osrf-migration commented 7 years ago

Original comment by Joey Gannon (Bitbucket: joeygannon).


Thanks for the update. Do you have an ETA for when this will all be ready to go? We've already demonstrated our walking prowess during qualification, and the other tasks available in the world file right now all require grasping, so this is a major blocker for development.

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


Have you tried the example package that I posted? I'll try to get the joint_states working today. You may be able to get started now with what is there.

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


I added joint state publishing in https://github.com/scpeters/val_grasping/commit/300150b5c3b7c891fe6d0ca361f2a485945a2c75

osrf-migration commented 7 years ago

Original comment by Rud Merriam (Bitbucket: rmerriam).


Just tried this but the catkin_make generates the error

#!c++

 Could not find a package configuration file provided by  "position_controllers" with any of the following names:

The roslaunch is successful but errors are generated on the main R5 launch terminal:

#!c++

[ERROR] [1488944266.416344463, 17.207000000]: Could not load controller 'hands_joint_state_controller' because controller type 'joint_state_controller/JointStateController' does not exist.
[ERROR] [1488944266.416389370, 17.207000000]: Use 'rosservice call controller_manager/list_controller_types' to get the available types
[ERROR] [1488944267.420036963, 17.626000000]: Could not load controller 'left_hand_position_controller' because controller type 'position_controllers/JointGroupPositionController' does not exist.
[ERROR] [1488944267.420070207, 17.626000000]: Use 'rosservice call controller_manager/list_controller_types' to get the available types
[ERROR] [1488944268.423618697, 18.053000000]: Could not load controller 'right_hand_position_controller' because controller type 'position_controllers/JointGroupPositionController' does not exist.
[ERROR] [1488944268.423644468, 18.053000000]: Use 'rosservice call controller_manager/list_controller_types' to get the available types

Guess we don't have the latest controllers needed for this.

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


Sorry, you'll need to apt-get install ros-indigo-position-controllers ros-indigo-joint-state-controller

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


and you'll have to restart the simulation after installing those packages so the controller manager will recognize them

osrf-migration commented 7 years ago

Original comment by Rud Merriam (Bitbucket: rmerriam).


  1. Installed the two controllers
  2. Ran catkin_make without errors
  3. Simulation was not running so started a new one
  4. Ran the controller launch command.
  5. Ran the four example commands.
    1. The thumb rotation worked, i.e. first value in list.
    2. No response from the other 4 values on either hand.
  6. Used rostopic echo to make sure the left command was sent properly.

Tried restarting the simulation, launch and topic command multiple times. The thumb rotation can be controlled but nothing else.

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


I may have used the wrong sign in the example commands. I'll test it later this morning to be sure.

osrf-migration commented 7 years ago

Original comment by Rud Merriam (Bitbucket: rmerriam).


I reversed the sign of the values and got movement.

What are the ranges for the values?

I took the left command and made it right command. The hand and arm twitched to the back of R5 and then came around to the front with the fingers moved. I assume that exceeded some value.

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


Yeah, sorry I had reversed the commands. The hand twitches due to numerical instability that will be fixed by https://gitlab.com/nasa-jsc-robotics/val_description/merge_requests/16

I've uploaded a urdf with the updated gains here:

osrf-migration commented 7 years ago

Original comment by Harish Balasubramaniam (Bitbucket: harishbalasub).


Can you please give a dummies version of how to install this merge or pull request for the hand configuration to work? I have my simulation working and dont want to screw it up with indiscriminate merging.

osrf-migration commented 7 years ago

Original comment by Harish Balasubramaniam (Bitbucket: harishbalasub).


I update the changes in https://gitlab.com/nasa-jsc-robotics/val_description/merge_requests/16 But when I updated the change in https://gist.github.com/scpeters/2cf636be6271cd94351c014138856180 my unique_task1.launch fails to load

<<

Building 50% > :runJavaDelegateexception subscribing to JointAPS_Angle_Rad : /left_hand/thumb_roll/JointAPS_Angle_Rad has not been registered. exception subscribing to JointAPS_Vel_Radps : /left_hand/thumb_roll/JointAPS_Vel_Radps has not been registered. exception subscribing to JointTorque_Des_Nm : /left_hand/thumb_roll/JointTorque_Des_Nm has not been registered. exception subscribing to JointTorque_Meas_Nm : /left_hand/thumb_roll/JointTorque_Meas_Nm has not been registered. exception subscribing to Position_Des_Rad : /left_hand/thumb_roll/Position_Des_Rad has not been registered. exception subscribing to Velocity_Des_Radps : /left_hand/thumb_roll/Velocity_Des_Radps has not been registered. 2017-03-17 21:14:36 localhost ncl_cpp: [ERROR ] [gov.nasa.RobotInterface.addJointsAndActuators] Exception encountered while attempting to add an actuator! Check your URDF for correct XML formatting! [ERROR] [1489810476.914603014, 7.253000000]: Exception encountered while attempting to add an actuator! Check your URDF for correct XML formatting! 2017-03-17 21:14:36 localhost ncl_cpp: [ERROR ] [gov.nasa.HardwareInterface.makeHandle] Robot Hardware has failed Initialized properly.

[ERROR] [1489810476.914852300, 7.253000000]: Fatal exception error encountered initializing RobotHardwareInterface, exiting 2017-03-17 21:14:36 localhost ncl_cpp: [FATAL ] [gov.nasa.ControllerExec.ORO_main] Error encountered during configure hook for controller_manager component! ================================================================================REQUIRED process [controller_manager_harishb_Macmini_14180_2103164701046559341-1] has died! process has died [pid 14200, exit code 1, cmd /opt/nasa/indigo/lib/val_controller_manager_rtt/controller_exec --rate 500 -s __name:=controller_manager_harishb_Macmini_14180_2103164701046559341 __log:=/home/harishb/.ros/log/60596ae2-0b91-11e7-8965-a8206616676f/controller_manager_harishb_Macmini_14180_2103164701046559341-1.log]. log file: /home/harishb/.ros/log/60596ae2-0b91-11e7-8965-a8206616676f/controller_manager_harishb_Macmini_14180_2103164701046559341-1*.log Initiating shutdown!

[controller_manager_harishb_Macmini_14180_2103164701046559341-1] killing on exit shutting down processing monitor... ... shutting down processing monitor complete done

osrf-migration commented 7 years ago

Original comment by Harish Balasubramaniam (Bitbucket: harishbalasub).


Also the val_description changes did not make the hand configuration work.

I am not sure what the status of the software is . Are we supposed to dive into all the pull and merge requests , or will there be an update in https://osrf-migration.github.io/srcsim-gh-pages/#!/osrf/srcsim/wiki/finals_task1 ?

osrf-migration commented 7 years ago

Original comment by Sam Pfeiffer (Bitbucket: awesomebytes).


@scpeters as soon as I launch your launchfile my Real Time Factor drops from my (already slow) 0.3 to 0.00. Is it normal?

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


I have seen some delays when launch the hand controllers. It eventually resumes full speed, but I'm not sure why that delay occurs. I can sometimes avoid the delay if I start the hand controllers early in the simulation.

osrf-migration commented 7 years ago

Original comment by dan (Bitbucket: dan77062).


works well, fingers and thumbs responding nicely.

osrf-migration commented 7 years ago

Original comment by dan (Bitbucket: dan77062).


hand_desired_configuation still doesn't work. Is that going to be incorporated, or should we plan to just use these new topics?

osrf-migration commented 7 years ago

Original comment by dan (Bitbucket: dan77062).


@scpeters We are about to spend a TON of time incorporating the val_grasping code into our algorithms. Is there some assurance that this controller and these topics will be used in the final configuration and we will not have to go back to the IHMC topics?

osrf-migration commented 7 years ago

Original comment by Louise Poubel (Bitbucket: chapulina, GitHub: chapulina).


osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


We have released an updated package with the val_grasping code included in srcsim, so it will start automatically. You will not have to go back to the IHMC topics. Please sudo apt-get update; sudo apt-get dist-upgrade to try it.

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


That upgrade should also have all the urdf improvements from the pending val_description pull requests

osrf-migration commented 7 years ago

Original comment by Rud Merriam (Bitbucket: rmerriam).


The grasping is working, at least the fingers move. Haven't tried to do anything yet.

There is no documentation on the API page.

Do one of the joint output command accurately reflect these positions? They seem to report all the finger joints, not just the position from these topics. Is that correct?

General question is which of the various joint commands are (1) going to be available and (2) are meaningful?

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


We are working on a tutorial about grasping here:

osrf-migration commented 7 years ago

Original comment by Louise Poubel (Bitbucket: chapulina, GitHub: chapulina).


The grasping controller has been integrated on pull request #51, and a tutorial was added here