Page 284 - Mechatronics for Safety, Security and Dependability in a New Era
P. 284
Ch54-I044963.fm Page 268 Thursday, July 27, 2006 8:16 AM
Ch54-I044963.fm
268
268 Page 268 Thursday, July 27, 2006 8:16 AM
Other Atomi 2
public bus | Other Atomi 2 |
public bus
th
Other Atomi 1
private bus \ I O er Atomi 1
private bus
NT"
child Atomi
New child Atomi |
|
Parent Atomi 1
Parent Atomi 3
Parent Atomi 3 Parent Atomi 1
• " • •
Parent Atomi 4
Parent Atomi 2
| Parent Atomi 4 11 Parent Atomi 2 |.
private class members public class members
public class members
private class members
Figure 2 High-level inheritance
Low level inheritance is in question when a completely new Atomi is to be created. In this case,
inheritance is realized as a template or base Atomi object. A template Atomi object, which can also be
thought of as a generalized abstraction of an Atomi, contains the schematic and layout drawings of an
Atomi consisting of the common hardware for the basic Atomi interface. Correspondingly, there is a
software template for operating this basic hardware. Thus, inheriting the base Atomi object to create a
new object is realized as copying the templates and adding the new components into half-ready
schematics and PCB layout and the corresponding control functions for the software. In our test
system, the common hardware means an MCU and connectors, and the software means a field bus
code with some interface-related code. The low-level inheritance is very important for the flexibility of
this architecture, as it enables fully customized Atomis to be created. It also presents a problem for the
ease of the Atomi system, as it requires hardware development and hence also some skills and
resources in electronics. However, there is still a significant advantage over designing a whole new
system, because large parts of the design process for the new Atomi are available as templates.
The characteristics of OOT include the idea of increasing complexity by creating new objects out of a
set of other objects. This realizes in the high level inheritance, and it can be realized also by normal
aggregation, i.e. by creating a new object that includes other objects. In the physical Atomi
architecture however, both inheritance and aggregation realizes similarly, and there is thus not much
difference. Since new objects can be created by inheriting/aggregating objects that already have
inherited/aggregated objects, the complexity of objects and hence the device can be increased as
needed. However, physical restrictions may become a problem at some point. The major restricting
factor for object-oriented architecture is the field bus. The field bus capacity defines the real-time
capabilities of the system and the maximum number of objects in one bus. However, the architecture
can be realized using almost any field bus. Thus, larger systems may use faster buses. Another
restricting factor could be the processing power of the MCU, but as the encapsulation suggests, each
object can implement its functions hidden from others. Thus, the objects can use any MCU that meets
the processing requirements of its functions, as long as it just implements its interface.
DISCUSSION
Towards high-level development
The object-oriented embedded system method has been tested in some devices (Vallius & Roning,
2005a, Vallius & Roning, 2005b, Tikanmaki, Vallius & Roning, 2004) and it is found to be functional.
The object-oriented embedded system method brings the development process one step closer to a
high-level software programming language: an embedded system can be built by stacking up suitable
embedded objects and then just adding a control code to a specific control object. In other words, the