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

Troubleshooting EMI in Embedded Designs
Sponsored by Rohde and Schwarz A and D
Powering Wearable Technology and the Internet of Everything
Sponsored by Cymbet
Eliminate Risk of Contention and Data Corruption in RS-485 Communications
Sponsored by Sealevel
Back to Basics of Electrical Measurement
Sponsored by Keithley
Meeting Industry Standards for Sanitation in The Food Industry
Sponsored by Able Electropolishing
The Self-Driving Car
Sponsored by HP

White Papers Sponsored By: