Coder Social home page Coder Social logo

gazebo-pkgs's Introduction

gazebo-pkgs

A collection of tools and plugins for Gazebo.

Please also refer to the wiki for more information.

gazebo-pkgs's People

Contributors

corot avatar e-fominov avatar jacknlliu avatar jenniferbuehler avatar jenniferbuehler-tomtom avatar moriken254 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

gazebo-pkgs's Issues

Handling Multiple Grasps?

Hi Jennifer,
I am trying to simulate a hand-off between two grippers using your Gazebo Grasp plugin. I am trying to grip an object (cylinder) with a 2-dof gripper that is already being griped by another 2-dof gripper. I was hoping this would result in a simultaneous grasp between the object and the two grippers until the first gripper detaches from the object. Instead, the second gripper will not attach until the first gripper is detached. Is it possible to handle simultaneous grasps between grippers with this plugin? Or do you have any idea how I could achieve this?
Thanks,
Michael

Error: The Gazebo Grasp Plugin will not Work

Hello I am using a UR5 with Robotiq85 Gripper to grasp an object. I was facing problems initially because the object would slip out of the fingers and fall, then I found your plugin which seems to be promising to fix this error. I have attached your plugin into the URDF which is,

  <gazebo>
   <plugin name="gazebo_grasp_fix" filename="libgazebo_grasp_fix.so">
       <arm>
          <arm_name>gazebo_gripper</arm_name>
          <gripper_link>robotiq_85_left_finger_tip_link</gripper_link>
          <gripper_link>robotiq_85_right_finger_tip_link</gripper_link>
          <palm_link>robotiq_85_base_link</palm_link>
       </arm>
       <forces_angle_tolerance>100</forces_angle_tolerance>
       <update_rate>4</update_rate>
       <grip_count_threshold>4</grip_count_threshold>
       <max_grip_count>8</max_grip_count>
       <release_tolerance>0.005</release_tolerance>
       <disable_collisions_on_attach>false</disable_collisions_on_attach>
       <contact_topic>__default_topic__</contact_topic>
    </plugin>
  </gazebo>
</robot>

The palm links and the gripper links are alright but when I run the code I get the following error

**[ INFO] [1571737349.566807982, 0.711000000]: Loaded gazebo_ros_control.
[Msg] Loading grasp-fix plugin
[Msg] GazeboGraspFix: Using disable_collisions_on_attach 0
[Msg] GazeboGraspFix: Using update rate 4
[Msg] GazeboGraspFix: Using max_grip_count 8
[Msg] GazeboGraspFix: Using grip_count_threshold 4
[Msg] GazeboGraspFix: Using release_tolerance 0.005
[Err] [GazeboGraspGripper.cpp:64] GazeboGraspGripper: Palm link robotiq_85_base_link not found. The gazebo grasp plugin will not work.
[Err] [GazeboGraspFix.cpp:230] GazeboGraspFix: Could not initialize arm gazebo_gripper. Skipping.
[Err] [GazeboGraspFix.cpp:260] ERROR: GazeboGraspFix: Cannot use a GazeboGraspFix because no arms were configured successfully. Plugin will not work.**

I would be glad if you can help me

Cannot grasp with my created robotic hand

Hello Jennifer,

First, Thank you very much for your work.

I am working on ubuntu 14, ros indigo and gazebo 2.2.6. I am using the simulation of the Kuka robot proved by: https://github.com/IFL-CAMP/iiwa_stack and a robotic hand that I created to simulate the robotic hand from Righthand takktle2 which is a robot with 3 fingers (maybe the issue is comming frome here).

It is a dummy question.. because I think I forgot something somewhere.. So excuse me for this question.

I installed your package in my catkin_ws and everything is built and worked.
I ran my robot and try to grasp the object but the object is not caught but the contacts are done.
Here is a picture what I did to have an idea of the issue.grasp
And this one, when it was trying to grasp.
tryGrasping
I didn't take the picture of the right moment but there is a contact of both side of the object and I sat 170degrees for the force angle tolerance. The other setting are :
<forces_angle_tolerance>170</forces_angle_tolerance> <update_rate>100</update_rate> <grip_count_threshold>2</grip_count_threshold> <max_grip_count>10</max_grip_count> <release_tolerance>0.05</release_tolerance> <disable_collisions_on_attach>true</disable_collisions_on_attach> <contact_topic>__default_topic__</contact_topic>

My question is: do I have to set somewhere the name of the object ? Here it is only a rectangle. Or what did I miss ?

Edit:
I think there is no collision between the object and the hand. I have some collisions sensors and those one work.

If you need more info, I would answer it with pleasure.

Warm regards,

Jonathan

the object does not get between the grippers.

Hi, Jennifer. I'm trying to get a 3 DOF voice-controlled robot to do the pick and place operation. The grippers can't fully grasp and lift the object. When I give the command to lift the arm, the arm lifts up, but the object does not rise. What can I do to get the body up along with the arm ?

Grasping an object without relying on ROS?

Hey Jennifer, continuing our discussion from the email thread (thanks for the response on that!).

So, my question is how to utilize this plugin (or just the code) to allow for a manipulator to grasp an object, using a two-finger gripper only in gazebo.

I am trying to understand your other tutorials as well, but you seem to rely on moveit for the actual grasping, correct?

In gazebo, I can essentially set joint position values for two prismatic fingers of the gripper (assuming a simple scenario here) to allow the gripper to hold an object. Would I need your plugin in that case? I plan to have a case where the object pose is detected to be between the two gripper fingers, and if yes, then set the prismatic joint positions to close on the object. Which isn't as simple I think, it's more of defining the proper mathematical conditions to have the gripper in relation to the object pose in the right way. Can also assume of a simple case where two sides of the object ( in this case a cube) are parallel to the fingers.

So, I was hoping to get an idea from you how much of this can your plugin help achieve (and how without the ROS part)? [Hopefully, the above was clear]

Can't detect contact between gripper and piece

Hi @JenniferBuehler
I tried using your plugin for my setup of UR3 arm with a gripper I have designed myself. The problem is that in gazebo I can see the contacts when I visualize contacts in Gazebo (view -> contacts). But when I use "gz topic -e ~/robot/contacts" in the terminal, that doesn't shows anything.
So the plugin is not receiving any info.
Please, could you help me whit that problem?
Regards
David

Grasping doesn't occurs while robot takes detail.

Hi, Jennifer!

I've got problem with grasping an object, since I think grasp-fix plugin was installed incorrectly. I already tried to reinstall it a few times' but robot still doesn't grasp an object. Can you please take a look?

I don't get any messages about grasping fix and when robot takes the cube, there is not INFO message about grasping also.

fake_object
robor_wrist
plugin

Magnetic gripper physics not working

I am trying to simulate a magnetic gripper in Gazebo which has no moving parts. I am successfully able to visualize the inertia.

There are some scenarios in my simulation where the gripper has picked up the tool (wrench) and uses it to rotate a valve. For now, to simplify the problem I have attached the tool to the gripper directly in URDF and using it to manipulate the objects.

But I see that the robot and object vibrate frantically and fly off when in contact. https://youtu.be/eP29QGYoQhY.

I was trying to set the physics right and then came across your plugin. But I realize that your plugin needs that the gripper should have 2 fingers which exert opposing forces on the object. As I mentioned earlier, my gripper has no moving parts. Also I don't need to attach the valve to the tool but need it to remain stable during the simulation.

Can I still use your plugin or can I modify it in some way?
gripper.tar.gz

Which topic I can subscribe to read the information indicating successful grasp?

Thanks for your work. Now I want to read the state whether I am successful about the grasp. And I can see a line of info in green color on terminal, but I need to read the info by matlab (in another computer). I have tried topic /rosout_agg, but this topic would skip the green line, only focused on other information which is not belong to this gazebo-pkgs plug-in.

Object moves away

Hi,

