Betreuer | Sven Pullwitt |
Robert Hartung | |
Professor | Prof. Dr.-Ing. Lars Wolf |
IBR Gruppe | CM (Prof. Wolf) |
Art | Bachelorarbeit, Projektarbeit |
Status | vorläufig |
EinleitungDrahtlose Sensornetzwerke (engl.: Wireless Sensor Networks, WSNs) werden schon heute vielseitig in unserem Alltag eingesetzt, beispielsweise für die Überwachung von Tieren, Gebäuden oder den Verkehr. Für die Überwachung werden (meist drahtlose) Knoten eingesetzt, welche vor der Herausforderung eines begrenzten Energievorrats bei gleichzeitigen Leistungsanforderungen stehen. Um die Lebenszeit eines Netzes zu erhöhen, wird robuste, zuverlässige und optimierte Software benötigt. ContikiDiese Knoten basieren auf verschiedenen Plattformen und Hardware-Architekturen, die durchaus auch gemischt eingesetzt werden. Daher ist es notwendig, die Anwendung so zu entwickeln, dass sie flexibel auf verschiedenen Plattformen eingesetzt werden kann. Betriebssysteme sind dafür seit je der Weg, Software so flexibel zu schreiben, dass sie auf unterschiedlichen Plattformen lauffähig ist. Contiki ist ein weitverbreitetes Betriebssystem, das im Bereich der drahtlosen Sensornetze seit vielen Jahren eingesetzt wird. CoojaCooja ist ein JAVA-basierter Netzwerksimulator, der entwickelt wurde, um Contiki Software auf Anwendungsebene zu simulieren. Mit Hilfe dieses Simulators können verschiedene Szenarien erstellt werden um Anwendungen und Protokolle in einer kontrollierten Umgebung zu testen. Neben der Portabilität, die durch die Verwendung von Java erreicht wird, ist die Erweiterbarkeit durch Plugins, welche zur Integration vieler Features wie die Simulation von Interferenzen oder dem Energieverbrauch geführt hat. AvroraAvrora ist ein Simulator für die AVR Architektur, welcher in Java geschrieben wurde. Obwohl Avrora als selbständiger Simulator entwickelt wurde, wurde ein Cooja-Plugin basierend auf Avrora entwickelt, das es ermöglicht, AVR Knoten auf Registerebene in Cooja zu simulieren. AufgabenSimulatoren können von großer Hilfe beim Entwickeln von WSNs sein, da sie es ermöglichen, eine große Zahl an Test in kurzer Zeit durchzuführen, was in echten Experimenten zumeist auf Grund von Platz- und Kostenlimitierungen nicht möglich ist. Dieser Vorteil ist vor Allem bedingt durch die erreichbare Simulationsgeschwindigkeit. Die Simulation von WSNs ist eine rechenzeitaufwändige Anwendung und die Geschwindigkeit des zur Simulation genutzten Systems hat einen starken Einfluss auf die Simulationsgeschwindigkeit. Cooja nutzt zur Simulation eine sogenannte Event-Queue, in der atomare Simulationsschritte in der Reihenfolge ihrer Ausführung gespeichert sind. Die dadurch garantierte feste Reihenfolge des Ausführung kommt mit der Nachteil eines sehr hohen Bedarfs an Single-Core-Rechenleistung, welche nicht unbegrenzt zur Verfügung steht. Cooja in Kombination mit Avrora erreicht nicht die Simulationsgeschwindigkeiten, welche bei der Simulation von MPS430 Knoten mit der gleichen Architektur erreicht werden. Für kleine WSNs ist die erreichte Geschwindigkeit in den meisten Fällen hinreichend, allerdings skaliert das System sehr schlecht, was einen Einfluss auf die Nutzbarkeit des Simulators hat. Da Cooja in Kombination mit MSPSim deutlich höhere Simulationsgeschwindigkeiten erreicht, soll die Ursache für diesen Unterschied ermittelt werden. Um diese Einschränkung zu umgehen, soll Cooja um eine verteile Simulation erweitert werden, die es ermöglicht die rechenintensive Simulation vom User-Interface zu trennen. Durch die Verwendung von Java-RMI soll eine Simulation der Knoten auf einem Server im Netzwerk realisiert werden, während das User-Interface auf einem Client-PC läuft. Basierend auf dieser verteilen Simulation sollen die Möglichkeiten für einen parallele Simulation analysiert und implementiert werden.
FähigkeitenDie folgenden Fähigkeiten helfen dir bei der Bearbeitung dieses Themas:
|
Technische Universität Braunschweig
Universitätsplatz 2
38106 Braunschweig
Postfach: 38092 Braunschweig
Telefon: +49 (0) 531 391-0