UR5
The Universal Robot in 326/005 can be controlled in several different ways. The aim of this page is to collect and present the most relevant data regarding the robot arm.
General information
For remote access to the robot, i.e. from ROS or via a Python scrict, use the host name rt29.
Starting the robot
To power on the robot, press the green button on the control box.
After the controller computer has booted, the screen will report that the robot has changed state and needs to be initialized. To do this, press the button in the noticifation box on the screen. On the new screen, press the top Auto button until the joints reports Ready. Then hold down the Auto button until all joints report ok. Note that this will make the robot joints move, if the robot is about to collide with itself, release the auto button and move the apropriate joint(s) to avoid a collision. When all joints are 'OK', press the Ok button in the lower right corner.
To move the robot into a desired position, press either of the top two buttons, and select the Move-tap. Then move the robot by using the arrows or by holding down the Teach button and move the robot by hand.
All values used for inertia and kinematics calculation can be found in the ROS Model data file.
The most important DH parameters are listed here for reference:
Joint | Type | a | α | d | θ | Offset |
---|---|---|---|---|---|---|
1 | Revolute | 0.00000 | π/2 | 0.089159 | q1 | 0.00 |
2 | Revolute | -0.42500 | 0.00 | 0.00000 | q2 | -π/2 |
3 | Revolute | -0.39225 | 0.00 | 0.00000 | q3 | 0.00 |
4 | Revolute | 0.00000 | π/2 | 0.10915 | q4 | -π/2 |
5 | Revolute | 0.00000 | -π/2 | 0.09465 | q5 | 0.00 |
6 | Revolute | 0.00000 | 0.00 | 0.0823 | q6 | 0.00 |
Force/torque sensor
The UR5 is equipped with a Mini40 force/torque sensor.
The sensor is accessed using the Net F/T interface. The hostname is rt20
The sensor configuration and information utility can be accessed using a internet browser. From the information page, a Java demo application can be downloaded. To run the application, download the file, go to the containing directory in a terminal and write java -jar ATINetFT.jar.
Gripper information
Using the robot with ROS
Setting up ROS
The following information concerns the Fuerte version of ROS, which should be installed on all the desktop computers in the lab. To get it to work properly, you might have to edit ~/.bashrc to use the correct version of ROS. The easiest way to do this is to copy the last 4-5 lines, starting with if [ -f /opt/ros... and paste it just below, and then change the version name (i.e. from electric to fuerte).
Required packages
Besides the currently installed version of ROS, the following packages should be installed using sudo apt-get install ros-fuerte-<package name>
- universal-robot (Universal robot drivers) - Provides drivers and a bringup to test the robot. Do not run the driver/test_move.py without changing the joint values. It will make the robot will smash into the wall with the standard values. (Setup the universal-robot package)
- arm_navigation (Arm navigation documentation) - For kinematics, planning and simulation. (Setup the arm_navigation package)
- moveit (New arm navigation stack) - Will replace the arm_navigation stack in future releases. (Setup MoveIt)
- industrial (Generic industrial robots package) - Not really used at the moment. Maybe useful in Groove.
To use the Force/torque sensor, the follwing package should be installed as well
- netft (Force/torque Sensor) - Interfaces the netft driver to the Mini40 Force/torque sensor using the Net F/T protocol. (Setup netFT )
Common errors and workarounds
The assigned network name is done using a Windows name server. Linux have some difficulties renewing this host name, which might lead to the name server forgetting the network mapping. To resolve the problem, just restart the computer and boot into Windows. The reboot into Linux.