Prof. Dr. Holger Schlingloff Software, die die Welt zusammenhält Über die Allgegenwärtigkeit von Computern am Beispiel von eingebetteten Systemen Prof. Dr. Holger Schlingloff Institut für Informatik, Humboldt Universität zu Berlin Fraunhofer FIRST, Berlin Meist nimmt man sie gar nicht wahr oder allenfalls dann, wenn sie nicht funktionieren, etwa wenn die Spülmaschine streikt: Computersysteme, die vielerorts integriert sind, sogenannte eingebettete Systeme. Diese Software stellt die nächste Revolution der Informatik dar: Schon heute gibt es mehr eingebettete Systeme als Menschen auf der Welt, mit andauernden zweistelligen Zuwachsraten. Dabei verlassen wir uns immer mehr darauf, dass diese Systeme auch zuverlässig funktionieren. Während der Ausfall einer elektronischen Armbanduhr oder eines MP3-Players allenfalls ärgerlich ist, kann von der korrekten Funktion eines medizinischen Notrufsystems, eines Steuergerätes im Auto oder eines elektronischen Stellwerks im Bahnverkehr das Leben der Nutzer dieser Systeme abhängen. Daher muss die Konstruktion solcher Systeme mit höchster Sorgfalt erfolgen. Auf Grund der immer höheren Anforderungen sowie der zunehmenden Integration und Vernetzung der Geräte liegen dabei die größten Herausforderungen bei der Entwicklung und im Korrektheitsnachweis der Software. Am Institut für Informatik der Humboldt-Universität beschäftigt sich Professor Holger Schlingloff mit dem Entwurf dieser Systeme, die gleichsam hinter den Kulissen liegen und doch ein Sinnbild für die Allgegenwärtigkeit von Computern sind.
Worum geht es? „Eingebettete Systeme“ als alltägliche Selbstverständlichkeit der Zukunft „Verschwindende Computer” als allgegenwärtiger Gebrauchsgegenstände „Intelligente Dinge“ als die nächste Internetrevolution unserer Gesellschaft „Vernetzte Geräte“ als universelle Begleiter der Menschen „Cyber-Physical Systems“ als zuverlässige Hilfen in Beruf, Freizeit und Notsituationen
Beispiele
Inhalt Bedeutung und Anwendungen Aufbau, Hard- und Software Programmierung Kommunikation und Vernetzung Beispiel Notrufsystem Forschungsfragen
Bedeutung und Anwendungen Bereits heute gibt es mehr eingebettete Systeme als Menschen auf der Welt Andauernde zweistellige Zuwachsraten Bedeutender Wirtschaftsfaktor
⇝ ∀ Informatik und Welt λ § δ ﮎ Informatik = Wissenschaft von der automatischen Verarbeitung von Informationen ﮎ 볧 ∆ 姴 ഏ § λ δ ⇝ ∑ ∀ Beispiele: Taschenrechner Tabellenkalkulation Text- und Bildverarbeitung
Informatik und Welt Informatik = Wissenschaft von der automatischen Verarbeitung von Informationen Beispiele: Geschirr spülen Auto fahren Fußball spielen
Geschirr spülen?
Auto fahren?
Fußball spielen?
Allgegenwärtigkeit Informationsverarbeitende Komponenten können (fast) alle technischen Erzeugnisse verbessern Brille mit Hörgerät Jacke mit eingebautem MP3-Spieler Uhr mit Navigationssystem Gabel mit Thermometer Fernbedienung mit Internetanschluss Toaster mit Wetterkarte
Marktbereiche Verkehrstechnik Wissensgesellschaft Motor/Triebwerkssteuerung,X-by-wire, Lagestabilisierung, Dynamikregelung, ABS, Insassenkomfort, … Verkehrsleitsystem, Ampelsteuerung, Radarerfassung, … Produktions-, Umwelt- und Energietechnik Kraftwerks- und Fabriksteuerungen, Emissionskontrolle, Robotik, … Wissensgesellschaft Kommunikation, Krisenmanagement, Verbrauchsminimierung, … Urbanisierung, Gebäude Heizungssteuerung, Lichtsteuerung, Schließanlage, Sicherheitstechnik, City-Management, … Medizintechnik Patientensysteme, Behandlungsgeräte, Mess- und Diagnosegeräte, Krankenhaus-Organisation, …
Relevanz 71 Mrd. € Weltmarktvolumen 18 Mrd. € allein in Deutschland wesentlicher Standortfaktor wichtiges Differenzierungsmerkmal hoher Kundennutzen
Inhalt Bedeutung und Anwendungen Aufbau, Hard- und Software Beispiel NXT - Programmierung Kommunikation und Vernetzung Beispiel Notrufsystem Forschungsfragen
Konrad Zuse‘s Z3 1941 / zerstört 1943 digital, frei programmierbar Aufbau Relais-CPU Speicherwerk Zahleingabe per Tastatur Programmeingabe per Lochstreifen
Von-Neumann‘s Computer 1945 EDVAC, 1946-1955 ENIAC Elektronenröhren zur Repräsentation von Zahlen, elektrische Pulse für deren Übertragung, Dezimalsystem Programmierung durch Kabel und Drehschalter Befehle des Programms werden wie zu verarbeitenden Daten behandelt, binär kodiert und im internen Speicher verarbeitet
von-Neumann-Architektur Rechenwerk (central processing unit, CPU) Steuerwerk (control unit) Rechenwerk (arithmetic logical unit, ALU) Hauptspeicher (Main memory) Eingabe (input) Ausgabe (output)
Bsp.: NXT
Inhalt Bedeutung und Anwendungen Aufbau, Hard- und Software Programmierung Kommunikation und Vernetzung Beispiel Notrufsystem Forschungsfragen
BricxCC klassische C-Programmierung Übertragung auf Target via USB
NXT-G modellbasierte Entwicklung
Inhalt Bedeutung und Anwendungen Aufbau, Hard- und Software Programmierung Kommunikation und Vernetzung Beispiel Notrufsystem Forschungsfragen
NXTRemote Mehr und mehr eingebettete Systeme werden kommunikationsfähig Bluetooth, ZigBee, Z-Wave, Wibree, … Kopplung unter- einander und mit Server
Sprachsteuerung
Inhalt Bedeutung und Anwendungen Aufbau, Hard- und Software Programmierung Kommunikation und Vernetzung Beispiel Notrufsystem Forschungsfragen
Ambient Assisted Living
Systemkomponenten
Sturzerkennung
Inhalt Bedeutung und Anwendungen Aufbau, Hard- und Software Programmierung Kommunikation und Vernetzung Beispiel Notrufsystem Forschungsfragen
Aktuelle Themen Verteilte Echtzeit-Reaktivität Nahtlose Interaktion, Heterogenität Sichere Wiederverwendbarkeit Dienstintegration, Monitoring Autonomie und Intention Adaptivität und Selbstorganisation
Zusammenfassung Eingebettete Informatiksysteme – das betrifft uns alle Vieles wird besser… … aber es gibt noch viel zu tun! Vielen Dank für Ihre Aufmerksamkeit!