grasp and motion planning with underwater intervention vehicles
TRANSCRIPT
![Page 1: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/1.jpg)
Grasp and Motion Planning with
Underwater Intervention Vehicles running ROS
The experience of
TRIDENT EU project
Mario PratsIROS 2012 Tutorial on
Handling ROS
www.irs.uji.es/trident
![Page 2: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/2.jpg)
Outline
● The TRIDENT FP7 Project● Motivation, goal and challenges● The role of ROS
● UWSim: a ROS-based underwater simulator ● Installation and first steps
● Hands on: Motion planning on underwater vehicles with manipulators
● Hands-on: Laser-stripe 3D reconstruction and grasp planning
![Page 3: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/3.jpg)
The TRIDENT FP7 project
● Main goal:
Improvement of autonomous manipulation capabilities in current underwater robots
![Page 4: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/4.jpg)
The TRIDENT FP7 project
Main goal:
How?● New user interfaces
● More perception
● Free floating
● Etc.
Improvement of autonomous manipulation capabilities in current
underwater robots
![Page 5: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/5.jpg)
Current approach: ROVs
AF 447
![Page 6: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/6.jpg)
2 years4 attempts 45m$
AF 447 Black box recovery
![Page 7: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/7.jpg)
Current approach: ROVs
![Page 8: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/8.jpg)
TRIDENT – Marine Robots and Dexterous Manipulation for Enabling Autonomous Underwater Multipurpose Intervention Missions (2010-2013)
PHASE I (Survey): 1) Launching.2) Survey.3) Recovery.
PHASE II (Intervention): 4) Launching.5) Approaching.6) Intervention.7) Recovery.
Target Selection & InterventionSpecification
![Page 9: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/9.jpg)
![Page 10: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/10.jpg)
![Page 11: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/11.jpg)
Intervention Autonomous Underwater Vehicle (I-AUV)
![Page 12: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/12.jpg)
Challenges: Floating platform
![Page 13: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/13.jpg)
Limited power and sensors
![Page 14: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/14.jpg)
TRIDENT Results
Roses,Girona (Spain) Oct 2011
![Page 15: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/15.jpg)
TRIDENT Results
Soller, Mallorca (Spain) Oct 2012
TRIDENT Results
![Page 16: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/16.jpg)
Use of ROS in TRIDENT
![Page 17: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/17.jpg)
Underwater manipulation
![Page 18: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/18.jpg)
UWSim: a ROS-based underwater simulator
● OpenSceneGraph● osgOcean● Bullet● ROS
![Page 19: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/19.jpg)
UWSim: install the sources and build
$ mkdir ~/iros2012_tutorial$ cd ~/iros2012_tutorial$ rosinstall .https://ujirospkg.googlecode.com/svn/iros2012_tutorial.rosinstall /opt/ros/electric/$ source setup.bash
● underwater_simulation stack includes osgOcean, UWSim and underwater_vehicle_dynamics:
$ rosdep install UWSim$ rosmake UWSim
Install files for rviz:
$ roscd UWSim$ make rvizdata
![Page 20: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/20.jpg)
UWSim
![Page 21: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/21.jpg)
Customizable environment
![Page 22: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/22.jpg)
Multiple robots
![Page 23: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/23.jpg)
Surface Vehicles
![Page 24: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/24.jpg)
Surface Vehicles
![Page 25: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/25.jpg)
Sensor simulation
● Virtual cameras● DVL, IMU, GPS● Joint encoders● Range sensors (sonar)
![Page 26: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/26.jpg)
ROS Interface
● nav_msgs/Odometry● sensor_msgs/JointState● sensor_msgs/Image● sensor_msgs/Range● sensor_msgs/Imu● geometry_msgs/Pose● geometry_msgs/Twist
![Page 27: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/27.jpg)
UWSim – run
$ rosrun UWSim UWSim [disableShaders] [configfile <file.xml>]
![Page 28: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/28.jpg)
UWSim Hands On
Move the vehicle:
$ rosrun UWSim setVehicleTwist /g500/twist 0.2 0 0 0 0 0$ rosrun UWSim setVehiclePose /g500/pose 2 2 0 0 0 0.8
Playing with stereo:
$ rosrun UWSim UWSim –configfile cirs_stereo.xml$ ROS_NAMESPACE=stereo_down rosrun stereo_image_proc stereo_image_proc$ rosrun rviz rviz (add PointCloud2 display)
![Page 29: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/29.jpg)
Use case: vision
![Page 30: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/30.jpg)
![Page 31: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/31.jpg)
Use case: autonomous control
![Page 32: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/32.jpg)
Use case: grasping
![Page 33: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/33.jpg)
Use case: online visualization
![Page 34: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/34.jpg)
Hands on
1) Inverse kinematics on an I-AUV using KDL
2) 3D reconstruction with a laser stripe emitter
3) User-guided grasp planning on a point cloud
![Page 35: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/35.jpg)
Inverse kinematics of an I-AUV
$ roscd auv_ik$ rosmake auv_ik$ roslaunch auv_ik arm5e_ik.launch
With rviz:$ rosrun rviz rviz (load robot_model and set fixed frame to “world”)
With UWSim:$ rosrun UWSim UWSim
$ rosparam set (goalx | goaly | goalz | goalrz ) value
Knowing a goal where to move the hand, compute a suitable vehicle-arm configuration
![Page 36: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/36.jpg)
ARM5Arm class:
mar/mar_robot_arm5e/include /mar_robot_arm5e/ARM5Arm.h
mar/mar_robot_arm5e/src/ARM5Arm.cpp
ARM5Arm::vehicleArmIK(vpHomogeneousMatrix &wMe) method:
//Forward position solver
KDL::ChainFkSolverPos_recursive fksolver(auvarm_chain);
//Custom Inverse velocity solver (grasp redundancy)
KDL::ChainIkSolverVel_pinv_red iksolverv(auvarm_chain);
iksolverv.setBaseJacobian(true);
KDL::ChainIkSolverPos_NR iksolver(auvarm_chain, fksolver,iksolverv,100,1e6);
Inverse kinematics of an I-AUV
![Page 37: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/37.jpg)
Kinematic Solvers:
mar/mar_robot_arm5e/include /mar_robot_arm5e/ARM5Solvers.h
mar/mar_robot_arm5e/src/ARM5Solvers.cpp
KDL::ChainIkSolverVel_pinv_red class:
int ChainIkSolverVel_pinv_red::CartToJnt(const JntArray& q_in, const Twist& v_in, JntArray& qdot_out)
Line 123: qdot=Jriv*vh+(IJriv*Jr)*sv;
Inverse kinematics of an I-AUV
![Page 38: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/38.jpg)
Laser stripe reconstruction and pc_guided_grasp_planning
![Page 39: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/39.jpg)
Laser stripe reconstruction and pc_guided_grasp_planning
Install:$ rosdep install laser_stripe_reconstruction$ rosdep install pc_guided_grasp_planning$ rosmake underwater_grasping- Download laser_scan.bag
Laser stripe reconstruction:$ roslaunch laser_stripe_reconstruction arm5e_laser_reconstruction.launch fixed:=true output_basename:=seafloor$ rosbag play laser_scan.bag Press Ctrl-C when finished$ rosrun pcl pcd_viewer data/seafloor.pcd
Grasp planning:$ roslaunch pc_guided_grasp_planning arm5e_pc_grasp_planning.launch input_basename:=seafloor
![Page 40: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/40.jpg)
Laser stripe reconstruction and pc_guided_grasp_planning
![Page 41: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/41.jpg)
Laser stripe reconstruction and pc_guided_grasp_planning
![Page 42: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/42.jpg)
Conclusions
● Lots of packages ready to use● stereo_image_proc, libviso2, ompl, drivers
● ROS facilitates integration● Great when doing field experiments● Allows focusing on getting results
![Page 43: Grasp and Motion Planning with Underwater Intervention Vehicles](https://reader031.vdocument.in/reader031/viewer/2022021307/620751e449d709492c3040cc/html5/thumbnails/43.jpg)
Questions?
End