Prof. Dr.-Ing. habil. Klaus Kabitzsch - TU Dresden · Materie* Energie* Information* Software:...

Post on 07-Sep-2019

2 views 0 download

Transcript of Prof. Dr.-Ing. habil. Klaus Kabitzsch - TU Dresden · Materie* Energie* Information* Software:...

Systemorientierte InformatikInstitut für Angewandte Informatik

Professur Technische Informationssysteme

Prof. Dr.-Ing. habil.Klaus Kabitzsch

(Nöthnitzer Str. 46 (INF), Zi. 1074)

E-Mail: vorname.nachname@tu-dresden.de

Webseite: http://www.iai.inf.tu-dresden.de/tis

Systemorientierte Informatik

Literatur

• Kabitzsch, K.: Informations- und Steuerungssystemein: Werner, D., u.a.: Taschenbuch der Informatik, Fachbuchverlag Leipzig Lehrbuchsammlung

• Kabitzsch, K.: Skript zur Vorlesung Webseite

• weitere Literaturstellen siehe Skript

Systemorientierte Informatik

Webseite

• http://www.inf.tu-dresden.de/index.php?node_id=1751&ln=de

• beinhaltet alle Informationen zur Lehrveranstaltung:

• Beschreibung

• Organisatorisches

• Lehrmaterialien

• insbesondere „Aktuelles“ beachten regelmäßig besuchen!

Systemorientierte Informatik

Vorlesung

• Termin und Ort: Dienstag, 4. DS, HSZ 0003

• findet jede Woche statt

• Ablauf siehe Zeitplan auf Webseite

• Skript und Folien werden auf Webseite bereitgestellt

Systemorientierte InformatikÜbungen

• Organisation:

•Dr.-Ing. Heinz-Dieter Ribbecke

• weitere Übungsleiter:

• Prof. Dr.-Ing. habil. Klaus Kabitzsch

• Dr.-Ing. Heinz-Dieter Ribbecke

•DI Wagner, DI Hensel, DI Mai

• bei Fragen oder Problemen am besten persönlich ansprechen oder eine E-Mail schreiben:vorname.nachname@tu-dresden.de

Systemorientierte Informatik

Übungen (2)

• Termine und Orte laut Stundenplan/jExam/Webseite

• finden wöchentlich statt

• vorherige Einschreibung über jExam erforderlich

• Beginn: Mittwoch, 22.10.2014

• Ablauf siehe Zeitplan auf Webseite

Systemorientierte Informatik

Übungen (3)

• im eigenen Interesse: persönliche Angaben in jExam prüfen:

• Angaben teilweise fehlerhaft und/oder unvollständig

• selbst korrigieren oder per E-Mail (support@jexam.de) Änderung erbitten

• z.B. über E-Mail-Adresse wichtige Infos verteilt

Systemorientierte Informatik

Übungen (4)

• Aufgaben:

• komplett überarbeitet

• stehen auf Webseite

• Ausdruck „2 auf 1“ empfohlen

• bitte vorher lösen!

Systemorientierte Informatik

Konsultationsmöglichkeit während des Semesters

•Ort: INF 1082

• Termine siehe Webseite

Systemorientierte Informatik

Klausur

• findet in der Prüfungszeit statt

• Dauer: 90 Minuten

• eine Konsultation wird nach dem Ende der Vorlesungszeit angeboten

Systemorientierte Informatik

Und danach…

• Lehrveranstaltungen in den Fach- und Vertiefungsgebieten „Angewandte Informatik“ und „Technische Informatik“ Master-Studium, z.B.:

• Programmierung von Echtzeitsteuerungen

• Netzwerke in der Gebäudeautomation

• Modellierung von technischen Prozessen

Jetzt geht’s los

1. Objekte und Systeme (Vorbetrachtungen)

OUTPUT

INPUT

Beispiele:

Textverarbeitung, Graphik, Zeichnungen, Tabellenkalkulation, Datenbanken, Programmentwicklung

Mit diesen Beispielen werden wir uns nicht beschäftigen ! (ausschließlich Rechner)

