Home /Research /Comparing temporally aware mobile robot controllers built with Sun's Java Real-Time System, OROCOS's real-time toolkit and player
OTHER

Comparing temporally aware mobile robot controllers built with Sun's Java Real-Time System, OROCOS's real-time toolkit and player

Amy L. McKenzie, Denise Gay, Rahul Nori, James Davis, Monica Anderson

Year
2010
Citations
4

Abstract

Designing a robot controller that can optimally manage limited resources in a deterministic, real-time manner can be challenging. Behavior-based architectures, which split autonomy into levels, are very popular but neither have real-time features that enforce timing constraints nor support determinism. Even though real-time features are not included, it seems like a natural fit to make each level in the behavior-based architecture its own task or process. The only that thing that it lacks are the timing features. This has already been implemented using Suns Java Real-Time System. It has also been shown that timing constraints effect performance. This brings us to the question; why not use the more traditional language of C or C++ to implement this behavior-based real-time architecture? Are we not taught that Java is useful but slow compared to C and C++? If so why not use C++ and the features of Open Robot Control Software (OROCOS) to implement the architecture. This paper answers the question of does it really matter what language is used in a behavior-based real-time architecture. We implemented the architecture using OROCOS/C++ running on UBUNTU. Then compared our implementation to two other implementations of the architecture: Java/Player on Fedora; and Suns Java Real-Time System (RTS) on Solaris. Results, from experiments on a robot, show that our OROCOS/C++ implementation performed similarly to the Java RTS implementation. Both the OROCOS and Java RTS implementations performed better than the Player/Java implementation. This suggests that Java is in fact feasible for a behavior-based real-time robot architecture but it needs to be run using Java RTS not the regular version.

Keywords

JavaComputer scienceReal time JavaEmbedded JavastrictfpArchitectureImplementationJava annotationJava concurrencyJava Modeling Language

Related papers

Browse all OTHER papers