Adding ur5 with robotiq_2f_85 in ROS Melodic, visualizing in RViz and executing on real hardware.
- Ubuntu 18.04
- Python 2.7
- gcc/g++ 7.5.0
- ROS-Melodic
First clone this repository to your catkin workspace. If you do not have a catkin workspace, please follow this tutorial to create one.
cd $YOUR_CATKIN_WS$/src
git clone https://github.com/Simon-Fuhaoyuan/ros_ur5_robotiq_2f_85.git
Next, make these files and source the setup bash.
cd .. & catkin_make
source devel/setup.bash
Then, run the launch file in ROS. Remember to add your user username to user group dialout, click here for more details.
roslaunch ros_ur5_robotiq_2f_85 ur5_robotiq_bringup.launch
If everything works well, you will see something like this in RViz.
Connecting a hardware with PC in ROS needs the following three steps:
- Rosrun corresponding driver (usually a node in launch file) to get each joint's state of the robot.
- Load the description file (In ROS, this is termed as URDF) about the hardware, usually included in some files with 'upload'.
- Use package 'robot_state_publisher' in ROS to calculate the forward kinematics of the robot based on robot description and publish the robot state to tf.
The ur5 gripper is connected with PC based on usb. By default, it can be attached in /dev/ttyUSB0, so we need the right to read and wite. Add the username to user group dialout by
sudo usermod -a -G dialout $USER
Based on initial robotiq_85 driver here, I found the ur5 robot will teleport frequently in RViz. This is due to the conflict in topic '/joint_states'. Since initial robotiq_85 driver run two nodes:
-
robot_state_publisher
-
joint_state_publisher
Both these two nodes will have relationship with '/joint_states'. The former one will read data from /joint_states, and the latter one will write data into /joint_states based on the default joint state in URDF. However, when they both work, the joint state from 'joint state_publisher' will have conflict with ur5_driver, which makes the simulated robot in RViz teleporting.
https://github.com/StanleyInnovation/robotiq_85_gripper
https://github.com/ros-industrial/ur_modern_driver
https://github.com/ros-industrial/universal_robot/tree/melodic-devel/ur_description
https://github.com/utecrobotics/ur5/tree/master/ur5_description
ros_ur5_robotiq_2f_85's People
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.