diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 65fe42e..c96edf0 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -2,6 +2,18 @@
Changelog for package ros_control_boilerplate
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+0.5.0 (2019-01-28)
+------------------
+* Fix `catkin lint` warnings
+* Remove obsolete `FindGflags.cmake` script
+* Move `ros_control_boilerplate`, obscuring rrbot demo package, into
+ own subdirectory
+* Package `rrbot_control` name conflicts with `gazebo_ros_demos` repo
+ package; rename to `rrbot_control_boilerplate`
+* Make `rrbot_control_boilerplate` independent package; install launch
+ and config files for reuse by other packages
+* Update URLs in `package.xml` files
+
0.4.1 (2017-06-20)
------------------
* Changed boost::shared_ptr to typedef for Lunar support
diff --git a/cmake/FindGflags.cmake b/cmake/FindGflags.cmake
deleted file mode 100644
index 21ae953..0000000
--- a/cmake/FindGflags.cmake
+++ /dev/null
@@ -1,52 +0,0 @@
-###############################################################################
-#
-# CMake script for finding the GFlags library.
-#
-# https://gflags.github.io/gflags/
-#
-# Redistribution and use is allowed according to the terms of the 3-clause BSD
-# license.
-#
-# Input variables:
-#
-# - Gflags_FIND_REQUIRED: throws an error if gflags is not found but it is required
-#
-# Output variables:
-#
-# - Gflags_FOUND: Boolean that indicates if the package was found
-# - Gflags_LIBRARIES: Package libraries
-# - Gflags_INCLUDE_DIRS: Absolute path to package headers
-#
-# Example usage:
-#
-# find_package(Gflags REQUIRED)
-#
-# include_directories(
-# ${Gflags_INCLUDE_DIRS}
-# )
-#
-# add_executable(main src/main.cpp)
-# target_link_libraries(main
-# ${Gflags_LIBRARIES}
-# )
-###############################################################################
-
-
-find_path(Gflags_INCLUDE_PATH gflags/gflags.h)
-
-find_library(Gflags_LIBRARY NAMES gflags libgflags)
-
-if(Gflags_INCLUDE_PATH AND Gflags_LIBRARY)
- set(Gflags_FOUND TRUE)
-endif(Gflags_INCLUDE_PATH AND Gflags_LIBRARY)
-
-if(Gflags_FOUND)
- message(STATUS "Found gflags: ${Gflags_LIBRARY}")
- # Output variables
- set(Gflags_INCLUDE_DIRS ${Gflags_INCLUDE_DIR})
- set(Gflags_LIBRARIES ${Gflags_LIBRARY})
-else(Gflags_FOUND)
- if(Gflags_FIND_REQUIRED)
- message(FATAL_ERROR "Could not find gflags library.")
- endif(Gflags_FIND_REQUIRED)
-endif(Gflags_FOUND)
diff --git a/CMakeLists.txt b/ros_control_boilerplate/CMakeLists.txt
similarity index 96%
rename from CMakeLists.txt
rename to ros_control_boilerplate/CMakeLists.txt
index 69f30c7..6c7a922 100644
--- a/CMakeLists.txt
+++ b/ros_control_boilerplate/CMakeLists.txt
@@ -2,26 +2,25 @@ cmake_minimum_required(VERSION 2.8.3)
project(ros_control_boilerplate)
# C++ 11
-set(CMAKE_CXX_FLAGS "-std=c++11 -Wall ${CMAKE_CXX_FLAGS}")
+add_compile_options(-std=c++11 -Wall)
find_package(catkin REQUIRED COMPONENTS
+ actionlib
cmake_modules
- hardware_interface
+ control_msgs
+ control_toolbox
controller_manager
+ hardware_interface
+ joint_limits_interface
roscpp
- control_msgs
+ rosparam_shortcuts
+ sensor_msgs
+ std_msgs
trajectory_msgs
- actionlib
- urdf
- joint_limits_interface
transmission_interface
- control_toolbox
- std_msgs
- sensor_msgs
- rosparam_shortcuts
+ urdf
)
-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/cmake)
find_package(Gflags REQUIRED)
## System dependencies are found with CMake's conventions
@@ -31,18 +30,18 @@ catkin_package(
INCLUDE_DIRS
include
CATKIN_DEPENDS
- hardware_interface
+ control_msgs
+ control_toolbox
controller_manager
+ hardware_interface
+ joint_limits_interface
roscpp
- control_msgs
+ rosparam_shortcuts
+ sensor_msgs
+ std_msgs
trajectory_msgs
- urdf
- joint_limits_interface
transmission_interface
- control_toolbox
- std_msgs
- sensor_msgs
- rosparam_shortcuts
+ urdf
LIBRARIES
generic_hw_control_loop
generic_hw_interface
@@ -133,28 +132,26 @@ target_link_libraries(${PROJECT_NAME}_keyboard_teleop
${catkin_LIBRARIES}
)
-add_subdirectory(rrbot_control)
-
## Install ------------------------------------------------------------
# Install libraries
install(TARGETS
+ controller_to_csv
+ csv_to_controller
generic_hw_control_loop
generic_hw_interface
sim_hw_interface
- controller_to_csv
- csv_to_controller
LIBRARY DESTINATION
${CATKIN_PACKAGE_LIB_DESTINATION}
)
# Install executables
install(TARGETS
- ${PROJECT_NAME}_sim_hw_main
- ${PROJECT_NAME}_test_trajectory
${PROJECT_NAME}_controller_to_csv_main
${PROJECT_NAME}_csv_to_controller_main
${PROJECT_NAME}_keyboard_teleop
+ ${PROJECT_NAME}_sim_hw_main
+ ${PROJECT_NAME}_test_trajectory
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
diff --git a/include/ros_control_boilerplate/generic_hw_control_loop.h b/ros_control_boilerplate/include/ros_control_boilerplate/generic_hw_control_loop.h
similarity index 100%
rename from include/ros_control_boilerplate/generic_hw_control_loop.h
rename to ros_control_boilerplate/include/ros_control_boilerplate/generic_hw_control_loop.h
diff --git a/include/ros_control_boilerplate/generic_hw_interface.h b/ros_control_boilerplate/include/ros_control_boilerplate/generic_hw_interface.h
similarity index 100%
rename from include/ros_control_boilerplate/generic_hw_interface.h
rename to ros_control_boilerplate/include/ros_control_boilerplate/generic_hw_interface.h
diff --git a/include/ros_control_boilerplate/sim_hw_interface.h b/ros_control_boilerplate/include/ros_control_boilerplate/sim_hw_interface.h
similarity index 100%
rename from include/ros_control_boilerplate/sim_hw_interface.h
rename to ros_control_boilerplate/include/ros_control_boilerplate/sim_hw_interface.h
diff --git a/include/ros_control_boilerplate/tools/controller_to_csv.h b/ros_control_boilerplate/include/ros_control_boilerplate/tools/controller_to_csv.h
similarity index 100%
rename from include/ros_control_boilerplate/tools/controller_to_csv.h
rename to ros_control_boilerplate/include/ros_control_boilerplate/tools/controller_to_csv.h
diff --git a/include/ros_control_boilerplate/tools/csv_to_controller.h b/ros_control_boilerplate/include/ros_control_boilerplate/tools/csv_to_controller.h
similarity index 100%
rename from include/ros_control_boilerplate/tools/csv_to_controller.h
rename to ros_control_boilerplate/include/ros_control_boilerplate/tools/csv_to_controller.h
diff --git a/include/ros_control_boilerplate/tools/joystick_manual_control.h b/ros_control_boilerplate/include/ros_control_boilerplate/tools/joystick_manual_control.h
similarity index 100%
rename from include/ros_control_boilerplate/tools/joystick_manual_control.h
rename to ros_control_boilerplate/include/ros_control_boilerplate/tools/joystick_manual_control.h
diff --git a/package.xml b/ros_control_boilerplate/package.xml
similarity index 86%
rename from package.xml
rename to ros_control_boilerplate/package.xml
index b04713e..a9662d4 100644
--- a/package.xml
+++ b/ros_control_boilerplate/package.xml
@@ -8,9 +8,9 @@
BSD
- https://github.com/davetcoleman/ros_control_boilerplate
- https://github.com/davetcoleman/ros_control_boilerplate/issues
- https://github.com/davetcoleman/ros_control_boilerplate/
+ https://github.com/PickNikRobotics/ros_control_boilerplate
+ https://github.com/PickNikRobotics/ros_control_boilerplate/issues
+ https://github.com/PickNikRobotics/ros_control_boilerplate/
Dave Coleman
diff --git a/scripts/analyze_trajectory.m b/ros_control_boilerplate/scripts/analyze_trajectory.m
similarity index 100%
rename from scripts/analyze_trajectory.m
rename to ros_control_boilerplate/scripts/analyze_trajectory.m
diff --git a/src/generic_hw_control_loop.cpp b/ros_control_boilerplate/src/generic_hw_control_loop.cpp
similarity index 100%
rename from src/generic_hw_control_loop.cpp
rename to ros_control_boilerplate/src/generic_hw_control_loop.cpp
diff --git a/src/generic_hw_interface.cpp b/ros_control_boilerplate/src/generic_hw_interface.cpp
similarity index 100%
rename from src/generic_hw_interface.cpp
rename to ros_control_boilerplate/src/generic_hw_interface.cpp
diff --git a/src/sim_hw_interface.cpp b/ros_control_boilerplate/src/sim_hw_interface.cpp
similarity index 100%
rename from src/sim_hw_interface.cpp
rename to ros_control_boilerplate/src/sim_hw_interface.cpp
diff --git a/src/sim_hw_main.cpp b/ros_control_boilerplate/src/sim_hw_main.cpp
similarity index 100%
rename from src/sim_hw_main.cpp
rename to ros_control_boilerplate/src/sim_hw_main.cpp
diff --git a/src/tools/controller_to_csv.cpp b/ros_control_boilerplate/src/tools/controller_to_csv.cpp
similarity index 100%
rename from src/tools/controller_to_csv.cpp
rename to ros_control_boilerplate/src/tools/controller_to_csv.cpp
diff --git a/src/tools/controller_to_csv_main.cpp b/ros_control_boilerplate/src/tools/controller_to_csv_main.cpp
similarity index 100%
rename from src/tools/controller_to_csv_main.cpp
rename to ros_control_boilerplate/src/tools/controller_to_csv_main.cpp
diff --git a/src/tools/csv_to_controller.cpp b/ros_control_boilerplate/src/tools/csv_to_controller.cpp
similarity index 100%
rename from src/tools/csv_to_controller.cpp
rename to ros_control_boilerplate/src/tools/csv_to_controller.cpp
diff --git a/src/tools/csv_to_controller_main.cpp b/ros_control_boilerplate/src/tools/csv_to_controller_main.cpp
similarity index 100%
rename from src/tools/csv_to_controller_main.cpp
rename to ros_control_boilerplate/src/tools/csv_to_controller_main.cpp
diff --git a/src/tools/keyboard_teleop.cpp b/ros_control_boilerplate/src/tools/keyboard_teleop.cpp
similarity index 100%
rename from src/tools/keyboard_teleop.cpp
rename to ros_control_boilerplate/src/tools/keyboard_teleop.cpp
diff --git a/src/tools/test_trajectory.cpp b/ros_control_boilerplate/src/tools/test_trajectory.cpp
similarity index 100%
rename from src/tools/test_trajectory.cpp
rename to ros_control_boilerplate/src/tools/test_trajectory.cpp
diff --git a/rrbot_control/CMakeLists.txt b/rrbot_control_boilerplate/CMakeLists.txt
similarity index 53%
rename from rrbot_control/CMakeLists.txt
rename to rrbot_control_boilerplate/CMakeLists.txt
index b361b90..c93f092 100644
--- a/rrbot_control/CMakeLists.txt
+++ b/rrbot_control_boilerplate/CMakeLists.txt
@@ -1,5 +1,26 @@
+cmake_minimum_required(VERSION 2.8.3)
+project(rrbot_control_boilerplate)
+
+# C++ 11
+add_compile_options(-std=c++11 -Wall)
+
+find_package(catkin REQUIRED COMPONENTS
+ ros_control_boilerplate
+)
+
+catkin_package(
+ INCLUDE_DIRS include
+ LIBRARIES rrbot_hw_interface
+ CATKIN_DEPENDS ros_control_boilerplate
+)
+
+###########
+## Build ##
+###########
+
include_directories(
- include/
+ include
+ ${catkin_INCLUDE_DIRS}
)
# RRBot Hardware Interface
@@ -7,7 +28,6 @@ add_library(rrbot_hw_interface
src/rrbot_hw_interface.cpp
)
target_link_libraries(rrbot_hw_interface
- generic_hw_interface
${catkin_LIBRARIES}
)
@@ -15,7 +35,6 @@ target_link_libraries(rrbot_hw_interface
add_executable(rrbot_hw_main src/rrbot_hw_main.cpp)
target_link_libraries(rrbot_hw_main
rrbot_hw_interface
- generic_hw_control_loop
${catkin_LIBRARIES}
)
@@ -36,4 +55,12 @@ install(TARGETS
)
# Install header files
-install(DIRECTORY include/rrbot_control/ DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION})
+install(
+ DIRECTORY include/${PROJECT_NAME}/
+ DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION})
+
+install(DIRECTORY config
+ DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})
+
+install(DIRECTORY launch
+ DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})
diff --git a/rrbot_control/config/rrbot_controllers.yaml b/rrbot_control_boilerplate/config/rrbot_controllers.yaml
similarity index 100%
rename from rrbot_control/config/rrbot_controllers.yaml
rename to rrbot_control_boilerplate/config/rrbot_controllers.yaml
diff --git a/rrbot_control/include/rrbot_control/rrbot_hw_interface.h b/rrbot_control_boilerplate/include/rrbot_control_boilerplate/rrbot_hw_interface.h
similarity index 94%
rename from rrbot_control/include/rrbot_control/rrbot_hw_interface.h
rename to rrbot_control_boilerplate/include/rrbot_control_boilerplate/rrbot_hw_interface.h
index d273034..918e7dc 100644
--- a/rrbot_control/include/rrbot_control/rrbot_hw_interface.h
+++ b/rrbot_control_boilerplate/include/rrbot_control_boilerplate/rrbot_hw_interface.h
@@ -37,12 +37,12 @@
For a more detailed simulation example, see sim_hw_interface.h
*/
-#ifndef RRBOT_CONTROL__RRBOT_HW_INTERFACE_H
-#define RRBOT_CONTROL__RRBOT_HW_INTERFACE_H
+#ifndef RRBOT_CONTROL_BOILERPLATE__RRBOT_HW_INTERFACE_H
+#define RRBOT_CONTROL_BOILERPLATE__RRBOT_HW_INTERFACE_H
#include
-namespace rrbot_control
+namespace rrbot_control_boilerplate
{
/// \brief Hardware interface for a robot
diff --git a/rrbot_control/launch/rrbot_hardware.launch b/rrbot_control_boilerplate/launch/rrbot_hardware.launch
similarity index 89%
rename from rrbot_control/launch/rrbot_hardware.launch
rename to rrbot_control_boilerplate/launch/rrbot_hardware.launch
index 429f7d6..382a257 100644
--- a/rrbot_control/launch/rrbot_hardware.launch
+++ b/rrbot_control_boilerplate/launch/rrbot_hardware.launch
@@ -16,7 +16,9 @@
output="screen" launch-prefix="$(arg launch_prefix)"/>
-
+
-
+
-
+
diff --git a/rrbot_control/launch/rrbot_visualize.launch b/rrbot_control_boilerplate/launch/rrbot_visualize.launch
similarity index 100%
rename from rrbot_control/launch/rrbot_visualize.launch
rename to rrbot_control_boilerplate/launch/rrbot_visualize.launch
diff --git a/rrbot_control/package.xml b/rrbot_control_boilerplate/package.xml
similarity index 62%
rename from rrbot_control/package.xml
rename to rrbot_control_boilerplate/package.xml
index 2dc5a5e..a8a452c 100644
--- a/rrbot_control/package.xml
+++ b/rrbot_control_boilerplate/package.xml
@@ -1,6 +1,6 @@
- rrbot_control
+ rrbot_control_boilerplate
0.0.1
Simple simulation interface and template for setting up a hardware interface for rrbot
@@ -8,9 +8,9 @@
BSD
- https://github.com/davetcoleman/ros_control_boilerplate
- https://github.com/davetcoleman/ros_control_boilerplate/issues
- https://github.com/davetcoleman/ros_control_boilerplate/
+ https://github.com/PickNikRobotics/ros_control_boilerplate
+ https://github.com/PickNikRobotics/ros_control_boilerplate/issues
+ https://github.com/PickNikRobotics/ros_control_boilerplate/
Dave Coleman
diff --git a/rrbot_control/src/rrbot_hw_interface.cpp b/rrbot_control_boilerplate/src/rrbot_hw_interface.cpp
similarity index 98%
rename from rrbot_control/src/rrbot_hw_interface.cpp
rename to rrbot_control_boilerplate/src/rrbot_hw_interface.cpp
index abbe928..3d2d831 100644
--- a/rrbot_control/src/rrbot_hw_interface.cpp
+++ b/rrbot_control_boilerplate/src/rrbot_hw_interface.cpp
@@ -37,9 +37,9 @@
For a more detailed simulation example, see sim_hw_interface.cpp
*/
-#include
+#include
-namespace rrbot_control
+namespace rrbot_control_boilerplate
{
RRBotHWInterface::RRBotHWInterface(ros::NodeHandle &nh, urdf::Model *urdf_model)
diff --git a/rrbot_control/src/rrbot_hw_main.cpp b/rrbot_control_boilerplate/src/rrbot_hw_main.cpp
similarity index 92%
rename from rrbot_control/src/rrbot_hw_main.cpp
rename to rrbot_control_boilerplate/src/rrbot_hw_main.cpp
index 0fc7258..502cdfa 100644
--- a/rrbot_control/src/rrbot_hw_main.cpp
+++ b/rrbot_control_boilerplate/src/rrbot_hw_main.cpp
@@ -37,7 +37,7 @@
*/
#include
-#include
+#include
int main(int argc, char** argv)
{
@@ -50,8 +50,8 @@ int main(int argc, char** argv)
spinner.start();
// Create the hardware interface specific to your robot
- boost::shared_ptr rrbot_hw_interface
- (new rrbot_control::RRBotHWInterface(nh));
+ boost::shared_ptr rrbot_hw_interface
+ (new rrbot_control_boilerplate::RRBotHWInterface(nh));
rrbot_hw_interface->init();
// Start the control loop