kramann.info
© Guido Kramann

Login: Passwort:










Archiv
2 SoSe2022
..2.1 MIK
..2.2 SRT
..2.3 HDL
..2.4 AUT
..2.5 SLE
2 WS2020_21
..2.1 RTS
....2.1.1 day_by_day
..2.2 IE
....2.2.1 day_by_day
..2.3 ES
..2.4 EFSEE
....2.4.1 day_by_day
..2.5 KF
....2.5.1 day_by_day
....2.5.2 Haikus
....2.5.3 Haikus_en
..2.6 CC
....2.6.1 day_by_day
2 WS2021_22
..2.1 RTS
....2.1.1 day_by_day
....2.1.2 Versuch002
....2.1.3 Versuch003
....2.1.4 Versuch004
....2.1.5 Versuch005
....2.1.99 Material
..2.2 FTS
....2.2.1 day_by_day
..2.3 ESY
....2.3.1 day_by_day
..2.4 INFmecha5
....2.4.1 day_by_day
..2.5 REGmecha5
....2.5.1 day_by_day
2 WS2023_24
..2.1 day_by_day_RST
..2.2 day_by_day_SRT
..2.3 day_by_day_FTS
..2.4 day_by_day_KF
3 SoSe2021
..3.1 STR
....3.1.1 day_by_day
..3.2 SLE
....3.2.1 day_by_day
..3.3 HDL
....3.3.1 day_by_day
..3.4 MIK
....3.4.1 day_by_day
3 SoSe2024
..3.1 Mik_21_03_2024
..3.2 Mik_04_04_2024
..3.3 Mik_11_04_2024
..3.4 Mik_18_04_2024
..3.5 Mik_25_04_2024
..3.6 Mik_02_05_2024
..3.7 Mik_16_06_2024
..3.8 Mik_23_05_2024
..3.9 Mik_30_05_2024
..3.10 Mik_05_06_2024
..3.11 Mik_13_06_2024
3 WS2022_23
..3.1 day_by_day_RST_3MB
..3.2 day_by_day_RT2_5MT
..3.3 day_by_day_EMB_7MT
..3.4 day_by_day_ABP_7MT
..3.5 day_by_day_FTS_MMB
..3.6 day_by_day_KF
4 SoSe2023
..4.2 RTS_day_by_day
..4.3 MIK_day_by_day
..4.4 AUT_day_by_day
..4.5 HDL_day_by_day
4 WS2024_25
..4.1 ING_day_by_day
....4.1.1 ING_Do_26_09_2024
....4.1.2 ING_Do_10_10_2024
....4.1.3 ING_Do_17_10_2024
....4.1.4 ING_Do_24_10_2024
....4.1.5 ING_Do_07_11_2024
....4.1.6 ING_Do_14_11_2024
....4.1.7 ING_Do_21_11_2024
....4.1.8 ING_Do_28_11_2024
....4.1.9 ING_Do_05_12_2024
....4.1.10 ING_Do_12_12_2024
....4.1.11 ING_Do_19_12_2024
..4.2 INF_day_by_day
....4.2.1 INF_Fr_27_09_2024
....4.2.2 INF_Fr_04_10_2024
....4.2.3 INF_FR_18_10_2024
....4.2.4 INF_Fr_25_10_2024
....4.2.5 INF_Fr_08_11_2024
....4.2.6 INF_Fr_15_11_2024
....4.2.7 INF_Fr_22_11_2024
....4.2.8 INF_Fr_29_11_2024
....4.2.9 INF_Fr_06_12_2024
....4.2.10 INF_Fr_13_12_2024
....4.2.11 INF_Fr_20_12_2024
....4.2.12 INF_Fr_10_01_2025
..4.3 FTS_day_by_day
....4.3.1 FTS_Mi_25_09_2024
....4.3.2 FTS_Mi_02_10_2024
....4.3.3 FTS_Mi_09_10_2024
....4.3.4 FTS_Mi_16_10_2024
....4.3.5 FTS_Mi_23_10_2024
....4.3.6 FTS_Mi_30_10_2024
....4.3.7 FTS_Mi_06_11_2024
....4.3.8 FTS_Mi_13_11_2024
....4.3.9 FTS_Mi_20_11_2024
....4.3.10 FTS_Mi_27_11_2024
....4.3.11 FTS_Mi_04_12_2024
....4.3.12 FTS_Mi_11_12_2024
....4.3.13 FTS_Mi_18_12_2024
6 Ing
..6.1 Bauplan
....6.1.1 Bootstick
....6.1.2 Xubuntu
....6.1.3 Webserver
....6.1.4 Hotspot
....6.1.5 Videostream
....6.1.6 Lampe
....6.1.7 Chassis
....6.1.8 Akku
....6.1.9 Motore
....6.1.10 Laborsteckboard
....6.1.11 Antriebstest
7 007
..7.1 Einschalten
..7.2 Vorversuche
kramann.info
© Guido Kramann

Login: Passwort:




Inhalte zur Vorlesungswoche #1, Entwicklung fehlertoleranter Software für eingebettete Echtzeitsysteme im Wintersemester 2024/25

(EN google-translate)

(PL google-translate)

Themen heute:

  1. Überblick zum Kurs
  2. Vorstellung des Grundsystems: Sensorische Erfassung von Bewegungsdaten am Körper
  3. Einführung der Pattern für fehlertoleranten Software-Entwurf
  4. Begriffe FAULT -- ERROR -- FAILURE
  5. Beispiele für Ursachen für das Auftreten von ERRORs (Störungen)
  6. Vorbesprechung der Projektthemen

