I have been trying to use Poppy on Gazebo/ROS.
I have installed the ros_poppy package, installed all dependencies but whenever I try to compile all packages of my workspace, I get the following outputs:
nduminy@nduminy-Latitude-E7250:~/catkin_ws$ catkin_make
Base path: /home/nduminy/catkin_ws
Source space: /home/nduminy/catkin_ws/src
Build space: /home/nduminy/catkin_ws/build
Devel space: /home/nduminy/catkin_ws/devel
Install space: /home/nduminy/catkin_ws/install
Running command: “cmake /home/nduminy/catkin_ws/src -DCATKIN_DEVEL_PREFIX=/home/nduminy/catkin_ws/devel -DCMAKE_INSTALL_PREFIX=/home/nduminy/catkin_ws/install -G Unix Makefiles” in “/home/nduminy/catkin_ws/build”
– Using CATKIN_DEVEL_PREFIX: /home/nduminy/catkin_ws/devel
– Using CMAKE_PREFIX_PATH: /home/nduminy/catkin_ws/devel;/opt/ros/indigo
– This workspace overlays: /home/nduminy/catkin_ws/devel;/opt/ros/indigo
– Using PYTHON_EXECUTABLE: /usr/bin/python
– Using Debian Python package layout
– Using empy: /usr/bin/empy
– Using CATKIN_ENABLE_TESTING: ON
– Call enable_testing()
– Using CATKIN_TEST_RESULTS_DIR: /home/nduminy/catkin_ws/build/test_results
– Found gtest sources under ‘/usr/src/gtest’: gtests will be built
– Using Python nosetests: /usr/bin/nosetests-2.7
– catkin 0.6.16
– BUILD_SHARED_LIBS is on
– ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
– ~~ traversing 27 packages in topological order:
– ~~ - poppy_gazebo
– ~~ - ros_control (metapackage)
– ~~ - ros_controllers (metapackage)
– ~~ - rqt_joint_trajectory_controller
– ~~ - controller_manager_msgs
– ~~ - test_description
– ~~ - test_gazebo
– ~~ - hardware_interface
– ~~ - controller_interface
– ~~ - realtime_tools
– ~~ - force_torque_sensor_controller
– ~~ - forward_command_controller
– ~~ - imu_sensor_controller
– ~~ - position_controllers
– ~~ - controller_manager
– ~~ - joint_limits_interface
– ~~ - joint_state_controller
– ~~ - rqt_controller_manager
– ~~ - control_toolbox
– ~~ - controller_manager_tests
– ~~ - transmission_interface
– ~~ - effort_controllers
– ~~ - velocity_controllers
– ~~ - diff_drive_controller
– ~~ - gripper_action_controller
– ~~ - joint_trajectory_controller
– ~~ - poppy_moveit_config
– ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
– +++ processing catkin package: ‘poppy_gazebo’
– ==> add_subdirectory(ros_poppy/poppy_gazebo)
– Using these message generators: gencpp;genlisp;genpy
– +++ processing catkin metapackage: ‘ros_control’
– ==> add_subdirectory(ros_control/ros_control)
– +++ processing catkin metapackage: ‘ros_controllers’
– ==> add_subdirectory(ros_controllers/ros_controllers)
– +++ processing catkin package: ‘rqt_joint_trajectory_controller’
– ==> add_subdirectory(ros_controllers/rqt_joint_trajectory_controller)
– +++ processing catkin package: ‘controller_manager_msgs’
– ==> add_subdirectory(ros_control/controller_manager_msgs)
– Using these message generators: gencpp;genlisp;genpy
– controller_manager_msgs: 3 messages, 6 services
CMake Error at /home/nduminy/catkin_ws/build/ros_control/controller_manager_msgs/cmake/controller_manager_msgs-genmsg.cmake:132 (add_custom_target):
add_custom_target cannot create target
“controller_manager_msgs_generate_messages_cpp” because another target with
the same name already exists. The existing target is a custom target
created in source directory
“/home/nduminy/catkin_ws/src/ros_poppy/poppy_gazebo”. See documentation
for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/indigo/share/genmsg/cmake/genmsg-extras.cmake:304 (include)
ros_control/controller_manager_msgs/CMakeLists.txt:28 (generate_messages)
CMake Error at /home/nduminy/catkin_ws/build/ros_control/controller_manager_msgs/cmake/controller_manager_msgs-genmsg.cmake:229 (add_custom_target):
add_custom_target cannot create target
“controller_manager_msgs_generate_messages_lisp” because another target
with the same name already exists. The existing target is a custom target
created in source directory
“/home/nduminy/catkin_ws/src/ros_poppy/poppy_gazebo”. See documentation
for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/indigo/share/genmsg/cmake/genmsg-extras.cmake:304 (include)
ros_control/controller_manager_msgs/CMakeLists.txt:28 (generate_messages)
CMake Error at /home/nduminy/catkin_ws/build/ros_control/controller_manager_msgs/cmake/controller_manager_msgs-genmsg.cmake:326 (add_custom_target):
add_custom_target cannot create target
“controller_manager_msgs_generate_messages_py” because another target with
the same name already exists. The existing target is a custom target
created in source directory
“/home/nduminy/catkin_ws/src/ros_poppy/poppy_gazebo”. See documentation
for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/indigo/share/genmsg/cmake/genmsg-extras.cmake:304 (include)
ros_control/controller_manager_msgs/CMakeLists.txt:28 (generate_messages)
– +++ processing catkin package: ‘test_description’
– ==> add_subdirectory(test_description)
– +++ processing catkin package: ‘test_gazebo’
– ==> add_subdirectory(test_gazebo)
– +++ processing catkin package: ‘hardware_interface’
– ==> add_subdirectory(ros_control/hardware_interface)
– +++ processing catkin package: ‘controller_interface’
– ==> add_subdirectory(ros_control/controller_interface)
– +++ processing catkin package: ‘realtime_tools’
– ==> add_subdirectory(realtime_tools)
– Boost version: 1.54.0
– Found the following Boost libraries:
– thread
– +++ processing catkin package: ‘force_torque_sensor_controller’
– ==> add_subdirectory(ros_controllers/force_torque_sensor_controller)
– +++ processing catkin package: ‘forward_command_controller’
– ==> add_subdirectory(ros_controllers/forward_command_controller)
– +++ processing catkin package: ‘imu_sensor_controller’
– ==> add_subdirectory(ros_controllers/imu_sensor_controller)
– +++ processing catkin package: ‘position_controllers’
– ==> add_subdirectory(ros_controllers/position_controllers)
– +++ processing catkin package: ‘controller_manager’
– ==> add_subdirectory(ros_control/controller_manager)
– +++ processing catkin package: ‘joint_limits_interface’
– ==> add_subdirectory(ros_control/joint_limits_interface)
– +++ processing catkin package: ‘joint_state_controller’
– ==> add_subdirectory(ros_controllers/joint_state_controller)
– +++ processing catkin package: ‘rqt_controller_manager’
– ==> add_subdirectory(ros_control/rqt_controller_manager)
– +++ processing catkin package: ‘control_toolbox’
– ==> add_subdirectory(control_toolbox)
– Using these message generators: gencpp;genlisp;genpy
– Boost version: 1.54.0
– Found the following Boost libraries:
– system
– thread
CMake Error at /opt/ros/indigo/share/dynamic_reconfigure/cmake/dynamic_reconfigure-macros.cmake:57 (add_custom_target):
add_custom_target cannot create target “control_toolbox_gencfg” because
another target with the same name already exists. The existing target is a
custom target created in source directory
“/home/nduminy/catkin_ws/src/ros_poppy/poppy_gazebo”. See documentation
for policy CMP0002 for more details.
Call Stack (most recent call first):
control_toolbox/CMakeLists.txt:18 (generate_dynamic_reconfigure_options)
– control_toolbox: 0 messages, 1 services
CMake Error at /home/nduminy/catkin_ws/build/control_toolbox/cmake/control_toolbox-genmsg.cmake:44 (add_custom_target):
add_custom_target cannot create target
“control_toolbox_generate_messages_cpp” because another target with the
same name already exists. The existing target is a custom target created
in source directory “/home/nduminy/catkin_ws/src/ros_poppy/poppy_gazebo”.
See documentation for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/indigo/share/genmsg/cmake/genmsg-extras.cmake:304 (include)
control_toolbox/CMakeLists.txt:28 (generate_messages)
CMake Error at /home/nduminy/catkin_ws/build/control_toolbox/cmake/control_toolbox-genmsg.cmake:77 (add_custom_target):
add_custom_target cannot create target
“control_toolbox_generate_messages_lisp” because another target with the
same name already exists. The existing target is a custom target created
in source directory “/home/nduminy/catkin_ws/src/ros_poppy/poppy_gazebo”.
See documentation for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/indigo/share/genmsg/cmake/genmsg-extras.cmake:304 (include)
control_toolbox/CMakeLists.txt:28 (generate_messages)
CMake Error at /home/nduminy/catkin_ws/build/control_toolbox/cmake/control_toolbox-genmsg.cmake:110 (add_custom_target):
add_custom_target cannot create target
“control_toolbox_generate_messages_py” because another target with the same
name already exists. The existing target is a custom target created in
source directory “/home/nduminy/catkin_ws/src/ros_poppy/poppy_gazebo”. See
documentation for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/indigo/share/genmsg/cmake/genmsg-extras.cmake:304 (include)
control_toolbox/CMakeLists.txt:28 (generate_messages)
– +++ processing catkin package: ‘controller_manager_tests’
– ==> add_subdirectory(ros_control/controller_manager_tests)
– +++ processing catkin package: ‘transmission_interface’
– ==> add_subdirectory(ros_control/transmission_interface)
– +++ processing catkin package: ‘effort_controllers’
– ==> add_subdirectory(ros_controllers/effort_controllers)
– Using these message generators: gencpp;genlisp;genpy
– +++ processing catkin package: ‘velocity_controllers’
– ==> add_subdirectory(ros_controllers/velocity_controllers)
– Using these message generators: gencpp;genlisp;genpy
– +++ processing catkin package: ‘diff_drive_controller’
– ==> add_subdirectory(ros_controllers/diff_drive_controller)
– Using these message generators: gencpp;genlisp;genpy
– +++ processing catkin package: ‘gripper_action_controller’
– ==> add_subdirectory(ros_controllers/gripper_action_controller)
– Using these message generators: gencpp;genlisp;genpy
– +++ processing catkin package: ‘joint_trajectory_controller’
– ==> add_subdirectory(ros_controllers/joint_trajectory_controller)
– Using these message generators: gencpp;genlisp;genpy
– +++ processing catkin package: ‘poppy_moveit_config’
– ==> add_subdirectory(ros_poppy/poppy_moveit_config)
– Configuring incomplete, errors occurred!
See also “/home/nduminy/catkin_ws/build/CMakeFiles/CMakeOutput.log”.
See also “/home/nduminy/catkin_ws/build/CMakeFiles/CMakeError.log”.
Invoking “cmake” failed
When I remove the ros_poppy package, the compilation works fine.
Either way, when I launch the poppy_gazebo node (roslaunch poppy_gazebo poppy_flat_feet_gazebo.launch) it works fine and open Gazebo with Poppy collapsing. But when I launch the controller (roslaunch poppy_gazebo poppy_flat_feet_control.launch), this node doesn’t create the necessary topics to control the motors (I only get the joint_state and it does not publish anything). Here are the outputs of the poppy controller:
process[poppy/controller_spawner-1]: started with pid [14598]
process[robot_state_publisher-2]: started with pid [14599]
[ WARN] [1450269494.237827025]: The root link base_link has an inertia specified in the URDF, but KDL does not support a root link with an inertia. As a workaround, you can add an extra dummy link to your URDF.
[INFO] [WallTime: 1450269495.012476] [0.000000] Controller Spawner: Waiting for service controller_manager/load_controller
[WARN] [WallTime: 1450269525.114162] [0.000000] Controller Spawner couldn’t find the expected controller_manager ROS interface.
[poppy/controller_spawner-1] process has finished cleanly
Have you any idea of what I did wrong? I’m using Gazebo 6.5.1 and ROS indigo.