Next: Index
Up: The Legged Robot 3D
Previous: An Example: A simple
The presented version of our legged robot simulator (including this documentation) is just a version that (I am sure) includes many errors, incoherences, and limitations. However, this prototype
has resulted useful for us to test our controllers and we hope it can be also useful for other
researchers. Our objective when starting this project was that of producing a minimal tool to test
legged robot simulator and we think this objective has been achieved. In future versions (if they
exists at all) many improvements can be done:
- We can allow more than one robot to be simulated simultaneously.
- Different leg structures could be used. Each leg structure requires of its own
direct and inverse kinematic routines. We can offer a limited set of leg
structures so that the user can choose between them or we can try to program a set of
general kinematic routines (but this is a too complex problem in general).
- The robot to ground interaction should be performed in a more realistic way. A good idea
would be that of adding a collision detection engine. In this way not only any leg to ground
contact would be detected but also leg to leg or body to ground contacts would be also detected.
- We should provided more powerful (on-line) tools to define ground shapes.
- Better triangulization algorithms could be used to set up the triangular mesh that represents
the ground. This can reduce the number of polygons to be managed and would increase the visualization
speed.
- It would be a good idea to program the visualization routines directly in OpenGL and not
to use Geomview as a geometry manager any more.
- The world object could be extended to include other objects (stones, trees,...) to make more
realistic sceneries. Additionally, these objects could be animated (i.e., provided with its own
dynamic).
- We can include our autonomous robot programming language [9]
into the simulator package so that user controllers can be written using it and not directly in C.
This would be an advantage since our language provides structures suited to program
robot controllers (parallel behaviors, wires to communicate behaviors, clock triggers,...).
- Noise could be added to the robot's odometry so that the values it returns are more
realistic.
- The whole code should be re-written in C++.
- The exception handler should be improved so that when an error situation is found the user
is better informed about the problem.
- The syntax used in the configuration files should be more flexible.
Uff!! such amount of work to do and this in only a small fraction of it!! But for now, that's all
folks.
Next: Index
Up: The Legged Robot 3D
Previous: An Example: A simple
Josep M. Porta Pleite
8/2/2000