I tried the plugin and sometimes it works perfectly. However, sometimes, as I approach the object and start closing the gripper, the object moves/flies away. Is this due to the inertia parameters of the gripper or of the object? Or do I have to change the parameters of the grasp plugin? Also, sometimes the gripper links explodes.

Thanks!

Can't attach object using robotiq 140 gripper

Hi,

I'm trying to use ur5 with robotiq 140 gripper to grasp object.
The plugin seems loaded but when the fingers are making contacts with the object, there is no "attached" info shows in the console.
Screenshot from 2021-04-17 12-36-16
Here is how I set up the parameters:
Screenshot from 2021-04-17 12-38-17

catkin_make error.

Sorry for the long error message, I am pretty puzzled by this error message. When I run catkin_make on a fresh ubuntu 16.04 install I get this:

In file included from /usr/include/boost/bind.hpp:22:0,
from /opt/ros/kinetic/include/ros/publisher.h:35,
from /opt/ros/kinetic/include/ros/node_handle.h:32,
from /opt/ros/kinetic/include/ros/ros.h:45,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/include/joint_trajectory_execution/TrajectoryActionServer.h:27,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:19:
/usr/include/boost/bind/bind.hpp: In instantiation of ‘void boost::_bi::list2<A1, A2>::operator()(boost::_bi::type, F&, A&, int) [with F = boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>; A = boost::bi::list1<const actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>; A1 = boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>; A2 = boost::arg<1>]’:
/usr/include/boost/bind/bind.hpp:905:50: required from ‘boost::bi::bind_t<R, F, L>::result_type boost::bi::bind_t<R, F, L>::operator()(A1&&) [with A1 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >; R = void; F = boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>; L = boost::bi::list2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, boost::arg<1> >; boost::bi::bind_t<R, F, L>::result_type = void]’
/usr/include/boost/function/function_template.hpp:159:11: required from ‘static void boost::detail::function::void_function_obj_invoker1<FunctionObj, R, T0>::invoke(boost::detail::function::function_buffer&, T0) [with FunctionObj = boost::bi::bind_t<void, boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>, boost::bi::list2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, boost::arg<1> > >; R = void; T0 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >]’
/usr/include/boost/function/function_template.hpp:940:38: required from ‘void boost::function1<R, T1>::assign_to(Functor) [with Functor = boost::bi::bind_t<void, boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>, boost::bi::list2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, boost::arg<1> > >; R = void; T0 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >]’
/usr/include/boost/function/function_template.hpp:728:7: required from ‘boost::function1<R, T1>::function1(Functor, typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral::value>::value, int>::type) [with Functor = boost::bi::bind_t<void, boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>, boost::bi::list2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, boost::arg<1> > >; R = void; T0 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >; typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral::value>::value, int>::type = int]’
/usr/include/boost/function/function_template.hpp:1077:16: required from ‘boost::function<R(T0)>::function(Functor, typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral::value>::value, int>::type) [with Functor = boost::bi::bind_t<void, boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>, boost::bi::list2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, boost::arg<1> > >; R = void; T0 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >; typename boost::enable_if_c<boost::type_traits::ice_not<boost::is_integral::value>::value, int>::type = int]’
/home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:270:26: required from here
/usr/include/boost/bind/bind.hpp:313:35: error: no match for call to ‘(boost::mfi::mf1<void, joint_trajectory_execution::TrajectoryActionServer, actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>) (joint_trajectory_execution::TrajectoryActionServer*&, const actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction
<std::allocator > >&)’
unwrapper::unwrap(f, 0)(a[base_type::a1
], a[base_type::a2]);
^
In file included from /usr/include/boost/bind/mem_fn.hpp:215:0,
from /usr/include/boost/mem_fn.hpp:22,
from /usr/include/boost/function/detail/prologue.hpp:18,
from /usr/include/boost/function.hpp:24,
from /opt/ros/kinetic/include/ros/forwards.h:40,
from /opt/ros/kinetic/include/ros/common.h:37,
from /opt/ros/kinetic/include/ros/ros.h:43,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/include/joint_trajectory_execution/TrajectoryActionServer.h:27,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:19:
/usr/include/boost/bind/mem_fn_template.hpp:163:7: note: candidate: R boost::mfi::mf1<R, T, A1>::operator()(T*, A1) const [with R = void; T = joint_trajectory_execution::TrajectoryActionServer; A1 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&]
R operator()(T * p, A1 a1) const
^
/usr/include/boost/bind/mem_fn_template.hpp:163:7: note: conversion of argument 2 would be ill-formed:
In file included from /usr/include/boost/bind.hpp:22:0,
from /opt/ros/kinetic/include/ros/publisher.h:35,
from /opt/ros/kinetic/include/ros/node_handle.h:32,
from /opt/ros/kinetic/include/ros/ros.h:45,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/include/joint_trajectory_execution/TrajectoryActionServer.h:27,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:19:
/usr/include/boost/bind/bind.hpp:313:35: error: binding ‘const actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >’ to reference of type ‘actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&’ discards qualifiers
unwrapper::unwrap(f, 0)(a[base_type::a1], a[base_type::a2]);
^
In file included from /usr/include/boost/bind/mem_fn.hpp:215:0,
from /usr/include/boost/mem_fn.hpp:22,
from /usr/include/boost/function/detail/prologue.hpp:18,
from /usr/include/boost/function.hpp:24,
from /opt/ros/kinetic/include/ros/forwards.h:40,
from /opt/ros/kinetic/include/ros/common.h:37,
from /opt/ros/kinetic/include/ros/ros.h:43,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/include/joint_trajectory_execution/TrajectoryActionServer.h:27,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:19:
/usr/include/boost/bind/mem_fn_template.hpp:168:25: note: candidate: template R boost::mfi::mf1<R, T, A1>::operator()(U&, A1) const [with U = U; R = void; T = joint_trajectory_execution::TrajectoryActionServer; A1 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&]
template R operator()(U & u, A1 a1) const
^
/usr/include/boost/bind/mem_fn_template.hpp:168:25: note: template argument deduction/substitution failed:
In file included from /usr/include/boost/bind.hpp:22:0,
from /opt/ros/kinetic/include/ros/publisher.h:35,
from /opt/ros/kinetic/include/ros/node_handle.h:32,
from /opt/ros/kinetic/include/ros/ros.h:45,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/include/joint_trajectory_execution/TrajectoryActionServer.h:27,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:19:
/usr/include/boost/bind/bind.hpp:313:35: note: cannot convert ‘(& a)->boost::bi::list1::operator[]<const actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>(boost::bi::storage2<A1, boost::arg >::a2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, 1>)’ (type ‘const actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >’) to type ‘actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&’
unwrapper::unwrap(f, 0)(a[base_type::a1], a[base_type::a2]);
^
In file included from /usr/include/boost/bind/mem_fn.hpp:215:0,
from /usr/include/boost/mem_fn.hpp:22,
from /usr/include/boost/function/detail/prologue.hpp:18,
from /usr/include/boost/function.hpp:24,
from /opt/ros/kinetic/include/ros/forwards.h:40,
from /opt/ros/kinetic/include/ros/common.h:37,
from /opt/ros/kinetic/include/ros/ros.h:43,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/include/joint_trajectory_execution/TrajectoryActionServer.h:27,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:19:
/usr/include/boost/bind/mem_fn_template.hpp:176:25: note: candidate: template R boost::mfi::mf1<R, T, A1>::operator()(const U&, A1) const [with U = U; R = void; T = joint_trajectory_execution::TrajectoryActionServer; A1 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&]
template R operator()(U const & u, A1 a1) const
^
/usr/include/boost/bind/mem_fn_template.hpp:176:25: note: template argument deduction/substitution failed:
In file included from /usr/include/boost/bind.hpp:22:0,
from /opt/ros/kinetic/include/ros/publisher.h:35,
from /opt/ros/kinetic/include/ros/node_handle.h:32,
from /opt/ros/kinetic/include/ros/ros.h:45,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/include/joint_trajectory_execution/TrajectoryActionServer.h:27,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:19:
/usr/include/boost/bind/bind.hpp:313:35: note: cannot convert ‘(& a)->boost::bi::list1::operator[]<const actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&>(boost::bi::storage2<A1, boost::arg >::a2<boost::bi::value<joint_trajectory_execution::TrajectoryActionServer*>, 1>)’ (type ‘const actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >’) to type ‘actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&’
unwrapper::unwrap(f, 0)(a[base_type::a1], a[base_type::a2]);
^
In file included from /usr/include/boost/bind/mem_fn.hpp:215:0,
from /usr/include/boost/mem_fn.hpp:22,
from /usr/include/boost/function/detail/prologue.hpp:18,
from /usr/include/boost/function.hpp:24,
from /opt/ros/kinetic/include/ros/forwards.h:40,
from /opt/ros/kinetic/include/ros/common.h:37,
from /opt/ros/kinetic/include/ros/ros.h:43,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/include/joint_trajectory_execution/TrajectoryActionServer.h:27,
from /home/phil/catkin_ws/src/joint-control-pkgs/joint_trajectory_execution/src/TrajectoryActionServer.cpp:19:
/usr/include/boost/bind/mem_fn_template.hpp:184:7: note: candidate: R boost::mfi::mf1<R, T, A1>::operator()(T&, A1) const [with R = void; T = joint_trajectory_execution::TrajectoryActionServer; A1 = actionlib::ServerGoalHandle<control_msgs::FollowJointTrajectoryAction<std::allocator > >&]
R operator()(T & t, A1 a1) const
^
/usr/include/boost/bind/mem_fn_template.hpp:184:7: note: no known conversion for argument 1 from ‘joint_trajectory_execution::TrajectoryActionServer*’ to ‘joint_trajectory_execution::TrajectoryActionServer&’
joint-control-pkgs/joint_trajectory_execution/CMakeFiles/trajectory_action_server.dir/build.make:62: recipe for target 'joint-control-pkgs/joint_trajectory_execution/CMakeFiles/trajectory_action_server.dir/src/TrajectoryActionServer.cpp.o' failed
make[2]: *** [joint-control-pkgs/joint_trajectory_execution/CMakeFiles/trajectory_action_server.dir/src/TrajectoryActionServer.cpp.o] Error 1
CMakeFiles/Makefile2:1777: recipe for target 'joint-control-pkgs/joint_trajectory_execution/CMakeFiles/trajectory_action_server.dir/all' failed
make[1]: *** [joint-control-pkgs/joint_trajectory_execution/CMakeFiles/trajectory_action_server.dir/all] Error 2