1 Überblick zum Kurs

  • Die vorliegende Seite stellt den Einstiegspunkt für diese Lehrveranstaltung dar und verzeichnet chronologisch die behandelten Inhalte.
  • Aber ein großer Teil der Inhalte findet sich nicht direkt hier, sondern die Seite hier verlinkt auf andere Bereiche von kramann.info.

Allgemeines

Die Lehrveranstaltung "Entwicklung fehlertoleranter Software für eingebettete Echtzeitsysteme" enthält sowohl theoretische, praktische, seminaristische und Projekt-bezogene Anteile. Sie folgt zudem einem bestimmten Arbeitszyklus, in dem diese Anteile miteinander verzahnt sind:

  1. Zu Beginn werden die Pattern für fehlertoleranten Software-Entwurf theoretisch vorgestellt.
  2. Praktisch angewendet werden sollen diese Pattern dieses Jahr auf ein System, das Körperbewegungen sensorisch erfasst, per W-LAN an einen PC schickt, wo die Daten verarbeitet werden.
  3. Die Projektbearbeitung erfolgt vornehmlich in Zweiergruppen, in Ausnahmefällen einzeln.
  4. Das Grundsystem wird in den Projektteams aufgebaut und getestet.
  5. Dann sind Sie in Zweiergruppen gefordert, sich eine mögliche praktische Umsetzung eines von Ihnen ausgewählten Pattern für eine konkrete Anwendung vorzustellen. Dies ist der seminaristische Teil.
  6. Schließlich sind die vorgestellten Pattern von den jeweiligen Zweiergruppen als Projektarbeit mit Java/Processing umzusetzen und als Prüfung in der letzten LV zu präsentieren. Auch ein Bericht ist abzugeben.

2 Vorstellung des Grundsystems: Sensorische Erfassung von Bewegungsdaten am Körper

Körperbewegungen sensorisch erfassen -- Aktivierung.

Bild 0-1: Körperbewegungen sensorisch erfassen -- Aktivierung.

Körperbewegungen sensorisch erfassen -- Test.

Bild 0-2: Körperbewegungen sensorisch erfassen -- Test.

"Kampf": bild3_kampf.webm
Daten mittels UDP vom Smartphone an den PC senden.
Daten mittels UDP vom Smartphone an den PC senden.

Bild 0-3: Daten mittels UDP vom Smartphone an den PC senden.

  • Durch Drehungen meines Smartphones, soll ein "Ball" auf dem PC-Bildschirm bewegt werden.
  • Notwendige Kenntnisse in Stichworten: Programmiersprache Java, Android-Betriebssystem, W-LAN-Hotspot, User Datagram Protocol (UDP), Sensorik, Lineare Algebra, Grafische Benutzeroberfläche (GUI), Objekt Orientierte Programmierung (OOP), Verwendung von Bibliotheken.

3 Einführung der Pattern für fehlertoleranten Software-Entwurf

Autor*In Titel Verlag
Hanmer, R.S. Patterns for Fault Tolerant Software John Wiley & Sons, Chichester, 2007.
Eusgeld, I. Design von Fehlertoleranten Systemen durch Genetische Algorithmen LiLoLe, Hagen, 2009.

Tabelle 0-1: Literatur

ÜBUNG

Befassen Sie sich mit den nachfolgenden Fragestellungen gemäß Ihrem aktuellen Kenntnisstand in Zweiergruppen und stellen Sie im Anschluss Ihre Überlegungen für alle zur Diskussion:

  • Machen Sie sich klar, aus welchen technischen Komponenten das Gesamtsystem zur Verarbeitung sensorisch erfasster Bewegungen besteht.
  • Wo könnten Schwachstellen bei diesem System auftreten? Was kann alles schief laufen?
  • Überlegen Sie sich vorläufige Strategien, die das was schief gehen könnte in seinen Auswirkungen abschwächen könnte. Wie müsste das Gesamtsystem aufgebaut sein, damit es sich möglichst tolerant gegen auftretende Fehler verhält?

1) Benachrichtigungen auf Handy *
Einstellungen entsprechend ändern:
keine Nachrichten / 
Unterdrücken anderer Programme
Unterdrücken von Benachrichtigungen

2) Dynamische IP-Adressen (keine Verbindung möglich) *
IP-Adressen statisch vergeben

3) Störungen durch andere Router in der Nähe **
Versuchen ein störungsfreien ort zu finden

4) Akku der Smartphones kann versagen **
Powerbank auf dem Rücken tragen :O)

5) Mögliche Anrufe *
Keine Simkarte einlegen

6) Ausfall eines Sensors **
Jeden Sensor doppelt anbringen

* Vermeidungskonzept
** Abschwängungskonzept im Sinne der in dieser LV vermittelten Fehlertoleranz-Konzepte


Code 0-1: Beiträge: mögliche Störungen und wie sie in ihren Auswirkungen vermindert, oder vermieden werden könnten.

Zeitliche Korrektheit: 67_Echtzeitsysteme/01_Einfuehrung/02_Korrektheit
Echtzeit Betribessystem / Prozessor: 67_Echtzeitsysteme/01_Einfuehrung/03_Hardware

Die Muster für fehlertoleranten Software-Entwurf

81_FTSD/01_Fehlertoleranz

4 Begriffe FAULT -- ERROR -- FAILURE

81_FTSD/01_Fehlertoleranz

5 Beispiele für Ursachen für das Auftreten von ERRORs (Störungen)

81_FTSD/01_Fehlertoleranz

6 Vorbesprechung der Projektthemen