pr2eus_tutorials package from jsk_pr2eus repojsk_pr2eus pr2eus pr2eus_armnavigation pr2eus_impedance pr2eus_moveit pr2eus_openrave pr2eus_tutorials |
|
Package Summary
Tags | No category tags. |
Version | 0.3.15 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/jsk-ros-pkg/jsk_pr2eus.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2023-06-22 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Kei Okada
- Masaki Murooka
Authors
- Kei Okada
pr2eus_tutorials
This is a repository for tutorials of pr2eus
Installation
To play with this package, you can choose from two installation methods.
We assume the ROS environment is kinetic
.
If you use ROS indigo
distribution, please replace the word kinetic
with indigo
(or appropriate distributions).
Using pre-built package
Install ROS
Follow the instruction of ROS installation
Install the package
sudo apt install ros-kinetic-pr2eus-tutorials
Load ROS Environment
source /opt/ros/kinetic/setup.bash
Using source package
Install ROS
Follow the instruction of ROS installation
Setup catkin workspace
source /opt/ros/kinetic/setup.bash
sudo apt install python-catkin-tools python-wstool python-rosdep git
sudo rosdep init
rosdep update
# Create catkin workspace and download source repository
mkdir -p ~/ros/kinetic/src && cd ~/ros/kinetic/src
wstool init
wstool set jsk-ros-pkg/jsk_pr2eus --git https://github.com/jsk-ros-pkg/jsk_pr2eus.git -v master
wstool update
# Install dependencies for building the package
rosdep install --from-paths . -i -r -n -y
# Build the package
cd ~/ros/kinetic
catkin init
catkin build
Load ROS Environment
source ~/ros/kinetic/devel/setup.bash
Tabletop Object Grasping Demo
Tabletop Object Grasping Demo with PR2
Startup nodes
First we need to start nodes used for this demo.
Using a real robot
# on PR2 real robot
ssh <robot address>
roslaunch pr2eus_tutorials pr2_tabletop.launch
If you try using compressed topic from the real PR2,
# on local machine
roslaunch pr2eus_tutorials pr2_tabletop.launch remote:=true
You can locate a desk in front of the robot and put any objects on it.
Using a simulator
You can set physics engine with roslaunch argument.
# on local machine
# It may take time to download materials for the first time
roslaunch pr2eus_tutorials pr2_tabletop_sim.launch physics:=dart
You can see the robot is spawned in a scene with a desk and some objects.
Run demo
Then we can now start the demo program for picking objects.
Start Euslisp program
# on local machine
rosrun pr2eus_tutorials pr2-tabletop-object-grasp.l
Start Rviz
After running the demo program above, you can see object bounding boxes in the RViZ
window.
It means the robot now recognizes each objects as individual objects from camera sensor inputs.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop.rviz
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, meaning using compressed topic from the real PR2, execute this instead.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop_remote.rviz
Additional setup for Kinetic local machine with a real robot
If you want to know why we need these node, please see here.
You also need to switch Tabletop Object
rviz panel topic from /bounding_box_interactive_marker/update
to /bounding_box_interactive_marker/kinetic/update
.
# on local machine
rosrun jsk_robot_utils marker_msg_from_indigo_to_kinetic.py
rosrun topic_tools relay /bounding_box_interactive_marker/kinetic/feedback /bounding_box_interactive_marker/feedback
Click object bouding on Rviz
You can click any object that you want the robot to pick up.
Click object on image_view2
You can click any pixels that you want the robot to pick up.
rosrun image_view2 image_view2 image:=/kinect_head/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, execute this instead.
rosrun image_view2 image_view2 image:=/kinect_head_remote/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
Step-by-step Description of Demo program
In the bottom of the demo program pr2-tabletop-object-grasp.l
, you can see a main function demo
.
(defun demo ()
(setq *grasping-object-p* nil)
(setq *arm* :rarm)
(setq *tfl* (instance ros::transform-listener :init))
(setq *tfb* (instance ros::transform-broadcaster :init))
(pr2-init)
(pr2-pregrasp-pose)
(wait-for-grasp-target))
The (pr2-init)
method is just a initialization function for pr2 robot that instantiate two objects required for robot manipulation from euslisp:
-
*pr2*
: This object is a kinematic model for a PR2 robot. This object includes any fundamental functions for robot modeling such as inverse kinematics, dynamics, geometric constraints and so on. You can visualize this model by evaluating(objects (list *pr2*))
. -
*ri*
: This is an object that send a control signal to the actual robot from euslisp kinematics model and receive the result or actual states of the robot.ri
is an abbreviation ofrobot interface
.
Please note that (pr2-init)
function is defined in pr2-interface.l
in the pr2eus
package.
In this demo program, the function is loaded in the top of the script:
(require :pr2-interface "package://pr2eus/pr2-interface.l")
After (pr2-init)
is executed, the kinematic model looks like below:
After initialized the robot in euslisp, (pr2-pregrasp-pose)
method is executed.
(defun pr2-pregrasp-pose ()
(send *pr2* :reset-manip-pose)
(send *ri* :angle-vector (send *pr2* :angle-vector) 5000)
(send *ri* :wait-interpolation))
The first line (send *pr2* :reset-manip-pose)
changes the pose of euslisp kinematic model to the predefined pose called reset-manip-pose
.
With calling this method, the actual robot does NOT move because this method only changes the states of the kinematic model. Instead you can see the current states of the kinematic model by (objects (list *pr2*))
.
The kinematic model now looks like below:
The second line then send the current state of kinematic model to the actual robot.
The second argument 5000
allows the robot to take 5000 milliseconds to move to the pose. If the second argument is omitted, the default argument 3000
will be used.
After the second line, it will take 5 seconds until the robot ends to move, but the method call itself returns immediately. The last method called in the last line is just for waiting for the robot until he ends to move to the specified pose.
Reach Object Demo
Reach Object Demo with PR2
# launch gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/wide_stereo/points2 h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/pr2_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(pr2-setup)
(reach-object-demo)
Reach Object Demo with HRP2JSK
hrpsys_gazebo_tutorials
is required.
(Currently, HRP2 model is not provided for open source projects.)
# launch gazebo
roslaunch hrpsys_gazebo_tutorials gazebo_hrp2jsk_no_controllers.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# lanch hrpsys
rtmlaunch hrpsys_gazebo_tutorials hrp2jsk_hrpsys_bringup.launch KINEMATICS_MODE:=true
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/xtion/depth/points h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/hrp2jsk_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(hrp2jsk-setup)
(reach-object-demo)
Changelog for package pr2eus_tutorials
0.3.15 (2023-04-17)
- integrate all .github/workflows/*.yml to config.yml, fix permission issue (#479)
- [pr2eus_tutorials] fix look-at-hand (#472)
- [pr2eus_tutorials] fix pr2_tabletop.launch for remote PC (#459)
- [pr2eus_tutorials] Fix publish status (#464)
- [pr2eus_tutorials] Select grasp position via 2D image (#437)
- Update pr2eus_tutorials README (#389)
- [pr2eus_tutorials] add pr2 tabletop demo test and sample (#387)
- Contributors: Furushchev, Kei Okada, Naoto Tsukamoto, Naoya Yamaguchi, Shingo Kitagawa, Shumpei Wakabayashi, Yuki Furuta
0.3.14 (2019-02-11)
- add jsk_interactive_marker (#349 ) c.f. https://github.com/jsk-ros-pkg/jsk_pr2eus/issues/348
- Contributors: Kei Okada
0.3.13 (2017-07-14)
0.3.12 (2017-07-11)
0.3.11 (2017-06-25)
- add test code for pr2 dual arm IK (#272 )
- Contributors: Chi Wun Au
0.3.10 (2017-03-02)
0.3.9 (2017-02-22)
0.3.8 (2017-02-07)
0.3.7 (2016-11-08)
0.3.6 (2016-11-02)
0.3.5 (2016-09-16)
0.3.4 (2016-06-22)
0.3.3 (2016-05-28)
0.3.2 (2016-05-26)
0.3.1 (2016-05-22)
- [pr2eus_tutorials/package.xml] add roseus_tutorials to run_depend
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix camera namespace openni -> kinect_head_c2
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix rviz config path
- [pr2eus_tutorials] cleanup directory
- move gazebo related launch files to [launch/gazebo]{.title-ref} directory
- move rviz config file to [config]{.title-ref} directory
- fix include path in launch files
- Contributors: Yuki Furuta
0.3.0 (2016-03-20)
- add files for reach object demo.
- [pr2eus_tutorials] remove dependency to pr2_gazebo.
- catkinize pr2eus_tutorials
- Contributors: Kei Okada, Masaki Murooka
0.2.1 (2016-03-04)
0.2.0 (2015-11-03)
0.1.11 (2015-06-11)
0.1.10 (2015-04-03 18:49)
0.1.9 (2015-04-03 16:52)
0.1.8 (2015-02-25)
0.1.7 (2015-02-10)
- add empty map in pr2 gazebo startup
- add startup launch file for gazebo pr2
- rename parameter and delete unused arg
- changed pos_z
- changed codes to be used in hydro
- add rot_{rpy} arguments to spawn_cylinder.launch
- add object spawner for gazebo
- remove absolute path
- Contributors: YoheiKakiuchi, ohara, tarukosu
0.1.6 (2014-05-11)
0.1.5 (2014-05-03)
0.1.4 (2014-05-02 22:28)
0.1.3 (2014-05-02 18:04)
0.1.2 (2014-05-01 22:43)
0.1.1 (2014-05-01 02:14)
- fix tabletop launcher
- update some template_grasp files
- fixed launch file path by addint _frontend.
- update parameter at base_trajectory
- update pr2_gazebo_empty.launch on pr2eus_tutorials
- fix typo null -> nil
- comment out dependancy unreleased package
- update tabletop-sample.l
- add comment to tabletop-sample.l
- update files for template grasp
- fix using arm navigation overridingopenrave
- temporary backup for migration
- Added some general comments. Also removed some old commented code that is not used.
- add one shot subscriber for point cloud
- fix bug
- update proc-detection
- add subscribe-detection-result.l
- add launch_objectdetection arguments for publish /ObjectDetection
- remove magic number. Using approach distance
- fixed the bug of unnecessary translation of graps-cds
- fix: arm-navigation sample
- fix: remove magic number
- add parameter: convert_to_base_link
- added hand-coords visualizer for image_view2
- added place function, check colliderreset
- launch realtime_tabletop on default template_grasp launch
- added y-or-n-from-tablet function
- bugfix coodinate transform of grasp pose
- add pr2_template_grasp_sim.launch
- update and add launch_object_manipulation
- merged comments and update from obsolates
- add comments
- added template_grasp samples, pick from android
- add comment
- fix: topic name for real robot
- add pr2_tabletop.launch
- add argument nav:=true to interactive_manipulation
- fix: launch_rviz -> run_rviz
- add goto-init-pose
- add pr2_tabletop_sim.launch
- fix: typo
- add pr2_interactive_manipulation_sim.launch
- add objects to pr2_gazebo_objects.launch
- add pr2eus_tutorials for using pr2eus software on simulation environment
- Contributors: YoheiKakiuchi, chen, kazuto, tatu, y-tnaka, youhei
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
pr2eus | |
jsk_pcl_ros | |
catkin | |
app_manager | |
eusurdf | |
pr2_gazebo | |
roseus_tutorials | |
image_view2 | |
jsk_interactive_marker | |
jsk_recognition_msgs | |
jsk_rviz_plugins | |
jsk_pr2_startup | |
jsk_maps | |
rostest |
System Dependencies
Dependant Packages
Launch files
- launch/gazebo/spawn_box.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: box]
- color [default: Green]
- size_x [default: 0.5]
- size_y [default: 0.5]
- size_z [default: 0.5]
- launch/gazebo/pr2_gazebo_empty.launch
-
- RUN_RVIZ [default: true]
- LAUNCH_NAVI [default: true]
- LAUNCH_BASE_CONTROLLER [default: true]
- launch/gazebo/pr2_tabletop_scene.launch
-
- gui [default: true]
- physics [default: ode]
- launch/gazebo/pr2_tabletop_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/spawn_model_in_database.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: table_model]
- type_name [default: table]
- launch/gazebo/spawn_objects.launch
- launch/gazebo/pr2_gazebo_objects.launch
-
- run_rviz [default: true]
- table_x_pos [default: 0.0]
- launch/gazebo/pr2_interactive_manipulation_sim.launch
- launch/gazebo/pr2_template_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/gazebo_image_relay.launch
- launch/gazebo/pr2_tabletop_sim.launch
-
- gui [default: true]
- run_rviz [default: true]
- publish_objects_tf [default: true]
- physics [default: ode]
- launch/gazebo/pr2_gazebo_startup.launch
-
- launch_empty_map [default: true]
- launch_move_base [default: true]
- launch_move_tilt_scan [default: true]
- launch_moveit [default: false]
- launch_moveit_gui [default: false]
- launch_openni [default: true]
- launch/gazebo/spawn_cylinder.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: cylinder]
- color [default: Green]
- length [default: 0.2]
- radius [default: 0.05]
- launch/pr2_tabletop.launch
-
- run_rviz [default: false]
- publish_objects_tf [default: true]
- launch_tracking [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- sim [default: false]
- remote [default: false]
- launch/pr2_tabletop_grasp.launch
-
- run_rviz [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- machine [default: c2]
- launch/tabletop_complete.launch
-
- flatten_table [default: false]
- model_set [default: REDUCED_MODEL_SET]
- tabletop_segmentation_points_input [default: narrow_stereo_textured/points2]
- launch/template_grasp.launch
-
- kinect_camera_name [default: openni]
- launch_object_manipulation [default: false]
- launch_realtime_tabletop [default: true]
- launch_objectdetection [default: false]
- apps/tabletop_grasp/tabletop_grasp.xml
Messages
Services
Plugins
Recent questions tagged pr2eus_tutorials at Robotics Stack Exchange
pr2eus_tutorials package from jsk_pr2eus repojsk_pr2eus pr2eus pr2eus_armnavigation pr2eus_impedance pr2eus_moveit pr2eus_openrave pr2eus_tutorials |
|
Package Summary
Tags | No category tags. |
Version | 0.3.15 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/jsk-ros-pkg/jsk_pr2eus.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2023-06-22 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Kei Okada
- Masaki Murooka
Authors
- Kei Okada
pr2eus_tutorials
This is a repository for tutorials of pr2eus
Installation
To play with this package, you can choose from two installation methods.
We assume the ROS environment is kinetic
.
If you use ROS indigo
distribution, please replace the word kinetic
with indigo
(or appropriate distributions).
Using pre-built package
Install ROS
Follow the instruction of ROS installation
Install the package
sudo apt install ros-kinetic-pr2eus-tutorials
Load ROS Environment
source /opt/ros/kinetic/setup.bash
Using source package
Install ROS
Follow the instruction of ROS installation
Setup catkin workspace
source /opt/ros/kinetic/setup.bash
sudo apt install python-catkin-tools python-wstool python-rosdep git
sudo rosdep init
rosdep update
# Create catkin workspace and download source repository
mkdir -p ~/ros/kinetic/src && cd ~/ros/kinetic/src
wstool init
wstool set jsk-ros-pkg/jsk_pr2eus --git https://github.com/jsk-ros-pkg/jsk_pr2eus.git -v master
wstool update
# Install dependencies for building the package
rosdep install --from-paths . -i -r -n -y
# Build the package
cd ~/ros/kinetic
catkin init
catkin build
Load ROS Environment
source ~/ros/kinetic/devel/setup.bash
Tabletop Object Grasping Demo
Tabletop Object Grasping Demo with PR2
Startup nodes
First we need to start nodes used for this demo.
Using a real robot
# on PR2 real robot
ssh <robot address>
roslaunch pr2eus_tutorials pr2_tabletop.launch
If you try using compressed topic from the real PR2,
# on local machine
roslaunch pr2eus_tutorials pr2_tabletop.launch remote:=true
You can locate a desk in front of the robot and put any objects on it.
Using a simulator
You can set physics engine with roslaunch argument.
# on local machine
# It may take time to download materials for the first time
roslaunch pr2eus_tutorials pr2_tabletop_sim.launch physics:=dart
You can see the robot is spawned in a scene with a desk and some objects.
Run demo
Then we can now start the demo program for picking objects.
Start Euslisp program
# on local machine
rosrun pr2eus_tutorials pr2-tabletop-object-grasp.l
Start Rviz
After running the demo program above, you can see object bounding boxes in the RViZ
window.
It means the robot now recognizes each objects as individual objects from camera sensor inputs.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop.rviz
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, meaning using compressed topic from the real PR2, execute this instead.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop_remote.rviz
Additional setup for Kinetic local machine with a real robot
If you want to know why we need these node, please see here.
You also need to switch Tabletop Object
rviz panel topic from /bounding_box_interactive_marker/update
to /bounding_box_interactive_marker/kinetic/update
.
# on local machine
rosrun jsk_robot_utils marker_msg_from_indigo_to_kinetic.py
rosrun topic_tools relay /bounding_box_interactive_marker/kinetic/feedback /bounding_box_interactive_marker/feedback
Click object bouding on Rviz
You can click any object that you want the robot to pick up.
Click object on image_view2
You can click any pixels that you want the robot to pick up.
rosrun image_view2 image_view2 image:=/kinect_head/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, execute this instead.
rosrun image_view2 image_view2 image:=/kinect_head_remote/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
Step-by-step Description of Demo program
In the bottom of the demo program pr2-tabletop-object-grasp.l
, you can see a main function demo
.
(defun demo ()
(setq *grasping-object-p* nil)
(setq *arm* :rarm)
(setq *tfl* (instance ros::transform-listener :init))
(setq *tfb* (instance ros::transform-broadcaster :init))
(pr2-init)
(pr2-pregrasp-pose)
(wait-for-grasp-target))
The (pr2-init)
method is just a initialization function for pr2 robot that instantiate two objects required for robot manipulation from euslisp:
-
*pr2*
: This object is a kinematic model for a PR2 robot. This object includes any fundamental functions for robot modeling such as inverse kinematics, dynamics, geometric constraints and so on. You can visualize this model by evaluating(objects (list *pr2*))
. -
*ri*
: This is an object that send a control signal to the actual robot from euslisp kinematics model and receive the result or actual states of the robot.ri
is an abbreviation ofrobot interface
.
Please note that (pr2-init)
function is defined in pr2-interface.l
in the pr2eus
package.
In this demo program, the function is loaded in the top of the script:
(require :pr2-interface "package://pr2eus/pr2-interface.l")
After (pr2-init)
is executed, the kinematic model looks like below:
After initialized the robot in euslisp, (pr2-pregrasp-pose)
method is executed.
(defun pr2-pregrasp-pose ()
(send *pr2* :reset-manip-pose)
(send *ri* :angle-vector (send *pr2* :angle-vector) 5000)
(send *ri* :wait-interpolation))
The first line (send *pr2* :reset-manip-pose)
changes the pose of euslisp kinematic model to the predefined pose called reset-manip-pose
.
With calling this method, the actual robot does NOT move because this method only changes the states of the kinematic model. Instead you can see the current states of the kinematic model by (objects (list *pr2*))
.
The kinematic model now looks like below:
The second line then send the current state of kinematic model to the actual robot.
The second argument 5000
allows the robot to take 5000 milliseconds to move to the pose. If the second argument is omitted, the default argument 3000
will be used.
After the second line, it will take 5 seconds until the robot ends to move, but the method call itself returns immediately. The last method called in the last line is just for waiting for the robot until he ends to move to the specified pose.
Reach Object Demo
Reach Object Demo with PR2
# launch gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/wide_stereo/points2 h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/pr2_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(pr2-setup)
(reach-object-demo)
Reach Object Demo with HRP2JSK
hrpsys_gazebo_tutorials
is required.
(Currently, HRP2 model is not provided for open source projects.)
# launch gazebo
roslaunch hrpsys_gazebo_tutorials gazebo_hrp2jsk_no_controllers.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# lanch hrpsys
rtmlaunch hrpsys_gazebo_tutorials hrp2jsk_hrpsys_bringup.launch KINEMATICS_MODE:=true
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/xtion/depth/points h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/hrp2jsk_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(hrp2jsk-setup)
(reach-object-demo)
Changelog for package pr2eus_tutorials
0.3.15 (2023-04-17)
- integrate all .github/workflows/*.yml to config.yml, fix permission issue (#479)
- [pr2eus_tutorials] fix look-at-hand (#472)
- [pr2eus_tutorials] fix pr2_tabletop.launch for remote PC (#459)
- [pr2eus_tutorials] Fix publish status (#464)
- [pr2eus_tutorials] Select grasp position via 2D image (#437)
- Update pr2eus_tutorials README (#389)
- [pr2eus_tutorials] add pr2 tabletop demo test and sample (#387)
- Contributors: Furushchev, Kei Okada, Naoto Tsukamoto, Naoya Yamaguchi, Shingo Kitagawa, Shumpei Wakabayashi, Yuki Furuta
0.3.14 (2019-02-11)
- add jsk_interactive_marker (#349 ) c.f. https://github.com/jsk-ros-pkg/jsk_pr2eus/issues/348
- Contributors: Kei Okada
0.3.13 (2017-07-14)
0.3.12 (2017-07-11)
0.3.11 (2017-06-25)
- add test code for pr2 dual arm IK (#272 )
- Contributors: Chi Wun Au
0.3.10 (2017-03-02)
0.3.9 (2017-02-22)
0.3.8 (2017-02-07)
0.3.7 (2016-11-08)
0.3.6 (2016-11-02)
0.3.5 (2016-09-16)
0.3.4 (2016-06-22)
0.3.3 (2016-05-28)
0.3.2 (2016-05-26)
0.3.1 (2016-05-22)
- [pr2eus_tutorials/package.xml] add roseus_tutorials to run_depend
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix camera namespace openni -> kinect_head_c2
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix rviz config path
- [pr2eus_tutorials] cleanup directory
- move gazebo related launch files to [launch/gazebo]{.title-ref} directory
- move rviz config file to [config]{.title-ref} directory
- fix include path in launch files
- Contributors: Yuki Furuta
0.3.0 (2016-03-20)
- add files for reach object demo.
- [pr2eus_tutorials] remove dependency to pr2_gazebo.
- catkinize pr2eus_tutorials
- Contributors: Kei Okada, Masaki Murooka
0.2.1 (2016-03-04)
0.2.0 (2015-11-03)
0.1.11 (2015-06-11)
0.1.10 (2015-04-03 18:49)
0.1.9 (2015-04-03 16:52)
0.1.8 (2015-02-25)
0.1.7 (2015-02-10)
- add empty map in pr2 gazebo startup
- add startup launch file for gazebo pr2
- rename parameter and delete unused arg
- changed pos_z
- changed codes to be used in hydro
- add rot_{rpy} arguments to spawn_cylinder.launch
- add object spawner for gazebo
- remove absolute path
- Contributors: YoheiKakiuchi, ohara, tarukosu
0.1.6 (2014-05-11)
0.1.5 (2014-05-03)
0.1.4 (2014-05-02 22:28)
0.1.3 (2014-05-02 18:04)
0.1.2 (2014-05-01 22:43)
0.1.1 (2014-05-01 02:14)
- fix tabletop launcher
- update some template_grasp files
- fixed launch file path by addint _frontend.
- update parameter at base_trajectory
- update pr2_gazebo_empty.launch on pr2eus_tutorials
- fix typo null -> nil
- comment out dependancy unreleased package
- update tabletop-sample.l
- add comment to tabletop-sample.l
- update files for template grasp
- fix using arm navigation overridingopenrave
- temporary backup for migration
- Added some general comments. Also removed some old commented code that is not used.
- add one shot subscriber for point cloud
- fix bug
- update proc-detection
- add subscribe-detection-result.l
- add launch_objectdetection arguments for publish /ObjectDetection
- remove magic number. Using approach distance
- fixed the bug of unnecessary translation of graps-cds
- fix: arm-navigation sample
- fix: remove magic number
- add parameter: convert_to_base_link
- added hand-coords visualizer for image_view2
- added place function, check colliderreset
- launch realtime_tabletop on default template_grasp launch
- added y-or-n-from-tablet function
- bugfix coodinate transform of grasp pose
- add pr2_template_grasp_sim.launch
- update and add launch_object_manipulation
- merged comments and update from obsolates
- add comments
- added template_grasp samples, pick from android
- add comment
- fix: topic name for real robot
- add pr2_tabletop.launch
- add argument nav:=true to interactive_manipulation
- fix: launch_rviz -> run_rviz
- add goto-init-pose
- add pr2_tabletop_sim.launch
- fix: typo
- add pr2_interactive_manipulation_sim.launch
- add objects to pr2_gazebo_objects.launch
- add pr2eus_tutorials for using pr2eus software on simulation environment
- Contributors: YoheiKakiuchi, chen, kazuto, tatu, y-tnaka, youhei
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
pr2eus | |
jsk_pcl_ros | |
catkin | |
app_manager | |
eusurdf | |
pr2_gazebo | |
roseus_tutorials | |
image_view2 | |
jsk_interactive_marker | |
jsk_recognition_msgs | |
jsk_rviz_plugins | |
jsk_pr2_startup | |
jsk_maps | |
rostest |
System Dependencies
Dependant Packages
Launch files
- launch/gazebo/spawn_box.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: box]
- color [default: Green]
- size_x [default: 0.5]
- size_y [default: 0.5]
- size_z [default: 0.5]
- launch/gazebo/pr2_gazebo_empty.launch
-
- RUN_RVIZ [default: true]
- LAUNCH_NAVI [default: true]
- LAUNCH_BASE_CONTROLLER [default: true]
- launch/gazebo/pr2_tabletop_scene.launch
-
- gui [default: true]
- physics [default: ode]
- launch/gazebo/pr2_tabletop_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/spawn_model_in_database.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: table_model]
- type_name [default: table]
- launch/gazebo/spawn_objects.launch
- launch/gazebo/pr2_gazebo_objects.launch
-
- run_rviz [default: true]
- table_x_pos [default: 0.0]
- launch/gazebo/pr2_interactive_manipulation_sim.launch
- launch/gazebo/pr2_template_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/gazebo_image_relay.launch
- launch/gazebo/pr2_tabletop_sim.launch
-
- gui [default: true]
- run_rviz [default: true]
- publish_objects_tf [default: true]
- physics [default: ode]
- launch/gazebo/pr2_gazebo_startup.launch
-
- launch_empty_map [default: true]
- launch_move_base [default: true]
- launch_move_tilt_scan [default: true]
- launch_moveit [default: false]
- launch_moveit_gui [default: false]
- launch_openni [default: true]
- launch/gazebo/spawn_cylinder.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: cylinder]
- color [default: Green]
- length [default: 0.2]
- radius [default: 0.05]
- launch/pr2_tabletop.launch
-
- run_rviz [default: false]
- publish_objects_tf [default: true]
- launch_tracking [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- sim [default: false]
- remote [default: false]
- launch/pr2_tabletop_grasp.launch
-
- run_rviz [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- machine [default: c2]
- launch/tabletop_complete.launch
-
- flatten_table [default: false]
- model_set [default: REDUCED_MODEL_SET]
- tabletop_segmentation_points_input [default: narrow_stereo_textured/points2]
- launch/template_grasp.launch
-
- kinect_camera_name [default: openni]
- launch_object_manipulation [default: false]
- launch_realtime_tabletop [default: true]
- launch_objectdetection [default: false]
- apps/tabletop_grasp/tabletop_grasp.xml
Messages
Services
Plugins
Recent questions tagged pr2eus_tutorials at Robotics Stack Exchange
pr2eus_tutorials package from jsk_pr2eus repojsk_pr2eus pr2eus pr2eus_armnavigation pr2eus_impedance pr2eus_moveit pr2eus_openrave pr2eus_tutorials |
|
Package Summary
Tags | No category tags. |
Version | 0.3.15 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/jsk-ros-pkg/jsk_pr2eus.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2023-06-22 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Kei Okada
- Masaki Murooka
Authors
- Kei Okada
pr2eus_tutorials
This is a repository for tutorials of pr2eus
Installation
To play with this package, you can choose from two installation methods.
We assume the ROS environment is kinetic
.
If you use ROS indigo
distribution, please replace the word kinetic
with indigo
(or appropriate distributions).
Using pre-built package
Install ROS
Follow the instruction of ROS installation
Install the package
sudo apt install ros-kinetic-pr2eus-tutorials
Load ROS Environment
source /opt/ros/kinetic/setup.bash
Using source package
Install ROS
Follow the instruction of ROS installation
Setup catkin workspace
source /opt/ros/kinetic/setup.bash
sudo apt install python-catkin-tools python-wstool python-rosdep git
sudo rosdep init
rosdep update
# Create catkin workspace and download source repository
mkdir -p ~/ros/kinetic/src && cd ~/ros/kinetic/src
wstool init
wstool set jsk-ros-pkg/jsk_pr2eus --git https://github.com/jsk-ros-pkg/jsk_pr2eus.git -v master
wstool update
# Install dependencies for building the package
rosdep install --from-paths . -i -r -n -y
# Build the package
cd ~/ros/kinetic
catkin init
catkin build
Load ROS Environment
source ~/ros/kinetic/devel/setup.bash
Tabletop Object Grasping Demo
Tabletop Object Grasping Demo with PR2
Startup nodes
First we need to start nodes used for this demo.
Using a real robot
# on PR2 real robot
ssh <robot address>
roslaunch pr2eus_tutorials pr2_tabletop.launch
If you try using compressed topic from the real PR2,
# on local machine
roslaunch pr2eus_tutorials pr2_tabletop.launch remote:=true
You can locate a desk in front of the robot and put any objects on it.
Using a simulator
You can set physics engine with roslaunch argument.
# on local machine
# It may take time to download materials for the first time
roslaunch pr2eus_tutorials pr2_tabletop_sim.launch physics:=dart
You can see the robot is spawned in a scene with a desk and some objects.
Run demo
Then we can now start the demo program for picking objects.
Start Euslisp program
# on local machine
rosrun pr2eus_tutorials pr2-tabletop-object-grasp.l
Start Rviz
After running the demo program above, you can see object bounding boxes in the RViZ
window.
It means the robot now recognizes each objects as individual objects from camera sensor inputs.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop.rviz
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, meaning using compressed topic from the real PR2, execute this instead.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop_remote.rviz
Additional setup for Kinetic local machine with a real robot
If you want to know why we need these node, please see here.
You also need to switch Tabletop Object
rviz panel topic from /bounding_box_interactive_marker/update
to /bounding_box_interactive_marker/kinetic/update
.
# on local machine
rosrun jsk_robot_utils marker_msg_from_indigo_to_kinetic.py
rosrun topic_tools relay /bounding_box_interactive_marker/kinetic/feedback /bounding_box_interactive_marker/feedback
Click object bouding on Rviz
You can click any object that you want the robot to pick up.
Click object on image_view2
You can click any pixels that you want the robot to pick up.
rosrun image_view2 image_view2 image:=/kinect_head/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, execute this instead.
rosrun image_view2 image_view2 image:=/kinect_head_remote/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
Step-by-step Description of Demo program
In the bottom of the demo program pr2-tabletop-object-grasp.l
, you can see a main function demo
.
(defun demo ()
(setq *grasping-object-p* nil)
(setq *arm* :rarm)
(setq *tfl* (instance ros::transform-listener :init))
(setq *tfb* (instance ros::transform-broadcaster :init))
(pr2-init)
(pr2-pregrasp-pose)
(wait-for-grasp-target))
The (pr2-init)
method is just a initialization function for pr2 robot that instantiate two objects required for robot manipulation from euslisp:
-
*pr2*
: This object is a kinematic model for a PR2 robot. This object includes any fundamental functions for robot modeling such as inverse kinematics, dynamics, geometric constraints and so on. You can visualize this model by evaluating(objects (list *pr2*))
. -
*ri*
: This is an object that send a control signal to the actual robot from euslisp kinematics model and receive the result or actual states of the robot.ri
is an abbreviation ofrobot interface
.
Please note that (pr2-init)
function is defined in pr2-interface.l
in the pr2eus
package.
In this demo program, the function is loaded in the top of the script:
(require :pr2-interface "package://pr2eus/pr2-interface.l")
After (pr2-init)
is executed, the kinematic model looks like below:
After initialized the robot in euslisp, (pr2-pregrasp-pose)
method is executed.
(defun pr2-pregrasp-pose ()
(send *pr2* :reset-manip-pose)
(send *ri* :angle-vector (send *pr2* :angle-vector) 5000)
(send *ri* :wait-interpolation))
The first line (send *pr2* :reset-manip-pose)
changes the pose of euslisp kinematic model to the predefined pose called reset-manip-pose
.
With calling this method, the actual robot does NOT move because this method only changes the states of the kinematic model. Instead you can see the current states of the kinematic model by (objects (list *pr2*))
.
The kinematic model now looks like below:
The second line then send the current state of kinematic model to the actual robot.
The second argument 5000
allows the robot to take 5000 milliseconds to move to the pose. If the second argument is omitted, the default argument 3000
will be used.
After the second line, it will take 5 seconds until the robot ends to move, but the method call itself returns immediately. The last method called in the last line is just for waiting for the robot until he ends to move to the specified pose.
Reach Object Demo
Reach Object Demo with PR2
# launch gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/wide_stereo/points2 h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/pr2_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(pr2-setup)
(reach-object-demo)
Reach Object Demo with HRP2JSK
hrpsys_gazebo_tutorials
is required.
(Currently, HRP2 model is not provided for open source projects.)
# launch gazebo
roslaunch hrpsys_gazebo_tutorials gazebo_hrp2jsk_no_controllers.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# lanch hrpsys
rtmlaunch hrpsys_gazebo_tutorials hrp2jsk_hrpsys_bringup.launch KINEMATICS_MODE:=true
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/xtion/depth/points h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/hrp2jsk_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(hrp2jsk-setup)
(reach-object-demo)
Changelog for package pr2eus_tutorials
0.3.15 (2023-04-17)
- integrate all .github/workflows/*.yml to config.yml, fix permission issue (#479)
- [pr2eus_tutorials] fix look-at-hand (#472)
- [pr2eus_tutorials] fix pr2_tabletop.launch for remote PC (#459)
- [pr2eus_tutorials] Fix publish status (#464)
- [pr2eus_tutorials] Select grasp position via 2D image (#437)
- Update pr2eus_tutorials README (#389)
- [pr2eus_tutorials] add pr2 tabletop demo test and sample (#387)
- Contributors: Furushchev, Kei Okada, Naoto Tsukamoto, Naoya Yamaguchi, Shingo Kitagawa, Shumpei Wakabayashi, Yuki Furuta
0.3.14 (2019-02-11)
- add jsk_interactive_marker (#349 ) c.f. https://github.com/jsk-ros-pkg/jsk_pr2eus/issues/348
- Contributors: Kei Okada
0.3.13 (2017-07-14)
0.3.12 (2017-07-11)
0.3.11 (2017-06-25)
- add test code for pr2 dual arm IK (#272 )
- Contributors: Chi Wun Au
0.3.10 (2017-03-02)
0.3.9 (2017-02-22)
0.3.8 (2017-02-07)
0.3.7 (2016-11-08)
0.3.6 (2016-11-02)
0.3.5 (2016-09-16)
0.3.4 (2016-06-22)
0.3.3 (2016-05-28)
0.3.2 (2016-05-26)
0.3.1 (2016-05-22)
- [pr2eus_tutorials/package.xml] add roseus_tutorials to run_depend
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix camera namespace openni -> kinect_head_c2
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix rviz config path
- [pr2eus_tutorials] cleanup directory
- move gazebo related launch files to [launch/gazebo]{.title-ref} directory
- move rviz config file to [config]{.title-ref} directory
- fix include path in launch files
- Contributors: Yuki Furuta
0.3.0 (2016-03-20)
- add files for reach object demo.
- [pr2eus_tutorials] remove dependency to pr2_gazebo.
- catkinize pr2eus_tutorials
- Contributors: Kei Okada, Masaki Murooka
0.2.1 (2016-03-04)
0.2.0 (2015-11-03)
0.1.11 (2015-06-11)
0.1.10 (2015-04-03 18:49)
0.1.9 (2015-04-03 16:52)
0.1.8 (2015-02-25)
0.1.7 (2015-02-10)
- add empty map in pr2 gazebo startup
- add startup launch file for gazebo pr2
- rename parameter and delete unused arg
- changed pos_z
- changed codes to be used in hydro
- add rot_{rpy} arguments to spawn_cylinder.launch
- add object spawner for gazebo
- remove absolute path
- Contributors: YoheiKakiuchi, ohara, tarukosu
0.1.6 (2014-05-11)
0.1.5 (2014-05-03)
0.1.4 (2014-05-02 22:28)
0.1.3 (2014-05-02 18:04)
0.1.2 (2014-05-01 22:43)
0.1.1 (2014-05-01 02:14)
- fix tabletop launcher
- update some template_grasp files
- fixed launch file path by addint _frontend.
- update parameter at base_trajectory
- update pr2_gazebo_empty.launch on pr2eus_tutorials
- fix typo null -> nil
- comment out dependancy unreleased package
- update tabletop-sample.l
- add comment to tabletop-sample.l
- update files for template grasp
- fix using arm navigation overridingopenrave
- temporary backup for migration
- Added some general comments. Also removed some old commented code that is not used.
- add one shot subscriber for point cloud
- fix bug
- update proc-detection
- add subscribe-detection-result.l
- add launch_objectdetection arguments for publish /ObjectDetection
- remove magic number. Using approach distance
- fixed the bug of unnecessary translation of graps-cds
- fix: arm-navigation sample
- fix: remove magic number
- add parameter: convert_to_base_link
- added hand-coords visualizer for image_view2
- added place function, check colliderreset
- launch realtime_tabletop on default template_grasp launch
- added y-or-n-from-tablet function
- bugfix coodinate transform of grasp pose
- add pr2_template_grasp_sim.launch
- update and add launch_object_manipulation
- merged comments and update from obsolates
- add comments
- added template_grasp samples, pick from android
- add comment
- fix: topic name for real robot
- add pr2_tabletop.launch
- add argument nav:=true to interactive_manipulation
- fix: launch_rviz -> run_rviz
- add goto-init-pose
- add pr2_tabletop_sim.launch
- fix: typo
- add pr2_interactive_manipulation_sim.launch
- add objects to pr2_gazebo_objects.launch
- add pr2eus_tutorials for using pr2eus software on simulation environment
- Contributors: YoheiKakiuchi, chen, kazuto, tatu, y-tnaka, youhei
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
pr2eus | |
jsk_pcl_ros | |
catkin | |
app_manager | |
eusurdf | |
pr2_gazebo | |
roseus_tutorials | |
image_view2 | |
jsk_interactive_marker | |
jsk_recognition_msgs | |
jsk_rviz_plugins | |
jsk_pr2_startup | |
jsk_maps | |
rostest |
System Dependencies
Dependant Packages
Launch files
- launch/gazebo/spawn_box.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: box]
- color [default: Green]
- size_x [default: 0.5]
- size_y [default: 0.5]
- size_z [default: 0.5]
- launch/gazebo/pr2_gazebo_empty.launch
-
- RUN_RVIZ [default: true]
- LAUNCH_NAVI [default: true]
- LAUNCH_BASE_CONTROLLER [default: true]
- launch/gazebo/pr2_tabletop_scene.launch
-
- gui [default: true]
- physics [default: ode]
- launch/gazebo/pr2_tabletop_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/spawn_model_in_database.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: table_model]
- type_name [default: table]
- launch/gazebo/spawn_objects.launch
- launch/gazebo/pr2_gazebo_objects.launch
-
- run_rviz [default: true]
- table_x_pos [default: 0.0]
- launch/gazebo/pr2_interactive_manipulation_sim.launch
- launch/gazebo/pr2_template_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/gazebo_image_relay.launch
- launch/gazebo/pr2_tabletop_sim.launch
-
- gui [default: true]
- run_rviz [default: true]
- publish_objects_tf [default: true]
- physics [default: ode]
- launch/gazebo/pr2_gazebo_startup.launch
-
- launch_empty_map [default: true]
- launch_move_base [default: true]
- launch_move_tilt_scan [default: true]
- launch_moveit [default: false]
- launch_moveit_gui [default: false]
- launch_openni [default: true]
- launch/gazebo/spawn_cylinder.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: cylinder]
- color [default: Green]
- length [default: 0.2]
- radius [default: 0.05]
- launch/pr2_tabletop.launch
-
- run_rviz [default: false]
- publish_objects_tf [default: true]
- launch_tracking [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- sim [default: false]
- remote [default: false]
- launch/pr2_tabletop_grasp.launch
-
- run_rviz [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- machine [default: c2]
- launch/tabletop_complete.launch
-
- flatten_table [default: false]
- model_set [default: REDUCED_MODEL_SET]
- tabletop_segmentation_points_input [default: narrow_stereo_textured/points2]
- launch/template_grasp.launch
-
- kinect_camera_name [default: openni]
- launch_object_manipulation [default: false]
- launch_realtime_tabletop [default: true]
- launch_objectdetection [default: false]
- apps/tabletop_grasp/tabletop_grasp.xml
Messages
Services
Plugins
Recent questions tagged pr2eus_tutorials at Robotics Stack Exchange
pr2eus_tutorials package from jsk_pr2eus repojsk_pr2eus pr2eus pr2eus_armnavigation pr2eus_impedance pr2eus_moveit pr2eus_openrave pr2eus_tutorials |
|
Package Summary
Tags | No category tags. |
Version | 0.3.15 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/jsk-ros-pkg/jsk_pr2eus.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2023-06-22 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Kei Okada
- Masaki Murooka
Authors
- Kei Okada
pr2eus_tutorials
This is a repository for tutorials of pr2eus
Installation
To play with this package, you can choose from two installation methods.
We assume the ROS environment is kinetic
.
If you use ROS indigo
distribution, please replace the word kinetic
with indigo
(or appropriate distributions).
Using pre-built package
Install ROS
Follow the instruction of ROS installation
Install the package
sudo apt install ros-kinetic-pr2eus-tutorials
Load ROS Environment
source /opt/ros/kinetic/setup.bash
Using source package
Install ROS
Follow the instruction of ROS installation
Setup catkin workspace
source /opt/ros/kinetic/setup.bash
sudo apt install python-catkin-tools python-wstool python-rosdep git
sudo rosdep init
rosdep update
# Create catkin workspace and download source repository
mkdir -p ~/ros/kinetic/src && cd ~/ros/kinetic/src
wstool init
wstool set jsk-ros-pkg/jsk_pr2eus --git https://github.com/jsk-ros-pkg/jsk_pr2eus.git -v master
wstool update
# Install dependencies for building the package
rosdep install --from-paths . -i -r -n -y
# Build the package
cd ~/ros/kinetic
catkin init
catkin build
Load ROS Environment
source ~/ros/kinetic/devel/setup.bash
Tabletop Object Grasping Demo
Tabletop Object Grasping Demo with PR2
Startup nodes
First we need to start nodes used for this demo.
Using a real robot
# on PR2 real robot
ssh <robot address>
roslaunch pr2eus_tutorials pr2_tabletop.launch
If you try using compressed topic from the real PR2,
# on local machine
roslaunch pr2eus_tutorials pr2_tabletop.launch remote:=true
You can locate a desk in front of the robot and put any objects on it.
Using a simulator
You can set physics engine with roslaunch argument.
# on local machine
# It may take time to download materials for the first time
roslaunch pr2eus_tutorials pr2_tabletop_sim.launch physics:=dart
You can see the robot is spawned in a scene with a desk and some objects.
Run demo
Then we can now start the demo program for picking objects.
Start Euslisp program
# on local machine
rosrun pr2eus_tutorials pr2-tabletop-object-grasp.l
Start Rviz
After running the demo program above, you can see object bounding boxes in the RViZ
window.
It means the robot now recognizes each objects as individual objects from camera sensor inputs.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop.rviz
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, meaning using compressed topic from the real PR2, execute this instead.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop_remote.rviz
Additional setup for Kinetic local machine with a real robot
If you want to know why we need these node, please see here.
You also need to switch Tabletop Object
rviz panel topic from /bounding_box_interactive_marker/update
to /bounding_box_interactive_marker/kinetic/update
.
# on local machine
rosrun jsk_robot_utils marker_msg_from_indigo_to_kinetic.py
rosrun topic_tools relay /bounding_box_interactive_marker/kinetic/feedback /bounding_box_interactive_marker/feedback
Click object bouding on Rviz
You can click any object that you want the robot to pick up.
Click object on image_view2
You can click any pixels that you want the robot to pick up.
rosrun image_view2 image_view2 image:=/kinect_head/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, execute this instead.
rosrun image_view2 image_view2 image:=/kinect_head_remote/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
Step-by-step Description of Demo program
In the bottom of the demo program pr2-tabletop-object-grasp.l
, you can see a main function demo
.
(defun demo ()
(setq *grasping-object-p* nil)
(setq *arm* :rarm)
(setq *tfl* (instance ros::transform-listener :init))
(setq *tfb* (instance ros::transform-broadcaster :init))
(pr2-init)
(pr2-pregrasp-pose)
(wait-for-grasp-target))
The (pr2-init)
method is just a initialization function for pr2 robot that instantiate two objects required for robot manipulation from euslisp:
-
*pr2*
: This object is a kinematic model for a PR2 robot. This object includes any fundamental functions for robot modeling such as inverse kinematics, dynamics, geometric constraints and so on. You can visualize this model by evaluating(objects (list *pr2*))
. -
*ri*
: This is an object that send a control signal to the actual robot from euslisp kinematics model and receive the result or actual states of the robot.ri
is an abbreviation ofrobot interface
.
Please note that (pr2-init)
function is defined in pr2-interface.l
in the pr2eus
package.
In this demo program, the function is loaded in the top of the script:
(require :pr2-interface "package://pr2eus/pr2-interface.l")
After (pr2-init)
is executed, the kinematic model looks like below:
After initialized the robot in euslisp, (pr2-pregrasp-pose)
method is executed.
(defun pr2-pregrasp-pose ()
(send *pr2* :reset-manip-pose)
(send *ri* :angle-vector (send *pr2* :angle-vector) 5000)
(send *ri* :wait-interpolation))
The first line (send *pr2* :reset-manip-pose)
changes the pose of euslisp kinematic model to the predefined pose called reset-manip-pose
.
With calling this method, the actual robot does NOT move because this method only changes the states of the kinematic model. Instead you can see the current states of the kinematic model by (objects (list *pr2*))
.
The kinematic model now looks like below:
The second line then send the current state of kinematic model to the actual robot.
The second argument 5000
allows the robot to take 5000 milliseconds to move to the pose. If the second argument is omitted, the default argument 3000
will be used.
After the second line, it will take 5 seconds until the robot ends to move, but the method call itself returns immediately. The last method called in the last line is just for waiting for the robot until he ends to move to the specified pose.
Reach Object Demo
Reach Object Demo with PR2
# launch gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/wide_stereo/points2 h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/pr2_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(pr2-setup)
(reach-object-demo)
Reach Object Demo with HRP2JSK
hrpsys_gazebo_tutorials
is required.
(Currently, HRP2 model is not provided for open source projects.)
# launch gazebo
roslaunch hrpsys_gazebo_tutorials gazebo_hrp2jsk_no_controllers.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# lanch hrpsys
rtmlaunch hrpsys_gazebo_tutorials hrp2jsk_hrpsys_bringup.launch KINEMATICS_MODE:=true
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/xtion/depth/points h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/hrp2jsk_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(hrp2jsk-setup)
(reach-object-demo)
Changelog for package pr2eus_tutorials
0.3.15 (2023-04-17)
- integrate all .github/workflows/*.yml to config.yml, fix permission issue (#479)
- [pr2eus_tutorials] fix look-at-hand (#472)
- [pr2eus_tutorials] fix pr2_tabletop.launch for remote PC (#459)
- [pr2eus_tutorials] Fix publish status (#464)
- [pr2eus_tutorials] Select grasp position via 2D image (#437)
- Update pr2eus_tutorials README (#389)
- [pr2eus_tutorials] add pr2 tabletop demo test and sample (#387)
- Contributors: Furushchev, Kei Okada, Naoto Tsukamoto, Naoya Yamaguchi, Shingo Kitagawa, Shumpei Wakabayashi, Yuki Furuta
0.3.14 (2019-02-11)
- add jsk_interactive_marker (#349 ) c.f. https://github.com/jsk-ros-pkg/jsk_pr2eus/issues/348
- Contributors: Kei Okada
0.3.13 (2017-07-14)
0.3.12 (2017-07-11)
0.3.11 (2017-06-25)
- add test code for pr2 dual arm IK (#272 )
- Contributors: Chi Wun Au
0.3.10 (2017-03-02)
0.3.9 (2017-02-22)
0.3.8 (2017-02-07)
0.3.7 (2016-11-08)
0.3.6 (2016-11-02)
0.3.5 (2016-09-16)
0.3.4 (2016-06-22)
0.3.3 (2016-05-28)
0.3.2 (2016-05-26)
0.3.1 (2016-05-22)
- [pr2eus_tutorials/package.xml] add roseus_tutorials to run_depend
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix camera namespace openni -> kinect_head_c2
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix rviz config path
- [pr2eus_tutorials] cleanup directory
- move gazebo related launch files to [launch/gazebo]{.title-ref} directory
- move rviz config file to [config]{.title-ref} directory
- fix include path in launch files
- Contributors: Yuki Furuta
0.3.0 (2016-03-20)
- add files for reach object demo.
- [pr2eus_tutorials] remove dependency to pr2_gazebo.
- catkinize pr2eus_tutorials
- Contributors: Kei Okada, Masaki Murooka
0.2.1 (2016-03-04)
0.2.0 (2015-11-03)
0.1.11 (2015-06-11)
0.1.10 (2015-04-03 18:49)
0.1.9 (2015-04-03 16:52)
0.1.8 (2015-02-25)
0.1.7 (2015-02-10)
- add empty map in pr2 gazebo startup
- add startup launch file for gazebo pr2
- rename parameter and delete unused arg
- changed pos_z
- changed codes to be used in hydro
- add rot_{rpy} arguments to spawn_cylinder.launch
- add object spawner for gazebo
- remove absolute path
- Contributors: YoheiKakiuchi, ohara, tarukosu
0.1.6 (2014-05-11)
0.1.5 (2014-05-03)
0.1.4 (2014-05-02 22:28)
0.1.3 (2014-05-02 18:04)
0.1.2 (2014-05-01 22:43)
0.1.1 (2014-05-01 02:14)
- fix tabletop launcher
- update some template_grasp files
- fixed launch file path by addint _frontend.
- update parameter at base_trajectory
- update pr2_gazebo_empty.launch on pr2eus_tutorials
- fix typo null -> nil
- comment out dependancy unreleased package
- update tabletop-sample.l
- add comment to tabletop-sample.l
- update files for template grasp
- fix using arm navigation overridingopenrave
- temporary backup for migration
- Added some general comments. Also removed some old commented code that is not used.
- add one shot subscriber for point cloud
- fix bug
- update proc-detection
- add subscribe-detection-result.l
- add launch_objectdetection arguments for publish /ObjectDetection
- remove magic number. Using approach distance
- fixed the bug of unnecessary translation of graps-cds
- fix: arm-navigation sample
- fix: remove magic number
- add parameter: convert_to_base_link
- added hand-coords visualizer for image_view2
- added place function, check colliderreset
- launch realtime_tabletop on default template_grasp launch
- added y-or-n-from-tablet function
- bugfix coodinate transform of grasp pose
- add pr2_template_grasp_sim.launch
- update and add launch_object_manipulation
- merged comments and update from obsolates
- add comments
- added template_grasp samples, pick from android
- add comment
- fix: topic name for real robot
- add pr2_tabletop.launch
- add argument nav:=true to interactive_manipulation
- fix: launch_rviz -> run_rviz
- add goto-init-pose
- add pr2_tabletop_sim.launch
- fix: typo
- add pr2_interactive_manipulation_sim.launch
- add objects to pr2_gazebo_objects.launch
- add pr2eus_tutorials for using pr2eus software on simulation environment
- Contributors: YoheiKakiuchi, chen, kazuto, tatu, y-tnaka, youhei
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
pr2eus | |
jsk_pcl_ros | |
catkin | |
app_manager | |
eusurdf | |
pr2_gazebo | |
roseus_tutorials | |
image_view2 | |
jsk_interactive_marker | |
jsk_recognition_msgs | |
jsk_rviz_plugins | |
jsk_pr2_startup | |
jsk_maps | |
rostest |
System Dependencies
Dependant Packages
Launch files
- launch/gazebo/spawn_box.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: box]
- color [default: Green]
- size_x [default: 0.5]
- size_y [default: 0.5]
- size_z [default: 0.5]
- launch/gazebo/pr2_gazebo_empty.launch
-
- RUN_RVIZ [default: true]
- LAUNCH_NAVI [default: true]
- LAUNCH_BASE_CONTROLLER [default: true]
- launch/gazebo/pr2_tabletop_scene.launch
-
- gui [default: true]
- physics [default: ode]
- launch/gazebo/pr2_tabletop_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/spawn_model_in_database.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: table_model]
- type_name [default: table]
- launch/gazebo/spawn_objects.launch
- launch/gazebo/pr2_gazebo_objects.launch
-
- run_rviz [default: true]
- table_x_pos [default: 0.0]
- launch/gazebo/pr2_interactive_manipulation_sim.launch
- launch/gazebo/pr2_template_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/gazebo_image_relay.launch
- launch/gazebo/pr2_tabletop_sim.launch
-
- gui [default: true]
- run_rviz [default: true]
- publish_objects_tf [default: true]
- physics [default: ode]
- launch/gazebo/pr2_gazebo_startup.launch
-
- launch_empty_map [default: true]
- launch_move_base [default: true]
- launch_move_tilt_scan [default: true]
- launch_moveit [default: false]
- launch_moveit_gui [default: false]
- launch_openni [default: true]
- launch/gazebo/spawn_cylinder.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: cylinder]
- color [default: Green]
- length [default: 0.2]
- radius [default: 0.05]
- launch/pr2_tabletop.launch
-
- run_rviz [default: false]
- publish_objects_tf [default: true]
- launch_tracking [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- sim [default: false]
- remote [default: false]
- launch/pr2_tabletop_grasp.launch
-
- run_rviz [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- machine [default: c2]
- launch/tabletop_complete.launch
-
- flatten_table [default: false]
- model_set [default: REDUCED_MODEL_SET]
- tabletop_segmentation_points_input [default: narrow_stereo_textured/points2]
- launch/template_grasp.launch
-
- kinect_camera_name [default: openni]
- launch_object_manipulation [default: false]
- launch_realtime_tabletop [default: true]
- launch_objectdetection [default: false]
- apps/tabletop_grasp/tabletop_grasp.xml
Messages
Services
Plugins
Recent questions tagged pr2eus_tutorials at Robotics Stack Exchange
pr2eus_tutorials package from jsk_pr2eus repojsk_pr2eus pr2eus pr2eus_armnavigation pr2eus_impedance pr2eus_moveit pr2eus_openrave pr2eus_tutorials |
|
Package Summary
Tags | No category tags. |
Version | 0.3.15 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/jsk-ros-pkg/jsk_pr2eus.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2023-06-22 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Kei Okada
- Masaki Murooka
Authors
- Kei Okada
pr2eus_tutorials
This is a repository for tutorials of pr2eus
Installation
To play with this package, you can choose from two installation methods.
We assume the ROS environment is kinetic
.
If you use ROS indigo
distribution, please replace the word kinetic
with indigo
(or appropriate distributions).
Using pre-built package
Install ROS
Follow the instruction of ROS installation
Install the package
sudo apt install ros-kinetic-pr2eus-tutorials
Load ROS Environment
source /opt/ros/kinetic/setup.bash
Using source package
Install ROS
Follow the instruction of ROS installation
Setup catkin workspace
source /opt/ros/kinetic/setup.bash
sudo apt install python-catkin-tools python-wstool python-rosdep git
sudo rosdep init
rosdep update
# Create catkin workspace and download source repository
mkdir -p ~/ros/kinetic/src && cd ~/ros/kinetic/src
wstool init
wstool set jsk-ros-pkg/jsk_pr2eus --git https://github.com/jsk-ros-pkg/jsk_pr2eus.git -v master
wstool update
# Install dependencies for building the package
rosdep install --from-paths . -i -r -n -y
# Build the package
cd ~/ros/kinetic
catkin init
catkin build
Load ROS Environment
source ~/ros/kinetic/devel/setup.bash
Tabletop Object Grasping Demo
Tabletop Object Grasping Demo with PR2
Startup nodes
First we need to start nodes used for this demo.
Using a real robot
# on PR2 real robot
ssh <robot address>
roslaunch pr2eus_tutorials pr2_tabletop.launch
If you try using compressed topic from the real PR2,
# on local machine
roslaunch pr2eus_tutorials pr2_tabletop.launch remote:=true
You can locate a desk in front of the robot and put any objects on it.
Using a simulator
You can set physics engine with roslaunch argument.
# on local machine
# It may take time to download materials for the first time
roslaunch pr2eus_tutorials pr2_tabletop_sim.launch physics:=dart
You can see the robot is spawned in a scene with a desk and some objects.
Run demo
Then we can now start the demo program for picking objects.
Start Euslisp program
# on local machine
rosrun pr2eus_tutorials pr2-tabletop-object-grasp.l
Start Rviz
After running the demo program above, you can see object bounding boxes in the RViZ
window.
It means the robot now recognizes each objects as individual objects from camera sensor inputs.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop.rviz
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, meaning using compressed topic from the real PR2, execute this instead.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop_remote.rviz
Additional setup for Kinetic local machine with a real robot
If you want to know why we need these node, please see here.
You also need to switch Tabletop Object
rviz panel topic from /bounding_box_interactive_marker/update
to /bounding_box_interactive_marker/kinetic/update
.
# on local machine
rosrun jsk_robot_utils marker_msg_from_indigo_to_kinetic.py
rosrun topic_tools relay /bounding_box_interactive_marker/kinetic/feedback /bounding_box_interactive_marker/feedback
Click object bouding on Rviz
You can click any object that you want the robot to pick up.
Click object on image_view2
You can click any pixels that you want the robot to pick up.
rosrun image_view2 image_view2 image:=/kinect_head/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, execute this instead.
rosrun image_view2 image_view2 image:=/kinect_head_remote/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
Step-by-step Description of Demo program
In the bottom of the demo program pr2-tabletop-object-grasp.l
, you can see a main function demo
.
(defun demo ()
(setq *grasping-object-p* nil)
(setq *arm* :rarm)
(setq *tfl* (instance ros::transform-listener :init))
(setq *tfb* (instance ros::transform-broadcaster :init))
(pr2-init)
(pr2-pregrasp-pose)
(wait-for-grasp-target))
The (pr2-init)
method is just a initialization function for pr2 robot that instantiate two objects required for robot manipulation from euslisp:
-
*pr2*
: This object is a kinematic model for a PR2 robot. This object includes any fundamental functions for robot modeling such as inverse kinematics, dynamics, geometric constraints and so on. You can visualize this model by evaluating(objects (list *pr2*))
. -
*ri*
: This is an object that send a control signal to the actual robot from euslisp kinematics model and receive the result or actual states of the robot.ri
is an abbreviation ofrobot interface
.
Please note that (pr2-init)
function is defined in pr2-interface.l
in the pr2eus
package.
In this demo program, the function is loaded in the top of the script:
(require :pr2-interface "package://pr2eus/pr2-interface.l")
After (pr2-init)
is executed, the kinematic model looks like below:
After initialized the robot in euslisp, (pr2-pregrasp-pose)
method is executed.
(defun pr2-pregrasp-pose ()
(send *pr2* :reset-manip-pose)
(send *ri* :angle-vector (send *pr2* :angle-vector) 5000)
(send *ri* :wait-interpolation))
The first line (send *pr2* :reset-manip-pose)
changes the pose of euslisp kinematic model to the predefined pose called reset-manip-pose
.
With calling this method, the actual robot does NOT move because this method only changes the states of the kinematic model. Instead you can see the current states of the kinematic model by (objects (list *pr2*))
.
The kinematic model now looks like below:
The second line then send the current state of kinematic model to the actual robot.
The second argument 5000
allows the robot to take 5000 milliseconds to move to the pose. If the second argument is omitted, the default argument 3000
will be used.
After the second line, it will take 5 seconds until the robot ends to move, but the method call itself returns immediately. The last method called in the last line is just for waiting for the robot until he ends to move to the specified pose.
Reach Object Demo
Reach Object Demo with PR2
# launch gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/wide_stereo/points2 h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/pr2_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(pr2-setup)
(reach-object-demo)
Reach Object Demo with HRP2JSK
hrpsys_gazebo_tutorials
is required.
(Currently, HRP2 model is not provided for open source projects.)
# launch gazebo
roslaunch hrpsys_gazebo_tutorials gazebo_hrp2jsk_no_controllers.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# lanch hrpsys
rtmlaunch hrpsys_gazebo_tutorials hrp2jsk_hrpsys_bringup.launch KINEMATICS_MODE:=true
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/xtion/depth/points h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/hrp2jsk_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(hrp2jsk-setup)
(reach-object-demo)
Changelog for package pr2eus_tutorials
0.3.15 (2023-04-17)
- integrate all .github/workflows/*.yml to config.yml, fix permission issue (#479)
- [pr2eus_tutorials] fix look-at-hand (#472)
- [pr2eus_tutorials] fix pr2_tabletop.launch for remote PC (#459)
- [pr2eus_tutorials] Fix publish status (#464)
- [pr2eus_tutorials] Select grasp position via 2D image (#437)
- Update pr2eus_tutorials README (#389)
- [pr2eus_tutorials] add pr2 tabletop demo test and sample (#387)
- Contributors: Furushchev, Kei Okada, Naoto Tsukamoto, Naoya Yamaguchi, Shingo Kitagawa, Shumpei Wakabayashi, Yuki Furuta
0.3.14 (2019-02-11)
- add jsk_interactive_marker (#349 ) c.f. https://github.com/jsk-ros-pkg/jsk_pr2eus/issues/348
- Contributors: Kei Okada
0.3.13 (2017-07-14)
0.3.12 (2017-07-11)
0.3.11 (2017-06-25)
- add test code for pr2 dual arm IK (#272 )
- Contributors: Chi Wun Au
0.3.10 (2017-03-02)
0.3.9 (2017-02-22)
0.3.8 (2017-02-07)
0.3.7 (2016-11-08)
0.3.6 (2016-11-02)
0.3.5 (2016-09-16)
0.3.4 (2016-06-22)
0.3.3 (2016-05-28)
0.3.2 (2016-05-26)
0.3.1 (2016-05-22)
- [pr2eus_tutorials/package.xml] add roseus_tutorials to run_depend
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix camera namespace openni -> kinect_head_c2
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix rviz config path
- [pr2eus_tutorials] cleanup directory
- move gazebo related launch files to [launch/gazebo]{.title-ref} directory
- move rviz config file to [config]{.title-ref} directory
- fix include path in launch files
- Contributors: Yuki Furuta
0.3.0 (2016-03-20)
- add files for reach object demo.
- [pr2eus_tutorials] remove dependency to pr2_gazebo.
- catkinize pr2eus_tutorials
- Contributors: Kei Okada, Masaki Murooka
0.2.1 (2016-03-04)
0.2.0 (2015-11-03)
0.1.11 (2015-06-11)
0.1.10 (2015-04-03 18:49)
0.1.9 (2015-04-03 16:52)
0.1.8 (2015-02-25)
0.1.7 (2015-02-10)
- add empty map in pr2 gazebo startup
- add startup launch file for gazebo pr2
- rename parameter and delete unused arg
- changed pos_z
- changed codes to be used in hydro
- add rot_{rpy} arguments to spawn_cylinder.launch
- add object spawner for gazebo
- remove absolute path
- Contributors: YoheiKakiuchi, ohara, tarukosu
0.1.6 (2014-05-11)
0.1.5 (2014-05-03)
0.1.4 (2014-05-02 22:28)
0.1.3 (2014-05-02 18:04)
0.1.2 (2014-05-01 22:43)
0.1.1 (2014-05-01 02:14)
- fix tabletop launcher
- update some template_grasp files
- fixed launch file path by addint _frontend.
- update parameter at base_trajectory
- update pr2_gazebo_empty.launch on pr2eus_tutorials
- fix typo null -> nil
- comment out dependancy unreleased package
- update tabletop-sample.l
- add comment to tabletop-sample.l
- update files for template grasp
- fix using arm navigation overridingopenrave
- temporary backup for migration
- Added some general comments. Also removed some old commented code that is not used.
- add one shot subscriber for point cloud
- fix bug
- update proc-detection
- add subscribe-detection-result.l
- add launch_objectdetection arguments for publish /ObjectDetection
- remove magic number. Using approach distance
- fixed the bug of unnecessary translation of graps-cds
- fix: arm-navigation sample
- fix: remove magic number
- add parameter: convert_to_base_link
- added hand-coords visualizer for image_view2
- added place function, check colliderreset
- launch realtime_tabletop on default template_grasp launch
- added y-or-n-from-tablet function
- bugfix coodinate transform of grasp pose
- add pr2_template_grasp_sim.launch
- update and add launch_object_manipulation
- merged comments and update from obsolates
- add comments
- added template_grasp samples, pick from android
- add comment
- fix: topic name for real robot
- add pr2_tabletop.launch
- add argument nav:=true to interactive_manipulation
- fix: launch_rviz -> run_rviz
- add goto-init-pose
- add pr2_tabletop_sim.launch
- fix: typo
- add pr2_interactive_manipulation_sim.launch
- add objects to pr2_gazebo_objects.launch
- add pr2eus_tutorials for using pr2eus software on simulation environment
- Contributors: YoheiKakiuchi, chen, kazuto, tatu, y-tnaka, youhei
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
pr2eus | |
jsk_pcl_ros | |
catkin | |
app_manager | |
eusurdf | |
pr2_gazebo | |
roseus_tutorials | |
image_view2 | |
jsk_interactive_marker | |
jsk_recognition_msgs | |
jsk_rviz_plugins | |
jsk_pr2_startup | |
jsk_maps | |
rostest |
System Dependencies
Dependant Packages
Launch files
- launch/gazebo/spawn_box.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: box]
- color [default: Green]
- size_x [default: 0.5]
- size_y [default: 0.5]
- size_z [default: 0.5]
- launch/gazebo/pr2_gazebo_empty.launch
-
- RUN_RVIZ [default: true]
- LAUNCH_NAVI [default: true]
- LAUNCH_BASE_CONTROLLER [default: true]
- launch/gazebo/pr2_tabletop_scene.launch
-
- gui [default: true]
- physics [default: ode]
- launch/gazebo/pr2_tabletop_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/spawn_model_in_database.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: table_model]
- type_name [default: table]
- launch/gazebo/spawn_objects.launch
- launch/gazebo/pr2_gazebo_objects.launch
-
- run_rviz [default: true]
- table_x_pos [default: 0.0]
- launch/gazebo/pr2_interactive_manipulation_sim.launch
- launch/gazebo/pr2_template_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/gazebo_image_relay.launch
- launch/gazebo/pr2_tabletop_sim.launch
-
- gui [default: true]
- run_rviz [default: true]
- publish_objects_tf [default: true]
- physics [default: ode]
- launch/gazebo/pr2_gazebo_startup.launch
-
- launch_empty_map [default: true]
- launch_move_base [default: true]
- launch_move_tilt_scan [default: true]
- launch_moveit [default: false]
- launch_moveit_gui [default: false]
- launch_openni [default: true]
- launch/gazebo/spawn_cylinder.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: cylinder]
- color [default: Green]
- length [default: 0.2]
- radius [default: 0.05]
- launch/pr2_tabletop.launch
-
- run_rviz [default: false]
- publish_objects_tf [default: true]
- launch_tracking [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- sim [default: false]
- remote [default: false]
- launch/pr2_tabletop_grasp.launch
-
- run_rviz [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- machine [default: c2]
- launch/tabletop_complete.launch
-
- flatten_table [default: false]
- model_set [default: REDUCED_MODEL_SET]
- tabletop_segmentation_points_input [default: narrow_stereo_textured/points2]
- launch/template_grasp.launch
-
- kinect_camera_name [default: openni]
- launch_object_manipulation [default: false]
- launch_realtime_tabletop [default: true]
- launch_objectdetection [default: false]
- apps/tabletop_grasp/tabletop_grasp.xml
Messages
Services
Plugins
Recent questions tagged pr2eus_tutorials at Robotics Stack Exchange
pr2eus_tutorials package from jsk_pr2eus repojsk_pr2eus pr2eus pr2eus_armnavigation pr2eus_impedance pr2eus_moveit pr2eus_openrave pr2eus_tutorials |
|
Package Summary
Tags | No category tags. |
Version | 0.3.15 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/jsk-ros-pkg/jsk_pr2eus.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2023-06-22 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Kei Okada
- Masaki Murooka
Authors
- Kei Okada
pr2eus_tutorials
This is a repository for tutorials of pr2eus
Installation
To play with this package, you can choose from two installation methods.
We assume the ROS environment is kinetic
.
If you use ROS indigo
distribution, please replace the word kinetic
with indigo
(or appropriate distributions).
Using pre-built package
Install ROS
Follow the instruction of ROS installation
Install the package
sudo apt install ros-kinetic-pr2eus-tutorials
Load ROS Environment
source /opt/ros/kinetic/setup.bash
Using source package
Install ROS
Follow the instruction of ROS installation
Setup catkin workspace
source /opt/ros/kinetic/setup.bash
sudo apt install python-catkin-tools python-wstool python-rosdep git
sudo rosdep init
rosdep update
# Create catkin workspace and download source repository
mkdir -p ~/ros/kinetic/src && cd ~/ros/kinetic/src
wstool init
wstool set jsk-ros-pkg/jsk_pr2eus --git https://github.com/jsk-ros-pkg/jsk_pr2eus.git -v master
wstool update
# Install dependencies for building the package
rosdep install --from-paths . -i -r -n -y
# Build the package
cd ~/ros/kinetic
catkin init
catkin build
Load ROS Environment
source ~/ros/kinetic/devel/setup.bash
Tabletop Object Grasping Demo
Tabletop Object Grasping Demo with PR2
Startup nodes
First we need to start nodes used for this demo.
Using a real robot
# on PR2 real robot
ssh <robot address>
roslaunch pr2eus_tutorials pr2_tabletop.launch
If you try using compressed topic from the real PR2,
# on local machine
roslaunch pr2eus_tutorials pr2_tabletop.launch remote:=true
You can locate a desk in front of the robot and put any objects on it.
Using a simulator
You can set physics engine with roslaunch argument.
# on local machine
# It may take time to download materials for the first time
roslaunch pr2eus_tutorials pr2_tabletop_sim.launch physics:=dart
You can see the robot is spawned in a scene with a desk and some objects.
Run demo
Then we can now start the demo program for picking objects.
Start Euslisp program
# on local machine
rosrun pr2eus_tutorials pr2-tabletop-object-grasp.l
Start Rviz
After running the demo program above, you can see object bounding boxes in the RViZ
window.
It means the robot now recognizes each objects as individual objects from camera sensor inputs.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop.rviz
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, meaning using compressed topic from the real PR2, execute this instead.
# on local machine
rviz -d $(rospack find pr2eus_tutorials)/config/pr2_tabletop_remote.rviz
Additional setup for Kinetic local machine with a real robot
If you want to know why we need these node, please see here.
You also need to switch Tabletop Object
rviz panel topic from /bounding_box_interactive_marker/update
to /bounding_box_interactive_marker/kinetic/update
.
# on local machine
rosrun jsk_robot_utils marker_msg_from_indigo_to_kinetic.py
rosrun topic_tools relay /bounding_box_interactive_marker/kinetic/feedback /bounding_box_interactive_marker/feedback
Click object bouding on Rviz
You can click any object that you want the robot to pick up.
Click object on image_view2
You can click any pixels that you want the robot to pick up.
rosrun image_view2 image_view2 image:=/kinect_head/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
If you try roslaunch pr2eus_tutorials pr2_tabletop.launch
with remote:=true
, execute this instead.
rosrun image_view2 image_view2 image:=/kinect_head_remote/rgb/throttled/image_rect_color camera_info:=/head_mount_kinect/rgb/camera_info
Step-by-step Description of Demo program
In the bottom of the demo program pr2-tabletop-object-grasp.l
, you can see a main function demo
.
(defun demo ()
(setq *grasping-object-p* nil)
(setq *arm* :rarm)
(setq *tfl* (instance ros::transform-listener :init))
(setq *tfb* (instance ros::transform-broadcaster :init))
(pr2-init)
(pr2-pregrasp-pose)
(wait-for-grasp-target))
The (pr2-init)
method is just a initialization function for pr2 robot that instantiate two objects required for robot manipulation from euslisp:
-
*pr2*
: This object is a kinematic model for a PR2 robot. This object includes any fundamental functions for robot modeling such as inverse kinematics, dynamics, geometric constraints and so on. You can visualize this model by evaluating(objects (list *pr2*))
. -
*ri*
: This is an object that send a control signal to the actual robot from euslisp kinematics model and receive the result or actual states of the robot.ri
is an abbreviation ofrobot interface
.
Please note that (pr2-init)
function is defined in pr2-interface.l
in the pr2eus
package.
In this demo program, the function is loaded in the top of the script:
(require :pr2-interface "package://pr2eus/pr2-interface.l")
After (pr2-init)
is executed, the kinematic model looks like below:
After initialized the robot in euslisp, (pr2-pregrasp-pose)
method is executed.
(defun pr2-pregrasp-pose ()
(send *pr2* :reset-manip-pose)
(send *ri* :angle-vector (send *pr2* :angle-vector) 5000)
(send *ri* :wait-interpolation))
The first line (send *pr2* :reset-manip-pose)
changes the pose of euslisp kinematic model to the predefined pose called reset-manip-pose
.
With calling this method, the actual robot does NOT move because this method only changes the states of the kinematic model. Instead you can see the current states of the kinematic model by (objects (list *pr2*))
.
The kinematic model now looks like below:
The second line then send the current state of kinematic model to the actual robot.
The second argument 5000
allows the robot to take 5000 milliseconds to move to the pose. If the second argument is omitted, the default argument 3000
will be used.
After the second line, it will take 5 seconds until the robot ends to move, but the method call itself returns immediately. The last method called in the last line is just for waiting for the robot until he ends to move to the specified pose.
Reach Object Demo
Reach Object Demo with PR2
# launch gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/wide_stereo/points2 h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/pr2_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(pr2-setup)
(reach-object-demo)
Reach Object Demo with HRP2JSK
hrpsys_gazebo_tutorials
is required.
(Currently, HRP2 model is not provided for open source projects.)
# launch gazebo
roslaunch hrpsys_gazebo_tutorials gazebo_hrp2jsk_no_controllers.launch
roslaunch pr2eus_tutorials spawn_objects.launch
# lanch hrpsys
rtmlaunch hrpsys_gazebo_tutorials hrp2jsk_hrpsys_bringup.launch KINEMATICS_MODE:=true
# launch recognition
roslaunch jsk_pcl_ros hsi_color_filter.launch INPUT:=/xtion/depth/points h_min:=75 s_min:=50
# visualization
rviz -d `rospack find pr2eus_tutorials`/config/hrp2jsk_reach_object.rviz
# eus
roscd pr2eus_tutorials/euslisp
roseus reach-object.l
(hrp2jsk-setup)
(reach-object-demo)
Changelog for package pr2eus_tutorials
0.3.15 (2023-04-17)
- integrate all .github/workflows/*.yml to config.yml, fix permission issue (#479)
- [pr2eus_tutorials] fix look-at-hand (#472)
- [pr2eus_tutorials] fix pr2_tabletop.launch for remote PC (#459)
- [pr2eus_tutorials] Fix publish status (#464)
- [pr2eus_tutorials] Select grasp position via 2D image (#437)
- Update pr2eus_tutorials README (#389)
- [pr2eus_tutorials] add pr2 tabletop demo test and sample (#387)
- Contributors: Furushchev, Kei Okada, Naoto Tsukamoto, Naoya Yamaguchi, Shingo Kitagawa, Shumpei Wakabayashi, Yuki Furuta
0.3.14 (2019-02-11)
- add jsk_interactive_marker (#349 ) c.f. https://github.com/jsk-ros-pkg/jsk_pr2eus/issues/348
- Contributors: Kei Okada
0.3.13 (2017-07-14)
0.3.12 (2017-07-11)
0.3.11 (2017-06-25)
- add test code for pr2 dual arm IK (#272 )
- Contributors: Chi Wun Au
0.3.10 (2017-03-02)
0.3.9 (2017-02-22)
0.3.8 (2017-02-07)
0.3.7 (2016-11-08)
0.3.6 (2016-11-02)
0.3.5 (2016-09-16)
0.3.4 (2016-06-22)
0.3.3 (2016-05-28)
0.3.2 (2016-05-26)
0.3.1 (2016-05-22)
- [pr2eus_tutorials/package.xml] add roseus_tutorials to run_depend
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix camera namespace openni -> kinect_head_c2
- [pr2eus_tutorials/launch/pr2_tabletop.launch] fix rviz config path
- [pr2eus_tutorials] cleanup directory
- move gazebo related launch files to [launch/gazebo]{.title-ref} directory
- move rviz config file to [config]{.title-ref} directory
- fix include path in launch files
- Contributors: Yuki Furuta
0.3.0 (2016-03-20)
- add files for reach object demo.
- [pr2eus_tutorials] remove dependency to pr2_gazebo.
- catkinize pr2eus_tutorials
- Contributors: Kei Okada, Masaki Murooka
0.2.1 (2016-03-04)
0.2.0 (2015-11-03)
0.1.11 (2015-06-11)
0.1.10 (2015-04-03 18:49)
0.1.9 (2015-04-03 16:52)
0.1.8 (2015-02-25)
0.1.7 (2015-02-10)
- add empty map in pr2 gazebo startup
- add startup launch file for gazebo pr2
- rename parameter and delete unused arg
- changed pos_z
- changed codes to be used in hydro
- add rot_{rpy} arguments to spawn_cylinder.launch
- add object spawner for gazebo
- remove absolute path
- Contributors: YoheiKakiuchi, ohara, tarukosu
0.1.6 (2014-05-11)
0.1.5 (2014-05-03)
0.1.4 (2014-05-02 22:28)
0.1.3 (2014-05-02 18:04)
0.1.2 (2014-05-01 22:43)
0.1.1 (2014-05-01 02:14)
- fix tabletop launcher
- update some template_grasp files
- fixed launch file path by addint _frontend.
- update parameter at base_trajectory
- update pr2_gazebo_empty.launch on pr2eus_tutorials
- fix typo null -> nil
- comment out dependancy unreleased package
- update tabletop-sample.l
- add comment to tabletop-sample.l
- update files for template grasp
- fix using arm navigation overridingopenrave
- temporary backup for migration
- Added some general comments. Also removed some old commented code that is not used.
- add one shot subscriber for point cloud
- fix bug
- update proc-detection
- add subscribe-detection-result.l
- add launch_objectdetection arguments for publish /ObjectDetection
- remove magic number. Using approach distance
- fixed the bug of unnecessary translation of graps-cds
- fix: arm-navigation sample
- fix: remove magic number
- add parameter: convert_to_base_link
- added hand-coords visualizer for image_view2
- added place function, check colliderreset
- launch realtime_tabletop on default template_grasp launch
- added y-or-n-from-tablet function
- bugfix coodinate transform of grasp pose
- add pr2_template_grasp_sim.launch
- update and add launch_object_manipulation
- merged comments and update from obsolates
- add comments
- added template_grasp samples, pick from android
- add comment
- fix: topic name for real robot
- add pr2_tabletop.launch
- add argument nav:=true to interactive_manipulation
- fix: launch_rviz -> run_rviz
- add goto-init-pose
- add pr2_tabletop_sim.launch
- fix: typo
- add pr2_interactive_manipulation_sim.launch
- add objects to pr2_gazebo_objects.launch
- add pr2eus_tutorials for using pr2eus software on simulation environment
- Contributors: YoheiKakiuchi, chen, kazuto, tatu, y-tnaka, youhei
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
pr2eus | |
jsk_pcl_ros | |
catkin | |
app_manager | |
eusurdf | |
pr2_gazebo | |
roseus_tutorials | |
image_view2 | |
jsk_interactive_marker | |
jsk_recognition_msgs | |
jsk_rviz_plugins | |
jsk_pr2_startup | |
jsk_maps | |
rostest |
System Dependencies
Dependant Packages
Launch files
- launch/gazebo/spawn_box.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: box]
- color [default: Green]
- size_x [default: 0.5]
- size_y [default: 0.5]
- size_z [default: 0.5]
- launch/gazebo/pr2_gazebo_empty.launch
-
- RUN_RVIZ [default: true]
- LAUNCH_NAVI [default: true]
- LAUNCH_BASE_CONTROLLER [default: true]
- launch/gazebo/pr2_tabletop_scene.launch
-
- gui [default: true]
- physics [default: ode]
- launch/gazebo/pr2_tabletop_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/spawn_model_in_database.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: table_model]
- type_name [default: table]
- launch/gazebo/spawn_objects.launch
- launch/gazebo/pr2_gazebo_objects.launch
-
- run_rviz [default: true]
- table_x_pos [default: 0.0]
- launch/gazebo/pr2_interactive_manipulation_sim.launch
- launch/gazebo/pr2_template_grasp_sim.launch
-
- run_rviz [default: true]
- launch/gazebo/gazebo_image_relay.launch
- launch/gazebo/pr2_tabletop_sim.launch
-
- gui [default: true]
- run_rviz [default: true]
- publish_objects_tf [default: true]
- physics [default: ode]
- launch/gazebo/pr2_gazebo_startup.launch
-
- launch_empty_map [default: true]
- launch_move_base [default: true]
- launch_move_tilt_scan [default: true]
- launch_moveit [default: false]
- launch_moveit_gui [default: false]
- launch_openni [default: true]
- launch/gazebo/spawn_cylinder.launch
-
- pos_x [default: 0.0]
- pos_y [default: 0.0]
- pos_z [default: 0.0]
- rot_r [default: 0.0]
- rot_p [default: 0.0]
- rot_y [default: 0.0]
- model_name [default: cylinder]
- color [default: Green]
- length [default: 0.2]
- radius [default: 0.05]
- launch/pr2_tabletop.launch
-
- run_rviz [default: false]
- publish_objects_tf [default: true]
- launch_tracking [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- sim [default: false]
- remote [default: false]
- launch/pr2_tabletop_grasp.launch
-
- run_rviz [default: false]
- manager [default: pr2_tabletop_object_detector_nodelet_manager]
- machine [default: c2]
- launch/tabletop_complete.launch
-
- flatten_table [default: false]
- model_set [default: REDUCED_MODEL_SET]
- tabletop_segmentation_points_input [default: narrow_stereo_textured/points2]
- launch/template_grasp.launch
-
- kinect_camera_name [default: openni]
- launch_object_manipulation [default: false]
- launch_realtime_tabletop [default: true]
- launch_objectdetection [default: false]
- apps/tabletop_grasp/tabletop_grasp.xml