© Excellent backgrounds/Shutterstock.com
Embedded Systems - die andere Welt

Fühlen Sie sich wohl beim Fliegen?


Wenn Sie wieder einmal böse sind, dass Ihre Textverarbeitung crasht, denken Sie einmal daran, dass das harmlos ist im Vergleich zu einem Ausfall des Avionic-Systems von Flugzeugen, dem Airbag Ihres Autos, einem Herzschrittmacher oder dem Regelsystem zur Produktionsüberwachung bei der Herstellung hochgiftiger Chemikalien.

In Ihrem Alltag kommen Sie mit vielen technischen Systemen in Kontakt: mit Mobiltelefonen, Autos, Flugzeugen, Navisystemen, medizinischen Apparaturen, Hörgeräten, intelligenten Backherden, Umweltmesssystemen u. v. a. mehr. Wenn Sie in dieser Welt leben und technische Produkte erstellen, die anderen das Leben erleichtern sollen, dann ist dieser Artikel für Sie. Embedded heißt, dass „Computerei“ nicht der Hauptzweck des Systems ist, sondern es eingebettet in eine Umgebung arbeiten muss. Dabei geben Ereignisse in der Umgebung vor, wann etwas gemacht werden muss. Das System muss reagieren. Und Real Time bedeutet (manchmal extrem) schnell. Was ist so anders bei der Entwicklung von Real Time Embedded (RTE) Systems im Vergleich zu kommerzieller Software für Banken, Behörden, Versicherungen, Webshops ...?

Zuverlässig und sicher

Die beiden Begriffe im Namen „Embbeded“ und „Real-Time“ fordern Reaktivität und Schnelligkeit. Das sind nur zwei Besonderheiten dieser Art von Systemen. Die Einbettung fordert bei diesen Systemen, auf eine Vielzahl von Sensorsignalen oder Signalen von anderen Teilsystemen zu reagieren. Wenn Ereignisse aus der Systemumgebung nicht schnell genug aufgenommen werden können oder wenn die Reaktion des Systems nicht rechtzeitig erfolgt, dann sind u. U. Menschenleben gefährdet. Von derartigen Systemen wird oft hochgradige Zuverlässigkeit und Verfügbarkeit verlangt, aber auch der Nachweis an Sicherheit. Doch dazu später mehr.

Software ist wichtig, aber ...

Ich habe zwar auch Informatik studiert, aber manchmal nehmen wir uns als Softwareentwickler zu wichtig. Richtig ist, dass die Softwareanteile in Embedded Systems ständig wachsen. Aber Embedded Systems sind durch ein enges Zusammenspiel von Hardware, Software und evtl. vielen anderen Techniken gekennzeichnet, wie Mechanik, Elektrik, Hydraulik ... Unsere Kunden sind an dem Gesamtsystem interessiert, nicht nur an dem Softwareanteil: Wenn Ihr Handy versagt, ist es Ihnen doch egal, ob die Software oder die Hardware kaputt ist.

Das Kunststück als Entwickler besteht darin, in dem ganzen gelieferten System zu denken (Abb. 1) und nicht zu voreilig Abgrenzungen zwischen Hardware und Softwareanteilen vorzunehmen. Fangen Sie an, Funktionalität und Verhalten des Gesamtsystems zu spezifizieren und zu designen, bevor Sie für Teile dieser Funktionalität die geeignete Technologie (Hardware, Software, Mechanik ...) auswählen.

hruschka_embeddedsystems_1.tif_fmt1.jpgAbb. 1: Welches davon ist Ihr System?

Wir trennen Problemstellung von Lösung

Im Entwicklungsprozess für Embedded Real Time Systems wollen wir neben dem Denken in Gesamtsystemen und dem Denken in den Softwareanteilen des Systems auch noch eine zweite Dimension unterscheiden (Abb. 2, linker und rechter Halbkreis): das Denken in Problemstellungen (d. h. den Anforderungen) und das Denken im Lösungsraum (Architektur und Realisierung). Somit ergeben sich die dargestellten vier Haupttätigkeiten bei der Entwicklung. Beachten Sie, dass das Bild keinerlei Reihenfolge suggeriert; alle Pfeile weisen in beide Richtungen: Sie können in jedem Quadranten beginnen.

Im Gegensatz zu kommerziellen Systemen, wo man Anforderungen und Lösung leichter trennen kann, kommt bei Embedded Systems die Lösung im Projektverlauf oft früher ins Spiel, weil manchmal erst durch die Lösungstechnologie entschieden werden kann, ob das Problem überhaupt und effektiv lösbar ist. Entwic...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Gewinner-Teams

Wir bieten Lizenz-Lösungen für Teams jeder Größe: Finden Sie heraus, welche Lösung am besten zu Ihnen passt.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang