- Description
-
Details
The KUKA youBot API wrapper provides an interface of the KUKA youBot API (implemented in the youbot_driver package) to the ROS Hydro framework. With this wrapper you can move the base and the arm of the KUKA youBot by sending ROS messages. The proprioceptive sensor measurements like odometry and joint angles of the KUKA youBot arm and the wheels are published on ROS topics.
InstallationIn the following we assume Ubuntu Linux as operating system.
First you need to install ROS Hydro as it is described in
http://wiki.ros.org/hydro/Installation/Ubuntu
The ros-hydro-ros-base installation will be sufficient.Until recently it was needed to install the driver first and download and compile the wrapper manually. This process has been simplified by now.
To install the youBot API wrapper enter in a command shell
$ sudo apt-get install ros-hydro-youbot-driver-ros-interface
$ sudo setcap cap_net_raw+ep /opt/ros/hydro/lib/youbot_driver_ros_interface/youbot_driver_ros_interface
$ sudo ldconfig /opt/ros/hydro/libThe first line will install the required dependencies as well, in particular
ros-hydro-youbot-driver for the KUKA youBot API itself and
ros-hydro-brics-actuator for the ROS messages to control the youBot arm
Usage
To start the driver and the wrapper open a terminal and enter the following command:
$ roslaunch youbot_driver_ros_interface youbot_driver.launch
If any error occurs check here for possible solutions: http://www.youbot-store.com/wiki/index.php?title=Troubleshooting_/_Known_issues
The youbot_driver_ros_interface package comes with two simple example applications. The first one is a keyboard based teleoperation application for the base. While the wrapper is running, start the application in a new terminal with:
$ rosrun youbot_driver_ros_interface youbot_keyboard_teleop.py
The following keys can be used to move the KUKA youBot:
u i o
j k l
m , .
Where as i means forward, , backwards, j left, l right, m turn left on spot, . turn right on spot, u move an left-sided arc and o an right-sided arc. All other keystrokes will stop the robot.
The second sample application allows to set joint angles for an arm. It asks for values for each arm. When all values are specified, the command will be executed. You can start the sample with:
$ rosrun youbot_driver_ros_interface youbot_arm_test
Note: Be careful about what values you provide. As example the following input will result in a small rotation of the first joint of the arm:
joint 1: 1
joint 2: 0
joint 3: 0
joint 4: 0
joint 5: 0
gripper left jaw: 0
gripper right jaw: 0
Further documentation on the wrapper can be found on the WIki and in the KUKA youBot User Manual.