Mit Datenaggregation und Sensorfusion
PD Stefan Bosse
Universität Bremen - FB Mathematik und Informatik
PD Stefan Bosse - DSN - Modul 0 - Überblick -
PD Stefan Bosse - DSN - Modul 0 - Überblick - Inhalte in diesem Kurs
PD Stefan Bosse - DSN - Modul 0 - Überblick - Inhalte in diesem Kurs
Begleitet von Übungen um obige Techniken konkret anzuwenden
PD Stefan Bosse - DSN - Modul 0 - Überblick - Zielgruppen des Kurses
tiridifilm/istockphoto.com
PD Stefan Bosse - DSN - Modul 0 - Überblick - Ziele/Kompetenzen
Die Studenten erwerben/gewinnen/lernen
PD Stefan Bosse - DSN - Modul 0 - Überblick - Materialien
Die Vorlesungsinhalte (Skript, Folien) werden auf https://edu-9.de unter der Rubrik Lehre zusammengestellt und angeboten. Achtung: Kürzel dsn2k beachten!
Weitere Materialien (Tutorials, Übungen, Software) werden ebenfalls auf https://edu-9.de bereitgestellt
Die Videos sind über https://edu-9.de verfügbar (Video Stream Server)
Interaktion der Teilnehmer findet über einen Wiki statt! (dokuwiki). Dieser ist über https://ag-0.de erreichbar und in den jeweiligen Veranstaltungszeiten auf https://edu-9.de verlinkt.
PD Stefan Bosse - DSN - Modul 0 - Überblick - Materialien
Es wird noch einen online Chat geben.
Alle weiteren Hinweise und Einführungen (z.B. in Software) auf dem Wiki und StudIP.
PD Stefan Bosse - DSN - Modul 0 - Überblick - Leistungen
Folgende Möglichkeiten einer Prüfungsleistung stehen zur Auswahl:
Mündliche Prüfung
Schriftliche Ausarbeitung zu einer Fragestellung zu dem Thema (Review/Survey)
Die Bearbeitung einer experimentellen Arbeit (Lua) mit kleiner schriftlicher Arbeit (Dokumentation)
PD Stefan Bosse - DSN - Modul 0 - Überblick - Literatur
PD Stefan Bosse - DSN - Modul 0 - Überblick - Literatur
PD Stefan Bosse - DSN - Modul 0 - Überblick - Software
lvm
> lvm parfib.luaThread [fe5af458:4] releasedThread [fe5afa00:5] released{ 1 = 9227465, 2 = 24157817, 3 = 63245986, 4 = 165580141, 5 = 14930352, 6 = 39088169, 7 = 102334155, 8 = 267914296,}
686478381
Time 6235 ms
PD Stefan Bosse - DSN - Modul 0 - Überblick - Konzept
LVM kann über einen WEB Proxy direkt vom WEB Browser aus benutzt werden
PD Stefan Bosse - DSN - Modul 0 - Überblick - Konzept
Das LuaOS bietet die vernetzung von lvm Knoten und die Anbindung an den WEB Browser über die LuaOS WEB IDE
PD Stefan Bosse - DSN - Modul 0 - Überblick - Konzept
Lokale Datenverarbeitung, Globale Fusion
Es sollen verteilte Systeme betrachtet werden
Typisch in verteilten Systemen sind drei Phasen:
PD Stefan Bosse - DSN - Modul 0 - Überblick - Konzept
In verteilten Sensornetzwerken sind die Daten meistens schon inhärent verteilt.
Daher (semi-)autonome lokale Datenverarbeitung mit Reduktion der Sensordaten auf relevante Informationen
Kommunikation und Zusammenführung der reduzierten Informationen
PD Stefan Bosse - DSN - Modul 0 - Überblick - Virtuelle Maschinen
local R = rpc:new()local ips = { "192.168.8.141", "192.168.8.142", "192.168.8.143",}local sensors={}for i=1,5 do local err,reply=R:trans(ips[i],12345,{cmd="get"}) if (err==nil) then sensors[i]=reply.sensor endend
PD Stefan Bosse - DSN - Modul 0 - Überblick - Virtuelle Maschinen und Interpreter
Interpreter Zyklus: Editieren → Übersetzen → Ausführen
PD Stefan Bosse - DSN - Modul 0 - Überblick - Just-in-Time Compiler
Interpreter können im wesentlichen auf drei Arten (Architekturklassen) implementiert werden:
Direkte Ausführung des Quelltextes (die Nutzereingabe und bereits geschriebene Skripte) (Parse → Execute)
Virtuelle Maschine und Übersetzung des Quelltextes in eine Zwischenrepräsentation die von einer virtuellen Maschine ausgeführt werden kann → Bytecode
Virtuelle Maschine mit Bytecode Übersetzung, Ausführung des Bytecodes, und ausgewählter Übersetzung des Bytecodes in nativen Maschinencode → JIT Compiler!
PD Stefan Bosse - DSN - Modul 0 - Überblick - Just-in-Time Compiler
Virtuelle Maschine: Virtualisierung ≡ Abstraktion und Automatisches Speichermanagement
Parallelisierung der Datenverarbeitung von VM schwierig, Verteilung hingegen ist prinzipiell möglich.
PD Stefan Bosse - DSN - Modul 0 - Überblick - Abstraktion
Was kann durch eine VM abstrahiert oder virtualisert werden?
PD Stefan Bosse - DSN - Modul 0 - Überblick - Programmiersprachen
Welche Programmiersprachen werden häufig verwendet?
Welche parallelen Programmiersprachen sind bekannt?
PD Stefan Bosse - DSN - Modul 0 - Überblick - Parallele und Verteilte Programmierung mit Lua
In diesem Kurs soll die Programmierung mit der Skriptsprache Lua erfolgen und mit der virtuellen Maschine lvm oder der Fengari Lua VM ausgeführt werden;
Der Lua Quelltext wird durch einen Übersetzer in Bytecode übersetzt der von lvm direkt ausgeführt wird.
Die LuaJit VM (lvm) unterstützt parallele sowie netzwerkbasierte Datenverarbeitung und das Konzept der Prozessblockierung
PD Stefan Bosse - DSN - Modul 0 - Überblick - Parallele und Verteilte Programmierung mit Lua
Kontrollpfadparallelität benötigt i.A. Kommunikation und das Konzept der Blockierung!
Formales Ausführungsmodell: Communicating Sequential Processes (CSP) nach Hoare
Programmfluß = Kontrollfluß + Datenfluß
Parallele und Verteilte Datenverarbeitung: Übergang vom Shared Memory (SM) zum Distributed (Shared) Memory (DSM) Modell! und von speicheroriertier zu nachrichtenbasierter Kommunikation
PD Stefan Bosse - DSN - Modul 0 - Überblick - Verteilte Programmierung mit Lua
PD Stefan Bosse - DSN - Modul 0 - Überblick - Verteilte Programmierung mit LuaOS und LuaWEB
PD Stefan Bosse - DSN - Modul 0 - Überblick - Labor
Das Labor soll den praktischen Einstieg in verteilte Sensornetzwerke bieten und findet im Kurs und @home statt!
Programmierung mit Lua und LVM + LuaOS
PD Stefan Bosse - DSN - Modul 0 - Überblick - Labor
Vernetzung von Rechnern über lvm/LuaOS und Aufbau eines verteilten Sensornetzwerkes
PD Stefan Bosse - DSN - Modul 0 - Überblick - Labor
Folgende Hardwarekomponenten werden eingesetzt:
Folgende Softwarekomponenten werden eingesetzt: