ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
Depending on what you mean by "teleop" things would have to be implemented differently.
Assuming that you want to do joint velocity control of the robot you can use the JointGroupVelocityController
. With this you basically stream a target velocity for all joints into a ROS topic which will then be executed by the robot. With the gazebo implementation from ur_gazebo
this won't work, as it currently only offers a position-based interface. For that method to work, you would have to modify it using a velocity joint interface (See this post as an example implementing a velocity inteface).
However, you could also use URSim instead of gazebo if you just want to have a simulated robot for checking your development and you are not actually doing a physics simulation of your application. An added benefit is, that you can test your application directly using the ur_robot_driver
as if you were connecting to a real robot.
In case you would like to do some sort of Cartesian teleoperation you have two choices:
twist_controller
to command any Cartesian twists directly to the robot. This solution won't be working with a gazebo simulation, as it uses new hardware interfaces not being implemented in gazebo currently. However, using URSim as a simulation backend would obviously work like the real robot, again.