|
|
|
[Contents] | [Index] |
Cooperation with: a South German software company for production planning
Description:
Work from last year has been continued.
Aims:
In the field of path planning for robots, the work is built up on previous joint efforts with the industrial partner and is focused on practice-related extensions for synchronization and modification. Among other things, the preservation of speed limits for the TCP (tool center point) for linear paths has been realized.
The path planning for human models has been implemented in a first attempt analogously to the one of the robot models. We are proceeding on the assumption of a simplified axes model. The overparametrization of the final position and final hand orientation is resolved by independently determining the positions of the trunk and the shoulder.
The position and the orientation of a point in space are given by six coordinates, three for the position vector (v) and three for the local orientation.
The orientation is described by a rotation matrix (R) to be produced by rotations executed one after the other on three independent axes.
A transformation of an oriented point consists of a translation and a rotation. A point can be identified by the transformation of the point of origin ().
Thus, the transformations form a (noncommutative) group as far as the execution one after the other is concerned.
Point coordinates and orientation can be given absolutely, i.e. in connection with a world coordinate system, or relatively, i.e. in respect of a local coordinate system.
The transformation in local coordinates corresponds to the multiplication on the left-hand side, the transformation of the global coordinates to the transformation on the right-hand side.
Transformation on the left-hand side
(local coordinate system)
Transformation on the right-hand side
(global coordinate system)
The direct kinematics
consist of the calculation of the position and orientation of a point in space by multiplying individual parameter-dependent transformations. In the case of robot kinematics, these parameters are the lengths and the angles of the axes. The lengths of the axes are (in general) fixed. Some angles are determined by the position of the motor in the joints. Thus they are free. In addition, the temporal changes of the parameters being given, the path is calculated in its final point, as a function of time.
The inverse problem
consists of the calculation of the transformation parameters (positions of the axes) from given point coordinates and orientations and the calculation of the angular speed for given paths.
The real robot controls realize the axial movements in so-called ramps, i.e. the velocity profile is, in its idealized form, piecewise linear.
For a simple movement, consisting of a phase of acceleration to a constant velocity and a phase of deceleration, this results in the form of a trapezoid for the velocity graph.
For each axis, the lengths of the phases of acceleration and of the interval with constant angular speed are computed for given angle differences and time slices.
Since all axes are supposed to conclude their movement synchronously, we first compute, for each axis, the minimal time to reach the new position. Then we determine the time slice for the whole movement as the maximum of these times.
The axis requiring the longest time for its movement is called the leading axis. This one works with maximum velocity and determines the time slice for all other axes.
The calculation of the ramp profiles for given time slices entails piecewise quadratic equations.
A path leading through several points is constructed from individual ramp profiles.
In a PTP (point to point) run with zero velocity in the point to be reached, the ramps are clearly defined and directly to be determined.
In a ``sliding over'' run, the point is passed by without stopping. This is realized by subsidiary points in which the velocity has not to be zero.
Thus we get an optimization problem with free velocities in the individual points of the path.
The approximate solution
of the optimization problem for paths through several points is obtained by a direct method, starting out from maximal transit velocities and taking only the accessibility of the next point into consideration. In this process, it is possible that an already calculated ramp has to be corrected in case that the transit velocities have been too high to reach the arrival point exactly.
The figure shows a relatively good agreement of the ramp model with the real robot control.
Kinematics for the ,,worker``
Inverse problem
Reduced inverse problem
Path calculation for motion sequences
Example: walking straight ahead
References:
|
|
|
[Contents] | [Index] |