Initialize ROS
In this exercise, we’ll initialize the ros components that our application needs in order to communicate to MoveIt! and other parts of the system.
Locate Exercise Source File
- Go to the main application source file located in
plan_and_run/src/plan_and_run_node.cpp
.
- In the main program, locate the function call to
application.initRos()
.
- Go to the source file for that function located in the
plan_and_run/src/tasks/init_ros.cpp
.
- Alternatively, in QTCreator, click on any part of the function and press “F2” to bring up that file.
- Comment out the first line containing the
ROS_ERROR_STREAM ...
entry so that the function doesn’t quit immediately.
Complete Code
- Observe how the ros Publisher
marker_publisher_
variable is initialized. The node uses it to publish a visualization_msgs::!MarkerArray
message for visualizing the trajectory in RViz.
- Initialize the
moveit_run_path_client_ptr_
action client with the ExecuteTrajectoryAction
type.
- Find comment block that starts with
/* Fill Code:
and complete as described.
- Replace every instance of
[ COMPLETE HERE ]
accordingly.
Build Code and Run
cd
into your catkin workspace and run catkin build
- Then run the application launch file:
roslaunch plan_and_run demo_run.launch