I put the c++11 flags in the cmake files. It's weird because I managed to build it on previous builds but not this one. I'm sure I am missing a simple thing but i can't figure it out.

Thank you for your help!

Grasp plugin doesn't work with a gazebo issue

There is a gazebo issue that makes the gripper open and close due to an unknown reason, while you do a motion grasping an object. I thought this plugin would fix that, but as the gripper opens and closes, the object is falling down. Do you know any workaround?.

Thank you,

Ground Collision

My robotic arm is colliding with the ground when traversing from one point to another. Is there any way to disable collisions with the ground?

How to get the Bounding box data from gazebo?

Hello, I'm new to Gazebo and Ros so help me please.

I did your pkgs tutorials(Object information and recognition tutorial).
But when I did this command,
rosrun gazebo_state_plugins gazebo_request_object_info cube1
I only got the position and orientation data from cube.

I want to get the bounding box data from cube, Jaco and table.
How to get this data? I can't find it :'(

New feature: send messages from grasp plugin on attach/detach

As discussed in #35, it would be useful to communicate from the grasp plugin when an object was attached or released. This should ideally be done by message, so external packages can subscribe to that information.

However one thing about this feature to keep in mind is that this doesn't really simulate the real robot very accurately. The robot would not communicate a failed grasp either, unless it has force sensors, but that would then have to be simulated by itself, probably from a separate gazebo plugin. In other cases, this kind of "grasp success measure" would have to be done by another module, e.g. a camera sensor which watches the gripper and reports whether the object is held. Only a system like that would then simulate the real world.

Nevertheless, for testing and development purposes some kind of feedback from the plugin would be useful. Therefore it is not on the "features to be implemented" list.

Grasp plugin for multi-gripper robot

Hi again, Jenny.
I've been testing some stuff and as I really didn't need to use more than one gripper, your plugin was working wonderfully :).
However, when I tried to use the other gripper, there were only problems.

In the robot urdf description (technically xacro) I tried the following configurations:

  • First try
<gazebo>
    <plugin name=...>
        <palm_link>left_gripper_palm_link</palm_link>
        <palm_link>right_gripper_palm_link</palm_link>
        <!-- gripper links from both grippers-->
        ...
    </plugin>
</gazebo>

This results in your plugin nicely detecting grips from both grippers, but it attaches the object to the first palm link specified. So in this case, if right gripper grabs a cube, the cube gets attached to the left gripper and weird stuff happens.

  • Second try
<gazebo>
    <plugin name="leftgripperfix" ...>
        <!-- palm and gripper links for LEFT gripper -->
    </plugin>
    <plugin name="rightgripperfix"...>
        <!-- palm and gripper links for RIGHT gripper -->
   </plugin>
</gazebo>

This results on the plugin working only on the left gripper. The right one doesn't, I think it's because "Filter with the same name already exists! Aborting".

  • Third and last try
<gazebo>
    <plugin name="leftgripperfix"...>
        <!-- left gripper -->
    </plugin>
</gazebo>
<gazebo>
    <plugin name="rightgripperfix"...>
        <!-- right gripper -->
    </plugin>
</gazebo>

Same as the previous case. Same error message.

Is there a way to make it work with both grippers?
Cheers!

Can't attach object using dh_robotics_ag95_gripper.Object slips away when grasping.

Hi, I'm trying to use ur10e with dh_robotics_ag95_gripper to grasp a cube in gazebo.
My platform is Ubuntu 18.04, ROS Melodic and Gazebo9.
The plugin should be loaded.
1
But without any attach message at the time of grabbing, the cube will just be bounced away.
Here is how I set up the parameters:
2
I use gz topic -l and I can see topic /gazebo/ur5_cubes/robot/contacts, where ur5_cube is my gazebo world's name. But I can get nothing when using gz topic -e ~/robot/contacts.
Here is the video.
https://github.com/JenniferBuehler/gazebo-pkgs/assets/92132890/4e78d9d3-7afa-4010-9c4e-fc443d8549ce

Is there a version that works with Gazebo 9?

I was working with ROS Kinetic and had Gazebo 9 installed. Upon trying to compile gazebo-grasp-plugin, it gave me various errors. Seemed like a bunch of functions from gazebo 7 were not available in gazebo 9. Is there a new version of these packages that supports gazebo 9?

THe newest ROS melodic also uses gazebo 9. Anyone tried this with ros melodic?

"Filter with the same name already exists! Aborting"

Hi,
The plugin doesn't work in my case as expected (objects are not attached). During loading I get the following output:

