• DocumentCode
    3317697
  • Title

    Deriving concurrent control software from behavioral specifications

  • Author

    Ramanathan, Ganesh ; Morandi, Benjamin ; West, Scott ; Nanz, Sebastian ; Meyer, Bertrand

  • Author_Institution
    Siemens AG, Switzerland
  • fYear
    2010
  • fDate
    18-22 Oct. 2010
  • Firstpage
    1994
  • Lastpage
    1999
  • Abstract
    Concurrency is an integral part of many robotics applications, due to the need for handling inherently parallel tasks such as motion control and sensor monitoring. Writing programs for this complex domain can be hard, in particular because of the difficulties of retaining a robust modular design. We propose to use SCOOP, an object-oriented programming model for concurrency which by construction is free of data races, therefore excluding a major class of concurrent programming errors. Synchronization requirements are expressed by waiting on routine preconditions, which turns out to provide a natural framework for implementing coordination requirements in robotics applications. As demonstration application, we describe a control program for hexapod locomotion, whose implementation closely follows the corresponding behavioral specification given by the biological model. We compare the architecture with solutions expressed in more traditional approaches to robotic control applications.
  • Keywords
    concurrency control; control engineering computing; legged locomotion; object-oriented programming; parallel programming; synchronisation; SCOOP; behavioral specifications; concurrent control software; concurrent programming errors; hexapod locomotion; object-oriented programming; parallel tasks; robotic applications; robust modular design; synchronization;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Intelligent Robots and Systems (IROS), 2010 IEEE/RSJ International Conference on
  • Conference_Location
    Taipei
  • ISSN
    2153-0858
  • Print_ISBN
    978-1-4244-6674-0
  • Type

    conf

  • DOI
    10.1109/IROS.2010.5650536
  • Filename
    5650536