acutronicrobotics / robotiq_modular_gripper Goto Github PK
View Code? Open in Web Editor NEWRobotiq modular grippers description and gazebo pkgs
Robotiq modular grippers description and gazebo pkgs
Hi,
i would like to use you gripper with my universal robot in simulation with rviz.
Supposing i download your project and universal robots driver, could you give us a precise description of how integrate the two things.
I'm not interested with the UR in particular, it would be awesome a generic explanation of hou you can do it.
Thank you very much,
Enrico
hey i know its not the best thing to do but i tried to compile this package with foxy wiith 20 packages succeeding and 4 failing. this is the error message i received:
Starting >>> hrim_actuator_rotaryservo_msgs
Starting >>> hrim_generic_msgs
Starting >>> control_msgs
Starting >>> hrim_actuator_gripper_msgs
Starting >>> hrim_actuator_gripper_srvs
Starting >>> hrim_actuator_rotaryservo_srvs
Starting >>> hrim_generic_srvs
Starting >>> hans_modular_gazebo
Finished <<< hans_modular_gazebo [0.45s]
Starting >>> hans_t30_description
Finished <<< hans_t30_description [0.30s]
Starting >>> hans_t49_description
Finished <<< hrim_generic_msgs [1.16s]
Starting >>> hans_t9_4_description
Finished <<< hrim_actuator_rotaryservo_msgs [1.21s]
Finished <<< hrim_actuator_rotaryservo_srvs [1.18s]
Starting >>> hrim_actuator_rotaryservo_actions
Starting >>> mara_bringup
Finished <<< hrim_generic_srvs [1.21s]
Starting >>> mara_contact_publisher
Finished <<< control_msgs [1.26s]
Finished <<< hrim_actuator_gripper_msgs [1.26s]
Starting >>> mara_description
Starting >>> mara_gazebo
Finished <<< hrim_actuator_gripper_srvs [1.33s]
Starting >>> robotiq_140_gripper_description
Finished <<< hans_t49_description [0.59s]
Starting >>> robotiq_85_gripper_description
Finished <<< hans_t9_4_description [0.44s]
Finished <<< mara_bringup [0.41s]
Starting >>> robotiq_gazebo
Starting >>> robotiq_hande_gripper_description
Finished <<< mara_description [0.38s]
Starting >>> hros_cognition_mara_components
Finished <<< mara_gazebo [0.45s]
Starting >>> mara_gazebo_plugins
Finished <<< robotiq_140_gripper_description [0.46s]
Finished <<< robotiq_85_gripper_description [0.44s]
Starting >>> mara_utils_scripts
Starting >>> robotiq_gripper_gazebo_plugins
Finished <<< hrim_actuator_rotaryservo_actions [0.83s]
Finished <<< robotiq_gazebo [0.43s]
Finished <<< robotiq_hande_gripper_description [0.43s]
Finished <<< mara_utils_scripts [0.34s]
--- stderr: hros_cognition_mara_components
/home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp: In constructor ‘HROSCognitionMaraComponentsNode::HROSCognitionMaraComponentsNode(const string&, int, char**, bool)’:
/home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:11:127: error: no matching function for call to ‘HROSCognitionMaraComponentsNode::create_publisher<control_msgs::msg::JointTrajectoryControllerState>(const char [23], rmw_qos_profile_t&)’
11 | common_joints_pub_ = create_publisher<control_msgs::msg::JointTrajectoryControllerState>("/mara_controller/state", qos_state);
| ^
In file included from /opt/ros/foxy/include/rclcpp/executors/single_threaded_executor.hpp:28,
from /opt/ros/foxy/include/rclcpp/executors.hpp:22,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/include/HROSCognitionMaraComponents.hpp:4,
from /home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:1:
/opt/ros/foxy/include/rclcpp/node.hpp:184:3: note: candidate: ‘template<class MessageT, class AllocatorT, class PublisherT> std::shared_ptr<PublisherT> rclcpp::Node::create_publisher(const string&, const rclcpp::QoS&, const rclcpp::PublisherOptionsWithAllocator<AllocatorT>&)’
184 | create_publisher(
| ^~~~~~~~~~~~~~~~
/opt/ros/foxy/include/rclcpp/node.hpp:184:3: note: template argument deduction/substitution failed:
/home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:11:118: note: cannot convert ‘qos_state’ (type ‘rmw_qos_profile_t’) to type ‘const rclcpp::QoS&’
11 | common_joints_pub_ = create_publisher<control_msgs::msg::JointTrajectoryControllerState>("/mara_controller/state", qos_state);
| ^~~~~~~~~
/home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:13:207: error: no matching function for call to ‘HROSCognitionMaraComponentsNode::create_subscription<trajectory_msgs::msg::JointTrajectory>(const char [25], std::_Bind_helper<false, void (HROSCognitionMaraComponentsNode::*)(std::shared_ptr<trajectory_msgs::msg::JointTrajectory_<std::allocator<void> > >), HROSCognitionMaraComponentsNode*, const std::_Placeholder<1>&>::type, const rmw_qos_profile_t&)’
13 | trajectory_sub_ = create_subscription<trajectory_msgs::msg::JointTrajectory>("/mara_controller/command", std::bind(&HROSCognitionMaraComponentsNode::commandCallback, this, _1), rmw_qos_profile_sensor_data);
| ^
In file included from /opt/ros/foxy/include/rclcpp/executors/single_threaded_executor.hpp:28,
from /opt/ros/foxy/include/rclcpp/executors.hpp:22,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/include/HROSCognitionMaraComponents.hpp:4,
from /home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:1:
/opt/ros/foxy/include/rclcpp/node.hpp:213:3: note: candidate: ‘template<class MessageT, class CallbackT, class AllocatorT, class CallbackMessageT, class SubscriptionT, class MessageMemoryStrategyT> std::shared_ptr<SubscriptionT> rclcpp::Node::create_subscription(const string&, const rclcpp::QoS&, CallbackT&&, const rclcpp::SubscriptionOptionsWithAllocator<AllocatorT>&, typename MessageMemoryStrategyT::SharedPtr)’
213 | create_subscription(
| ^~~~~~~~~~~~~~~~~~~
/opt/ros/foxy/include/rclcpp/node.hpp:213:3: note: template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/node.hpp:204:5: error: no type named ‘type’ in ‘struct std::enable_if<false, void>’
204 | typename CallbackMessageT =
| ^~~~~~~~
/home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:64:60: error: no matching function for call to ‘HROSCognitionMaraComponentsNode::create_subscription<hrim_actuator_rotaryservo_msgs::msg::StateRotaryServo>(std::string&, HROSCognitionMaraComponentsNode::HROSCognitionMaraComponentsNode(const string&, int, char**, bool)::<lambda(hrim_actuator_rotaryservo_msgs::msg::StateRotaryServo_<std::allocator<void> >::UniquePtr)>, const rmw_qos_profile_t&)’
64 | },rmw_qos_profile_sensor_data);
| ^
In file included from /opt/ros/foxy/include/rclcpp/executors/single_threaded_executor.hpp:28,
from /opt/ros/foxy/include/rclcpp/executors.hpp:22,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/include/HROSCognitionMaraComponents.hpp:4,
from /home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:1:
/opt/ros/foxy/include/rclcpp/node.hpp:213:3: note: candidate: ‘template<class MessageT, class CallbackT, class AllocatorT, class CallbackMessageT, class SubscriptionT, class MessageMemoryStrategyT> std::shared_ptr<SubscriptionT> rclcpp::Node::create_subscription(const string&, const rclcpp::QoS&, CallbackT&&, const rclcpp::SubscriptionOptionsWithAllocator<AllocatorT>&, typename MessageMemoryStrategyT::SharedPtr)’
213 | create_subscription(
| ^~~~~~~~~~~~~~~~~~~
/opt/ros/foxy/include/rclcpp/node.hpp:213:3: note: template argument deduction/substitution failed:
/opt/ros/foxy/include/rclcpp/node.hpp:204:5: error: no type named ‘type’ in ‘struct std::enable_if<false, void>’
204 | typename CallbackMessageT =
| ^~~~~~~~
/home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:70:146: error: no matching function for call to ‘HROSCognitionMaraComponentsNode::create_publisher<hrim_actuator_rotaryservo_msgs::msg::GoalRotaryServo>(std::string&, const rmw_qos_profile_t&)’
70 | auto publisher_command = this->create_publisher<hrim_actuator_rotaryservo_msgs::msg::GoalRotaryServo>(motor_name, rmw_qos_profile_sensor_data);
| ^
In file included from /opt/ros/foxy/include/rclcpp/executors/single_threaded_executor.hpp:28,
from /opt/ros/foxy/include/rclcpp/executors.hpp:22,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/include/HROSCognitionMaraComponents.hpp:4,
from /home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:1:
/opt/ros/foxy/include/rclcpp/node.hpp:184:3: note: candidate: ‘template<class MessageT, class AllocatorT, class PublisherT> std::shared_ptr<PublisherT> rclcpp::Node::create_publisher(const string&, const rclcpp::QoS&, const rclcpp::PublisherOptionsWithAllocator<AllocatorT>&)’
184 | create_publisher(
| ^~~~~~~~~~~~~~~~
/opt/ros/foxy/include/rclcpp/node.hpp:184:3: note: template argument deduction/substitution failed:
/home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:70:119: note: cannot convert ‘rmw_qos_profile_sensor_data’ (type ‘const rmw_qos_profile_t’) to type ‘const rclcpp::QoS&’
70 | auto publisher_command = this->create_publisher<hrim_actuator_rotaryservo_msgs::msg::GoalRotaryServo>(motor_name, rmw_qos_profile_sensor_data);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ed/workspace/ros2_mara_ws/src/mara/hros_cognition_mara_components/src/HROSCognitionMaraComponents.cpp:3:125: warning: unused parameter ‘intra_process_comms’ [-Wunused-parameter]
3 | HROSCognitionMaraComponentsNode::HROSCognitionMaraComponentsNode(const std::string & node_name, int argc, char **argv, bool intra_process_comms ): rclcpp::Node(node_name)
| ~~~~~^~~~~~~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/hros_cognition_mara_components.dir/build.make:76: CMakeFiles/hros_cognition_mara_components.dir/src/HROSCognitionMaraComponents.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:78: CMakeFiles/hros_cognition_mara_components.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
---
Failed <<< hros_cognition_mara_components [2.64s, exited with code 2]
Aborted <<< mara_contact_publisher [9.25s]
Aborted <<< robotiq_gripper_gazebo_plugins [10.4s]
Aborted <<< mara_gazebo_plugins [12.0s]
Summary: 20 packages finished [14.0s]
1 package failed: hros_cognition_mara_components
3 packages aborted: mara_contact_publisher mara_gazebo_plugins robotiq_gripper_gazebo_plugins
4 packages had stderr output: hros_cognition_mara_components mara_contact_publisher mara_gazebo_plugins robotiq_gripper_gazebo_plugins
Due to the implementation of the recently added velocity control, the finger joint must be placed first in the plugin. In the robotiq case, this has no effect because the current first ones upper limit matches finger joints upper limit. (just a coincidence I guess)
This does not affect us currently, but might in the future. Following the convention of having the control finger first would solve this.
Note JointsVec[0]
here:
Following the installation instructions on Ubuntu 18.04 with ROS Melodic, the project fails to compile with colcon build --merge-install
.
Starting >>> hrim_actuator_gripper_srvs
--- stderr: cv_bridge
In file included from /home/user/ros2_mara_ws/src/vision_opencv/cv_bridge/src/cv_bridge.cpp:37:0:
/home/user/ros2_mara_ws/src/vision_opencv/cv_bridge/include/cv_bridge/cv_bridge.h:40:10: fatal error: sensor_msgs/msg/image.hpp: No such file or directory
#include <sensor_msgs/msg/image.hpp>
^~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [src/CMakeFiles/cv_bridge.dir/cv_bridge.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/cv_bridge.dir/all] Error 2
make: *** [all] Error 2
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/colcon_core/executor/__init__.py", line 91, in __call__
rc = await self.task(*args, **kwargs)
File "/usr/lib/python3/dist-packages/colcon_core/task/__init__.py", line 92, in __call__
return await task_method(*args, **kwargs)
File "/usr/lib/python3/dist-packages/colcon_ros/task/ament_cmake/build.py", line 72, in build
additional_hooks=additional_hooks)
File "/usr/lib/python3/dist-packages/colcon_cmake/task/cmake/build.py", line 103, in build
if rc and rc.returncode:
AttributeError: 'int' object has no attribute 'returncode'
---
Failed <<< cv_bridge [ Exited with code 1 ]
Aborted <<< camera_calibration_parsers
Aborted <<< gazebo_dev
--- stderr: gazebo_msgs
Message interface 'geometry_msgs/Wrench' contains an unknown field type: geometry_msgs/Wrench[] wrenches
Message interface 'geometry_msgs/Wrench' contains an unknown field type: geometry_msgs/Wrench[] wrenches
make[2]: *** [rosidl_typesupport_introspection_c/gazebo_msgs/msg/contact_state__rosidl_typesupport_introspection_c.h] Error 1
make[1]: *** [CMakeFiles/gazebo_msgs__rosidl_typesupport_introspection_c.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** [rosidl_typesupport_fastrtps_cpp/gazebo_msgs/msg/contact_state__rosidl_typesupport_fastrtps_cpp.hpp] Error 1
make[1]: *** [CMakeFiles/gazebo_msgs__rosidl_typesupport_fastrtps_cpp.dir/all] Error 2
Message interface 'geometry_msgs/Wrench' contains an unknown field type: geometry_msgs/Wrench[] wrenches
make[2]: *** [rosidl_typesupport_introspection_cpp/gazebo_msgs/msg/contact_state__rosidl_typesupport_introspection_cpp.hpp] Error 1
make[1]: *** [CMakeFiles/gazebo_msgs__rosidl_typesupport_introspection_cpp.dir/all] Error 2
make: *** [all] Error 2
---
Aborted <<< gazebo_msgs
Aborted <<< hrim_generic_msgs
Aborted <<< hrim_actuator_gripper_srvs
--- stderr: image_transport
CMake Error at CMakeLists.txt:60 (pluginlib_export_plugin_description_file):
Unknown CMake command "pluginlib_export_plugin_description_file".
---
Aborted <<< image_transport
--- stderr: control_msgs
Message interface 'std_msgs/Header' contains an unknown field type: std_msgs/Header header
make[2]: *** [rosidl_typesupport_fastrtps_cpp/control_msgs/msg/gripper_command__rosidl_typesupport_fastrtps_cpp.hpp] Error 1
make[2]: *** Deleting file 'rosidl_typesupport_fastrtps_cpp/control_msgs/msg/gripper_command__rosidl_typesupport_fastrtps_cpp.hpp'
make[1]: *** [CMakeFiles/control_msgs__rosidl_typesupport_fastrtps_cpp.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Message interface 'std_msgs/Header' contains an unknown field type: std_msgs/Header header
make[2]: *** [rosidl_typesupport_introspection_cpp/control_msgs/msg/gripper_command__rosidl_typesupport_introspection_cpp.hpp] Error 1
make[2]: *** Deleting file 'rosidl_typesupport_introspection_cpp/control_msgs/msg/gripper_command__rosidl_typesupport_introspection_cpp.hpp'
make[1]: *** [CMakeFiles/control_msgs__rosidl_typesupport_introspection_cpp.dir/all] Error 2
Message interface 'std_msgs/Header' contains an unknown field type: std_msgs/Header header
make[2]: *** [rosidl_typesupport_introspection_c/control_msgs/msg/gripper_command__rosidl_typesupport_introspection_c.h] Error 1
make[2]: *** Deleting file 'rosidl_typesupport_introspection_c/control_msgs/msg/gripper_command__rosidl_typesupport_introspection_c.h'
make[1]: *** [CMakeFiles/control_msgs__rosidl_typesupport_introspection_c.dir/all] Error 2
make: *** [all] Error 2
---
Aborted <<< control_msgs
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.