GENERIS for OROCON

[email protected]
Newsgroups gmane.science.robotics.orocos.user
Message-ID <[email protected]>
Dear Prof. Hermann Bruyninckx and the OROCON community,

I would like to join the OROCON consortium offering our really OPENED, 
HARDWARE-Independent and MULTI-MACHINE platform for robotics control, 
named GENERIS. 

I would like to convince you to use GENERIS as the core platform of 
OROCON because I believe that it represents a valuable tool to reach the 
OROCON goals without spending effort on basic development, and therefore 
to give the proposal a more advanced scope.

My aim is to promote the GENERIS software in order to enable robotics 
people to concentrate on real research and to avoid re-inventing the 
wheel each time a new robot has to be developed. GENERIS has been 
developed with the same spirit as OROCON at a research robotics 
laboratory of the Joint Research Centre of Ispra (belonging to the 
European Commission). 

In order to introduce GENERIS, here follows a brief description of the 
project. For more information, I will forward on the 8th of January the 
Product Presentation (as soon as I come back to office) or contact me by 
e_mail([email protected]). 

In early 1992, we started the GENERIS project development because we 
needed very opened, flexible and hardware independent software for 
robotics control in order to achieve our laboratory experiments. We 
focussed a lot on the architecture and we obtained a very reliable and 
efficient system. The people involved in the team were robotics and 
software specialists with a very strong expertise in laser welding 
machine controllers and hard real-time software development for process 
control. In 1995, the project led to a primitive version of GENERIS for 
Cartesian robots. In 1996, we get funds from the DG13 for extending the 
architecture to industrial robots to be really independent from the 
robot geometry, electro-mechanics and hardware computer. In 1998, we 
obtained the first version of GENERIS that we licensed to ERXA, the 
company involved in the GENERIS software development since the 
beginning. Today GENERIS version 3.0 is in preparation and to be 
released in early March 2001 with 3 products orientation: a hardware 
integrated version for simple machine control, a development environment 
for porting on new robots and for integrating new functions, a 
demo/educational version running stand-alone on a PC and simulating a  
connection to a real robot. 

GENERIS is a registered trademark and protected by copyright. GENERIS is 
a maintained software product and is continuously upgraded by the JRC. I 
know that the OROCON project is in search of free-software, this is a 
matter we shall negotiate in case of interest from your part. Just 
notice that the aim underlying in the GENERIS philosophy is to be a 
common development platform to reduce time-to market and to bring 
research results to the market. 

GENERIS has been written in ANSI-C instead of C++ for efficiency 
reasons. GENERIS is a maintainable product and for that purpose we based 
the software development process on the ESA PSS-05 standard, and the 
system is fully documented. Project documents are in Italian but User 
guides are being translated in English (available with version 3.0).

Its design is Object-Oriented, displaying a set of independent modules 
arranged in different hierarchical levels: user-interface, programs 
interpretation, trajectory interpolation, Axes servo-control, I/O 
Interface, Real-time data-base, remote interfaces, etc. 
All the modules use a set of primitives, called 'kernel', for efficient 
inter-task communication, tasks creation, debugging, use of real-time 
clocks, configuration files reading, access to the real-time data-base 
and access the I/O interface. 

The VxWorks Operating System form Wind River Systems, has been used for 
the NC part of the system but the GENERIS kernel architecture permits to 
be ported on others. Personally, I don't trust on free RTOS as RT-LINUX 
because they are not supported and in an industrial environment the 
product reliability and maintenance are very important aspects.  
However, I understand that in the scientific community, RT-linux is 
desirable. Then, if you accept GENERIS, one of the project's tasks could 
be to port GENERIS on rt-linux. 

The user interface runs on Windows platforms and communicates with the 
NC side through UDP/IP. A DLL library is available for connecting to the 
NC side and  to develop user interfaces with the most appropriate 
MS-Windows tool. For instance, an Open-GL kinematics simulator that 
connects to GENERIS NC side has been developed by the Polytechnics 
University of Valencia, and a multi-robot remote control interface 
(GEN-IDE)  has been built with  visual Basic. For the UNIX world, we 
have implemented the same communication library for the ENVISION TR 
graphic simulator (from Deneb).

Other standards like CORBA may be implemented as an interface to the NC 
side of the system. We are quite available to update or reshape the 
system for integrating new functions and standard interfaces.

The GENERIS architecture is opened at the different levels of the motion 
generation process and at the hardware level (see product presentation), 
in order to be portable on any manipulator and computer platform (+ I/O 
boards + Intelligent Motion control boards + field bus) but also in 
order to ease the development of new functions and processes (as tasks). 
GENERIS is completely configurable (several servo-control loops rates 
may be used - limits are given by the hardware only) at functional level 
and system resource level (ram used by processes, priority levels of 
processes, etc). 

At the functional level, GENERIS has a library of Inverse kinematics 
routines developed with the Porting tool-kit. A set of trajectory 
generation functions is available: linear, circular and splines with 
fly-by connections, given Cartesian velocity/acceleration profiles 
modifiable at run-time and advanced orientation control (constant, 
sliding, spline). 

The GENERIS robot programming language, named ARM, is based on C 
language and offers a variety of motion control and mathematical 
functions. The programs are pre-compiled in an internal format and then 
downloaded to the NC interpreter. The current version permits two 
programs to run at the same time.

At the moment, GENERIS is not opened for integrating a new language as 
XML and for implementing new trajectory types. These features could be 
implemented in the frame of the OROCON project.

Another important feature of GENERIS to control complete work cells 
stands in its multi-machine architecture consisting of several robots 
and auxiliary devices like conveyors and rotating tables. The CPU 
resources limit the number of robots.

Finally, GENERIS software represents 20 Man-years of software 
development; several applications have been carried out for Cartesian 
industrial manipulators used in production lines and for tele-operated 
anthropomorphous arms used in nuclear environments. Currently, we are 
porting the software on industrial manipulators for plastic finishing 
applications.

As you can see, this software has a very high potential to any type of 
robotics applications. 

So, please, let me know if you are interested to include GENERIS in your 
proposal. 

If yes, we could use the software for mobile robotics (why not soccer 
robots), walking robots, cooperating arms, etc. Special algorithms for 
force control, vision, calibration etc. could be integrated and tested. 
In this scenario, the JRC could provide the technical support, train 
people, collaborate in the improvement of the software architecture and 
interfaces, etc. 

In this way, OROCON would consist of an integrated set of sub-products 
like GENERIS and a range of modules and applications ready for 
commercial distribution by the related partners.

Sorry if I importunate you with my insistence, but I find this occasion 
very important to reach your and my hope of an open world for robotics.

Thank you very much for your attention.

Best regards


Emilio RUIZ MORALES
Joint Research Centre Ispra
Institute for Systems, Informatics and Safety
T.P. 210 
Via Fermi, 1
I-21020 Ispra (VA) - ITALY
Tel: +39.0332.78.93.10
Fax: +39.0332.78.95.76
E_mail: [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.