Engineering Real-Time Robotics Software Systems Using CLEOPATRA

  • Authors:
  • Azer Bestavros

  • Affiliations:
  • Computer Science Department, Boston University, 111 Cummington street, Boston, MA 02215, USA E-mail: best@cs.bu.edu.

  • Venue:
  • Integrated Computer-Aided Engineering
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper we overview our work on Cleopatra, an object-oriented specification and programming language, and show how Cleopatra was instrumental in the design and testing of a sensory-motor robotics application using a generalization of Brooks' subsumption architecture. The specification of a real-time software control system is often the result of a process, whereby a conceptual control system is eshed out as a computer program. To be accurate, this process must abide by operational (e.g., timing or synchronization) constraints, which necessitate that knowledge about the available computation resources be utilized. Cleopatra is unique in that, unlike most traditional programming languages for non-real-time systems, it does not abstract away the details of the underlying machinery (e.g., hardware and operating system). By subjecting programmers to (at least some) limitations of the underlying machinery, the likelihood of timing failures is greatly reduced because programmers must write programs that are cognizant of these limitations. Unrealistic systems - possessing properties such as infinite capacities or perfect timing - cannot be specified. This preventative approach at the specification level is likely to spare a lot of time and energy in the development cycle - not to mention the elimination of potential hazards that would have gone unnoticed.