From b39a744519642095bf1187c568b0861397e71fc2 Mon Sep 17 00:00:00 2001 From: Enrique Fernandez Date: Thu, 6 Aug 2015 17:39:52 -0400 Subject: [PATCH 1/7] Add libopencv-dev depend --- chapter5_tutorials/package.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/chapter5_tutorials/package.xml b/chapter5_tutorials/package.xml index 8c71442..5880709 100644 --- a/chapter5_tutorials/package.xml +++ b/chapter5_tutorials/package.xml @@ -21,6 +21,8 @@ camera_info_manager tf + libopencv-dev + roscpp message_runtime sensor_msgs @@ -31,4 +33,6 @@ image_transport camera_info_manager tf + + libopencv-dev From 3ac7849a908528379aea07e8840c2ce43b50ba41 Mon Sep 17 00:00:00 2001 From: Enrique Fernandez Date: Sat, 5 Sep 2015 17:23:04 -0400 Subject: [PATCH 2/7] Update README.md for jade-devel --- README.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 524ac3c..0310749 100644 --- a/README.md +++ b/README.md @@ -11,8 +11,11 @@ ## Installation ## -Install **ROS Hydro** on a compatible **Ubuntu** distro following the official instructions provided [here](http://wiki.ros.org/hydro/Installation/Ubuntu). -Note that **ROS Indigo** might also work for most of the source code. +Install **ROS Jade** on a compatible **Ubuntu** distro following the official instructions provided [here](http://wiki.ros.org/hydro/Installation/Ubuntu). + +For **ROS Hydro** use the [**hydro-devel**](https://github.com/AaronMR/Learning_ROS_for_Robotics_Programming_2nd_edition/tree/hydro-devel) branch. + +For **ROS Indigo** use the [**indigo-devel**](https://github.com/AaronMR/Learning_ROS_for_Robotics_Programming_2nd_edition/tree/indigo-devel) branch. Create a workspace: ``` bash @@ -23,7 +26,7 @@ wstool init Download this repository: ``` bash -wstool set ROS_Book_Hydro --git git@github.com:AaronMR/ROS_Book_Hydro.git +wstool set ros_book --git git@github.com:AaronMR/Learning_ROS_for_Robotics_Programming_2nd_edition.git wstool up -j8 ``` @@ -43,7 +46,7 @@ source devel/setup.bash ## Tutorials ## -* **Chapter 1:** Getting started with ROS Hydro (no source code as it covers the installation) +* **Chapter 1:** Getting started with ROS (no source code as it covers the installation) * **Chapter 2:** ROS Architecture and Concepts * **Chapter 3:** Visualization and Debug Tools * **Chapter 4:** Using Sensors and Actuators with ROS From de9c35b4c6262001a7cb8413a2ca375736c90a85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Enrique=20Fern=C3=A1ndez=20Perdomo?= Date: Sun, 6 Dec 2015 18:38:33 -0500 Subject: [PATCH 3/7] Add link and cover image to README --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 0310749..5a85c7f 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ # Learning ROS for Robotics Programming - Second Edition # -**Learning ROS for Robotics Programming - Second Edition** book tutorials source code. +[**Learning ROS for Robotics Programming - Second Edition**](https://www.packtpub.com/hardware-and-creative/learning-ros-robotics-programming-%E2%80%93-second-edition) book tutorials source code. + + ## Authors ## From 48bc80c5b46e7a6435a886cf74ba6bd1b9aed7d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Enrique=20Fern=C3=A1ndez=20Perdomo?= Date: Wed, 28 Oct 2015 19:00:11 -0400 Subject: [PATCH 4/7] Add OpenCV non-free installation steps --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 5a85c7f..398e25e 100644 --- a/README.md +++ b/README.md @@ -19,6 +19,12 @@ For **ROS Hydro** use the [**hydro-devel**](https://github.com/AaronMR/Learning_ For **ROS Indigo** use the [**indigo-devel**](https://github.com/AaronMR/Learning_ROS_for_Robotics_Programming_2nd_edition/tree/indigo-devel) branch. +Install the OpenCV non-free repository: +``` bash +sudo add-apt-repository --yes ppa:xqms/opencv-nonfree +sudo apt-get install libopencv-nonfree-dev libopencv-nonfree2.4 +``` + Create a workspace: ``` bash mkdir -p ~/dev/catkin_ws/src From 454f7f8970eac86c5f4898e1a4f9b7a65ada2e14 Mon Sep 17 00:00:00 2001 From: Enrique Fernandez Date: Sun, 6 Dec 2015 19:02:36 -0500 Subject: [PATCH 5/7] Fix chapter 9 depends Solves #14 and cleans the CMakeLists.txt and package.xml files. --- chapter9_tutorials/CMakeLists.txt | 161 +++--------------------------- chapter9_tutorials/package.xml | 67 ++++--------- 2 files changed, 33 insertions(+), 195 deletions(-) diff --git a/chapter9_tutorials/CMakeLists.txt b/chapter9_tutorials/CMakeLists.txt index c37b487..fc829c4 100644 --- a/chapter9_tutorials/CMakeLists.txt +++ b/chapter9_tutorials/CMakeLists.txt @@ -1,166 +1,29 @@ cmake_minimum_required(VERSION 2.8.3) project(chapter9_tutorials) -## Find catkin macros and libraries -## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) -## is used, also find other catkin packages find_package(catkin REQUIRED COMPONENTS roscpp - rospy + move_base_msgs + actionlib tf ) -## System dependencies are found with CMake's conventions -# find_package(Boost REQUIRED COMPONENTS system) +catkin_package() - -## Uncomment this if the package has a setup.py. This macro ensures -## modules and global scripts declared therein get installed -## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html -# catkin_python_setup() - -################################################ -## Declare ROS messages, services and actions ## -################################################ - -## To declare and build messages, services or actions from within this -## package, follow these steps: -## * Let MSG_DEP_SET be the set of packages whose message types you use in -## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...). -## * In the file package.xml: -## * add a build_depend and a run_depend tag for each package in MSG_DEP_SET -## * If MSG_DEP_SET isn't empty the following dependencies might have been -## pulled in transitively but can be declared for certainty nonetheless: -## * add a build_depend tag for "message_generation" -## * add a run_depend tag for "message_runtime" -## * In this file (CMakeLists.txt): -## * add "message_generation" and every package in MSG_DEP_SET to -## find_package(catkin REQUIRED COMPONENTS ...) -## * add "message_runtime" and every package in MSG_DEP_SET to -## catkin_package(CATKIN_DEPENDS ...) -## * uncomment the add_*_files sections below as needed -## and list every .msg/.srv/.action file to be processed -## * uncomment the generate_messages entry below -## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) - -## Generate messages in the 'msg' folder -# add_message_files( -# FILES -# Message1.msg -# Message2.msg -# ) - -## Generate services in the 'srv' folder -# add_service_files( -# FILES -# Service1.srv -# Service2.srv -# ) - -## Generate actions in the 'action' folder -# add_action_files( -# FILES -# Action1.action -# Action2.action -# ) - -## Generate added messages and services with any dependencies listed here -# generate_messages( -# DEPENDENCIES -# std_msgs # Or other packages containing msgs -# ) - -################################### -## catkin specific configuration ## -################################### -## The catkin_package macro generates cmake config files for your package -## Declare things to be passed to dependent projects -## INCLUDE_DIRS: uncomment this if you package contains header files -## LIBRARIES: libraries you create in this project that dependent projects also need -## CATKIN_DEPENDS: catkin_packages dependent projects also need -## DEPENDS: system dependencies of this project that dependent projects also need -catkin_package( -# INCLUDE_DIRS include -# LIBRARIES chapter9_tutorials -# CATKIN_DEPENDS roscpp rospy -# DEPENDS system_lib -) - -########### -## Build ## -########### - -## Specify additional locations of header files -## Your package locations should be listed before other locations -# include_directories(include) include_directories( ${catkin_INCLUDE_DIRS} ) -## Declare a cpp library -# add_library(chapter9_tutorials -# src/${PROJECT_NAME}/chapter9_tutorials.cpp -# ) - -## Declare a cpp executable -# add_executable(chapter9_tutorials_node src/chapter9_tutorials_node.cpp) add_executable(sendGoals src/sendGoals.cpp) - -## Add cmake target dependencies of the executable/library -## as an example, message headers may need to be generated before nodes -# add_dependencies(chapter9_tutorials_node chapter9_tutorials_generate_messages_cpp) - -## Specify libraries to link a library or executable target against -# target_link_libraries(chapter9_tutorials_node -# ${catkin_LIBRARIES} -# ) - target_link_libraries(sendGoals ${catkin_LIBRARIES}) -############# -## Install ## -############# - -# all install targets should use catkin DESTINATION variables -# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html - -## Mark executable scripts (Python etc.) for installation -## in contrast to setup.py, you can choose the destination -# install(PROGRAMS -# scripts/my_python_script -# DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} -# ) - -## Mark executables and/or libraries for installation -# install(TARGETS chapter9_tutorials chapter9_tutorials_node -# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} -# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} -# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} -# ) - -## Mark cpp header files for installation -# install(DIRECTORY include/${PROJECT_NAME}/ -# DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} -# FILES_MATCHING PATTERN "*.h" -# PATTERN ".svn" EXCLUDE -# ) - -## Mark other files for installation (e.g. launch and bag files, etc.) -# install(FILES -# # myfile1 -# # myfile2 -# DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} -# ) - -############# -## Testing ## -############# - -## Add gtest based cpp test target and link libraries -# catkin_add_gtest(${PROJECT_NAME}-test test/test_chapter9_tutorials.cpp) -# if(TARGET ${PROJECT_NAME}-test) -# target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) -# endif() +install(TARGETS sendGoals + ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} + LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} + RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} +) -## Add folders to be run by python nosetests -# catkin_add_nosetests(test) +foreach(dir launch maps) + install(DIRECTORY ${dir}/ + DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/${dir}) +endforeach(dir) diff --git a/chapter9_tutorials/package.xml b/chapter9_tutorials/package.xml index 66fab11..cd8a0b2 100644 --- a/chapter9_tutorials/package.xml +++ b/chapter9_tutorials/package.xml @@ -4,54 +4,29 @@ 0.0.0 The chapter9_tutorials package - - - - retrorov-laptop + Enrique Fernandez + Enrique Fernandez + BSD - - - - TODO - - - - - - - - - - - - - - - - - - - - - - - - - catkin - roscpp - rospy - roscpp - rospy - - - - - - - + roscpp + move_base_msgs + actionlib + tf - - \ No newline at end of file + roscpp + move_base_msgs + actionlib + tf + amcl + gazebo_ros + xacro + move_base + map_server + joint_state_publisher + robot_state_publisher + rviz + robot1_description + From a4774c71a03a829152c904351aa130c51dc4f7cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Enrique=20Fern=C3=A1ndez=20Perdomo?= Date: Sun, 6 Dec 2015 19:28:11 -0500 Subject: [PATCH 6/7] Source setup.bash in code block + Update authors --- README.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 398e25e..0602def 100644 --- a/README.md +++ b/README.md @@ -6,10 +6,10 @@ ## Authors ## -* Aaron Martínez -* Anil Mahtani -* Enrique Fernández -* Luiz Sánchez +* [Enrique Fernández](https://github.com/efernandez) +* [Luis Sánchez Crespo](https://github.com/LuisSC) +* [Anil Mahtani](https://github.com/Anilm3) +* [Aaron Martínez](https://github.com/AaronMR) ## Installation ## @@ -44,10 +44,9 @@ cd .. rosdep install --from-paths src -iy ``` -source /opt/ros/$(rosversion -d)/setup.bash - Build the source code (alternatively, you can use `catkin build` instead of `catkin_make`): ``` bash +source /opt/ros/$(rosversion -d)/setup.bash catkin_make -j4 source devel/setup.bash ``` From e124f0286b1bc3a683e8a088f0cf5dcc0cb55ddc Mon Sep 17 00:00:00 2001 From: Enrique Fernandez Date: Sat, 23 Jan 2016 12:51:38 -0500 Subject: [PATCH 7/7] Fix args in include inside chapter9 launch refs #17 Address this ROS answer too: http://answers.ros.org/question/224242/tf-transformation-with-move_base/ --- .../chapter9_configuration_gazebo.launch | 34 ++++++++++++------- 1 file changed, 22 insertions(+), 12 deletions(-) diff --git a/chapter9_tutorials/launch/chapter9_configuration_gazebo.launch b/chapter9_tutorials/launch/chapter9_configuration_gazebo.launch index 9d2065b..1ef5f0e 100644 --- a/chapter9_tutorials/launch/chapter9_configuration_gazebo.launch +++ b/chapter9_tutorials/launch/chapter9_configuration_gazebo.launch @@ -1,23 +1,33 @@ + - + + - - - - + - - + + + + + + + + + + - - - + - + + - + +