This page is operated by Locomotec, the official KUKA youBot partner.

youBot ROS Inverse Kinematics

Published: May 07, 2012 by Admin youBot Store



Short description

This software includes a ROS inverse kinematics stack adapted for the KUKA youBot. It provides a closed form IK, which only calculates the end configuration of the joints based on the actual position of the arm. The idea is based on the inverse kinematics of the Yasukawa Motoman L-3 from Craigs book.  The input data is a 6D-Pose consisting of the x-y-z coordinates and the roll-pitch-yaw orientation of the gripper. Here you find step-by-step instructions on how to get this ROS stack running on the youBot.

NOTE:
There is no path planing provided yet. You only get the end configuration of the joints.

NOTE:
This software was developed by Sven Schneider in a student project at Bonn-Rhine-Sieg University of Applied Sciences. It has not been integrated yet into the official youBot ROS repository, thus be aware that it is subject to change and any programs using it may require to be adapted accordingly.

Installation


This install guide assumes that ROS Wrapper for KUKA youBot API is already installed. If not follow this link for the installation instructions.

The master branch is for electric and contains the latest extensions. The stacks consists of the following packages:
  • youbot_arm_kinematics: contains the inverse kinematics plugin
  • youbot_arm_navigation: starts the arm kinematic and the arm planner 
  • youbot_joint_trajectory_action: converter from ROS to BRICS interface
  • youbot_manipulation_examples: contains some example applications
You can find the sources on github. Check out your version as follows:

$ git clone https://github.com/svenschneider/youbot-manipulation.git

After downloading the stack into one of your ROS known directories you have to execute rosmake.

$ rosmake youbot_arm_navigation

Usage in simulation

The arm navigation stack can be either used in simulation or on a real platform. First it is shown how to use in simulation. In the first terminal window start the youBot packages and the arm navigation by using following launch file:


$ roslaunch youbot_manipulation_examples bringup-sim.launch

Monitoring with rviz

rviz is a visualization tool that can be used for different purposes. In our case we use rviz to see, if the inverse kinematics finds a solution for our input data. From the terminal window start rviz:

$ rosrun rviz rviz

Go to the menu "Plugins" and activate the plugin "Motion Planning" (if not done automatically).  Now you can add a new display by clicking on the add button on the bottom left. Select "Planning" from the display type "Motion Planning". Than setup the configuration for the planning display as follows:
  • Visual Enabled -> Yes
  • Collision Enabled -> No
  • Robot Description -> /robot_description
  • Topic -> /ik_solution_display
Now you should see the transparent components of the youBot, which are concentrated at the point of origin.

For testing the inverse kinematics within the visualization there is an example script with predefined coordinates.  Run following script:

$ rosrun youbot_manipulation_examples move_arm_cart_test.py

Note:  Do NOT use this script with the real robot!

Usage for real robot

In case of arm navigation with a real KUKA youBot you need to use youbot_oodl
.

Start the driver, the publisher and the arm navigation by using following launch file:

$ roslaunch youbot_manipulation_examples bringup.launch

Note: You must be aware that using this launch file could have an effect to the functionality of other software components of yours, because this launch file remaps some of the default topic names for the OODL driver.


Default settings

In the default setting the coordinate origin is located in the center of Axis 1 (arm_link_0). The tool center point is 130 mm far away from joint 4; see also picture above.

Demo Application for the real arm


There is a demo application for moving an arm with the inverse kinematics stack. You can find the applications  in the github repository mentioned above.

Execute one of the following commands to start an example:

# calculate an IK solution and move the arm
$ rosrun youbot_manipulation_examples simple_ik_solver.py

# calculates an IK solution without moving the arm
$ rosrun youbot_manipulation_examples constraint_aware_ik_solver_test.py


Support

On the following links you can find more information about the IK in ROS




Reviews


Documentation:
Extensibility:
Intellectual Property Issues:
Modularity:
Packaging:
Portability:
Standards Compliance:
Support:
Verification & Testing:

The above criteria for reusability of software were defined by the

NASA Earth Science Data Systems Software Reuse Working Group (2010).
Reuse Readiness Levels (RRLs), Version 1.0. April 30, 2010.
http://www.esdswg.org/softwarereuse/Resources/rrls/



No reviews found

youBot Hotline

+49 1805 968-268
Quote
You have not chosen any product yet. Visit hardware section to add products.
Recently reviewed
News RSS
youBot Hackathons - Bonn/St.Augustin + Stuttgart, Germany, November 01, 2011
28. Nov. - 02. Dez. 2011 programming marathons on a KUKA youBot, an omni-directional mobile manipulator for education and research
more ...
KUKA youBot at iREX 2011 - Tokyo, Japan, October 16, 2011
KUKA youBot @ international Robot Exhibition (iREX) 2011 in Japan
more ...
KUKA youBot at IROS 2011 - San Fransisco, CA, USA, August 20, 2011
KUKA youBot will be celebrating 50 Years of Robotics at IROS 2011 from Sept. 26-30, 2011 at the Hilton San Francisco Union Square.
more ...
KUKA youBot at RoboCup 2011 - Istanbul, Turkey, June 20, 2011
KUKA youBot will be present at this year's RoboCup in Istanbul, Turkey. See you from July 5-11 at the Istanbul Expo Center!
more ...