Ein Sensornetz (von englisch wireless sensor network) ist ein Rechnernetz von Sensorknoten, winzigen („Staubkorn“) bis relativ großen („Schuhkarton“) per Funk kommunizierenden Computern, die entweder in einem infrastruktur-basierten (Basisstationen) oder in einem sich selbst organisierenden Ad-hoc-Netz zusammenarbeiten, um ihre Umgebung mittels Sensoren abzufragen und die Information weiterzuleiten. Die anvisierte Größe zukünftiger Sensorknoten machte die Idee unter dem Schlagwort Smart Dust (englisch „intelligenter Staub“) bekannt.
Sensornetze wurden als militärisches Frühwarnsystem zur Überwachung von Pipelines und Landesgrenzen konzipiert. Die moderne Forschung sieht sie jedoch auch als Ersatz für kostspielige Sensoranordnungen im Fahrzeugbau, Warenverwalter in Lagerhäusern und Überwacher von Naturgebieten auf Schadstoffe, Waldbrände und Tiermigrationen; die denkbaren Anwendungen sind ebenso vielfältig wie die verfügbaren Sensoren (vgl. Sensoren nach Messgröße).
Sensornetze sind stets im Stadium der Weiterentwicklung, praktische Anwendungen gibt es zu Versuchs- und Demonstrationszwecken. Allgemein verbreitete Sensornetze gibt es für professionelle Anwendungen. Das bekannteste Sensornetz ist das der Wetterstationen verschiedener Anbieter, wobei die Vernetzung jedoch durch herkömmliche Telekommunikationsnetze erfolgt. Vergleichbare Netze von Aktoren sind nicht bekannt, da die erforderlichen Energien für Stellantriebe und der Schutz vor Fehlfunktionen erheblich höhere Anforderungen an die Vernetzung und die Knoten stellen.
Der kleinste existierende Sensorknoten hat einen Durchmesser von einem Millimeter (Stand: 2007), das bis dato größte Sensornetz deckte mit etwa 1000 Sensorknoten eine 1300 auf 300 Meter große Freilandfläche ab (Stand: Dez 2004).
Geschichte
Als Vorläufer der modernen Sensornetzforschung kann das Sound Surveillance System (SOSUS) betrachtet werden, ein während des Kalten Krieges von den Vereinigten Staaten installiertes Netz von Unterwasserbojen, das U-Boote mittels Schallsensoren aufspürt. SOSUS ist zwar kein Rechnernetz, brachte jedoch die Idee einer flächendeckenden Sensoranordnung hervor.
Die Forschung zu Sensornetzen begann um 1980 mit den Projekten Distributed Sensor Networks (DSN) und Sensor Information Technology (SensIT) der Militäragentur Defense Advanced Research Projects Agency (DARPA) der Vereinigten Staaten. Die DARPA arbeitet mit militärischen und universitären Forschungseinrichtungen zusammen, um neue militärisch und wirtschaftlich bedeutende Technologien zu entwickeln. Ihre Ergebnisse unterliegen in der Regel nicht der Geheimhaltung, was auch auf die Sensornetzforschung zutraf.
In den 1990er Jahren erlebte die Sensornetzforschung einen Aufschwung, gefördert durch die immer kleiner und leistungsfähiger werdende Computer-Hardware. Heute werden Sensornetze von Forschungsinstituten in aller Welt untersucht. Ergebnisse werden seit 2003 auf der „ACM Conference on Embedded Networked Sensor Systems“ (SenSys) vorgestellt.
Hardware
Ein Sensorknoten besteht im Kern wie ein gewöhnlicher Computer aus einem Prozessor und einem Datenspeicher (in der Regel Flash-Speicher). Dazu kommen ein oder mehrere Sensoren und ein Modul zur Funkkommunikation. Alle Teile werden über eine Batterie mit Energie versorgt. In neueren Modellen sind alle Bauteile auf einem einzigen Computerchip untergebracht, was die Größe gegenüber zusammengesetzten Einzelkomponenten erheblich reduziert.
Einige Entwürfe sehen Netzknoten ohne Sensoren vor, die nur der Kommunikation und Verwaltung dienen. Verfügen alle Knoten eines Netzes über dieselbe sensorische Ausstattung, so spricht man von einem homogenen Sensornetz, ansonsten von einem heterogenen. Heterogene Sensornetze sind vor allem dann sinnvoll, wenn die Sensoren unterschiedliche Einsatzmuster haben, also beispielsweise in Messhäufigkeit, Messdauer und anfallendem Datenvolumen sehr verschieden sind.
Als erfolgversprechendes Kommunikationsmittel wird derzeit die Funktechnik gehandelt, es wurden aber auch andere Kommunikationsmedien wie Licht oder Schall angedacht. Man geht davon aus, dass das Kommunikationsmodul wie ein Funkgerät zwei Zustände sendebereit und empfangsbereit kennt, zwischen denen mit geringer Zeitverzögerung umgeschaltet werden kann.
Sensorknoten erhalten nach dem Ausbringen keine neuen Energiereserven; sind die Reserven aufgebraucht, ist auch die Lebensdauer des Knotens erschöpft. Die Batterie eines Sensorknotens muss daher möglichst leistungsfähig sein, während alle anderen Teile eine möglichst geringe Leistungsaufnahme haben müssen. Um die Leistungsaufnahme weiter zu reduzieren, kann jeder Sensorknoten in einen Standby-Zustand versetzt werden, in dem alle Teile bis auf die prozessorinterne Uhr abgeschaltet werden. Beim Ab- und Anschalten spricht man von „schlafen gehen“ und „aufwachen“, wodurch regelrechte „Tagesabläufe“ zustande kommen. Der vollständige Verzicht auf Batterien durch Einsatz erneuerbarer Energie wie Photovoltaik wäre wünschenswert, ist nach derzeitigem Stand der Technik aber nicht machbar.
Visionär ist auch der Wunsch nach ökologischer Verträglichkeit: In der freien Natur ausgebrachte Sensorknoten sollten nach Erschöpfung ihrer Energiereserven rückstandslos verrotten, ohne die Umwelt zu belasten, und Tiere sollten durch versehentliches Verschlucken eines Sensorknotens keine Schäden davontragen.
Die Kosten der Hardware sollten so gering sein, dass sich Sensornetze in großem Maßstab – die DARPA spricht von hunderttausenden von Sensorknoten – auch finanziell tragen. Sensorknoten mit einem Stückpreis von 2 € wären im Fahrzeugbau vertretbar, großflächige Anwendungen zur Landschaftsüberwachung mit mehreren tausend Knoten lohnen sich erst ab einem Stückpreis im unteren €-Cent-Bereich; heutige Sensorknoten erreichen die untere Preisklasse nur selten und kosten für gewöhnlich über 100 € das Stück.
Bestehende Systeme
In der Vergangenheit wurden einige Sensorknoten entwickelt, die zum Testen speziell entworfener Software und Kommunikationsschemata verwendet werden. Die Knoten unterscheiden sich stark in Größe, Ausstattung und Preis, da sie verschiedenen Zielvorgaben folgen: Während einige Entwickler versuchen, ihre Sensorknoten möglichst klein und billig zu machen, setzen andere auf Vielseitigkeit und Bedienkomfort für wissenschaftliche Testanwendungen. Bekannte Systeme sind:
- BTnode. Sensorknotenplattform von BTnodes, die individuell um Sensoren erweitert wird. Das aktuelle Modell BTnode rev3 hat die Maße 58,15 x 32,5 mm.
- eyesIFX
- FireFly von FireFly
- iDwaRF, iDwaRF-328 und iDwaRF-Box. Funkmodule auf Atmel AVR Basis zum einfachen Aufbau von drahtlosen Multipunkt-zu-Punkt (N:1) Netzen im 2,4-GHz-ISM-Band.
- Imote, Mica und Telos. Sensorknotenplattformen von Crossbow Technology, die individuell um Sensoren erweitert werden oder mit Standardausstattung kommen. Die aktuellen Modelle haben die Maße 36 × 48 × 9 mm (Imote2), 58 × 32 × 7 mm (Mica2) und 65 × 31 × 6 mm (Telos B).
- INGA (Inexpensive Node for General Applications). OpenHardware Sensorknoten, entwickelt vom Institut für Betriebssysteme und Rechnerverbund der TU Braunschweig.
- iNODE (intelligent Network Operating Device) Sensorknotenplatform des Forschungszentrum Jülich im Flex-PCB Design. 20 × 20 × 5 mm (gefaltet)
- iSense ist eine modulare Sensornetzwerk-Plattform von coalesenses. Neben einem Grundmodul mit Prozessor und Funkschnittstelle gibt es verschiedene Sensormodule (Beschleunigungssensor und Passiv-Infrarot, Temperatur und Helligkeit, Magnetsensor), Energiemodule und ein Gatewaymodul.
- Particles. Sensorknoten des TecO der Universität Karlsruhe mit Temperatur-, Licht- und Beschleunigungssensor. Das aktuelle Modell hat eine Größe von weniger als 10 mm³.
- Preon32, neuartiger Sensorknoten mit virtueller Maschine
- Rene
- ScatterWeb
- s-net. Extrem energiesparende, drahtlose Sensornetze des Fraunhofer-Institut für Integrierte Schaltungen.
- SNoW5. Erweiterbarer Sensorknoten der Universität Würzburg.
- Sun SPOT. Sensorknotenplattform von Project Sun SPOT.
- TinyNode 584. Erweiterbarer Sensorknoten mit Temperatursensor von Shockfish SA. Der flache Knoten hat die Maße 30 × 40 mm.
- Tmote Sky. Sensorknoten mit Temperatur-, Licht- und Feuchtigkeitssensor von Moteiv. Der flache Knoten hat die Maße 32 × 80 mm.
- Waspmote. modularer Sensorknoten mit der Möglichkeit, verschiedene Sensoren als Erweiterung anzubringen.
- WeC
- WiseNet
- Z1. Sensorknoten mit Temperatur- und Beschleunigungssensor von Zolertia.
Kommunikation
Sensornetze bilden Ad-hoc-Netze, das heißt Netze ohne feste Infrastruktur zwischen Endgeräten. Ad-hoc-Netze sind vermaschte Netze, in denen Netzknoten mit einem oder mehreren Nachbarn verbunden sind. Dadurch ergibt sich eine Multi-Hop-Kommunikation, bei der Nachrichten von Knoten zu Knoten weitergereicht werden, bis sie ihr Ziel erreicht haben.
Solche Netze zeichnen sich durch ein unvorhersagbares, dynamisches Verhalten aus, denn anders als bei fest installierten Rechnernetzen ist die Netztopologie unsicher: Anzahl und Standorte der Netzknoten sowie „Leitungsqualität“ sind nicht vorhersehbar, während des Betriebs können Knoten hinzukommen oder ohne Vorwarnung ausfallen.
Aufgaben der Netzprotokolle
Die Kommunikation der Sensorknoten untereinander ist ein zentraler Bereich der aktuellen Forschung. Ziel ist es, Netzwerkprotokolle zu finden, die Daten möglichst effizient übermitteln und gleichzeitig die Energiereserven der Sensorknoten schonen, indem sie lange Schlafenszeiten ermöglichen und energieintensive Bauteile wie die Funkeinheit möglichst selten ansprechen.
Ein vollständiges Netzwerkprotokoll legt das Verhalten der Knoten in vier Punkten fest:
- Die Initialisierung ist die Phase, in der die Sensorknoten nach dem Ausbringen zueinanderfinden und durch Ausfindigmachen ihrer Nachbarn die Netztopologie aufbauen. Ein sauberer Aufbau der Netztopologie ist entscheidend für den späteren Erfolg beim Routing.
- Unter Tagesablauf versteht man den Wechsel zwischen Wach- und Schlafzeiten der Knoten. Da Schlafzeiten zwar Energie sparen, aber Knoten unerreichbar werden lassen, gilt es, hier einen vertretbaren Mittelweg zu finden.
- Das Kommunikationsschema bestimmt, wie ein einzelner Datenaustausch zwischen zwei Sensorknoten abläuft. Es muss sichergestellt werden, dass die Daten schnell und fehlerfrei übermittelt werden und sich die Knoten nicht gegenseitig stören.
- Das Routing schließlich legt fest, wie Nachrichten durch das Sensornetz geleitet werden. Nicht immer ist hier der kürzeste Weg der beste, denn dies könnte zu einer einseitigen Netzbelastung und damit verfrühtem Ausfall wichtiger Verbindungsknoten führen. Bisherige Forschungsarbeiten gingen diese Herausforderungen meist getrennt an und überließen es dem Betreiber des Sensornetzes, sich aus den Einzelteilen ein geeignetes Verfahren zusammenzusetzen.
Sensornetze sind besonders anfällig für die klassischen Kommunikationsprobleme in Rechnernetzen, zum einen, weil sich eine große Zahl an Endgeräten ein gemeinsames Kommunikationsmedium teilt, zum anderen, weil Sensorknoten von Ressourcenverschwendung stärker in Mitleidenschaft gezogen werden als Geräten mit Stromnetzanschluss oder wiederaufladbarem Energiespeicher. Für Sensornetze eignen sich daher nur Protokolle, die diese Probleme effektiv vermeiden.
Spezielle Sensornetzprotokolle
Bereits in den frühen Untersuchungen des Militärs wurde deutlich, dass sich herkömmliche Netzwerkprotokolle nicht für Sensornetze eignen. Selbst heutige Standards für Funknetzwerke wie IEEE 802.11 oder Carrier Sense Multiple Access gehen zu verschwenderisch mit den Energievorräten der Endgeräte um oder lassen sich wie Bluetooth nicht auf Netze mit sehr vielen Teilnehmern übertragen. Dazu kommt, dass sich Sensornetze in einem wichtigen Punkt von anderen mobilen Ad-hoc-Netzen abheben: Während für gewöhnlich in einem Netzwerk viele verschiedene Anwendungen oder Anwender um die gemeinsamen Ressourcen konkurrieren, gibt es in einem Sensornetz nur eine einzige, netzweite Anwendung, die gewissermaßen mit sich selbst konkurriert. Da das Gesamtziel der Anwendung Vorrang hat vor der Gleichbehandlung einzelner Knoten, muss der Begriff der Fairness in Rechnernetzen hier neu ausgelegt werden.
Die Protokollforschung entwickelt und untersucht daher Netzwerkprotokolle, die speziell auf die Bedürfnisse der Sensornetze abgestimmt sind. Dabei geht sie in verschiedene Richtungen, ohne dass sich bislang ein einheitlicher Standard herausgebildet hätte. Einige Forscher argumentieren, dass die Anwendungsgebiete der Sensornetze so unterschiedlich seien, dass es niemals das Protokoll für Sensornetze geben werde, sondern immer eine Auswahl von Protokollen, die sich für unterschiedliche Zwecke unterschiedlich gut eignen. Im Folgenden werden die wichtigsten Sensornetzprotokolle vorgestellt.
Medienzugriffsprotokolle
Eine große Gruppe von Sensornetzprotokollen widmet sich in der Rolle der Media Access Control (MAC, engl. „Medienzugriffskontrolle“) der gemeinsamen Nutzung des Kommunikationsmediums (Luft). Eine primäre Rolle spielt dabei die Reduzierung des Energieverbrauches. Dies steht im Gegensatz zu den traditionellen drahtlosen Netzwerken (WLAN, GSM), wo es darum geht die zur Verfügung stehende Bandbreite des Mediums möglichst vollständig auszulasten und diese gleichzeitig fair zu verteilen.
Das Funkmodul ist häufig die Komponente des Sensorknoten welche am meisten Energie verbraucht. Der Energiekonsum ist dabei für die verschiedenen Betriebsarten des Funkmoduls (Warten auf Nachrichten, Empfang, Senden) ähnlich hoch. Um Energie zu sparen wird deshalb das Funkmodul größtenteils ausgeschaltet (englisch Duty Cycling). Das MAC-Protokoll muss daher nicht nur entscheiden wann Daten gesendet werden, sondern auch wann das Funkmodul ein bzw. ausgeschaltet werden soll. Zwei Verfahren kommen dabei in den Einsatz: Zufälliger Zugriff mit Trägerprüfung und Zeitmultiplexverfahren.
Beim Zufälligen Zugriff mit Trägerprüfung werden verschiedene Varianten vom sogenannten Low-Power-Listening (LPL) benutzt. Die Idee von LPL ist, dass der Funk regelmäßig für kurze Zeit eingestellt wird, um zu überprüfen, ob das Medium belegt ist. Ist dies nicht der Fall wird das Funkmodul gleich wieder ausgestellt um Energie zu sparen. Ist das Medium besetzt bleibt der Funk aktiviert um Nachrichten auszutauschen. Für den Sender birgt dieser Ansatz die Schwierigkeit zu wissen wann gesendet werden muss um sicherzustellen, dass der Empfänger auch zuhört. Der einfache Ansatz ist eine Präambel zu senden, die länger ist als das Aufwachintervall des Empfängers (Berkeley Media Access Control (B-MAC)). Alternativ kann auch ein langer Strom sich wiederholender Pakete gesendet werden (X-MAC, SpeckMAC). Um Energie (und Bandbreite) zu sparen kann der Sender den Aufwachzeitplan des Empfängers lernen (WiseMAC). Alternativ zum LPL kann auch das gegensätzliche Low-Power-Probing (LPP) benutzt werden. Dabei wird regelmäßig ein kurzer Träger (Beacon) versendet, welches anzeigt, dass der Knoten für kurze Zeit bereit zum Empfangen einer Nachricht ist (RI-MAC).
Beim Zeitmultiplexverfahren (Time Division Multiple Access, TDMA) wird ein Zeitplan erstellt, wann welche Knoten Senden und Empfangen. Dies erlaubt einen energetisch günstigen Datenaustausch. Jedoch verursacht das Erstellen und der Unterhalt des Zeitplans und die benötigten Synchronisation Zusatzaufwand. Protokolle in dieser Klasse sind Sensor Media Access Control (S-MAC), Timeout Media Access Control (T-MAC), Dozer, SCP-MAC, LMAC, DMAC, TRAMA. Bei Dozer und DMAC gilt zu beachten, dass MAC und Routing in einem Protokoll kombiniert sind.
Hybride Protokolle wie Crankshaft, Zebra Media Access Control (Z-MAC) oder SRTST-MAC versuchen die Vorteile vom zufälligen Zugriff mit Trägerprüfung und TDMA zu kombinieren.
Routing-Protokolle
Routing-Protokolle widmen sich vorrangig dem Routing, also der Frage, wie Nachrichten möglichst schnell und mit möglichst wenig Aufwand an ihren Bestimmungsort gelotst werden. Netzwerkprotokolle, die die Frage nach dem Routing ausklammern, gehen meist von Standardverfahren aus, die auf Routingtabellen basieren (vgl. Routing). In der Tat können viele Routing-Protokolle ohne oder mit nur leichten Anpassungen auf Sensornetze übertragen werden.
Von besonderer Bedeutung für Sensornetze sind geografische Routing-Verfahren. In vielen Anwendungsszenarien interessiert sich der Benutzer gezielt für Messdaten eines bestimmten geografischen Gebiets oder Punktes. Zum einen gibt es dadurch Anfragen der Art „Liefere mir alle Daten des Gebietes x-y-z“, zum anderen werden Knoten mit Angaben wie „An den Knoten, der der Position x-y am nächsten ist“ adressiert. Das Netzprotokoll muss dem Benutzer dabei die Aufgabe abnehmen, die betroffenen Knoten ausfindig zu machen und Nachrichten an sie weiterzuleiten.
Das Verfahren Geo-Cast sucht aus einem Sensornetz alle Knoten in einem ausgewählten geografischen Gebiet heraus. Durch Einpassung und Schnitt geometrischer Formen auf einer Landkarte können die betroffenen Sensorknoten schnell ausfindig gemacht werden. Gleichzeitig erhält der Benutzer eine einfach zu bedienende grafische Benutzerschnittstelle.
Eine zentrale Rolle beim Routing spielt das Sensornetzprotokoll Greedy Perimeter Stateless Routing in Wireless Networks (GPSR), das Nachrichten nicht an Namen, sondern an geografische Koordinaten weiterleitet. Dabei wechselt es wiederholt zwischen einer Greedy-Strategie, bei der Datenpakete auf geradem Weg in Richtung Ziel weitergereicht werden, und einem Perimeter-Modus, in dem das Datenpaket den Zielpunkt umkreist. Der Perimeter-Modus soll sicherstellen, dass Pakete in ungünstigen Netztopologien nicht in Sackgassen stecken bleiben. Geographic Hash Tables erweitern GPSR um die Möglichkeit, Informationen auf mehrere benachbarte Knoten zu verteilen und dadurch die Datensicherheit bei Ausfall einiger Knoten zu gewährleisten.
Das Routing-Protokoll für Sensornetzwerke, welches von der IETF entwickelt wird, ist RPL.
Protokollstacks
Zur Zeit existieren mehrere konkurrierende Protokollstacks von verschiedenen Firmenkonsortien und Organisationen. Je nach Stack werden einige oder alle Schichten des OSI-Modells abgedeckt:
- ZigBee (ZigBee Alliance)
- IPSO (IPSO Alliance)
- Constrained Application Protocol (hauptsächlich IETF)
- IEEE 1451 (IEEE)
- WirelessHART (HART Communications Foundation)
- 6LoWPAN (IETF)
- nanoIP (IEEE, IETF)
- LoRaWAN (LoRa Alliance)
Ortsbestimmung und Ortung
Gewisse Anwendungsszenarien und Kommunikationsprotokolle erfordern, dass ein Sensorknoten seinen eigenen Standort (Ortsbestimmung) oder die Ursprungsorte gemessener Signale bestimmen kann (Ortung). Da beide Fragestellungen in anderen Gebieten wie Navigation und Astrophysik bereits seit Jahrhunderten behandelt werden, gibt es heute eine Vielzahl an Verfahren für die unterschiedlichsten Ausgangsbedingungen. Es ist jedoch zu prüfen, welche Verfahren mit der begrenzten Technik der Sensornetze umsetzbar sind und wie die anfallende Arbeit sinnvoll auf die Knoten des Netzes verteilt wird. So ist beispielsweise die verbreitete Satellitenortsbestimmung per Global Positioning System (GPS) für Sensorknoten ungeeignet, da die notwendigen technischen Bauteile zu groß, schwer und teuer sind.
Gibt es mindestens zwei Sensorknoten in einem Sensornetz, die ihre eigene Position in absoluten geografischen Koordinaten kennen, und ist es möglich, die Entfernung zweier Sensorknoten zueinander abzumessen, so kann im Allgemeinen jeder Knoten des Netzes seine Position im geografischen Koordinatensystem bestimmen. Die Idee dabei ist, dass zunächst jeder Sensorknoten ein persönliches Koordinatensystem aufstellt, mit sich selbst im Ursprung und zwei benachbarten Knoten als Richtungsweiser für die x- und y-Koordinatenachsen. Durch Methoden wie Triangulation ordnet jeder Knoten alle gehörten Nachbarn in sein persönliches System ein. Danach werden die Einzelsysteme durch Drehung und Verschiebung zu einem Gesamtkoordinatensystem zusammengeführt. Ist das Netz spärlich besetzt oder ungünstig angeordnet, so bleibt die Ortsbestimmung ungenau.
Können keine zwei Knoten ihre absolute Position bestimmen oder können Entfernungen nicht abgeschätzt werden, so bleibt die Ortsbestimmung unvollständig oder ungenau. Kennt beispielsweise überhaupt kein Sensorknoten seine absoluten Koordinaten, so kann das Sensornetz zwar unter Umständen geografisch korrekt abgebildet, aber nicht in den größeren Zusammenhang der Weltkoordinaten gestellt werden. Fehlt andererseits die Möglichkeit der Entfernungsmessung, so fallen Triangulation und ähnliche Verfahren weg und die Positionen können nur noch als Schnittflächen mehrerer Senderadien erahnt werden. Sind beide Ausgangsbedingungen nicht erfüllt, so kann die Netztopologie nur noch abstrakt als Graph oder eine gleichwertige Repräsentation (wie z. B. als Adjazenzmatrix oder Inzidenzmatrix) abgebildet werden.
Ein vergleichsweise junger Ansatz ist die Ortsbestimmung durch Fingerabdrücke (englisch fingerprints). Dabei erstellt ein Knoten durch Abhören des Funkkanals ein „Fingerabdruck“ genanntes Profil des Hintergrundrauschens. Das Hintergrundrauschen wird von der Umgebung beeinflusst, z. B. nahen elektrischen Leitungen oder Wänden, an denen Funkwellen reflektiert werden, und unterscheidet sich dadurch von Ort zu Ort. Durch Abgleich mit einer Fingerabdruckdatenbank kann ein Sensorknoten seine eigene Position abschätzen. Bei diesem Ansatz sind Vorwissen über das Einsatzgebiet oder ein zusätzliches Hilfssystem nötig.
Um den Ursprung eines gemessenen Signals eindeutig orten zu können, muss das Signal von mindestens drei Sensorknoten empfangen worden sein. Aus den unterschiedlichen Signallaufzeiten zu den Sensorknoten kann über Hyperbelortung der Signalursprung exakt bestimmt werden. Wird das Signal nur von zwei Sensorknoten oder weniger empfangen, ist keine eindeutige Ortung möglich und der Ursprung kann nur durch Schnitt der Senderadien bzw. den Senderadius alleine eingegrenzt werden.
Synchronisation
Messdaten sind oft auf absolute Uhrzeiten angewiesen. Darüber hinaus benötigen einige Kommunikationsprotokolle, wie z. B. SMACS eine möglichst genaue Synchronisation der Sensorknoten untereinander.
Wie in anderen Rechnernetzen, so hat man auch bei Sensornetzen mit den typischen Ungenauigkeiten bei der Synchronisation zu kämpfen. Bei den Faktoren, die die Synchronisation beeinflussen, handelt es sich um die Sendezeit, also die Zeit, die der Sender benötigt, um sendebereit zu sein, die Zugriffszeit, also die Zeit, die der Sender benötigt, um die Daten auf dem Kommunikationsmedium abzulegen, die Ausbreitungsgeschwindigkeit, also wie schnell die Nachricht vom Sender beim Empfänger ist, und die Empfangszeit, also wie lange der Empfänger benötigt, um eine Nachricht vom Medium abzugreifen und die Information für die betreffende Anwendung zugänglich zu machen. Da die unterschiedlichen Kommunikationsverfahren neben anderen Faktoren vor allem die Zugriffszeit beeinflussen, ist es sinnvoll, die Entscheidung für ein Synchronisationsverfahren auch vom Kommunikationsverfahren abhängig zu machen.
Synchronisation durch Berechnung der Round Trip Time
Man kann den Unterschied zweier Uhren in einem Rechnernetz bestimmen, indem man die Uhrzeiten zweier Rechner voneinander abzieht und davon dann noch einmal die Round Trip Time subtrahiert, die durch die Nachrichten verursacht wird, die die beiden Rechner austauschen, um sich gegenseitig über ihre Uhrzeiten zu informieren. In der Praxis bildet man dazu den Mittelwert der Zeitspannen, die zur Übertragung der Anfrage und ihrer Antwort benötigt wurden. Bei diesem Verfahren wirken sich alle oben genannten Faktoren außer der Ausbreitungsgeschwindigkeit aus. Bei einer hohen Varianz der Ausbreitungsgeschwindigkeit ist darum dieses Verfahren vorzuziehen.
Reference-Broadcast Synchronisation
Bei der Reference-Broadcast Synchronisation (RBS) wird von einer zentralen Stelle aus ein Synchronisationssignal an alle Knoten gesendet. Ein Knoten, der nach dieser Synchronisationsnachricht eine Nachricht versendet, informiert mit dieser Nachricht gleichzeitig den Empfänger darüber, wann er die Synchronisation erhalten hat. Mit Hilfe dieser Information kann der Empfänger dann entscheiden, ob seine Uhr falsch geht, und sie mit der Uhr des Senders synchronisieren. Dieses Verfahren ist besonders gut geeignet, wenn bei der Kommunikation die Sendezeit und die Zugriffszeit variieren, da hier die Zeit, an der sich die Synchronisation orientiert, nur einmal für alle Empfänger gesendet wird und unterschiedliche Zugriffs- oder Sendezeiten sich so nicht auf die Synchronisation auswirken.
Timing-Sync Protocol for Sensor Networks
Das Timing-Sync Protocol for Sensor Networks (TPSN) beschreibt den Vorgang, wie in einem Sensornetz die Synchronisation verbreitet wird. Als Synchronisationsverfahren kann hier die Synchronisation durch Berechnung der Round Trip Time zur Anwendung kommen.
Initialisierung
- Ein Wurzelknoten gibt sich den Level 0.
- Die Wurzel sendet eine level_discovery-Nachricht per Broadcast an alle Knoten in seinem Sendebereich.
- Alle Knoten, die einen level_discovery erhalten, der niedriger als ihr eigener Level ist, nehmen den um 1 erhöhten Level der Nachricht an, warten eine zufällige Zeit und beginnen dann ihrerseits mit Punkt 2.
Da es trotz der zufälligen Wartezeit immer noch zu Kollisionen kommen kann, gibt es auch die Möglichkeit, dass Knoten einen Level mit einem level_request anfordern. Diese orientieren sich dann an dem jeweils niedrigsten Level, den sie erhalten.
Synchronisation
- Der Wurzelknoten fordert die Knoten mit Level 1 durch ein time_sync-Paket dazu auf, sich bei ihm über die Uhrzeit zu informieren.
- Empfängt ein Knoten ein time_sync, so fordert er durch einen synchronisation_pulse die aktuelle Uhrzeit an. Knoten des Level X werden durch den Empfang des synchronisation_pulse ebenfalls aktiv und fordern ihrerseits die Uhrzeit von ihrem Vaterknoten an.
- Der Vaterknoten antwortet auf den synchronisation_pulse mit einem ACK, der die aktuelle Zeit enthält.
Aggregation
Einige Einsatzszenarien fordern, dass Daten aus dem gesamten Sensornetz zusammengetragen und schließlich an einen einzelnen Empfänger („zentrale Senke“), übermittelt werden. Naive Ansätze zur Durchführung einer solchen Aggregation können dazu führen, dass sich bei großen Datenmengen Kommunikationsengpässe bilden, die die Leistung des Systems unnötig vermindern. Datenbündelung und Datenkompression helfen, solche Engpässe zu vermeiden. Soll beispielsweise die maximale gemessene Temperatur in einem Sensornetz ermittelt werden, so wäre der naive Ansatz, alle gemessenen Temperaturen an die zentrale Senke zu übermitteln, die dann das Maximum heraussucht, während ein fortgeschrittener Ansatz die Daten schon bei der Weitergabe vergleicht und letztlich nur noch einen einzigen Temperaturwert an die zentrale Senke übermittelt.
Tiny Aggregation (TAG)
Tiny Aggregation (TAG) behandelt das Sensornetz wie eine Datenbank, aus der mittels einer Datenbankanfragesprache Daten abgefragt werden. Datenanfragen werden von der zentralen Senke in einem einfachen, SQL-ähnlichen Format in das Sensornetz propagiert. Die Knoten werten die Anfrage auf ihren eigenen Daten und von Nachbarn empfangenen Daten aus und sortieren so schrittweise redundante und überflüssige Daten schon im Vorfeld aus.
Empirische gegenseitige Codierung
Die empirische gegenseitige Codierung gibt Informationen nur dann weiter, wenn sie nicht dem Normalwert entsprechen. Das Prinzip wird bereits in naiven Ansätzen umgesetzt, wenn etwa ein Brandbekämpfungs-Sensorknoten nur solche Temperaturmessungen weitergibt, die einen Vorgabewert überschreiten. Die empirische gegenseitige Codierung vertieft diese Idee aufgrund der Beobachtung, dass die Messungen räumlich nah beieinander liegender Sensorknoten stets ähnlich sind. Ein Sensorknoten gibt seine Messung relativ zu der seines Nachbarn an und nur dann weiter, wenn der Messwert stark von dem des anderen abweicht. Die Stärke des Ansatzes ist, dass die Korrelationen der Messwerte automatisch ermittelt werden.
Kritik an Sensornetzen
Michael Crichton zeichnete 2002 in seinem Roman Beute eine düstere Zukunftsvision, in der er die smart dust-Idee mit kollektiver Intelligenz und Nanotechnologie verband und seine Romanfiguren von Schwärmen bösartiger Mikropartikel töten ließ.
Weitaus realistischere Kritik an Sensornetzen und dem smart dust-Gedanken äußern Datenschützer. Sie sehen in Sensornetzen eine weitere Überwachungsmethode, die zur Überwachung von Bürgern und Analyse von Verbrauchern ohne deren Wissen oder Einwilligung missbraucht werden kann.
Siehe auch
Quellenangaben
- ↑ W. Dargie and C. Poellabauer, „Fundamentals of wireless sensor networks: theory and practice“, John Wiley and Sons, 2010 ISBN 978-0-470-99765-9
- ↑ Bis 2020 sollten wir Chips mit nur wenigen Nanometer großen Komponenten haben. K. Pister: Autonomous sensing and communication in a cubic millimeter
- ↑ Analyzing the Yield of ExScal, a Large-Scale Wireless Sensor Network Experiment zuletzt besucht am 21. August 2014.
- ↑ iDwaRF: Frei Programmierbare AVR Funk Module und Boards für Drahtlose Funksensor Netzwerke. (Memento des vom 5. April 2015 im Internet Archive) Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- ↑ Preon32: Funkmodul mit überlegener Technik Abgerufen am 10. November 2017
- ↑ s-net: Die Technologie des Fraunhofer IIS für extrem energiesparende, drahtlose Sensornetze Abgerufen am 15. Oktober 2013
- ↑ Waspmote: The sensor device for developers Abgerufen am 5. Dezember 2010
- ↑ I. Demirkol, C. Ersoy, F. Alagöz: MAC Protocols for Wireless Sensor Networks: A Survey. (PDF; 244 kB) In: IEEE Communications. 44(4), S. 115–121. April 2006
- ↑ R. Matischek: Real-Time Communication MAC Protocols for Wireless Sensor Networks, 2012, ISBN 978-3-8300-6349-0, siehe: „Soft Real-Time Shared Time Slot“ (SRTST) MAC Protocol, pp. 107–128
Weblinks
- Sensor Network Museum – Verzeichnis bedeutender Sensornetzsysteme, gepflegt von der Zürcher Sensornetzplattform BTnodes
- Seminar Sensornetze an der ETH Zürich
- Forschungsprojekte