Embedded and distributed computer systems play nowadays a vital role in control applications as diverse as industrial processes, automotive, railways, avionics and aerospace, medical, etc. In this context, the relevance of standard communication networks such as fieldbus cannot be ignored.
In the scope of the DARIO project, we plan to use the Controller Area Network (CAN) fieldbus as a communication infrastructure to build a distributed agency for reliable input/output operations.
To meet the required high-levels of reliability, the native CAN communication infrastructure needs to be complemented with a set of hardware/software additional mechanisms. The combination of a standard CAN layer with such dependability enhancement mechanisms, has been dubbed CAN Enhanced Layer (CANELy).
The services provided by CANELy (group communication, clock synchronization, node failure detection and membership) are of fundamental importance to the availability of mechanisms handling object replication, competition and cooperation management, useful constructs for fault-tolerant applications.
Naturally, the DARIO architecture also involves a need for a modular and generic approach to: the integration of physical input/output components; input/output event translation to/from a computational entity; uniform treatment of input/output events and message events information flows; provision of fault-tolerance and real-time guarantees.A modular approach should also be followed in the mapping and/or adaptation of the generic architecture to specific technologies, thus limiting the overall impact of technological aspects on system design.
On the other hand, the programmers of distributed control applications require constructs hiding as much as possible the implementation details of the underlying infrastructure (object-orientation).
Other aspect of application design concerns the possible partition and deployment of application components at several levels of the architecture (e.g. smart sensors configuration, resident robotics applications). A solution to any of these problems in embedded environments, sometimes with scarce resources, do represent a set of real challenges that will be addressed in the context of the DARIO project.