Inspect the pick_and_place_exercise Package¶
In this exercise, we will get familiar with all the files that you’ll be interacting with throughout these exercises.
Acquire and initialize the Workspace¶
cp -r ~/industrial_training/exercises/Perception-Driven_Manipulation/\
template_ws ~/perception_driven_ws
cd ~/perception_driven_ws
source /opt/ros/melodic/setup.bash
catkin init
wstool update -t src
Download debian dependencies¶
Note
Make sure you have installed and configured the rosdep tool.
Then, run the following command from the src directory of your workspace:
rosdep install --from-paths . --ignore-src -y
Build your workspace¶
catkin build
Note
If the build fails then revisit the previous two steps to make sure all the dependencies were downloaded.
Source the workspace¶
Run the following command from your workspace parent directory
source devel/setup.bash
Look into the launch directory¶
ur5_setup.launchBrings up the entire ROS system (MoveIt!, Rviz, perception nodes, ROS-I drivers, robot I/O peripherals)
ur5_pick_and_place.launchRuns your pick and place node.
Look into the config directory¶
ur5/pick_and_place_parameters.yamlList of parameters read by the pick and place node.
rviz_config.rvizRviz configuration file for display properties.
target_recognition_parameters.yamlParameters used by the target recognition service for detecting the box from the sensor data.
test_cloud_obstacle_descriptions.yamlParameters used to generate simulated sensor data (simulated sensor mode only).
collision_obstacles.txtDescription of each obstacle blob added to the simulated sensor data (simulated sensor mode only)
Look into the src directory¶
nodes/pick_and_place_node.cppMain application thread. Contains all necessary headers and function calls.
tasks/create_motion_plan.cppcreate_pick_moves.cppcreate_place_moves.cppdetect_box_pick.cpppickup_box.cppplace_box.cppmove_to_wait_position.cppset_attached_object.cppset_gripper.cpp
Note
The tasks directory contains source files with incomplete function definitions. You will fill with code where needed in order to complete the exercise.
utilities/pick_and_place_utilities.cppContains support functions that will help you complete the exercise.