OUTPUT

INPUT

Beispiele:

Textverarbeitung, Graphik, Zeichnungen, Tabellenkalkulation, Datenbanken, Programmentwicklung

Netz

Mit diesen Beispielen werden wir uns nicht beschäftigen ! (ausschließlich Rechner)

Informations-systeme

Informations-systeme

Technische Informations-

systeme

Zusätzlich zu den Rechnern gibt es noch weitere Bestandteile:

Handel: Nachrichtentechnik: Produktionstechnik: Rundfunk: Transport: Verfahrenstechnik: Medizin: Konsumgüter: Umwelttechnik: Raumfahrt:

Die Beispiele zu dieser Vorlesungsehen immer so aus:

Informations-systeme

Technische Informations-

systeme

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Deshalb heißt die Vorlesung auchsystemorientierte Informatik !

Informations-systeme

Technische Informations-

systeme

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Beispiele

Die Rechner sind in den Prozess(das Auto) „eingebettet“ !(heute meist vernetzt)

Normaler Rechner Eingebettetes System

• Rechner + Peripherie– Eigentlicher Rechner– Festplatte– Monitor + Tastatur

• So kompakt wie möglich• Oft alles auf einem Chip:

System-on-Chip• Riesige Vielfalt

– Dutzende Hersteller– Hunderte von Familien

MSP430x31x (TI): P3.0 P3.7VCC VSS RST/NMI

MAB, 16bit

Com0..3

S0..28/O2..28S/O 29

TMSTCK

TDITDO

XIN XOut XBuf

Oscillator

System Clock

ACLK

MCLK

Test

JTAG

FLL

incl. 16reg.

CPU

URX

24kB ROM 1024B

SRAM

WatchdogTimer

I/O Port

LCDBasicTimer

MAB,4bit

MDB,8bit

MCB

15bit

30 Segment

1, 2, 3, 4 Mux

Power-on-

ResetRAM

Lines

f LCD

R03 R23

32kB OTP

USART

Busconv.

8 I/O's, all with

1 Int. Vectors

interr. cap.

P4.x

I/O Port1x8 I/O's

P2.x P1.x

I/O Port2x8 I/O's

R13 R33

P0.0 P0.7

I/O Port8 I/O's, all with

3 Int. Vectors

interr. cap.

88

TP.0 .. 5 C_in

6

ADC

Timer/Port

Appl.’s:UTX

UCK

8bitTimer/

Counter

RXD

8

TXD

UART

TimerA

5 CCReg.

TimerA

TACLK TA0..5

8bT/C

H/WMPY

MDB, 16bit

32kB ROM

CPU+Cache

NorthbridgeGrafik DRAM

DRAM

Southbridge

SATA

USB

I2CPS2

Microcontroller

• Variationsbreite:– Speicher, Wortbreite (8,16,32 Bit), Peripherie

• Wg. der Einbettung:– Spezialisierung

• Nur die benötigte Peripherie• Nur die unmittelbar benötigte SW

– HW-Unterstützung der Software– Extreme SW-Bedingungen

• Kein oder minimales OS• Sehr lange Laufzeiten

Informations-systeme

Technische Informations-

systeme

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Beispiele

Die Rechner sind in die Fabrik„eingebettet“ !(heute meistvernetzt)

Informations-systeme

Technische Informations-

systeme

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Beispiele

Die Rechner sind in das Gebäude„eingebettet“ !(heute meist vernetzt)

Die Rechner sind in das Gebäude„eingebettet“ !(heute meist vernetzt)

Informations-systeme

Technische Informations-

systeme

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Beispiele

Informations-systeme

Technische Informations-

systeme

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Beispiele

weitere Beispiele…

MedizintechnikHalbleiterindustrie

BahntechnikKonsumgüterUniversitäten…

Modellfabrik an der Fakultät Informatik

Versuchsanlage: Vernetzte, eingebettete Rechnerfür das „intelligente Gebäude“an der Fakultät Informatik

Informations-systeme

Technische Informations-

systeme

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Definitionen:

Definition

Prozess:

