The Realistic Robot Simulation (RRS) Interface: Rolf Bernhardt, Gerhard Schreck, Cornelius Willnow
The Realistic Robot Simulation (RRS) Interface: Rolf Bernhardt, Gerhard Schreck, Cornelius Willnow
Abstrac:t. Tools for simulation and off-line programming became an important means for economic application of
industrial robots . Until now the accuracy of the simulations was not sufficiently precise for reliable down-load and
execution of the off-line generated programs. A main cause for this was the controller specific motion behaviour of the
robots that could not be simulated with sufficent accuracy. The RRS-project was created to overcome this deficite. By
defining a suitable interface, it was made possible to integrate original controller software for motion behaviour into
off-line programming systems .
Keywords. industrial robots, off-line programming. simulation. controller model. kinematic modelling
321
4. COMPRIZED FUNCfIONALITY requests for new targets. As long as the status
indicates 'The service is successful'.
Caused by the tight time frame of the project, the GET_NEXT_STEP returns robot positions. If
interface had to concentrate on the motion and the status indicates 'Need more data' further
kinematics software of controllers. But in order target positIons may be passed with
to be able to reasonably operate these controller SET_NEXT_TARGET. In the case of circular
parts further functionalities had to be included. motion or fly-by motion GET _NEXT_STEP
This concerns e .g. machine data, tracking, may return 'Need more data' several times. If no
condition handling and message reporting. further target positions are supplied .
GET_NEXT _STEP may continue to return
Furthermore the interface had to be uniform for interpolated positions. If the last supplied target
all controllers, but had to cover the wide range is reached GET_NEXT_STEP returns in the
of different concepts for motion handling , status 'Final step'.
parameterization and performance, while beeing
handable and easy to survey. In the result, the
interface provides a set of principal services. 4 2 Further Services
Without these services no reasonable operation of
an RCS-Module is possible. In addition, several
groups of further services are defined, from Machine Data. for machine data handling
which services relevant for a specific controller services for reading and modifying single
can be selected. Currently the RRS-Interface machine data are provided. The service for
provides all together 57 services. reading machine data may also be used for
generating a list of all accessible machine data.
G-N':ufp 1 TERMINATE
vice versa are provided.
322
The concept for point accuracy required selection (MVS. Unix. VM. VMS. special developments)
and parameterization of several accuracy types . and on a variety of different harware platforms
(DEC. Hewlet Packard. IBM. Intel. Motorola.
Siclicon Graphics. SUN). Beyond these
Trackjn2 . For the treatment of tracking one ponability requirements the interface had to cope
service is provided for selecting tracking on up with the problem of partial implementation (not
to 32 joints . The actual values of the joints are all controllers require all services ) and the
passed to the RCS-Module by a second service. interface had to be expandable . Both. the
ponability and the compatibility requirements led
to the development of the RRS-Calling
Condjtion Handlin2. Two kinds of conditions are Conventions.
distinguished in the RRS-Interface : Events.
generated by the motion system of the controller The basic concept of the RRS-Calling
and conditions that come from outside of the Conventions is to supply only one address per
motion system. but influence its behaviour. RCS-Module as a main entry point. This entry
point is an ANSI-C function with two pointers as
Events may be defined dependent on motion parameters. Such a function can be called and
time. motion progress and robot position. The provided by most programming languages. The
conditions for the events are evaluated during first parameter points to a data block for input
GET _NEXT _STEP . Afterwards further parameters and the second one points to a data
information about the events may be querried. block for output parameters. Each of the blocks
starts with a header containing information for
In order to influence running motions. services data security. The header of the input block
are defined for stopping. continuing and additionally contains an opcode that selects the
canceling motions. called service.
323
6. RESULTS 9. REFERENCES
After two years of intensive specificaton and N.N. (1994) RRS-Interface Specification,
implementation the concept of RRS proves to be (Version 1.0), distributed via IPK-Berlin
extremely successful\. It was possible to easily
integrate the five developed RCS-Modules into
the four off-line programming systems of the
participants. Up to nine different robots of four
different manufacturers have operated in parallel
with satisfying response time. The desired
simulation accuracy of 0.001 radians for joint
values and 3% for cycle time was achieved in all
cases and surpassed to up to 0.00005 radians and
I % cycle time. Today RCS-Modules are in
industrial application.
7. THE FUTURE
8. CONCLUSION
324