## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
## * In the file package.xml:
## * add a build_depend tag for "message_generation"
-## * add a build_depend and a run_depend tag for each package in MSG_DEP_SET
+## * 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 run_depend tag for "message_runtime"
+## * 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 ...)
## To declare and build dynamic reconfigure parameters within this
## package, follow these steps:
## * In the file package.xml:
-## * add a build_depend and a run_depend tag for "dynamic_reconfigure"
+## * 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 ...)
###################################
## 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
<?xml version="1.0"?>
-<package>
+<package format="2">
<name>bhand_bringup</name>
- <version>0.0.0</version>
+ <version>0.0.1</version>
<description>The bhand_bringup package</description>
<!-- One maintainer tag required, multiple allowed, one person per tag -->
<!-- Example: -->
<!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->
- <maintainer email="fetter@ece.ufrgs.br">Walter Fetter Lages</maintainer>
+ <maintainer email="fetter@ece.ufrgs.br">Water Fetter Lages</maintainer>
<!-- One license tag required, multiple allowed, one license per tag -->
<author email="fetter@ece.ufrgs.br">Walter Fetter Lages</author>
- <!-- The *_depend tags are used to specify dependencies -->
+ <!-- The *depend tags are used to specify dependencies -->
<!-- Dependencies can be catkin packages or system dependencies -->
<!-- Examples: -->
+ <!-- Use depend as a shortcut for packages that are both build and exec dependencies -->
+ <!-- <depend>roscpp</depend> -->
+ <!-- Note that this is equivalent to the following: -->
+ <!-- <build_depend>roscpp</build_depend> -->
+ <!-- <exec_depend>roscpp</exec_depend> -->
<!-- Use build_depend for packages you need at compile time: -->
<!-- <build_depend>message_generation</build_depend> -->
+ <!-- Use build_export_depend for packages you need in order to build against this package: -->
+ <!-- <build_export_depend>message_generation</build_export_depend> -->
<!-- Use buildtool_depend for build tool packages: -->
<!-- <buildtool_depend>catkin</buildtool_depend> -->
- <!-- Use run_depend for packages you need at runtime: -->
- <!-- <run_depend>message_runtime</run_depend> -->
+ <!-- Use exec_depend for packages you need at runtime: -->
+ <!-- <exec_depend>message_runtime</exec_depend> -->
<!-- Use test_depend for packages you need only for testing: -->
<!-- <test_depend>gtest</test_depend> -->
+ <!-- Use doc_depend for packages you need only for building documentation: -->
+ <!-- <doc_depend>doxygen</doc_depend> -->
<buildtool_depend>catkin</buildtool_depend>
<build_depend>bhand_description</build_depend>
<build_depend>control_msgs</build_depend>
<build_depend>controller_manager</build_depend>
<build_depend>position_controllers</build_depend>
<build_depend>urdf</build_depend>
- <run_depend>bhand_description</run_depend>
- <run_depend>control_msgs</run_depend>
- <run_depend>controller_manager</run_depend>
- <run_depend>position_controllers</run_depend>
- <run_depend>urdf</run_depend>
+ <build_export_depend>bhand_description</build_export_depend>
+ <build_export_depend>control_msgs</build_export_depend>
+ <build_export_depend>controller_manager</build_export_depend>
+ <build_export_depend>position_controllers</build_export_depend>
+ <build_export_depend>urdf</build_export_depend>
+ <exec_depend>bhand_description</exec_depend>
+ <exec_depend>control_msgs</exec_depend>
+ <exec_depend>controller_manager</exec_depend>
+ <exec_depend>position_controllers</exec_depend>
+ <exec_depend>urdf</exec_depend>
<!-- The export tag contains other, unspecified, tags -->
## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
## * In the file package.xml:
## * add a build_depend tag for "message_generation"
-## * add a build_depend and a run_depend tag for each package in MSG_DEP_SET
+## * 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 run_depend tag for "message_runtime"
+## * 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 ...)
## To declare and build dynamic reconfigure parameters within this
## package, follow these steps:
## * In the file package.xml:
-## * add a build_depend and a run_depend tag for "dynamic_reconfigure"
+## * 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 ...)
###################################
## 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
<?xml version="1.0"?>
-<package>
+<package format="2">
<name>bhand_description</name>
- <version>2.0.0</version>
+ <version>2.0.1</version>
<description><p>The bhand_description package</p>
-
<p>This package contains xacro files for the Barrett Hand gripper.
It is based on the iri_wam_description package developed by the IRI
Robotics Lab but with gripper parameters (mainly inertia parameters)
adapted to the Barrett Hand model BH-280 available at UFRGS.
- </p>
+ </p>
</description>
<!-- One maintainer tag required, multiple allowed, one person per tag -->
<!-- Example: -->
<!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->
- <maintainer email="fetter@ece.ufrgs.br">fetter@ece.ufrgs.br</maintainer>
+ <maintainer email="fetter@ece.ufrgs.br">Water Fetter Lages</maintainer>
<!-- One license tag required, multiple allowed, one license per tag -->
<url type="website">http://www.ece.ufrgs.br/~fetter/ufrgs_wam</url>
<url type="website">http://wiki.ros.org/iri_bhand_description</url>
+
<!-- Author tags are optional, multiple are allowed, one per tag -->
<!-- Authors do not have to be maintainers, but could be -->
<!-- Example: -->
<author>IRI Robotics Lab, Ivan Rojas (irojas@iri.upc.edu)</author>
- <!-- The *_depend tags are used to specify dependencies -->
+ <!-- The *depend tags are used to specify dependencies -->
<!-- Dependencies can be catkin packages or system dependencies -->
<!-- Examples: -->
+ <!-- Use depend as a shortcut for packages that are both build and exec dependencies -->
+ <!-- <depend>roscpp</depend> -->
+ <!-- Note that this is equivalent to the following: -->
+ <!-- <build_depend>roscpp</build_depend> -->
+ <!-- <exec_depend>roscpp</exec_depend> -->
<!-- Use build_depend for packages you need at compile time: -->
<!-- <build_depend>message_generation</build_depend> -->
+ <!-- Use build_export_depend for packages you need in order to build against this package: -->
+ <!-- <build_export_depend>message_generation</build_export_depend> -->
<!-- Use buildtool_depend for build tool packages: -->
<!-- <buildtool_depend>catkin</buildtool_depend> -->
- <!-- Use run_depend for packages you need at runtime: -->
- <!-- <run_depend>message_runtime</run_depend> -->
+ <!-- Use exec_depend for packages you need at runtime: -->
+ <!-- <exec_depend>message_runtime</exec_depend> -->
<!-- Use test_depend for packages you need only for testing: -->
<!-- <test_depend>gtest</test_depend> -->
+ <!-- Use doc_depend for packages you need only for building documentation: -->
+ <!-- <doc_depend>doxygen</doc_depend> -->
<buildtool_depend>catkin</buildtool_depend>
<?xml version="1.0"?>
-<package>
+<package format="2">
<name>ufrgs_wam</name>
- <version>3.0.0</version>
+ <version>3.0.1</version>
<description>The ufrgs_wam package</description>
- <!-- One maintainer tag required, multiple allowed, one person per tag -->
+ <!-- One maintainer tag required, multiple allowed, one person per tag -->
<!-- Example: -->
<!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->
- <maintainer email="fetter@ece.ufrgs.br">Walter Fetter Lages</maintainer>
+ <maintainer email="fetter@tece.ufrgs.br">Walter Fetter Lages</maintainer>
<!-- One license tag required, multiple allowed, one license per tag -->
<license>GPLv3</license>
- <!-- Url tags are optional, but mutiple are allowed, one per tag -->
+ <!-- Url tags are optional, but multiple are allowed, one per tag -->
<!-- Optional attribute type can be: website, bugtracker, or repository -->
<!-- Example: -->
<!-- <url type="website">http://wiki.ros.org/ufrgs_wam</url> -->
- <url type="website">http://www.ece.ufrgs.br/~fetter/ufrgs_wam</url>
- <!-- Author tags are optional, mutiple are allowed, one per tag -->
- <!-- Authors do not have to be maintianers, but could be -->
+ <!-- Author tags are optional, multiple are allowed, one per tag -->
+ <!-- Authors do not have to be maintainers, but could be -->
<!-- Example: -->
<!-- <author email="jane.doe@example.com">Jane Doe</author> -->
<author email="fetter@ece.ufrgs.br">Walter Fetter Lages</author>
- <!-- The *_depend tags are used to specify dependencies -->
+
+ <!-- The *depend tags are used to specify dependencies -->
<!-- Dependencies can be catkin packages or system dependencies -->
<!-- Examples: -->
+ <!-- Use depend as a shortcut for packages that are both build and exec dependencies -->
+ <!-- <depend>roscpp</depend> -->
+ <!-- Note that this is equivalent to the following: -->
+ <!-- <build_depend>roscpp</build_depend> -->
+ <!-- <exec_depend>roscpp</exec_depend> -->
<!-- Use build_depend for packages you need at compile time: -->
<!-- <build_depend>message_generation</build_depend> -->
+ <!-- Use build_export_depend for packages you need in order to build against this package: -->
+ <!-- <build_export_depend>message_generation</build_export_depend> -->
<!-- Use buildtool_depend for build tool packages: -->
<!-- <buildtool_depend>catkin</buildtool_depend> -->
- <!-- Use run_depend for packages you need at runtime: -->
- <!-- <run_depend>message_runtime</run_depend> -->
+ <!-- Use exec_depend for packages you need at runtime: -->
+ <!-- <exec_depend>message_runtime</exec_depend> -->
<!-- Use test_depend for packages you need only for testing: -->
<!-- <test_depend>gtest</test_depend> -->
+ <!-- Use doc_depend for packages you need only for building documentation: -->
+ <!-- <doc_depend>doxygen</doc_depend> -->
<buildtool_depend>catkin</buildtool_depend>
+ <build_depend>bhand_bringup</build_depend>
+ <build_depend>bhand_description</build_depend>
+ <build_depend>wam_bringup</build_depend>
+ <build_depend>wam_description</build_depend>
+ <build_depend>wam_node_sim</build_depend>
+ <build_depend>wam_node_test</build_depend>
+ <build_export_depend>bhand_bringup</build_export_depend>
+ <build_export_depend>bhand_description</build_export_depend>
+ <build_export_depend>wam_bringup</build_export_depend>
+ <build_export_depend>wam_description</build_export_depend>
+ <build_export_depend>wam_node_sim</build_export_depend>
+ <build_export_depend>wam_node_test</build_export_depend>
+ <exec_depend>bhand_bringup</exec_depend>
+ <exec_depend>bhand_description</exec_depend>
+ <exec_depend>wam_bringup</exec_depend>
+ <exec_depend>wam_description</exec_depend>
+ <exec_depend>wam_node_sim</exec_depend>
+ <exec_depend>wam_node_test</exec_depend>
+
- <run_depend>wam_description</run_depend>
- <!--run_depend>wam_gazebo_ros_control</run_depend-->
- <run_depend>pid_plus_gravity_controller</run_depend>
- <run_depend>computed_torque_controller</run_depend>
- <run_depend>wam_simulation</run_depend>
- <run_depend>wam_node_sim</run_depend>
-
<!-- The export tag contains other, unspecified, tags -->
<export>
- <!-- You can specify that this package is a metapackage here: -->
- <!-- <metapackage/> -->
- <metapackage/>
-
<!-- Other tools can request additional information be placed here -->
-
+ <metapackage/>
</export>
</package>
cmake_minimum_required(VERSION 2.8.3)
project(wam_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
+ computed_torque_controller
+ control_msgs
+ controller_manager
+ joint_state_controller
+ pid_plus_gravity_controller
+ urdf
+ wam_description
)
## System dependencies are found with CMake's conventions
## * 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 ...)
## Generate added messages and services with any dependencies listed here
# generate_messages(
# DEPENDENCIES
-# std_msgs # Or other packages containing msgs
+# control_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
# )
###################################
###################################
## 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 ${PROJECT_NAME}
-# CATKIN_DEPENDS
+# LIBRARIES wam_bringup
+# CATKIN_DEPENDS computed_torque_controller control_msgs controller_manager joint_state_controller pid_plus_gravity_controller urdf wam_description
# DEPENDS system_lib
)
## 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 C++ library
+# add_library(${PROJECT_NAME}
+# src/${PROJECT_NAME}/wam_bringup.cpp
+# )
-## Declare a cpp library
-#add_library(wam_bringup
-#)
+## 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(wam_bringup_node src/wam_bringup_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/wam_bringup_node.cpp)
-## Add cmake target dependencies of the executable/library
-## as an example, message headers may need to be generated before nodes
-# add_dependencies(wam_bringup_node wam_bringup_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}
-#)
+# target_link_libraries(${PROJECT_NAME}_node
+# ${catkin_LIBRARIES}
+# )
#############
## Install ##
# )
## 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
<?xml version="1.0"?>
-<package>
+<package format="2">
<name>wam_bringup</name>
- <version>1.0.0</version>
+ <version>1.0.1</version>
<description>The wam_bringup package</description>
- <!-- One maintainer tag required, multiple allowed, one person per tag -->
+ <!-- One maintainer tag required, multiple allowed, one person per tag -->
<!-- Example: -->
<!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->
- <maintainer email="fetter@ece.ufrgs.br">Walter Fetter Lages</maintainer>
+ <maintainer email="fetter@ece.ufrgs.br">Walte Fetter Lages</maintainer>
<!-- One license tag required, multiple allowed, one license per tag -->
<license>GPLv3</license>
- <!-- Url tags are optional, but mutiple are allowed, one per tag -->
+ <!-- Url tags are optional, but multiple are allowed, one per tag -->
<!-- Optional attribute type can be: website, bugtracker, or repository -->
<!-- Example: -->
<!-- <url type="website">http://wiki.ros.org/wam_bringup</url> -->
- <url type="website">http://www.ece.ufrgs.br/ufrgs_wam</url>
- <!-- Author tags are optional, mutiple are allowed, one per tag -->
- <!-- Authors do not have to be maintianers, but could be -->
+ <!-- Author tags are optional, multiple are allowed, one per tag -->
+ <!-- Authors do not have to be maintainers, but could be -->
<!-- Example: -->
<!-- <author email="jane.doe@example.com">Jane Doe</author> -->
<author email="fetter@ece.ufrgs.br">Walter Fetter Lages</author>
- <!-- The *_depend tags are used to specify dependencies -->
+
+ <!-- The *depend tags are used to specify dependencies -->
<!-- Dependencies can be catkin packages or system dependencies -->
<!-- Examples: -->
+ <!-- Use depend as a shortcut for packages that are both build and exec dependencies -->
+ <!-- <depend>roscpp</depend> -->
+ <!-- Note that this is equivalent to the following: -->
+ <!-- <build_depend>roscpp</build_depend> -->
+ <!-- <exec_depend>roscpp</exec_depend> -->
<!-- Use build_depend for packages you need at compile time: -->
<!-- <build_depend>message_generation</build_depend> -->
+ <!-- Use build_export_depend for packages you need in order to build against this package: -->
+ <!-- <build_export_depend>message_generation</build_export_depend> -->
<!-- Use buildtool_depend for build tool packages: -->
<!-- <buildtool_depend>catkin</buildtool_depend> -->
- <!-- Use run_depend for packages you need at runtime: -->
- <!-- <run_depend>message_runtime</run_depend> -->
+ <!-- Use exec_depend for packages you need at runtime: -->
+ <!-- <exec_depend>message_runtime</exec_depend> -->
<!-- Use test_depend for packages you need only for testing: -->
<!-- <test_depend>gtest</test_depend> -->
+ <!-- Use doc_depend for packages you need only for building documentation: -->
+ <!-- <doc_depend>doxygen</doc_depend> -->
<buildtool_depend>catkin</buildtool_depend>
-
- <run_depend>controller_manager</run_depend>
- <run_depend>control_msgs</run_depend>
- <run_depend>joint_state_controller</run_depend>
- <run_depend>urdf</run_depend>
- <run_depend>computed_torque_controller</run_depend>
- <run_depend>pid_plus_gravity_controller</run_depend>
- <run_depend>wam_description</run_depend>
+ <build_depend>computed_torque_controller</build_depend>
+ <build_depend>control_msgs</build_depend>
+ <build_depend>controller_manager</build_depend>
+ <build_depend>joint_state_controller</build_depend>
+ <build_depend>pid_plus_gravity_controller</build_depend>
+ <build_depend>urdf</build_depend>
+ <build_depend>wam_description</build_depend>
+ <build_export_depend>computed_torque_controller</build_export_depend>
+ <build_export_depend>control_msgs</build_export_depend>
+ <build_export_depend>controller_manager</build_export_depend>
+ <build_export_depend>joint_state_controller</build_export_depend>
+ <build_export_depend>pid_plus_gravity_controller</build_export_depend>
+ <build_export_depend>urdf</build_export_depend>
+ <build_export_depend>wam_description</build_export_depend>
+ <exec_depend>computed_torque_controller</exec_depend>
+ <exec_depend>control_msgs</exec_depend>
+ <exec_depend>controller_manager</exec_depend>
+ <exec_depend>joint_state_controller</exec_depend>
+ <exec_depend>pid_plus_gravity_controller</exec_depend>
+ <exec_depend>urdf</exec_depend>
+ <exec_depend>wam_description</exec_depend>
+
<!-- The export tag contains other, unspecified, tags -->
<export>
- <!-- You can specify that this package is a metapackage here: -->
- <!-- <metapackage/> -->
-
<!-- Other tools can request additional information be placed here -->
+
</export>
</package>
cmake_minimum_required(VERSION 2.8.3)
project(wam_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
## * 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 ...)
# 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
## 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(wam_description
+## Declare a C++ library
+# add_library(${PROJECT_NAME}
# src/${PROJECT_NAME}/wam_description.cpp
# )
-## Declare a cpp executable
-# add_executable(wam_description_node src/wam_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/wam_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(wam_description_node wam_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(wam_description_node
+# target_link_libraries(${PROJECT_NAME}_node
# ${catkin_LIBRARIES}
# )
# )
## Mark executables and/or libraries for installation
-# install(TARGETS wam_description wam_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}
<?xml version="1.0"?>
-<package>
+<package format="2">
<name>wam_description</name>
- <version>2.1.0</version>
- <description><p>The wam_description package</p>
+ <version>2.1.1</version>
+ <description>The wam_description package</p>
<p>This package contains xacro files for the Barrett WAM robot arm.
It is based on the iri_wam_description package developed by the IRI
Robotics Lab. However, coordinate frames were modified to follow
and inertial parameters were included. Inertial parameters were
obtained from Barrett Technology, Inc, WAM Arm Inertial
Specifications, 2008, Document: D1005, Version: AC.02.
- </p>
+ </p>
</description>
- <!-- One maintainer tag required, multiple allowed, one person per tag -->
+ <!-- One maintainer tag required, multiple allowed, one person per tag -->
<!-- Example: -->
<!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->
<maintainer email="fetter@ece.ufrgs.br">Walter Fetter Lages</maintainer>
<license>LGPL</license>
- <!-- Url tags are optional, but mutiple are allowed, one per tag -->
+ <!-- Url tags are optional, but multiple are allowed, one per tag -->
<!-- Optional attribute type can be: website, bugtracker, or repository -->
<!-- Example: -->
<!-- <url type="website">http://wiki.ros.org/wam_description</url> -->
<url type="website">http://ros.org/wiki/iri_wam_description</url>
- <!-- Author tags are optional, mutiple are allowed, one per tag -->
- <!-- Authors do not have to be maintianers, but could be -->
+ <!-- Author tags are optional, multiple are allowed, one per tag -->
+ <!-- Authors do not have to be maintainers, but could be -->
<!-- Example: -->
<!-- <author email="jane.doe@example.com">Jane Doe</author> -->
<author email="fetter@ece.ufrgs.br">Walter Fetter Lages</author>
<author>IRI Robotics Lab, Sergi Foix (sfoix@iri.upc.edu)</author>
- <!-- The *_depend tags are used to specify dependencies -->
+
+
+ <!-- The *depend tags are used to specify dependencies -->
<!-- Dependencies can be catkin packages or system dependencies -->
<!-- Examples: -->
+ <!-- Use depend as a shortcut for packages that are both build and exec dependencies -->
+ <!-- <depend>roscpp</depend> -->
+ <!-- Note that this is equivalent to the following: -->
+ <!-- <build_depend>roscpp</build_depend> -->
+ <!-- <exec_depend>roscpp</exec_depend> -->
<!-- Use build_depend for packages you need at compile time: -->
<!-- <build_depend>message_generation</build_depend> -->
+ <!-- Use build_export_depend for packages you need in order to build against this package: -->
+ <!-- <build_export_depend>message_generation</build_export_depend> -->
<!-- Use buildtool_depend for build tool packages: -->
<!-- <buildtool_depend>catkin</buildtool_depend> -->
- <!-- Use run_depend for packages you need at runtime: -->
- <!-- <run_depend>message_runtime</run_depend> -->
+ <!-- Use exec_depend for packages you need at runtime: -->
+ <!-- <exec_depend>message_runtime</exec_depend> -->
<!-- Use test_depend for packages you need only for testing: -->
<!-- <test_depend>gtest</test_depend> -->
+ <!-- Use doc_depend for packages you need only for building documentation: -->
+ <!-- <doc_depend>doxygen</doc_depend> -->
<buildtool_depend>catkin</buildtool_depend>
<!-- The export tag contains other, unspecified, tags -->
<export>
- <!-- You can specify that this package is a metapackage here: -->
- <!-- <metapackage/> -->
-
<!-- Other tools can request additional information be placed here -->
</export>
project(wam_node_sim)
## Compile as C++11, supported in ROS Kinetic and newer
-# add_compile_options(-std=c++11)
+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
-# bullet
geometry_msgs
+ kdl_parser
+# orocos_kdl
roscpp
std_msgs
std_srvs
+ trajectory_msgs
wam_msgs
wam_srvs
- trajectory_msgs
-# orocos_kdl
- kdl_parser
)
find_package(cmake_modules REQUIRED)
## System dependencies are found with CMake's conventions
# find_package(Boost REQUIRED COMPONENTS system)
-
find_package(Eigen3 REQUIRED)
+
## 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
## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
## * In the file package.xml:
## * add a build_depend tag for "message_generation"
-## * add a build_depend and a run_depend tag for each package in MSG_DEP_SET
+## * 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 run_depend tag for "message_runtime"
+## * 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 ...)
## Generate added messages and services with any dependencies listed here
# generate_messages(
# DEPENDENCIES
-# geometry_msgs# std_msgs# wam_msgs
+# geometry_msgs# std_msgs# trajectory_msgs# wam_msgs
# )
################################################
## To declare and build dynamic reconfigure parameters within this
## package, follow these steps:
## * In the file package.xml:
-## * add a build_depend and a run_depend tag for "dynamic_reconfigure"
+## * 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 ...)
###################################
## 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 wam_node_sim
-# CATKIN_DEPENDS bullet geometry_msgs roscpp std_msgs std_srvs wam_msgs wam_srvs geometry_msgs
-# DEPENDS system_lib
+ CATKIN_DEPENDS geometry_msgs kdl_parser roscpp std_msgs std_srvs trajectory_msgs wam_msgs wam_srvs
+ DEPENDS Eigen3
)
###########
include_directories(
include
${catkin_INCLUDE_DIRS}
+# TODO: Check names of system library include directories (Eigen3)
${Eigen3_INCLUDE_DIRS}
)
## Specify libraries to link a library or executable target against
target_link_libraries(${PROJECT_NAME}
${catkin_LIBRARIES}
+ ${Eigen3_LIBRARIES}
)
#############
void blockIf(bool blocking, unsigned int whichDigits) const;
- static const double J2_RATIO = 125.0;
- static const double J2_ENCODER_RATIO = 50.0;
- static const double J3_RATIO = 375.0;
- static const double SPREAD_RATIO = 17.5;
+ static constexpr double J2_RATIO = 125.0;
+ static constexpr double J2_ENCODER_RATIO = 50.0;
+ static constexpr double J3_RATIO = 375.0;
+ static constexpr double SPREAD_RATIO = 17.5;
bool hasFtt;
<?xml version="1.0"?>
-<package>
+<package format="2">
<name>wam_node_sim</name>
- <version>0.0.0</version>
- <description>ROS node to simulate the wam_node, which runs the actual Barrett WAM.</description>
+ <version>0.0.1</version>
+ <description><p>The wam_node_sim package</p>
+ ROS node to simulate the wam_node, which runs the actual Barrett
+ WAM.
+ </description>
<!-- One maintainer tag required, multiple allowed, one person per tag -->
<!-- Example: -->
<!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->
- <maintainer email="fetter@ece.ufrgs.br">Walter Fetter Lages</maintainer>
+ <maintainer email="fetter@ece.ufrgs.br">Water Fetter Lages</maintainer>
<!-- One license tag required, multiple allowed, one license per tag -->
<author email="fetter@ece.ufrgs.br">Walter Fetter Lages</author>
- <!-- The *_depend tags are used to specify dependencies -->
+ <!-- The *depend tags are used to specify dependencies -->
<!-- Dependencies can be catkin packages or system dependencies -->
<!-- Examples: -->
+ <!-- Use depend as a shortcut for packages that are both build and exec dependencies -->
+ <!-- <depend>roscpp</depend> -->
+ <!-- Note that this is equivalent to the following: -->
+ <!-- <build_depend>roscpp</build_depend> -->
+ <!-- <exec_depend>roscpp</exec_depend> -->
<!-- Use build_depend for packages you need at compile time: -->
<!-- <build_depend>message_generation</build_depend> -->
+ <!-- Use build_export_depend for packages you need in order to build against this package: -->
+ <!-- <build_export_depend>message_generation</build_export_depend> -->
<!-- Use buildtool_depend for build tool packages: -->
<!-- <buildtool_depend>catkin</buildtool_depend> -->
- <!-- Use run_depend for packages you need at runtime: -->
- <!-- <run_depend>message_runtime</run_depend> -->
+ <!-- Use exec_depend for packages you need at runtime: -->
+ <!-- <exec_depend>message_runtime</exec_depend> -->
<!-- Use test_depend for packages you need only for testing: -->
<!-- <test_depend>gtest</test_depend> -->
+ <!-- Use doc_depend for packages you need only for building documentation: -->
+ <!-- <doc_depend>doxygen</doc_depend> -->
<buildtool_depend>catkin</buildtool_depend>
<build_depend>Eigen3</build_depend>
- <build_depend>bullet</build_depend>
<build_depend>geometry_msgs</build_depend>
+ <build_depend>kdl_parser</build_depend>
+ <build_depend>orodos_kdl</build_depend>
<build_depend>roscpp</build_depend>
<build_depend>std_msgs</build_depend>
<build_depend>std_srvs</build_depend>
+ <build_depend>trajectory_msgs</build_depend>
<build_depend>wam_msgs</build_depend>
<build_depend>wam_srvs</build_depend>
- <build_depend>trajetory_msgs</build_depend>
- <build_depend>orocos_kdl</build_depend>
- <build_depend>kdl_parser</build_depend>
- <run_depend>Eigen3</run_depend>
- <run_depend>bullet</run_depend>
- <run_depend>geometry_msgs</run_depend>
- <run_depend>roscpp</run_depend>
- <run_depend>std_msgs</run_depend>
- <run_depend>std_srvs</run_depend>
- <run_depend>wam_msgs</run_depend>
- <run_depend>wam_srvs</run_depend>
- <run_depend>trajetory_msgs</run_depend>
- <run_depend>orocos_kdl</run_depend>
- <run_depend>kdl_parser</run_depend>
-
+ <build_export_depend>Eigen3</build_export_depend>
+ <build_export_depend>geometry_msgs</build_export_depend>
+ <build_export_depend>kdl_parser</build_export_depend>
+ <build_export_depend>orodos_kdl</build_export_depend>
+ <build_export_depend>roscpp</build_export_depend>
+ <build_export_depend>std_msgs</build_export_depend>
+ <build_export_depend>std_srvs</build_export_depend>
+ <build_export_depend>trajectory_msgs</build_export_depend>
+ <build_export_depend>wam_msgs</build_export_depend>
+ <build_export_depend>wam_srvs</build_export_depend>
+ <exec_depend>Eigen3</exec_depend>
+ <exec_depend>geometry_msgs</exec_depend>
+ <exec_depend>kdl_parser</exec_depend>
+ <exec_depend>orodos_kdl</exec_depend>
+ <exec_depend>roscpp</exec_depend>
+ <exec_depend>std_msgs</exec_depend>
+ <exec_depend>std_srvs</exec_depend>
+ <exec_depend>trajectory_msgs</exec_depend>
+ <exec_depend>wam_msgs</exec_depend>
+ <exec_depend>wam_srvs</exec_depend>
<!-- The export tag contains other, unspecified, tags -->
## is used, also find other catkin packages
find_package(catkin REQUIRED COMPONENTS
roscpp
-# wam_node
wam_node_sim
)
## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
## * In the file package.xml:
## * add a build_depend tag for "message_generation"
-## * add a build_depend and a run_depend tag for each package in MSG_DEP_SET
+## * 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 run_depend tag for "message_runtime"
+## * 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 ...)
## To declare and build dynamic reconfigure parameters within this
## package, follow these steps:
## * In the file package.xml:
-## * add a build_depend and a run_depend tag for "dynamic_reconfigure"
+## * 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 ...)
###################################
## 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 wam_node_test
-# CATKIN_DEPENDS roscpp wam_node wam_node_sim
+# CATKIN_DEPENDS roscpp wam_node_sim
# DEPENDS system_lib
)
<?xml version="1.0"?>
-<package>
+<package format="2">
<name>wam_node_test</name>
- <version>0.0.0</version>
+ <version>0.0.1</version>
<description>The wam_node_test package</description>
<!-- One maintainer tag required, multiple allowed, one person per tag -->
<!-- Example: -->
<!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->
- <maintainer email="fetter@ece.ufrgs.br">Walter Fetter Lages</maintainer>
+ <maintainer email="fetter@ece.ufrgs.br">Water Fetter Lages</maintainer>
<!-- One license tag required, multiple allowed, one license per tag -->
<author email="fetter@ece.ufrgs.br">Walter Fetter Lages</author>
- <!-- The *_depend tags are used to specify dependencies -->
+ <!-- The *depend tags are used to specify dependencies -->
<!-- Dependencies can be catkin packages or system dependencies -->
<!-- Examples: -->
+ <!-- Use depend as a shortcut for packages that are both build and exec dependencies -->
+ <!-- <depend>roscpp</depend> -->
+ <!-- Note that this is equivalent to the following: -->
+ <!-- <build_depend>roscpp</build_depend> -->
+ <!-- <exec_depend>roscpp</exec_depend> -->
<!-- Use build_depend for packages you need at compile time: -->
<!-- <build_depend>message_generation</build_depend> -->
+ <!-- Use build_export_depend for packages you need in order to build against this package: -->
+ <!-- <build_export_depend>message_generation</build_export_depend> -->
<!-- Use buildtool_depend for build tool packages: -->
<!-- <buildtool_depend>catkin</buildtool_depend> -->
- <!-- Use run_depend for packages you need at runtime: -->
- <!-- <run_depend>message_runtime</run_depend> -->
+ <!-- Use exec_depend for packages you need at runtime: -->
+ <!-- <exec_depend>message_runtime</exec_depend> -->
<!-- Use test_depend for packages you need only for testing: -->
<!-- <test_depend>gtest</test_depend> -->
+ <!-- Use doc_depend for packages you need only for building documentation: -->
+ <!-- <doc_depend>doxygen</doc_depend> -->
<buildtool_depend>catkin</buildtool_depend>
<build_depend>roscpp</build_depend>
- <!-- <build_depend>wam_node</build_depend> -->
<build_depend>wam_node_sim</build_depend>
- <run_depend>roscpp</run_depend>
- <!-- <run_depend>wam_node</run_depend> -->
- <run_depend>wam_node_sim</run_depend>
+ <build_export_depend>roscpp</build_export_depend>
+ <build_export_depend>wam_node_sim</build_export_depend>
+ <exec_depend>roscpp</exec_depend>
+ <exec_depend>wam_node_sim</exec_depend>
<!-- The export tag contains other, unspecified, tags -->