Unter einem Prozess versteht man Abläufe, mit welchen

Materie, Energie und Information

umgeformt, gespeichert bzw. transportiert werden.

DIN EN ISO 10628

Definition Technischer Prozess:

ist ein Prozess, dessen Ein-, Ausgangs- und Zustands-größen mit technischen Mitteln gemessen, gesteuert und/oder geregelt werden können.

Sensoren

erfassen E/A/Z-größen durch Wandlung der phys. Größen und leiten diese über die Messperipherie zum Computer.

Aktoren

sind Stelleinrichtungen, über die mittels Informationen aktiv in den Prozess eingegriffen werden kann.

Informations-systeme

Technische Informations-

systeme

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Definitionen:

SensorenAktoren

2. Eigenschaften dynamischer Systeme

2.1. Allgemeine Systemeigenschaften

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Informatiker kennt sich sehr gut aus

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Informatiker kennt sich sehr gut aus

Informatiker hat wenig Ahnung !?

egal ?

Software:

(aus Objekten)

Prozess:

(aus Systemen)

Signale

Informatiker kennt sich sehr gut aus

Informatiker hat wenig Ahnung !

In den meisten Unternehmen stehen Rechner nicht allein, sondern werden mit (technischen) Prozessen verknüpft (bzw. in diese „eingebettet“).

Auftraggeben (Kunden) erwarten vom Informatiker keine Programme, sondern „Lösungen“. Dazu muss dieser

• die Prozesse des Kunden verstehen

• wissen, wie er seine Rechner mit diesen Prozessen koppelt

?

Informatiker (für ihre Software) und Ingenieure / Ökonomen (für ihre Prozesse) benutzen die gleiche Methode, um sich Überblick zu verschaffen:

Die Zerlegung komplexer Software bzw. Prozesse in kleine, einfach verständliche Teile:

in

Objekte und Systeme

SYSTEME

OBJEKTE

Materie

Energie

Information

PROZESS

SOFTWARE

Materie*

Energie*

Information*

Software: objektorientiert

Prozess: systemorientiert

Objekt System

Ein Objekt ist in der objektorientierten Programmierung ein Softwaregebilde mit individuellen Merkmalen. Es defi-niert sich über:

seine Identität, seinen

Zustand und

sein Verhalten.

Der Zustand eines Objekts wird durch

Instanzvariablen

sein Verhalten durch

Methoden

implementiert.

In objektorientierten Programmen bilden Objekte die Einheiten der Datenkapselung.

Ein System enthält eine Menge von Ele-menten zwischen denen Relationen be-stehen. Es charakterisiert sich über:

seine Identität, seinen

seinen inneren Zustand und sein Verhalten

Der Zustand eines Systems wird durch

Zustandsgrößen

sein Verhalten durch die

Funktionalität der Elemente

bestimmt.

Systeme sind mehr oder weniger von der Umwelt abgegrenzt (offene oder geschlossene Systeme)

SYSTEME

OBJEKTE

Materie

Energie

Information

PROZESS

SOFTWARE

Materie*

Energie*

Information*

Software: objektorientiert

Prozess: systemorientiert

Gemeinsamkeiten von Objekten und Systemen:

Ihr Zusammenwirken ist nur über Schnittstellen möglich (Botschaften zwischen Objekten, Signale zwischen Systemen)

Es interessiert nur ihr Verhalten an den Schnittstellen, nicht ihr interner Aufbau (information hiding = Verbergen und Schützen der internen Implementierung): Es reicht aus, das Verhaltenan den Schnittstellen zu kennen !

Es gibt bewährte Ordnungsprinzipien zur Beherrschung der Vielfalt (Klassenbildung, Instanziierung)

Was lernen Sie in dieser Vorlesung ?

• Wie zerlegt man einen großen Prozess in kleine, einfache Systeme ?• Nach welchen Gesetzen verhalten (bewegen) sich diese (z. B. Zeitverläufe) ? • Wie kann man dieses Verhalten durch Rechner nachbilden (Simulation) ?• Wie werden Sensoren / Aktoren an den Rechner angeschlossen ?• Welche Algorithmen braucht der Rechner, um den Prozess gezielt zu bewegen ?

