TU BRAUNSCHWEIG
Informatikzentrum

„Over-the-air“-Programmierung von drahtlosen Sensorknoten

Student(anonymous, Login required)
SupervisorFelix Büsching
ProfessorProf. Dr.-Ing. Lars Wolf
ProjectGAL
INGA
IBR GroupCM (Prof. Wolf)
TypeBachelor Thesis
Statustentative

Einleitung

In drahtlosen Sensornetzen werden verschiedenste Daten mithilfe von Sensorknoten aufgenommen, verarbeitet, gespeichert und versendet. Die Sensorknoten bestehen dabei in der Regel, aus einem Mikrocontroller, einem Funktransceiver mit Antenne, diversen Messaufnehmern, Datenspeicher und Energieversorgung.

Im Rahmen der Entwicklung, bzw. Weiterentwicklung von Programmen und Funktionen für drahtlose Sensornetze ist häufig eine Neuprogrammierung einiger oder aller Sensorknoten in einem Netz vonnöten. Da diese unter Umständen an schwer zugänglichen Orten platziert sein können, oder im Falle mobiler Knoten auch gar nicht in die Nähe eines Programmiergerätes kommen, kann es sinnvoll sein, eine Programmierung über das drahtlose Netzwerk zu ermöglichen.

Am Institut für Betriebssysteme und Rechnerverbund wurde ein INGA entwickelt, der unter anderem zur Erfassung von Bewegungsdaten auch am menschlichen Körper getragen werden soll und der bereits über einen rudimentären Bootloader verfügt.

Aufgabenstellung

In dieser Arbeit soll die Möglichkeit der drahtlosen Programmierung von Sensorknoten geschaffen werden. Grundlage hierfür ist der neu entwickelte Sensorknoten INGA, auf dem das Betriebssystem Contiki läuft. Es gilt dabei, verschiedene Anwendungsfälle abzudecken:

  1. Für den Fall eines unzugänglich platzierten Knotens soll es möglich sein, diesen über einen Rechner, der sich in direkter Funkreichweite befindet, über die Funkschnittstelle zu programmieren.
  2. In Erweiterung des ersten Falls soll auch die Möglichkeit der Programmierung eines einzelnen Knotens über ein Multi-Hop-Netzwerk geschaffen werden.
  3. Außerdem soll ein komplettes Netzwerk „over-the-air“ umprogrammiert werden können. Dazu ist es nötig, dass bestimmte Voraussetzungen eingehalten werden, da das Netzwerk unter Umständen nach der Umprogrammierung ein anderes ist. So kann es z.B. sinnvoll sein, zunächst die neue Prorammversion zu verteilen und erst nach erfolgreicher Validierung aller Knoten zu einem vorher festgelegten Zeitpunkt gleichzeitig den Prozess der Umprogrammierung zu starten.

Optional kann auch eine gruppenweise Programmierung sinnvoll sein. Grundsätzlich ist aber bei allen Fällen zunächst durch eine Überprüfung der übermittelten neuen Programmversion deren Korrektheit und Authentizität sicherzustellen.

Für den Fall einer misslungenen Umprogrammierung sollte – sofern das technisch lösbar ist – der entsprechende Knoten ein Notfallbetriebssystem booten, welches einen erneuten direkten Programmierversuch (wie in Fall 1 beschrieben), erlaubt.

In einer abschließenden Evaluation sind die Funktions- und Leistungsfähigkeit der gewählten Ansätze zu zeigen und die Grenzen kritisch zu betrachten.


last changed 2012-05-08, 20:01 Felix Büsching Printable version
hoch zum Seitenanfang