Loading grasp-fix plugin
GazeboGraspFix: Using disable_collisions_on_attach 0
GazeboGraspFix: Using update rate 4
GazeboGraspFix: Using max_grip_count 100
GazeboGraspFix: Using grip_count_threshold 4
GazeboGraspFix: Using release_tolerance 0.1005
GazeboGraspFix: Adding collision scoped name yumi::gripper_r_finger_l::gripper_r_finger_l_collision
GazeboGraspFix: Adding collision scoped name yumi::gripper_r_finger_r::gripper_r_finger_r_collision
[Err] [ContactManager.cc:282] Filter with the same name already exists! Aborting
Subscribing contact manager to topic 
  1. Is it crucial to avoid the error that comes from the contact manager to make the plugin work?
  2. If yes, have you experienced this before / do you know a fix? (Googling the error lead me to this: https://bitbucket.org/osrf/gazebo/issues/960/allow-multiple-contactsensor-per-collision which should be solved in the Gazebo version I'm using [7.0.0])

Thanks!

GazeboGraspGripper: Palm link ee_link not found. The gazebo grasp plugin will not work

Hi JenniferBuehler,

Thanks for creating GazeboGrasp plugin. I'm trying to use it with UR10 arm and RobotIq 85 gripper. But, the object falls as before and I get the following error:
Screenshot 2021-07-26 10:57:32

I am using ROS Melodic + gazebo 9. And the version of gazebo_grasp_plugin is master, because the Melodic version has some problems while running, the problem as follows:

gzserver: symbol lookup error: /home/ros/catkin_ws/devel/lib/libgazebo_grasp_fix.so: undefined symbol: _ZN6gazebo10GetPhysicsERKN5boost10shared_ptrINS_7physics5WorldEEE
Traceback (most recent call last)

Can you tell me whether the error in the picture is caused by the gazebo_grasp_plugin version? And how to solve it?

Can I spawn a opbject by existed model.sdf instead of a hard_code streamstring

Hello

The cube_spawner spawn a cube by hard-code stringstream. Is there a way to use an existed model.xml file.

I tried to spawn my model by the way below, as you can see, I transfer the model.xml to the stringstream s instead of hard-code.

    std::ifstream xml_file;
    xml_file.open(xml_path,std::ios::in);
    if(!xml_file)
        std::cerr<<"can't find xml file: "<<xml_path<<std::endl;
    std::stringstream s;
    s<<xml_file.rdbuf();

But the model can't spawn normally. I use the rosrun command, the model can spawn normally.

rosrun gazebo_ros spawn_model -file `rospack find object_description`/urdf/banana.xml -urdf -y 1 -model banana

Plugin is not loading

Hi, first of all I would like to thank you for this plugin. However, I am having a problem with loading it. Even though I applied it within my urdf file, after launching gazebo there is nothing mentioned about loading the plugin, as well as nothing is mentioned in gazebo. Do I need to somehow export Gazebo environment variables or something? Could you point me to the right direction? I believe that the problem is with the wrong location/path of plugin.

I have also tried things like these:

  <plugin name="gazebo_grasp_fix" filename="/home/tomas/catkin_ws/devel/lib/libgazebo_grasp_fix.so">
        ...
  </plugin>

Also do you have any idea why I am not getting any error and gazebo is just ignoring that plugin within urdf?

Getting the grasp-plugin to grip multiple bodies

Hello,
I'm trying to use the plugin in model to move a stack of discs, where the robot is supposed to hold and pick only the one on the bottom. The discs on the top however don't move horizontally with the gripped disc and slip off(I will comment a video as soon as I can). I tried to solve the problem through friction parameters but had no success. I was wondering if there is a way I could modify the plugin, so that all the discs are bound to the gripper link. Since I'm a beginner in Gazebo I don't know what other options are there. Any tipps or ideas are appreciated.

Use gazebo_grasp_plugin but still cant grasp cube

HI~ I run a grasp_demo on melodic gazebo9, using ur5 and robotiq_85_gripper. cube size is 0.05. I set the gripper close pose as 0.4, it just slipped between the two gripping. When set as 0.45, the two grippers shook, struggled to grasp the cube.
the parameters set as:
<forces_angle_tolerance>100</forces_angle_tolerance>
<update_rate>20</update_rate>
<grip_count_threshold>1</grip_count_threshold>
<max_grip_count>3</max_grip_count>
<release_tolerance>0.0198</release_tolerance>
<disable_collisions_on_attach>false</disable_collisions_on_attach>
<contact_topic>default_topic</contact_topic>
Hope for your help, thanks~

Object not getting attached to Robotiq 2 fingered gripper

Hello @JenniferBuehler I tried using your plugin for my setup of UR5 arm with Robotiq 2 fingered gripper for grasping cube of 50 mm length and breadth with no success on Gazebo 2 since I have ROS Indigo installed.
Here is my Plugin config settings.Kindly guide me through the same

ur5 robotiq_85_left_inner_knuckle_link robotiq_85_right_knuckle_link robotiq_85_right_finger_tip_link robotiq_85_left_finger_tip_link 100 10 10 20 0.005 true __default_topic__

Correlate gazebo_grasp_plugin with Moveit!

Hi,

What is the best way to correlate between gazebo_grasp_plugin attach/detach and moveit pick & place success/failure (i.e. attach/detach objects from the planning scene)?

Currently, I have situations where the pickup by moveit is failed but the object is attached by the gazebo plugin and vice versa.

Thanks

Different position of a cube affect graspping performance

Hello Jennifer @JenniferBuehler
Thanks for your gazebo_grasp_plugin.
I use UR5 and robotiq in gazebo and try to grasp a 6cm cube, but I find that different cube position affect graspping result.
Assuming the coordinate range of cube is x: 0.4m—9m, y: 0.4m—0.9m. I find the gripper will grasp well when the cube is in the middle area, such as (x, y) = (0.6, 0.5), but if the cube is far away from middle area, such as (x, y) = (0.8, 0.7), the cube will gradually slip out and slipping direction is -y.
This is a video link (see here) . You can see it is silpping slowly and finally slipping out in 24s.
So can you give me some advice? I don't know whether the different position affect the physical detection.
Thanks very much.

ERROR: the following packages/stacks could not have their rosdep keys resolved

When I try to build jaco-arm-pkgs I get the following error after running

rosdep install -y --from-paths . --ignore-src --rosdistro kinetic

ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
jaco_gazebo: Cannot locate rosdep definition for [gazebo_joint_control]
jaco_joints: Cannot locate rosdep definition for [joint_trajectory_execution]
jaco_on_table: Cannot locate rosdep definition for [common_sensors]

Can you help me with this?

Enable/disable plugin during script execution

Hello !
At first, thanks a lot for your works, it helps me a lot !
I'm actually working on a gazebo project in order to grasp and push objects. I'm using your plugin for the gasp function but i got a problem: When i try to push an object, this object stay glue to the gripper because of this plugin. I would like to know if it's possible (or not) to disable a plugin when i'm executing the script and how to do it (maybe with a service...) ?

I'm working with an UR5 and a gripper85 and I got melodic version of Ubuntu.

Any help will be appreciated and thank in advance. Jordan

Velocity seems to be set to 0 after detaching

The plugin seems to work pretty well but I was checking what happened, when the gripper opens while in motion. It seems that the gripped object's velocity is reset and falls straight down by gravity.
For example in situations, where the simulated robot is supposed to throw an object, it would be important, that the gripped object keeps its velocity.

GazeboGraspGripper: Palm link ee_link not found. The gazebo grasp plugin will not work.

Hi JenniferBuehler,

Thanks for creating GazeboGraspFix plugin. I'm trying to use it with UR5 arm and RobotiQ 85 gripper. But, the object falls as before and I get the following error:

Loading grasp-fix plugin
GazeboGraspFix: Using disable_collisions_on_attach 1
GazeboGraspFix: Using update rate 2
GazeboGraspFix: Using max_grip_count 2
GazeboGraspFix: Using grip_count_threshold 1
GazeboGraspFix: Using release_tolerance 0.005
[Err] [GazeboGraspGripper.cpp:59] GazeboGraspGripper: Palm link ee_link not found. The gazebo grasp plugin will not work.
[Err] [GazeboGraspFix.cpp:173] GazeboGraspFix: Could not initialize arm gripper_arm. Skipping.
[Err] [GazeboGraspFix.cpp:196] ERROR: GazeboGraspFix: Cannot use a GazeboGraspFix because no arms were configured successfully. Plugin will not work.
Loading grasp-fix plugin
GazeboGraspFix: Using disable_collisions_on_attach 0
GazeboGraspFix: Using update rate 4
GazeboGraspFix: Using max_grip_count 8
GazeboGraspFix: Using grip_count_threshold 4
GazeboGraspFix: Using release_tolerance 0.005
GazeboGraspFix: Adding collision scoped name robot::gripper_finger1_finger_tip_link::gripper_finger1_finger_tip_link_collision
GazeboGraspFix: Adding collision scoped name robot::gripper_finger1_inner_knuckle_link::gripper_finger1_inner_knuckle_link_collision
GazeboGraspFix: Adding collision scoped name robot::gripper_finger1_knuckle_link::gripper_finger1_knuckle_link_collision
GazeboGraspFix: Adding collision scoped name robot::gripper_finger1_knuckle_link::gripper_finger1_knuckle_link_fixed_joint_lump__gripper_finger1_finger_link_collision_1
GazeboGraspFix: Adding collision scoped name robot::gripper_finger2_finger_tip_link::gripper_finger2_finger_tip_link_collision
GazeboGraspFix: Adding collision scoped name robot::gripper_finger2_inner_knuckle_link::gripper_finger2_inner_knuckle_link_collision
GazeboGraspFix: Adding collision scoped name robot::gripper_finger2_knuckle_link::gripper_finger2_knuckle_link_collision
GazeboGraspFix: Adding collision scoped name robot::gripper_finger2_knuckle_link::gripper_finger2_knuckle_link_fixed_joint_lump__gripper_finger2_finger_link_collision_1

This is how my gzplugin_grasp_fix.urdf.xacro file looks like:

<?xml version="1.0" encoding="UTF-8"?>
<root 
xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor"
xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller"
xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"
xmlns:xacro="http://ros.org/wiki/xacro">

<xacro:macro name="gzplugin_grasp_fix">
    <gazebo>
        <plugin name="gazebo_grasp_fix" filename="libgazebo_grasp_fix.so">
            <arm>
                <arm_name>UR5Arm</arm_name>
                <palm_link>wrist_3_link</palm_link>
                <gripper_link>gripper_finger1_inner_knuckle_link</gripper_link>
                <gripper_link>gripper_finger1_finger_tip_link</gripper_link>
                <gripper_link>gripper_finger1_knuckle_link</gripper_link>
                <gripper_link>gripper_finger2_inner_knuckle_link</gripper_link>
                <gripper_link>gripper_finger2_finger_tip_link</gripper_link>
                <gripper_link>gripper_finger2_knuckle_link</gripper_link>
            </arm>
            <forces_angle_tolerance>100</forces_angle_tolerance>
            <update_rate>4</update_rate>
            <grip_count_threshold>4</grip_count_threshold>
            <max_grip_count>8</max_grip_count>
            <release_tolerance>0.005</release_tolerance>
            <disable_collisions_on_attach>false</disable_collisions_on_attach>
            <contact_topic>__default_topic__</contact_topic>
        </plugin>
    </gazebo>
</xacro:macro>
</root>

Here's a video: https://drive.google.com/file/d/1pvHDf6qhK75cAdyv3fhh6LAzdl0HAG85/view?usp=sharing

You can run it yourself by cloning this repo: https://github.com/gtatiya/Hacking-SotA-UR5 and running:

roslaunch ur5_single_arm_manipulation pick_and_place.launch 
roslaunch ur5_single_arm_manipulation grasp_generator_server.launch 
rosrun ur5_single_arm_manipulation pick_and_place.py

How can I fix this error?

Not able to attach a custom object to kinova arm using grasp plugin

@JenniferBuehler I am trying to attach a door handle to Kinova arm (j2s7s300) using the grasp fix plugin but attaching the object is failing.
The plugin is getting loaded and contacts between palm-link, gripper fingers, and door are getting detected. But the end-effector is not getting attached to the door handle.

Below is a snippet of log info:
........................................................................................................................................................................................................
[ INFO] [1618533756.587926328, 57.770000000]: RRTConnect: Starting planning with 1 states already in datastructure
[ INFO] [1618533757.192667533, 58.375000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533757.192698646, 58.375000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ INFO] [1618533757.193214415, 58.375000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533757.193233499, 58.375000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ INFO] [1618533757.193966685, 58.376000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533757.193986511, 58.376000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ INFO] [1618533757.194518915, 58.376000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533757.194535909, 58.376000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ERROR] [1618533757.794550317, 58.976000000]: RRTConnect: Unable to sample any valid states for goal tree
[ INFO] [1618533757.794582298, 58.976000000]: RRTConnect: Created 1 states (1 start + 0 goal)
[ INFO] [1618533757.794596924, 58.976000000]: No solution found after 1.206862 seconds
[ INFO] [1618533757.794614157, 58.976000000]: Unable to solve the planning problem
[ INFO] [1618533757.794640447, 58.976000000]: Planning attempt 4 of at most 5
[ WARN] [1618533757.795318745, 58.977000000]: Cannot find planning configuration for group 'arm' using planner 'RRTConnectkConfigDefault'. Will use defaults instead.
[ INFO] [1618533757.795456259, 58.977000000]: Planner configuration 'arm' will use planner 'geometric::RRTConnect'. Additional configuration parameters will be set when the planner is constructed.
[ INFO] [1618533757.795690701, 58.977000000]: RRTConnect: Starting planning with 1 states already in datastructure
[ INFO] [1618533758.398923871, 59.580000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533758.398951891, 59.580000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ INFO] [1618533758.399524157, 59.581000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533758.399541047, 59.581000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ INFO] [1618533758.400087164, 59.581000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533758.400101906, 59.581000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ INFO] [1618533758.400516263, 59.582000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533758.400534927, 59.582000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ERROR] [1618533758.992230005, 60.173000000]: RRTConnect: Unable to sample any valid states for goal tree
[ INFO] [1618533758.992263935, 60.173000000]: RRTConnect: Created 1 states (1 start + 0 goal)
[ INFO] [1618533758.992283547, 60.173000000]: No solution found after 1.196777 seconds
[ INFO] [1618533758.992305717, 60.173000000]: Unable to solve the planning problem
[ INFO] [1618533758.992340537, 60.173000000]: Planning attempt 5 of at most 5
[ WARN] [1618533758.992964886, 60.174000000]: Cannot find planning configuration for group 'arm' using planner 'RRTConnectkConfigDefault'. Will use defaults instead.
[ INFO] [1618533758.993120151, 60.174000000]: Planner configuration 'arm' will use planner 'geometric::RRTConnect'. Additional configuration parameters will be set when the planner is constructed.
[ INFO] [1618533758.993372999, 60.174000000]: RRTConnect: Starting planning with 1 states already in datastructure
[ INFO] [1618533759.609864166, 60.790000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533759.609909686, 60.791000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ INFO] [1618533759.610900039, 60.791000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533759.610922670, 60.791000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ INFO] [1618533759.611233089, 60.792000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533759.611251689, 60.792000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
[ INFO] [1618533759.611589541, 60.792000000]: Found a contact between 'door_1' (type 'Robot link') and 'j2s7s300_link_7' (type 'Robot link'), which constitutes a collision. Contact information is not stored.
[ INFO] [1618533759.611608439, 60.792000000]: Collision checking is considered complete (collision was found and 0 contacts are stored)
..............................................................................................................................................................................................................

I am not able to understand why is the door handle not getting attached to the gripper. For reference, I have uploaded the xacro files at https://github.com/JBVAkshaya/grasp_fix_plugin_custom_object

It will be of great help if you can give me some pointers on how can I fix this.

Spawning a cylinder instead of a cube

Hi Jennifer,

I tried your cube spawner and it works beautifully. Since I need to simulate cylinder object as well, so I tried to modify your cube spawner to be a cylinder spawner. I assume that I need to modify cube_spawner.cpp and cube_spawner_node.cpp, is that right? So I have made some adjustments for sdf file generator such as inertia calculation and geometry & collision dimension declaration. The code compiled without warning, and I am able to spawn the cylinder to gazebo. The problem is, I cannot see the cylinder in gazebo visualization, even though it is detected on the gazebo object list. Do you have an idea where's the problem came from? If this doesn't make sense to you then I will post the code, Thanks.

gzserver: symbol lookup error

Hi,

I have experienced the following error which occurs for all commits after 22d171b. I am running ROS kinetic on a Ubuntu 16.04.6 docker container.

[Msg] Loading grasp-fix plugin
[Msg] GazeboGraspFix: Using disable_collisions_on_attach 0
[Msg] GazeboGraspFix: Using update rate 4
[Msg] GazeboGraspFix: Using max_grip_count 8
[Msg] GazeboGraspFix: Using grip_count_threshold 4
[Msg] GazeboGraspFix: Using release_tolerance 0.005
gzserver: symbol lookup error: /home/ros/catkin_ws/devel/lib/libgazebo_grasp_fix.so: undefined symbol: _ZN6gazebo10GetPhysicsERKN5boost10shared_ptrINS_7physics5WorldEEE
Traceback (most recent call last):
  File "/opt/ros/kinetic/lib/controller_manager/controller_manager", line 58, in <module>
    controller_manager_interface.load_controller(c)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/controller_manager/controller_manager_interface.py", line 58, in load_controller
    resp = s.call(LoadControllerRequest(name))
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 525, in call
    raise ServiceException("transport error completing service call: %s"%(str(e)))
rospy.service.ServiceException: transport error completing service call: unable to receive data from sender, check sender's logs for details
Traceback (most recent call last):
Traceback (most recent call last):
  File "/opt/ros/kinetic/lib/controller_manager/spawner", line 207, in <module>
    if __name__ == '__main__': main()
  File "/opt/ros/kinetic/lib/controller_manager/spawner", line 185, in main
    resp = load_controller(name)
Traceback (most recent call last):
  File "/opt/ros/kinetic/lib/controller_manager/spawner", line 207, in <module>
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 435, in __call__
    if __name__ == '__main__': main()
  File "/opt/ros/kinetic/lib/controller_manager/spawner", line 185, in main
    resp = load_controller(name)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 435, in __call__
      File "/opt/ros/kinetic/lib/controller_manager/spawner", line 207, in <module>
return self.call(*args, **kwds)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 525, in call
        return self.call(*args, **kwds)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 525, in call
if __name__ == '__main__': main()
    raise ServiceException("transport error completing service call: %s"%(str(e)))
  File "/opt/ros/kinetic/lib/controller_manager/spawner", line 199, in main
rospy.service.ServiceException: transport error completing service call: unable to receive data from sender, check sender's logs for details
    resp = switch_controller(loaded, [], 2)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 435, in __call__
    return self.call(*args, **kwds)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 525, in call
    raise ServiceException("transport error completing service call: %s"%(str(e)))
rospy.service.ServiceException: transport error completing service call: unable to receive data from sender, check sender's logs for details
    raise ServiceException("transport error completing service call: %s"%(str(e)))

simulate gripper surface to bend when in contact

Hi,

I have general question about Gazebo simulation capabilities.
Do you know if it is possible to simulate bending of, for example, shadow hand fingertips when they are in contact with some object? Should I change material of fingertip to be a rubber in SDF file or play with friction parameters? I want to achieve human-finger-like behavior.
Did you already achieved something like this in one of you simulations?
Thank you in advance!

catkin_make error because of protoc

Hello,
after cloning the package into my catkin_ws I receive multiple errors during the execution of catkin_make, which all seem to be related to gazebo.
Type 1:
error_msg

Although my version of protobuf should be the right one:
protoc_version
I already tried to regenerate the files as stated in the error message with the following command in the respective directory:
protoc *.proto --cpp_out=..
But it didn't resolve the problem.

Type 2:
error_msg2

Type 3:
error_msg3

The 3 screenshots are only excerpts of the whole command line output. In reality there are much more error messages, but all of the same type as the abovementioned.

My system:

Ubuntu 16.04
ROS Kinetic
Gazebo 7.14.0
I installed gazebo and the respective gazebo_ros packages via apt-get.

gzserver: symbol lookup error in melodic_support branch

I was searching for a robotic gripper plugin. Found this awesome repo i tested this plugin(gazebo_grasp_fix) in ROS kinetic it was working properly but when i tried to use melodic version of same plugin its giving following error and gazebo.
Screenshot from 2020-09-17 23-16-03

Giving credit

Hi,

This is not really an issue! I have been using your nice grasp-plugin and I was wondering if there is a way to cite/mention this... I could write it in the acknowledgement but I thought you might have some publication that is about, or relevant to the plugin.

Cheers!
P.

Error catkin_make

I try to compile gazebo-pkgs after installing all the other packages for ros kinetic in Ubuntu 16.04 but i receive these errors. What can i do?

from /home/username/catkin_ws/src/gazebo-pkgs/gazebo_grasp_plugin/src/GazeboGraspGripper.cpp:2:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support
^
In file included from /usr/include/c++/5/random:35:0,
from /usr/include/ignition/math2/ignition/math/Rand.hh:20,
from /usr/include/ignition/math2/ignition/math.hh:18,
from /usr/include/sdformat-4.0/sdf/Param.hh:34,
from /usr/include/sdformat-4.0/sdf/Element.hh:24,
from /usr/include/sdformat-4.0/sdf/sdf.hh:5,
from /usr/include/gazebo-7/gazebo/common/Battery.hh:25,
from /usr/include/gazebo-7/gazebo/common/common.hh:8,
from /usr/include/gazebo-7/gazebo/gazebo_core.hh:19,
from /usr/include/gazebo-7/gazebo/gazebo.hh:20,
from /home/username/catkin_ws/src/gazebo-pkgs/gazebo_grasp_plugin/src/GazeboGraspFix.cpp:2:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support
^
In file included from /usr/include/gazebo-7/gazebo/gazebo_core.hh:21:0,
from /usr/include/gazebo-7/gazebo/gazebo.hh:20,
from /home/username/catkin_ws/src/gazebo-pkgs/gazebo_grasp_plugin/src/GazeboGraspGripper.cpp:2:
/usr/include/gazebo-7/gazebo/msgs/msgs.hh:24:37: fatal error: ignition/math/Inertial.hh: No such file or directory
compilation terminated.
In file included from /usr/include/gazebo-7/gazebo/gazebo_core.hh:21:0,
from /usr/include/gazebo-7/gazebo/gazebo.hh:20,
from /home/username/catkin_ws/src/gazebo-pkgs/gazebo_grasp_plugin/src/GazeboGraspFix.cpp:2:
/usr/include/gazebo-7/gazebo/msgs/msgs.hh:24:37: fatal error: ignition/math/Inertial.hh: No such file or directory
compilation terminated.
gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/build.make:86: recipe for target 'gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/src/GazeboGraspGripper.cpp.o' failed
make[2]: *** [gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/src/GazeboGraspGripper.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/build.make:62: recipe for target 'gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/src/GazeboGraspFix.cpp.o' failed
make[2]: *** [gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/src/GazeboGraspFix.cpp.o] Error 1
CMakeFiles/Makefile2:8155: recipe for target 'gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/all' failed
make[1]: *** [gazebo-pkgs/gazebo_grasp_plugin/CMakeFiles/gazebo_grasp_fix.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Scanning dependencies of target gazebo_test_tools_generate_messages_cpp
[ 87%] Generating C++ code from gazebo_test_tools/RecognizeGazeboObject.srv
[ 87%] Built target gazebo_test_tools_generate_messages_cpp
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j2 -l2" failed

What can i do?

Build on ROS noetic

I tried to build this package, specifically, gazebo_version_helpers on ROS noetic.
I got the following error

In file included from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/src/GazeboVersionHelpers.cpp:1:
/home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/include/gazebo_version_helpers/GazeboVersionHelpers.h:116:14: error: deduced class type ‘Box’ in function return type
  116 | gz_math::Box GetBoundingBox(const T &t)
      |              ^~~~~~~~~~~~~~
In file included from /usr/include/ignition/math6/ignition/math.hh:29,
                 from /usr/include/sdformat-9.2/sdf/Param.hh:33,
                 from /usr/include/sdformat-9.2/sdf/Element.hh:28,
                 from /usr/include/sdformat-9.2/sdf/Actor.hh:25,
                 from /usr/include/sdformat-9.2/sdf/sdf.hh:2,
                 from /usr/include/gazebo-11/gazebo/common/Battery.hh:25,
                 from /usr/include/gazebo-11/gazebo/common/common.hh:8,
                 from /usr/include/gazebo-11/gazebo/gazebo_core.hh:19,
                 from /usr/include/gazebo-11/gazebo/gazebo.hh:20,
                 from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/include/gazebo_version_helpers/GazeboVersionHelpers.h:4,
                 from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/src/GazeboVersionHelpers.cpp:1:
/usr/include/ignition/math6/ignition/math/Box.hh:42:11: note: ‘template<class Precision> class ignition::math::v6::Box’ declared here
   42 |     class Box
      |           ^~~
In file included from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/src/GazeboVersionHelpers.cpp:1:
/home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/include/gazebo_version_helpers/GazeboVersionHelpers.h:126:36: error: template placeholder type ‘const Box<...auto...>’ must be followed by a simple declarator-id
  126 | GzVector3 GetBoundingBoxDimensions(const gz_math::Box &box);
      |                                    ^~~~~
In file included from /usr/include/ignition/math6/ignition/math.hh:29,
                 from /usr/include/sdformat-9.2/sdf/Param.hh:33,
                 from /usr/include/sdformat-9.2/sdf/Element.hh:28,
                 from /usr/include/sdformat-9.2/sdf/Actor.hh:25,
                 from /usr/include/sdformat-9.2/sdf/sdf.hh:2,
                 from /usr/include/gazebo-11/gazebo/common/Battery.hh:25,
                 from /usr/include/gazebo-11/gazebo/common/common.hh:8,
                 from /usr/include/gazebo-11/gazebo/gazebo_core.hh:19,
                 from /usr/include/gazebo-11/gazebo/gazebo.hh:20,
                 from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/include/gazebo_version_helpers/GazeboVersionHelpers.h:4,
                 from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/src/GazeboVersionHelpers.cpp:1:
/usr/include/ignition/math6/ignition/math/Box.hh:42:11: note: ‘template<class Precision> class ignition::math::v6::Box’ declared here
   42 |     class Box
      |           ^~~
In file included from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_grasp_plugin/src/GazeboGraspGripper.cpp:10:
/home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/include/gazebo_version_helpers/GazeboVersionHelpers.h:116:14: error: deduced class type ‘Box’ in function return type
  116 | gz_math::Box GetBoundingBox(const T &t)
      |              ^~~~~~~~~~~~~~
In file included from /usr/include/ignition/math6/ignition/math.hh:29,
                 from /usr/include/sdformat-9.2/sdf/Param.hh:33,
                 from /usr/include/sdformat-9.2/sdf/Element.hh:28,
                 from /usr/include/sdformat-9.2/sdf/Actor.hh:25,
                 from /usr/include/sdformat-9.2/sdf/sdf.hh:2,
                 from /usr/include/gazebo-11/gazebo/common/Battery.hh:25,
                 from /usr/include/gazebo-11/gazebo/common/common.hh:8,
                 from /usr/include/gazebo-11/gazebo/gazebo_core.hh:19,
                 from /usr/include/gazebo-11/gazebo/gazebo.hh:20,
                 from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_grasp_plugin/src/GazeboGraspGripper.cpp:2:
/usr/include/ignition/math6/ignition/math/Box.hh:42:11: note: ‘template<class Precision> class ignition::math::v6::Box’ declared here
   42 |     class Box
      |           ^~~
In file included from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_grasp_plugin/src/GazeboGraspGripper.cpp:10:
/home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/include/gazebo_version_helpers/GazeboVersionHelpers.h:126:36: error: template placeholder type ‘const Box<...auto...>’ must be followed by a simple declarator-id
  126 | GzVector3 GetBoundingBoxDimensions(const gz_math::Box &box);
      |                                    ^~~~~
In file included from /usr/include/ignition/math6/ignition/math.hh:29,
                 from /usr/include/sdformat-9.2/sdf/Param.hh:33,
                 from /usr/include/sdformat-9.2/sdf/Element.hh:28,
                 from /usr/include/sdformat-9.2/sdf/Actor.hh:25,
                 from /usr/include/sdformat-9.2/sdf/sdf.hh:2,
                 from /usr/include/gazebo-11/gazebo/common/Battery.hh:25,
                 from /usr/include/gazebo-11/gazebo/common/common.hh:8,
                 from /usr/include/gazebo-11/gazebo/gazebo_core.hh:19,
                 from /usr/include/gazebo-11/gazebo/gazebo.hh:20,
                 from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_grasp_plugin/src/GazeboGraspGripper.cpp:2:
/usr/include/ignition/math6/ignition/math/Box.hh:42:11: note: ‘template<class Precision> class ignition::math::v6::Box’ declared here
   42 |     class Box
      |           ^~~
In file included from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_grasp_plugin/src/GazeboGraspFix.cpp:10:
/home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/include/gazebo_version_helpers/GazeboVersionHelpers.h:116:14: error: deduced class type ‘Box’ in function return type
  116 | gz_math::Box GetBoundingBox(const T &t)
      |              ^~~~~~~~~~~~~~
In file included from /usr/include/ignition/math6/ignition/math.hh:29,
                 from /usr/include/sdformat-9.2/sdf/Param.hh:33,
                 from /usr/include/sdformat-9.2/sdf/Element.hh:28,
                 from /usr/include/sdformat-9.2/sdf/Actor.hh:25,
                 from /usr/include/sdformat-9.2/sdf/sdf.hh:2,
                 from /usr/include/gazebo-11/gazebo/common/Battery.hh:25,
                 from /usr/include/gazebo-11/gazebo/common/common.hh:8,
                 from /usr/include/gazebo-11/gazebo/gazebo_core.hh:19,
                 from /usr/include/gazebo-11/gazebo/gazebo.hh:20,
                 from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_grasp_plugin/src/GazeboGraspFix.cpp:2:
/usr/include/ignition/math6/ignition/math/Box.hh:42:11: note: ‘template<class Precision> class ignition::math::v6::Box’ declared here
   42 |     class Box
      |           ^~~
In file included from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_grasp_plugin/src/GazeboGraspFix.cpp:10:
/home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/include/gazebo_version_helpers/GazeboVersionHelpers.h:126:36: error: template placeholder type ‘const Box<...auto...>’ must be followed by a simple declarator-id
  126 | GzVector3 GetBoundingBoxDimensions(const gz_math::Box &box);
      |                                    ^~~~~
In file included from /usr/include/ignition/math6/ignition/math.hh:29,
                 from /usr/include/sdformat-9.2/sdf/Param.hh:33,
                 from /usr/include/sdformat-9.2/sdf/Element.hh:28,
                 from /usr/include/sdformat-9.2/sdf/Actor.hh:25,
                 from /usr/include/sdformat-9.2/sdf/sdf.hh:2,
                 from /usr/include/gazebo-11/gazebo/common/Battery.hh:25,
                 from /usr/include/gazebo-11/gazebo/common/common.hh:8,
                 from /usr/include/gazebo-11/gazebo/gazebo_core.hh:19,
                 from /usr/include/gazebo-11/gazebo/gazebo.hh:20,
                 from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_grasp_plugin/src/GazeboGraspFix.cpp:2:
/usr/include/ignition/math6/ignition/math/Box.hh:42:11: note: ‘template<class Precision> class ignition::math::v6::Box’ declared here
   42 |     class Box
      |           ^~~
/home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/src/GazeboVersionHelpers.cpp:306:52: error: template placeholder type ‘const Box<...auto...>’ must be followed by a simple declarator-id
  306 | gazebo::GzVector3 gazebo::GetBoundingBoxDimensions(const gz_math::Box &box)
      |                                                    ^~~~~
In file included from /usr/include/ignition/math6/ignition/math.hh:29,
                 from /usr/include/sdformat-9.2/sdf/Param.hh:33,
                 from /usr/include/sdformat-9.2/sdf/Element.hh:28,
                 from /usr/include/sdformat-9.2/sdf/Actor.hh:25,
                 from /usr/include/sdformat-9.2/sdf/sdf.hh:2,
                 from /usr/include/gazebo-11/gazebo/common/Battery.hh:25,
                 from /usr/include/gazebo-11/gazebo/common/common.hh:8,
                 from /usr/include/gazebo-11/gazebo/gazebo_core.hh:19,
                 from /usr/include/gazebo-11/gazebo/gazebo.hh:20,
                 from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/include/gazebo_version_helpers/GazeboVersionHelpers.h:4,
                 from /home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/src/GazeboVersionHelpers.cpp:1:
/usr/include/ignition/math6/ignition/math/Box.hh:42:11: note: ‘template<class Precision> class ignition::math::v6::Box’ declared here
   42 |     class Box
      |           ^~~
/home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/src/GazeboVersionHelpers.cpp: In function ‘gazebo::GzVector3 gazebo::GetBoundingBoxDimensions(...)’:
/home/robo/catkin_ws/src/gazebo-grasp-pkgs/gazebo_version_helpers/src/GazeboVersionHelpers.cpp:309:18: error: ‘box’ was not declared in this scope
  309 |     GzVector3 bb(box.XLength(), box.YLength(), box.ZLength());
      |                  ^~~

The errors are summarized as follows:

error: deduced class type ‘Box’ in function return type
  116 | gz_math::Box GetBoundingBox(const T &t)
      |              ^~~~~~~~~~~~~~


error: template placeholder type ‘const Box<...auto...>’ must be followed by a simple declarator-id
  126 | GzVector3 GetBoundingBoxDimensions(const gz_math::Box &box);
      |                                    ^~~~~

 error: template placeholder type ‘const Box<...auto...>’ must be followed by a simple declarator-id
  126 | GzVector3 GetBoundingBoxDimensions(const gz_math::Box &box);

The reason seems from the c++17 on ROS noetic.
Could you please suggest to me a solution?
Thanks!

Failed to call service /gazebo_objects/get_info

Hello,

I'm trying to tinker around with the fake_object_recognition and tried to execute the tutorial . Until step 3 (spawning the cube) everything works perfectly. At step 4 I get this error:

rosuser@computer ~/test_jaco $ rosrun gazebo_state_plugins gazebo_request_object_info cube1
[ INFO] [1479977436.038761419]: Got objects topic name: </gazebo_objects/get_info>
[ERROR] [1479977436.039658131]: Failed to call service /gazebo_objects/get_info, success flag: 0

Actually the service is not running:
rosuser@computer ~/test_jaco $ rosservice list
/fake_object_recognizer/get_loggers
/fake_object_recognizer/set_logger_level
/gazebo/apply_body_wrench
/gazebo/apply_joint_effort
/gazebo/clear_body_wrenches
/gazebo/clear_joint_forces
/gazebo/delete_model
/gazebo/get_joint_properties
/gazebo/get_link_properties
/gazebo/get_link_state
/gazebo/get_loggers
/gazebo/get_model_properties
/gazebo/get_model_state
/gazebo/get_physics_properties
/gazebo/get_world_properties
/gazebo/pause_physics
/gazebo/reset_simulation
/gazebo/reset_world
/gazebo/set_joint_properties
/gazebo/set_link_properties
/gazebo/set_link_state
/gazebo/set_logger_level
/gazebo/set_model_configuration
/gazebo/set_model_state
/gazebo/set_parameters
/gazebo/set_physics_properties
/gazebo/spawn_gazebo_model
/gazebo/spawn_sdf_model
/gazebo/spawn_urdf_model
/gazebo/unpause_physics
/gazebo_test_tools/recognize_object
/object_tf_broadcaster/get_loggers
/object_tf_broadcaster/register_object
/object_tf_broadcaster/set_logger_level
/robot_state_publisher/get_loggers
/robot_state_publisher/set_logger_level
/rosout/get_loggers
/rosout/set_logger_level
/rqt_gui_py_node_7161/get_loggers
/rqt_gui_py_node_7161/set_logger_level

I'm running ROS Jade with Gazebo 5.3.0 on Mint based on Ubuntu 14.04, I checked out convenience-pkgs, gazebo-pkgs, gazebo-pkgs, jaco-arm-pkgs, joint-control-pkgs and the dependencies from the wiki. Compilation works fine and I'm able to start the gazebo simulation with the robot. Therefore I assume that something is wrong with loading the world plugin or the later loaded plugins that offer the get_info service...

Since I'm quite new to Gazebo and it's plugin system a couldn't figure out until now, where the chain is broken. Any suggestions?

Object attaches to palm_link, gripper keeps closing

Sorry for the long question.
First of all, thanks for the wonderful plugin.
I'm currently using it with a _PR2 _on ROS Hydro, within Gazebo 1.9.
It compiles smoothly, runs with no problem, and when the gripper starts closing around the tested model (wooden cube), when it completely encloses it, the plugin successfully attaches it to the palm link specified on the model's urdf (technically, xacro).
But the gripper won't stop closing, trespassing the object's geometrical boundaries, and after a certain point, the plugin will detect a collision and proceed to detach it, making the cube jump. It then enters on a detach-attach loop until the object jumps out of reach. The gripper then closes completely as there's nothing avoiding it.
I'm aware that the following is ROS and MoveIt specific, but I hope someone can help anyway.
The way I'm closing the gripper is somehow forced: I'm not using Moveit to do it (I don't know how!), I'm directly publishing a pr2_controllers_msgs/Pr2GripperCommandActionGoal msg to the /l_gripper_controller/gripper_action/goal topic. Can this be the problem? It is of my understanding that the pr2 gripper will always keep trying to close when it encounters an object in between the fingers, applying a given effort specified on one of the msg fields, so this is an expected behaviour.
I wasn't able to find the source files of the Jaco example shown on your (excellent) Wiki.

Thanks in advance, Jennifer. Cheers.

The robot doesn't move according to the GUI(joint_state_publisher)

Hi Jennifer,
firstly, thank you very much for this much needed package.
I am very much new to ROS and Gazebo. I have tried to follow this https://github.com/JenniferBuehler/joint-control-pkgs/wiki/gazebo_joint_control and service request
to gazebo to set the physics properties was required , I have cloned the gazebo-pkgs into my catkin ws. But, i see that my simple robot is not able to move with the GUI. or may be i cannot understand how to integrate all of this. I am attaching the screenshot of my robot which has only one movable joint. It can be an overkilling of such huge package to this bot, But I just want to learn how it works
It would be of great help if you can look into this matter.
THANKS FOR READING
screenshot from 2018-03-12 17 54 30

Is there any way to disable collisions from ros?

Hi @JenniferBuehler
I have been looking for a way to disable collisions or physics in gazebo in order to simulate drilling holes in a piece. I would like to be able to do this from python. But I haven't seen a solution.
Do you know if there is a way for do this?
Regards
David

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.