An Embedded Software Architecture for Robot with Variable Structures

The application of robotic system has nowadays been vastly incorporated in many domains. To support customized demands, robotic embedded software oftentimes may face the variation challenges on hardware sensor, hardware assembling structure, and hardware platform. Basing on the perspective of software engineering, the paper endeavors to explore the embedded software architecture. We have concluded 2 commonly adopted embedded software architectures, and thus proposed a new 7 layered architecture. The concept of software product line was integrated to engage Feature-Oriented Analysis on a specific domain in designing features of atomic operation interface layer. To describe dynamic function composition of the system, XML configuration file was employed on Architecture Mapping layer. The intended basic functions on the Application layer were composed by Atomic operation. When hardware or software function demand is changed, we only need to modify the XML configuration file. Thus, embedded software portability and software/hardware variability can be enhanced and thereby reduces the impacts of the aforementioned. Basing on the 3 software architectures proposed, we have conducted implementation on LEGO robot module and POB robot module. The results of the experiments indicated that execution efficiency was not distinguishably reduced, and that nearly no impact was performed on robotic actions, which manifested the feasibility of our software architecture.

[1]  David M. Weiss,et al.  Software Product-Line Engineering: A Family-Based Software Development Process , 1999 .

[2]  Ahmed Amine Jerraya,et al.  Hardware/software interface codesign for embedded systems , 2005, Computer.

[3]  Rodney A. Brooks,et al.  A Robust Layered Control Syste For A Mobile Robot , 2022 .

[4]  Lynne E. Parker,et al.  ALLIANCE: an architecture for fault tolerant multirobot cooperation , 1998, IEEE Trans. Robotics Autom..

[5]  Tara Estlin,et al.  CLARAty: an architecture for reusable robotic software , 2003, SPIE Defense + Commercial Sensing.

[6]  Fumio Kanehiro,et al.  Distributed Control System of Humanoid Robots based on Real-time Ethernet , 2006, 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[7]  Volker Graefe,et al.  Learning from Nature to Build Intelligent Autonomous Robots , 2006, 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[8]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[9]  Wei Wang,et al.  Hardware-Software Co-design for Dynamic Reconfigurable Computing with Collaborative Supports of Architecture and Operating System , 2007, 2007 11th International Conference on Computer Supported Cooperative Work in Design.

[10]  Jun-Ho Oh,et al.  Design of Android type Humanoid Robot Albert HUBO , 2006, 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[11]  ChangHwan Kim,et al.  An IEEE-1394 Based Real-time Robot Control System for Efficient Controlling of Humanoids , 2006, 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[12]  David Lorge Parnas,et al.  Review of David L. Parnas' "Designing Software for Ease of Extension and Contraction" , 2004 .

[13]  Masahiro Fujita,et al.  Object-oriented analysis and design of hardware/software co-designs with dependence analysis for design reuse , 2005, IRI -2005 IEEE International Conference on Information Reuse and Integration, Conf, 2005..

[14]  Ching-Han Chen,et al.  An Embedded Computing Platform for Robot , 2008, 2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing (sutc 2008).

[15]  Glenn Smith,et al.  Software reuse across robotic platforms: limiting the effects of diversity , 2005, 2005 Australian Software Engineering Conference.