`FK-stewart` enables to
compute the solutions of the
forward kinematics of a Stewart platform parallel robot.

Free source codes are available under Free Software Society conventions through anonymous ftp (download here).

This software is provided "as is" without warranty of any kind. In no event shall INRIA be liable for any loss of profits, loss of business, loss of use or data, interruption of business, or for indirect, special, incidental, or consequential damages of any kind, arising from any error in this software. No commercial use of this software can be made without the previous agreement of INRIA. The use of this software for any publication should acknowledged the contribution of INRIA.

Window system: none

Type: sources

Language: C

Number of lines: 4511

Size of binary: 0.47 Mo

Output: results, files, graphic output in `xjpdraw` format

This program enables to solve the forward kinematics problem for a Stewart platform (figure 1), i.e. being given the lengths l1, l2 of the 6 legs compute the position and orientation of the moving platform.

This problem has at most 12 solutions has demonstrated in [1]. From the initial set of 6 equations which gives the leg lengths as a function of the position/orientation of the moving platform we deduce an univariate polynomial (here of order 24) whose solution enable to compute the position/orientation of the moving platform.

A Stewart platform is defined in a mechanism file which contain the following data (see figure 2):

x1 y1 z11 z21 l1 x2 y2 z12 z22 l2 x3 y3 z13 z23 l3 xp1 yp1 zp1 xp2 yp2 zp2 xp3 yp3 zp3

Note that such file is compatible with the visualization program `visu_robot` also available via `ftp`.

When running the program you will be first asked the name of a file describing the mechanism.

Then you enter in the following menu:

Usingnumber of assembly mode (input=position) :(0)? p1,p2,p3 angles :(1)? coefficient of polynomial :(2)? xjpdraw file of polynomial :(3)? number of assembly mode (input=lengths) :(4)?

Using `1` the program will ask you a position/orientation, then will
display the corresponding leg lengths.

Using `2` the program will ask you a position/orientation, then will
display the coefficients of the polynomial which has to be solved for the
forward kinematics.

Using `3` you will have a graphical plot of the
polynomial in the `xjpdraw` graphical format (`xjpdraw` is
available via `ftp`).
The program will ask you a position/orientation, then the
range for the unknown of the univariate polynomial (which is here given in
degree), then the number of point you want in the plot and eventually a file
name. In the range you should not have 180 for which the unknown is not
defined.
To see the polynomial use the command:

where the arguments ofxjpdraw -X 7 -Y 6 -F [file name]

Using `4` the program will ask you a for a set of leg lengths,
three pairs of (l1 l2) and compute the position/orientation of the moving
platform.

**1**-
Lazard D. and Merlet J-P.
The (true) stewart platform has 12 configurations.
In
*IEEE Int. Conf. on Robotics and Automation*, pages 2160-2165, San Diego, May 8-13 1994.

Sat Aug 5 12:08:58 MET DST 1995