S1

S2

Sj-1

Sj

Si

Prozess

E A

SYSTEME

OBJEKTE

Materie

Energie

Information

PROZESS

SOFTWARE

Materie*

Energie*

Information*

Software: objektorientiert

Prozess: systemorientiert

Was lernen Sie in dieser Vorlesung ?

• Wie zerlegt man einen großen Prozess in kleine, einfache Systeme ?• Nach welchen Gesetzen verhalten (bewegen) sich diese (z. B. Zeitverläufe) ? • Wie kann man dieses Verhalten durch Rechner nachbilden (Simulation) ?• Wie werden Sensoren / Aktoren an den Rechner angeschlossen ?• Welche Algorithmen braucht der Rechner, um den Prozess gezielt zu bewegen ?

?t

x

Was lernen Sie in dieser Vorlesung ?

• Wie zerlegt man einen großen Prozess in kleine, einfache Systeme ?• Nach welchen Gesetzen verhalten (bewegen) sich diese (z. B. Zeitverläufe) ? • Wie kann man dieses Verhalten durch Rechner nachbilden (Simulation) ?• Wie werden Sensoren / Aktoren an den Rechner angeschlossen ?• Welche Algorithmen braucht der Rechner, um den Prozess gezielt zu bewegen ?

PROZESS

Messwert-Erfassung

Steuerwert-ausgabe

SOFTWARE

Sensoren Aktoren

Was lernen Sie in dieser Vorlesung ?

• Wie zerlegt man einen großen Prozess in kleine, einfache Systeme ?• Nach welchen Gesetzen verhalten (bewegen) sich diese (z. B. Zeitverläufe) ? • Wie kann man dieses Verhalten durch Rechner nachbilden (Simulation) ?• Wie werden Sensoren / Aktoren an den Rechner angeschlossen ?• Welche Algorithmen braucht der Rechner, um den Prozess gezielt zu bewegen ?

PROZESS

Messwert-Erfassung

Steuerwert-ausgabe

SOFTWARE ?

2.1.1 Signale

PROZESS

Messwert-Erfassung

Steuerwert-ausgabe

SOFTWARE

Beispiel:

Gebäude-automatisierung

Eingabe-Peripherie (z.B. Tastatur)

Meß-Peripherie(z.B. Sensoren)

Stell-Peripherie(z.B. Aktoren)

Ausgabe-Peripherie (z.B. Bildschirm)

Rechner

Aöffnen

Zschließen

MElektromotor

100 %

0 %Schieber-position

Durchfluß

Strömungs-geschwindigkeit VS

Sensor(Fotozelle)

Lampe

Flügel-rad

Informations-Verarbeitung

I-Eingabe I-Ausgabe

I-Nutzung I-Gewinnung

Beispiel:

Gebäude-automatisierung

Eingabe-Peripherie (z.B. Tastatur)

Meß-Peripherie(z.B. Sensoren)

Stell-Peripherie(z.B. Aktoren)

Ausgabe-Peripherie (z.B. Bildschirm)

Rechner

Aöffnen

Zschließen

MElektromotor

100 %

0 %Schieber-position

Durchfluß

Strömungs-geschwindigkeit VS

Sensor(Fotozelle)

Lampe

Flügel-rad

Informations-Verarbeitung

I-Eingabe I-Ausgabe

I-Nutzung I-Gewinnung

Signale Signale

Definition: SIGNAL

Unter einem Signal versteht man den zeitlichen Verlauf x(t) einer physikalischen Größe, welcher Informationen in sich trägt.

t

t

x#

t

x

x#

t

x

tk tk

Definition:

kontinuierlich diskontinuierlich

zeitkontinuierlich zeitdiskret

analog diskret

wertkontinuierlich wertdiskret

Kombinationsmöglichkeiten:

wer

tkon

tinui

erlic

hw

ertd

iskr

etzeitkontinuierlich zeitdiskret

ZEIT

IP

analog

digital

