From: Walter Fetter Lages Date: Fri, 10 May 2019 04:57:58 +0000 (-0300) Subject: Port to Melodic. X-Git-Tag: petryTCC~13 X-Git-Url: http://git.ece.ufrgs.br/?a=commitdiff_plain;h=aa1ad8273ab06961bae8a4cb20e0ce9a93869c50;p=twil.git Port to Melodic. --- diff --git a/twil/package.xml b/twil/package.xml index 2d4a31b..878dec0 100644 --- a/twil/package.xml +++ b/twil/package.xml @@ -1,10 +1,10 @@ - + twil - 2.0.0 + 2.0.1 The twil package - + Walter Fetter Lages @@ -16,44 +16,51 @@ GPLv3 - + http://www.ece.ufrgs.br/~fetter/twil - - + + + Walter Fetter Lages - + + + + + + + + + - - + + + + catkin - twil_description - - twil_ident + twil_bringup + twil_description + twil_gazebo_ros_control + twil_ident + - - - - - + diff --git a/twil_controllers/CMakeLists.txt b/twil_bringup/CMakeLists.txt similarity index 58% rename from twil_controllers/CMakeLists.txt rename to twil_bringup/CMakeLists.txt index c7f89f8..292572a 100644 --- a/twil_controllers/CMakeLists.txt +++ b/twil_bringup/CMakeLists.txt @@ -1,18 +1,16 @@ cmake_minimum_required(VERSION 2.8.3) -project(twil_controllers) +project(twil_bringup) + +## Compile as C++11, supported in ROS Kinetic and newer +# add_compile_options(-std=c++11) ## 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 - effort_controllers -) -find_package(cmake_modules REQUIRED) +find_package(catkin REQUIRED) ## System dependencies are found with CMake's conventions # find_package(Boost REQUIRED COMPONENTS system) -#find_package(Eigen REQUIRED) ## Uncomment this if the package has a setup.py. This macro ensures @@ -29,11 +27,11 @@ find_package(cmake_modules REQUIRED) ## * 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" +## * add a build_depend tag for "message_generation" +## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET +## * If MSG_DEP_SET isn't empty the following dependency has been pulled in +## but can be declared for certainty nonetheless: +## * add a exec_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 ...) @@ -45,11 +43,11 @@ find_package(cmake_modules REQUIRED) ## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) ## Generate messages in the 'msg' folder -#add_message_files( +# add_message_files( # FILES # Message1.msg # Message2.msg -#) +# ) ## Generate services in the 'srv' folder # add_service_files( @@ -71,21 +69,41 @@ find_package(cmake_modules REQUIRED) # std_msgs # Or other packages containing msgs # ) +################################################ +## Declare ROS dynamic reconfigure parameters ## +################################################ + +## To declare and build dynamic reconfigure parameters within this +## package, follow these steps: +## * In the file package.xml: +## * add a build_depend and a exec_depend tag for "dynamic_reconfigure" +## * In this file (CMakeLists.txt): +## * add "dynamic_reconfigure" to +## find_package(catkin REQUIRED COMPONENTS ...) +## * uncomment the "generate_dynamic_reconfigure_options" section below +## and list every .cfg file to be processed + +## Generate dynamic reconfigure parameters in the 'cfg' folder +# generate_dynamic_reconfigure_options( +# cfg/DynReconf1.cfg +# cfg/DynReconf2.cfg +# ) + ################################### ## 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 +## INCLUDE_DIRS: uncomment this if your 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( +catkin_package( # INCLUDE_DIRS include -# LIBRARIES ${PROJECT_NAME} -# CATKIN_DEPENDS message_runtime +# LIBRARIES twil_bringup +# CATKIN_DEPENDS other_catkin_pkg # DEPENDS system_lib -#) +) ########### ## Build ## @@ -93,26 +111,40 @@ find_package(cmake_modules REQUIRED) ## Specify additional locations of header files ## Your package locations should be listed before other locations -#include_directories(include -# ${catkin_INCLUDE_DIRS} -# ${Eigen_INCLUDE_DIRS} -#) +include_directories( +# include +# ${catkin_INCLUDE_DIRS} +) + +## Declare a C++ library +# add_library(${PROJECT_NAME} +# src/${PROJECT_NAME}/twil_bringup.cpp +# ) + +## Add cmake target dependencies of the library +## as an example, code may need to be generated before libraries +## either from message generation or dynamic reconfigure +# add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) -## Declare a cpp library -#add_library(twil_controllers -#) +## Declare a C++ executable +## With catkin_make all packages are built within a single CMake context +## The recommended prefix ensures that target names across packages don't collide +# add_executable(${PROJECT_NAME}_node src/twil_bringup_node.cpp) -## Declare a cpp executable -# add_executable(twil_controllers_node src/twil_controllers_node.cpp) +## Rename C++ executable without prefix +## The above recommended prefix causes long target names, the following renames the +## target back to the shorter version for ease of user use +## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" +# set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") -## Add cmake target dependencies of the executable/library -## as an example, message headers may need to be generated before nodes -#add_dependencies(twil_controllers twil_controllers_generate_messages_cpp) +## Add cmake target dependencies of the executable +## same as for the library above +# add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) ## Specify libraries to link a library or executable target against -#target_link_libraries(${PROJECT_NAME} +# target_link_libraries(${PROJECT_NAME}_node # ${catkin_LIBRARIES} -#) +# ) ############# ## Install ## @@ -129,18 +161,18 @@ find_package(cmake_modules REQUIRED) # ) ## Mark executables and/or libraries for installation -#install(TARGETS ${PROJECT_NAME} +# install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_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}/ +# 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 @@ -154,7 +186,7 @@ find_package(cmake_modules REQUIRED) ############# ## Add gtest based cpp test target and link libraries -# catkin_add_gtest(${PROJECT_NAME}-test test/test_twil_controllers.cpp) +# catkin_add_gtest(${PROJECT_NAME}-test test/test_twil_bringup.cpp) # if(TARGET ${PROJECT_NAME}-test) # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) # endif() diff --git a/twil_bringup/config/effort_control.yaml b/twil_bringup/config/effort_control.yaml new file mode 100644 index 0000000..7057b71 --- /dev/null +++ b/twil_bringup/config/effort_control.yaml @@ -0,0 +1,11 @@ +joint_state_controller: + type: joint_state_controller/JointStateController + publish_rate: 100 + +left_wheel_joint_effort_controller: + type: effort_controllers/JointEffortController + joint: left_wheel_joint + +right_wheel_joint_effort_controller: + type: effort_controllers/JointEffortController + joint: right_wheel_joint diff --git a/twil_bringup/config/velocity_control.yaml b/twil_bringup/config/velocity_control.yaml new file mode 100644 index 0000000..d5fd24c --- /dev/null +++ b/twil_bringup/config/velocity_control.yaml @@ -0,0 +1,13 @@ +joint_state_controller: + type: joint_state_controller/JointStateController + publish_rate: 100 + +left_wheel_joint_velocity_controller: + type: effort_controllers/JointVelocityController + joint: left_wheel_joint + pid: {p: 0.0, i: 0.0, d: 0.0} + +right_wheel_joint_velocity_controller: + type: effort_controllers/JointVelocityController + joint: right_wheel_joint + pid: {p: 0.0, i: 0.0, d: 0.0} diff --git a/twil_controllers/launch/gazebo_joint_effort.launch b/twil_bringup/launch/gazebo_joint_effort.launch similarity index 86% rename from twil_controllers/launch/gazebo_joint_effort.launch rename to twil_bringup/launch/gazebo_joint_effort.launch index 67f846b..a4b66ca 100644 --- a/twil_controllers/launch/gazebo_joint_effort.launch +++ b/twil_bringup/launch/gazebo_joint_effort.launch @@ -11,6 +11,6 @@ - + diff --git a/twil_bringup/launch/joint_effort.launch b/twil_bringup/launch/joint_effort.launch new file mode 100644 index 0000000..4d4c611 --- /dev/null +++ b/twil_bringup/launch/joint_effort.launch @@ -0,0 +1,6 @@ + + + + + diff --git a/twil_bringup/launch/joint_velocity.launch b/twil_bringup/launch/joint_velocity.launch new file mode 100644 index 0000000..4b12b1f --- /dev/null +++ b/twil_bringup/launch/joint_velocity.launch @@ -0,0 +1,6 @@ + + + + + diff --git a/twil_bringup/package.xml b/twil_bringup/package.xml new file mode 100644 index 0000000..a9c4f83 --- /dev/null +++ b/twil_bringup/package.xml @@ -0,0 +1,71 @@ + + + twil_bringup + 2.0.1 + The twil_bringup package + + + + + Walter Fetter Lages + + + + + + GPLv3 + + + + + + + + + + + + + Walter Fetter Lages + + + + + + + + + + + + + + + + + + + + + + + catkin + controller_manager + effort_controllers + joint_state_controller + twil_description + controller_manager + effort_controllers + joint_state_controller + twil_description + controller_manager + effort_controllers + joint_state_controller + twil_description + + + + + + + diff --git a/twil_controllers/scripts/test_openloop.sh b/twil_bringup/scripts/test_openloop.sh similarity index 100% rename from twil_controllers/scripts/test_openloop.sh rename to twil_bringup/scripts/test_openloop.sh diff --git a/twil_controllers/README b/twil_controllers/README deleted file mode 100644 index 72abf69..0000000 --- a/twil_controllers/README +++ /dev/null @@ -1,7 +0,0 @@ -To publish with joint_effort_controller: - -rostopic pub /twil/left_wheel_joint_effort_controller/command std_msgs/Float64 "0.0" - -To get time and pose: - -rostopic echo -p /gazebo/model_states | awk '{FS=","; printf("%g %g %g %g\n",$1/1e9,$11,$12,2*atan2(sqrt($14^2+$15^2+$16^2),$17))}' diff --git a/twil_controllers/config/effort_control.yaml b/twil_controllers/config/effort_control.yaml deleted file mode 100644 index bdca9e8..0000000 --- a/twil_controllers/config/effort_control.yaml +++ /dev/null @@ -1,13 +0,0 @@ -twil: - - joint_state_controller: - type: joint_state_controller/JointStateController - publish_rate: 100 - - left_wheel_joint_effort_controller: - type: effort_controllers/JointEffortController - joint: left_wheel_joint - - right_wheel_joint_effort_controller: - type: effort_controllers/JointEffortController - joint: right_wheel_joint diff --git a/twil_controllers/config/velocity_control.yaml b/twil_controllers/config/velocity_control.yaml deleted file mode 100644 index 54aa494..0000000 --- a/twil_controllers/config/velocity_control.yaml +++ /dev/null @@ -1,16 +0,0 @@ -twil: - - joint_state_controller: - type: joint_state_controller/JointStateController - publish_rate: 100 - - left_wheel_joint_velocity_controller: - type: effort_controllers/JointVelocityController - joint: left_wheel_joint - pid: {p: 0.0, i: 0.0, d: 0.0} - - right_wheel_joint_velocity_controller: - type: effort_controllers/JointVelocityController - joint: right_wheel_joint - pid: {p: 0.0, i: 0.0, d: 0.0} - diff --git a/twil_controllers/launch/joint_effort.launch b/twil_controllers/launch/joint_effort.launch deleted file mode 100644 index 222450c..0000000 --- a/twil_controllers/launch/joint_effort.launch +++ /dev/null @@ -1,6 +0,0 @@ - - - - - diff --git a/twil_controllers/launch/joint_velocity.launch b/twil_controllers/launch/joint_velocity.launch deleted file mode 100644 index b93a84a..0000000 --- a/twil_controllers/launch/joint_velocity.launch +++ /dev/null @@ -1,6 +0,0 @@ - - - - - diff --git a/twil_controllers/package.xml b/twil_controllers/package.xml deleted file mode 100644 index 73ab19f..0000000 --- a/twil_controllers/package.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - twil_controllers - 2.0.0 - The twil_controllers package - - - - - Walter Fetter Lages - - - - - - GPLv3 - - - - - - - - - - - - - Walter Fetter Lages - - - - - - - - - - - - - - catkin - - effort_controllers - - controller_manager - effort_controllers - joint_state_controller - - - - - - - - - - diff --git a/twil_description/CMakeLists.txt b/twil_description/CMakeLists.txt index b28a957..afb1ff5 100644 --- a/twil_description/CMakeLists.txt +++ b/twil_description/CMakeLists.txt @@ -1,6 +1,9 @@ cmake_minimum_required(VERSION 2.8.3) project(twil_description) +## Compile as C++11, supported in ROS Kinetic and newer +# add_compile_options(-std=c++11) + ## Find catkin macros and libraries ## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) ## is used, also find other catkin packages @@ -24,11 +27,11 @@ find_package(catkin REQUIRED) ## * 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" +## * add a build_depend tag for "message_generation" +## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET +## * If MSG_DEP_SET isn't empty the following dependency has been pulled in +## but can be declared for certainty nonetheless: +## * add a exec_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 ...) @@ -66,12 +69,32 @@ find_package(catkin REQUIRED) # std_msgs # Or other packages containing msgs # ) +################################################ +## Declare ROS dynamic reconfigure parameters ## +################################################ + +## To declare and build dynamic reconfigure parameters within this +## package, follow these steps: +## * In the file package.xml: +## * add a build_depend and a exec_depend tag for "dynamic_reconfigure" +## * In this file (CMakeLists.txt): +## * add "dynamic_reconfigure" to +## find_package(catkin REQUIRED COMPONENTS ...) +## * uncomment the "generate_dynamic_reconfigure_options" section below +## and list every .cfg file to be processed + +## Generate dynamic reconfigure parameters in the 'cfg' folder +# generate_dynamic_reconfigure_options( +# cfg/DynReconf1.cfg +# cfg/DynReconf2.cfg +# ) + ################################### ## 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 +## INCLUDE_DIRS: uncomment this if your 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 @@ -88,22 +111,38 @@ catkin_package( ## Specify additional locations of header files ## Your package locations should be listed before other locations -# include_directories(include) +include_directories( +# include +# ${catkin_INCLUDE_DIRS} +) -## Declare a cpp library -# add_library(twil_description +## Declare a C++ library +# add_library(${PROJECT_NAME} # src/${PROJECT_NAME}/twil_description.cpp # ) -## Declare a cpp executable -# add_executable(twil_description_node src/twil_description_node.cpp) +## Add cmake target dependencies of the library +## as an example, code may need to be generated before libraries +## either from message generation or dynamic reconfigure +# add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) + +## Declare a C++ executable +## With catkin_make all packages are built within a single CMake context +## The recommended prefix ensures that target names across packages don't collide +# add_executable(${PROJECT_NAME}_node src/twil_description_node.cpp) + +## Rename C++ executable without prefix +## The above recommended prefix causes long target names, the following renames the +## target back to the shorter version for ease of user use +## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" +# set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") -## Add cmake target dependencies of the executable/library -## as an example, message headers may need to be generated before nodes -# add_dependencies(twil_description_node twil_description_generate_messages_cpp) +## Add cmake target dependencies of the executable +## same as for the library above +# add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) ## Specify libraries to link a library or executable target against -# target_link_libraries(twil_description_node +# target_link_libraries(${PROJECT_NAME}_node # ${catkin_LIBRARIES} # ) @@ -122,7 +161,7 @@ catkin_package( # ) ## Mark executables and/or libraries for installation -# install(TARGETS twil_description twil_description_node +# install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} diff --git a/twil_description/launch/twil.launch b/twil_description/launch/twil.launch index 7b4cbb3..605bffe 100644 --- a/twil_description/launch/twil.launch +++ b/twil_description/launch/twil.launch @@ -1,6 +1,6 @@ - - + + diff --git a/twil_description/package.xml b/twil_description/package.xml index ae98f35..e18687f 100644 --- a/twil_description/package.xml +++ b/twil_description/package.xml @@ -1,13 +1,13 @@ - + twil_description - 2.0.0 + 2.0.1 The twil_description package - + - Walter Fetter Lages + Walter Fetter Lages @@ -16,38 +16,44 @@ GPLv3 - + - - + + - Walter Fetter Lages + Walter Fetter Lages - + + + + + + + + - - + + + + catkin - - - diff --git a/twil_description/xacro/fixed_wheel.urdf.xacro b/twil_description/xacro/fixed_wheel.urdf.xacro index ebe7afc..31d48dc 100644 --- a/twil_description/xacro/fixed_wheel.urdf.xacro +++ b/twil_description/xacro/fixed_wheel.urdf.xacro @@ -2,7 +2,7 @@ - + @@ -40,10 +40,9 @@ transmission_interface/SimpleTransmission" - EffortJointInterface + hardware_interface/EffortJointInterface - 1 diff --git a/twil_description/xacro/twil.urdf.xacro b/twil_description/xacro/twil.urdf.xacro index dc64478..00e592c 100644 --- a/twil_description/xacro/twil.urdf.xacro +++ b/twil_description/xacro/twil.urdf.xacro @@ -1,7 +1,7 @@ - + @@ -99,7 +99,7 @@ - twil_gazebo_ros_control/TwilRobotHWSim + 0.001 diff --git a/twil_gazebo_ros_control/CMakeLists.txt b/twil_gazebo_ros_control/CMakeLists.txt index d0ff38c..abef828 100644 --- a/twil_gazebo_ros_control/CMakeLists.txt +++ b/twil_gazebo_ros_control/CMakeLists.txt @@ -1,19 +1,25 @@ cmake_minimum_required(VERSION 2.8.3) project(twil_gazebo_ros_control) +## Compile as C++11, supported in ROS Kinetic and newer +# add_compile_options(-std=c++11) + ## 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 -# gazebo + control_toolbox + controller_manager + gazebo gazebo_ros_control + pluginlib + roscpp twil_description - control_toolbox ) ## System dependencies are found with CMake's conventions # find_package(Boost REQUIRED COMPONENTS system) -find_package(gazebo REQUIRED) + ## Uncomment this if the package has a setup.py. This macro ensures ## modules and global scripts declared therein get installed @@ -29,11 +35,11 @@ find_package(gazebo REQUIRED) ## * 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" +## * add a build_depend tag for "message_generation" +## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET +## * If MSG_DEP_SET isn't empty the following dependency has been pulled in +## but can be declared for certainty nonetheless: +## * add a exec_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 ...) @@ -71,20 +77,40 @@ find_package(gazebo REQUIRED) # std_msgs # Or other packages containing msgs # ) +################################################ +## Declare ROS dynamic reconfigure parameters ## +################################################ + +## To declare and build dynamic reconfigure parameters within this +## package, follow these steps: +## * In the file package.xml: +## * add a build_depend and a exec_depend tag for "dynamic_reconfigure" +## * In this file (CMakeLists.txt): +## * add "dynamic_reconfigure" to +## find_package(catkin REQUIRED COMPONENTS ...) +## * uncomment the "generate_dynamic_reconfigure_options" section below +## and list every .cfg file to be processed + +## Generate dynamic reconfigure parameters in the 'cfg' folder +# generate_dynamic_reconfigure_options( +# cfg/DynReconf1.cfg +# cfg/DynReconf2.cfg +# ) + ################################### ## 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 +## INCLUDE_DIRS: uncomment this if your 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 twil_gazebo_ros_control - CATKIN_DEPENDS controller_manager pluginlib gazebo_ros_control twil_description control_toolbox - DEPENDS gazebo +# CATKIN_DEPENDS control_toolbox controller_manager gazebo gazebo_ros_control pluginlib roscpp twil_description +# DEPENDS system_lib ) ########### @@ -93,30 +119,40 @@ catkin_package( ## Specify additional locations of header files ## Your package locations should be listed before other locations -include_directories(include - ${GAZEBO_INCLUDE_DIRS} -) include_directories( +# include ${catkin_INCLUDE_DIRS} ) -## Declare a cpp library -add_library(twil_gazebo_ros_control - src/twil_robot_hw_sim.cpp -) +## Declare a C++ library +# add_library(${PROJECT_NAME} +# src/${PROJECT_NAME}/twil_gazebo_ros_control.cpp +# ) + +## Add cmake target dependencies of the library +## as an example, code may need to be generated before libraries +## either from message generation or dynamic reconfigure +# add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) -## Declare a cpp executable -# add_executable(twil_gazebo_ros_control_node src/twil_gazebo_ros_control_node.cpp) +## Declare a C++ executable +## With catkin_make all packages are built within a single CMake context +## The recommended prefix ensures that target names across packages don't collide +# add_executable(${PROJECT_NAME}_node src/twil_gazebo_ros_control_node.cpp) -## Add cmake target dependencies of the executable/library -## as an example, message headers may need to be generated before nodes -# add_dependencies(twil_gazebo_ros_control_node twil_gazebo_ros_control_generate_messages_cpp) +## Rename C++ executable without prefix +## The above recommended prefix causes long target names, the following renames the +## target back to the shorter version for ease of user use +## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" +# set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") + +## Add cmake target dependencies of the executable +## same as for the library above +# add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) ## Specify libraries to link a library or executable target against -target_link_libraries(${PROJECT_NAME} - ${catkin_LIBRARIES} - ${GAZEBO_LIBRARIES} -) +# target_link_libraries(${PROJECT_NAME}_node +# ${catkin_LIBRARIES} +# ) ############# ## Install ## @@ -133,11 +169,11 @@ target_link_libraries(${PROJECT_NAME} # ) ## Mark executables and/or libraries for installation -install(TARGETS ${PROJECT_NAME} +# install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} - LIBRARY 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}/ diff --git a/twil_gazebo_ros_control/package.xml b/twil_gazebo_ros_control/package.xml index 078230c..7f730ab 100644 --- a/twil_gazebo_ros_control/package.xml +++ b/twil_gazebo_ros_control/package.xml @@ -1,10 +1,10 @@ - + twil_gazebo_ros_control - 2.0.0 + 2.0.1 The twil_gazebo_ros_control package - + Walter Fetter Lages @@ -16,54 +16,68 @@ GPLv3 - + - - + + Walter Fetter Lages - + + + + + + + + - - + + + + catkin - + control_toolbox + controller_manager gazebo gazebo_ros_control - controller_manager pluginlib + roscpp twil_description - control_toolbox - - controller_manager - pluginlib - - gazebo_ros_control - twil_description - control_toolbox + control_toolbox + controller_manager + gazebo + gazebo_ros_control + pluginlib + roscpp + twil_description + control_toolbox + controller_manager + gazebo + gazebo_ros_control + pluginlib + roscpp + twil_description + - - - - \ No newline at end of file + diff --git a/twil_ident/CMakeLists.txt b/twil_ident/CMakeLists.txt index 0bee681..6320929 100644 --- a/twil_ident/CMakeLists.txt +++ b/twil_ident/CMakeLists.txt @@ -1,16 +1,22 @@ cmake_minimum_required(VERSION 2.8.3) project(twil_ident) +## Compile as C++11, supported in ROS Kinetic and newer +add_compile_options(-std=c++11) + ## 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 kdl_parser) +find_package(catkin REQUIRED COMPONENTS + kdl_parser + roscpp +) find_package(cmake_modules REQUIRED) ## System dependencies are found with CMake's conventions # find_package(Boost REQUIRED COMPONENTS system) -find_package(Eigen REQUIRED) +find_package(Eigen3 REQUIRED) ## Uncomment this if the package has a setup.py. This macro ensures @@ -27,11 +33,11 @@ find_package(Eigen REQUIRED) ## * 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" +## * add a build_depend tag for "message_generation" +## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET +## * If MSG_DEP_SET isn't empty the following dependency has been pulled in +## but can be declared for certainty nonetheless: +## * add a exec_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 ...) @@ -69,20 +75,40 @@ find_package(Eigen REQUIRED) # std_msgs # Or other packages containing msgs # ) +################################################ +## Declare ROS dynamic reconfigure parameters ## +################################################ + +## To declare and build dynamic reconfigure parameters within this +## package, follow these steps: +## * In the file package.xml: +## * add a build_depend and a exec_depend tag for "dynamic_reconfigure" +## * In this file (CMakeLists.txt): +## * add "dynamic_reconfigure" to +## find_package(catkin REQUIRED COMPONENTS ...) +## * uncomment the "generate_dynamic_reconfigure_options" section below +## and list every .cfg file to be processed + +## Generate dynamic reconfigure parameters in the 'cfg' folder +# generate_dynamic_reconfigure_options( +# cfg/DynReconf1.cfg +# cfg/DynReconf2.cfg +# ) + ################################### ## 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 +## INCLUDE_DIRS: uncomment this if your 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 twil_ident -# CATKIN_DEPENDS other_catkin_pkg - DEPENDS eigen +# CATKIN_DEPENDS kdl_parser roscpp +# DEPENDS Eigen3 ) ########### @@ -92,28 +118,41 @@ catkin_package( ## Specify additional locations of header files ## Your package locations should be listed before other locations include_directories( - include + include ${catkin_INCLUDE_DIRS} -# TODO: Check names of system library include directories (eigen) - ${Eigen_INCLUDE_DIRS} +# TODO: Check names of system library include directories (Eigen3) + ${Eigen3_INCLUDE_DIRS} ) -## Declare a cpp library -# add_library(twil_ident +## Declare a C++ library +# add_library(${PROJECT_NAME} # src/${PROJECT_NAME}/twil_ident.cpp # ) -## Declare a cpp executable +## Add cmake target dependencies of the library +## as an example, code may need to be generated before libraries +## either from message generation or dynamic reconfigure +# add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) + +## Declare a C++ executable +## With catkin_make all packages are built within a single CMake context +## The recommended prefix ensures that target names across packages don't collide add_executable(ident src/ident.cpp) -## Add cmake target dependencies of the executable/library -## as an example, message headers may need to be generated before nodes -# add_dependencies(twil_ident_node twil_ident_generate_messages_cpp) +## Rename C++ executable without prefix +## The above recommended prefix causes long target names, the following renames the +## target back to the shorter version for ease of user use +## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" +# set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") + +## Add cmake target dependencies of the executable +## same as for the library above +# add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) ## Specify libraries to link a library or executable target against target_link_libraries(ident - ${catkin_LIBRARIES} - ${eigen_LIBRARIES} + ${catkin_LIBRARIES} +# ${Eigen3_LIBRARIES} ) ############# diff --git a/twil_ident/launch/ident.launch b/twil_ident/launch/ident.launch index e939edf..51e5697 100644 --- a/twil_ident/launch/ident.launch +++ b/twil_ident/launch/ident.launch @@ -1,5 +1,5 @@ - + diff --git a/twil_ident/package.xml b/twil_ident/package.xml index ffefa1b..c824110 100644 --- a/twil_ident/package.xml +++ b/twil_ident/package.xml @@ -1,10 +1,10 @@ - + twil_ident - 2.0.0 + 2.0.1 The twil_ident package - + Walter Fetter Lages @@ -16,41 +16,53 @@ GPLv3 - + - - + + Walter Fetter Lages - + + + + + + + + - - + + + + catkin - eigen + Eigen3 kdl_parser - eigen - kdl_parser + roscpp + Eigen3 + kdl_parser + roscpp + Eigen3 + kdl_parser + roscpp + - - -