This tutorial is just for basic opperation of the robotic arms. It is useful for beginner and for short demos. If you want to control them from a computer visit the tutorial for the Fast Research Interface
ON
rotate the switch from the O
to the |
.|
to O
. This will start the shutdown sequence.This page was originally written in spanish, we need to translate it to English
The first time you opperate the robot, you should do it under supervision.
For more advanced configuration check the internal page.
It is required to set the gravity vector to be able to use certain control modes like cartesian stiffness
and gravity compensation
.
Before doing a gravity adjustment, first do a mastering procedure (axis position calibration and torque zeroing calibration). For this follow the instructions on the kuka manuals. Be sure to check at the end of these calibrations that
torque_axis_act
is almost zero in the arm calibration orientation. Do this calibration as carefully as possible: it will determine the quality of your gravity compensation and stiffness control.
Please check that the gravity vector is correctly configured. After you have selected the current payload (configure->set_tool/base->tool_no/base_no
), go to monitor->variable->single
and introduce in "name": $torque_tcp_est
. Press shift-enter to have realtime variable updates. They should show small values No more than 5 Newtons in x,y or z. If they are big, this usually means, that either the payload is not properly selected, or that the gravity vector is incorrect.
To see the current gravity vector go to Monitor -> variable -> Single
, once there select the $gravitation[]
variable.
To edit the gravity vector you must edit the following file
c:\krc\roboter\krc/steu/mada/custom.dat
You can access that address dirtectly if you use the Windows interface of the KUKA arm. If you are using the teach pendant you can navigate by selecting the "KRC" drive at the top and then navigate to STEU->Mada->$custom.dat
. In order to have access trhough the teach pendant you need to login as administrator.
There you must set the x
y
z
components of the vector, which are at the start of the document. The vector is measured as the normal to the floor in Wold coordinates. So a floor mounted robot will have the following gravity vector x: 0, y:0, z:9.8
.
You can also change the gravitation vector by accessing the monitor variable screen (monitor->variable->single
), then selecting: gravitation[1]
(for x
) and pressing "New value" and typing the new value. For y
and z
use gravitation[2]
and gravitation[3]
respectively. When you do this, the steu/mada/$custom.dat
file is updated and it doesn't need to be edited manually.
Our arms:
Apply Z rotation of -15 degrees (rotate arm clockwise 15 degrees to align X looking "up"
Apply Y rotation 45 degrees (rotate arm counterclockwise 45 degrees to aligh Z to gravity)
Multiply by gravity
KDL code for this:
g=kdl.Vector()
g[2]=9.81
r1=kdl.Rotation.Identity()
r2=kdl.Rotation.Identity()
r1.DoRotZ(-15*pi/180.0)
r2.DoRotY(45.0*pi/180.0)
print(r1*r2*g)
Right arm has X axis positive pointing out of the cables (as per manufacturer's original configuration)
Apply Y rotation -45 degrees (rotate arm clockwise 45 degrees to align Z with gravity)
Multiply by gravity
KDL code for this:
g=kdl.Vector()
g[2]=9.81
r=kdl.Rotation.Identity()
r.DoRotY(-45*pi/180.0)
print(r*g)
The left arm has Y positive pointing out of the cables (90 degrees clockwise from original manufacturer's configuration)
After: 1) mastering (position and torque calibration) and 2) setting the gravitation vector correctly, without any load attached to the end-effector the torque_axis_est
and torque_tcp_est
should be near to zero.
If it isn't try again the calibrations.
After this you need to enter the load properties to be able to connect a hand/gripper to the arm and correctly compensate its weight.
After the mastering
and gravitation
calibrations you install a load to the arm, you will get the following error:
Validate Loaddata FT 6
This means that the initial (or current) forces sensed by the arm are too high to start the arm in gravity compensation or stiffness (impedance) control.
The new attached load must be correctly estimated and entered in the kuka controller.
Errores in the force-torque 6D vector must be less than around 5N (or NM), more or less.
TODO
c:\krc\roboter\krc\steu\mada\$custom.dat
Everything is now managed though the robot URDF file. Some parameters of this file depend on the Robot Body Coupler, others are ROS2 generic. Use the current file as an example for the new changes.