wertkontinuierlich-zeitkontinuierlich

x(t)

Definition: x(t) ist ein Signal, das zu jedem Zeitpunkt existiert und (in einem bestimmten Intervall) jeden beliebigen Wert an-nehmen kann

t

x

wertkontinuierlich-zeitdiskret

x(tk)

Definition: x(tk) ist ein Signal, das nur zu bestimmten Zeitpunkten existiert und (in einem bestimmten Intervall) jeden beliebigen Wert annehmen kann ( zeitdiskretes Signal)

t

x

tk

wertdiskret-zeitkontinuierlich

x#(t)

Definition: x#(t) ist ein Signal, das zu jedem Zeitpunkt existiert und nur abzählbar viele Werte annehmen kann.

t

x#

wertdiskret-zeitdiskret

x#(tk)

Definition: x#(tk) ist ein Signal, das nur zu bestimmten Zeitpunkten existiert und nur abzählbar viele Werte annehmen kann.

Man spricht von digitalen Signalen, wenn die Werte aus einem Alphabet entnommen werden.

t

x#

tk

tk

x(t) x(tk)

Abtastelement

tk – tk-1 = t Abtastsystem

falls t = T =const äquidistantes Abtastsystem

T := Abtastperiode

fa = 1/T := Abtastfrequenz

Wie entsteht aus einem zeitkontinuierlichen Signal x(t) einzeitdiskretes Signal x(tk) ? durch Abtasten

t

x

t

x

tk

Eingabe-Peripherie (z.B. Tastatur)

Meß-Peripherie(z.B. Sensoren)

Stell-Peripherie(z.B. Aktoren)

Ausgabe-Peripherie (z.B. Bildschirm)

Rechner

Aöffnen

Zschließen

MElektromotor

100 %

0 %Schieber-position

Durchfluß

Strömungs-geschwindigkeit VS

Sensor(Fotozelle)

Lampe

Flügel-rad

Informations-Verarbeitung

I-Eingabe I-Ausgabe

I-Nutzung I-Gewinnung

Hier ist das Abtastelement eingebaut !

tk

x(t) x#(tk)

Abtastelement

ADU

Das Signal wird von seiner phys. Trägergröße gelöst und als digitaler Wert (abstrakte Zahl) abgebildet.

Wie entsteht aus einem zeitkontinuierlichen Signal x(t) nach demAbtasten [ x(tk) ] auch noch ein wertdiskretes Signal x#(tk) ?

durch einen Analog-Digital-Umsetzer (ADU)

Eingabe-Peripherie (z.B. Tastatur)

Meß-Peripherie(z.B. Sensoren)

Stell-Peripherie(z.B. Aktoren)

Ausgabe-Peripherie (z.B. Bildschirm)

Rechner

Aöffnen

Zschließen

MElektromotor

100 %

0 %Schieber-position

Durchfluß

Strömungs-geschwindigkeit VS

Sensor(Fotozelle)

Lampe

Flügel-rad

Informations-Verarbeitung

I-Eingabe I-Ausgabe

I-Nutzung I-Gewinnung

Hier ist auchder ADU eingebaut !

Im Rechner existieren nur noch Zahlenfolgen (=zeitdiskrete+wertdiskrete Signale)

Wie wird der ADU in der Praxis gebaut?

Messgröße häufig keine Spannung!(Licht, Druck, Temperatur, ...)

Verschiedene Verfahren, je nach Ziel– Minimale Kosten: Dual Slope Wandlung– Maximale Abtastfrequenz: Flash-AD-Wandlung– Beste Integrierbarkeit: Sukzessive Approximation– Weitere Verfahren

(aber selten in Embedded Systems)Je nach Variante integriert oder als extra Chip

Und die Aktor-Seite?

• Wie produziert man wert-kontinuierliche Ausgabewerte?• Einfache Verfahren mit hoher Energieeffizienz gesucht!• Naive Ansätze produzieren hohe Verlustleistung

• Was kann Microcontroller dazu beitragen?• Spezielle Verfahren (Puls-Breiten Modulation)• Direkte HW-Implementierung