Robust Software Architecture for Robots

The application layer provides application programs that a robot can execute. Examples of application programs include those needed to perform such prescribed maneuvers as avoiding obstacles while moving from a specified starting point to a specified goal point or turning a robot in place through a specified azimuthal angle. Each robot is provided with application software representing its own unique set of commands. The software establishes a graphical user interface (GUI) for exchanging command information with external computing systems. Via the GUI and its supporting interface software, a user can select and assemble, from the aforementioned set, commands appropriate to the task at hand and send the commands to the robot for execution. System software that interacts with the R4SA software at all three levels establishes a synchronized control environment.

The R4SA software features two modes of execution: before real time (BRT) and real time (RT). In the BRT mode, a text configuration file is read in (each robot has its own unique file) and then device-driver-layer, device-layer, and application-layer initialization functions are executed. If execution is successful, then the system jumps into the RT mode, in which the system is ready to receive and execute commands.

One goal in developing the R4SA architecture was to provide one computer code for many robots. The unique executable code for each robot is built by use of a configuration feature file. The set of features for a given robot is selected from a feature database on the basis of the hardware and mechanical capabilities of that robot. Recompilation of code is straightforward: modifications can readily be performed in the field by use of simple laptop-computer development and debugging software tools.

This work was done by Hrand Aghazarian, Eric Baumgartner, and Michael Garrett of Caltech for NASA’s Jet Propulsion Laboratory.

The software used in this innovation is available for commercial licensing. Please contact Karina Edmonds of the California Institute of Technology at (626) 395-2322. Refer to NPO-41796.

This Brief includes a Technical Support Package (TSP).

Robust Software Architecture for Robots (reference NPO-41796) is currently available for download from the TSP library.

Please Login at the top of the page to download.


White Papers

Heavy Duty Shaft Coupling Strategies
Sponsored by ringfeder
SWaP-C and Why Your Component Partner Matters
Sponsored by sparton
Basics of Electric Heaters
Sponsored by hotwatt
Parallel Prototyping and the Engineer’s Dilemma
Sponsored by heatron
Silicones Meet the Needs of the Electronics Industry
Sponsored by master bond
Optimizing Automotive Wiring Designs Using Engineering Design Automation
Sponsored by mentor graphics

White Papers Sponsored By: