aufbau eines sensornetzes - htw dresdenwiki_sn/images/8/88/...gesucht: günstige, freie lösungen...
TRANSCRIPT
AUFBAU EINES SENSORNETZES
Forschungsseminar Sensornetze
Prof. J. Vogt
Thomas Bettermann,
Martin Doenicke,
Angelos Drossos,
Robert Krampe,
Hermann Lorenz,
Ulrich Meckel
HTW Dresden
EINFÜHRUNG
Ziel
Warum drahtlos?
Anforderungen
das intelligente Haus
derzeitiger Stand
Teilaufgaben
Contiki OS Sensorsteuerung Heim-Server Einführung
Forschungsseminar Sensornetze 2
HTW Dresden
ZIEL
Aufbau eines drahtlosen Sensornetzes
Heimautomatisierungssystem
möglichst umfangreiche Steuerung und
Überwachung des Hauses / Wohnung
von überall via Internet
der Mensch ist faul
steigende Energiepreise
Contiki OS Sensorsteuerung Heim-Server Einführung
Forschungsseminar Sensornetze 3
HTW Dresden
Contiki OS Sensorsteuerung Heim-Server
WARUM DRAHTLOS?
Kabelverlegung nur bei Neubau sinnvoll
keine störenden Leitungen
einfache Erweiterung oder Umstrukturierung
möglich
komfortable Ersteinrichtung
Einführung
Forschungsseminar Sensornetze 4
HTW Dresden
ANFORDERUNGEN
Zugangskontrolle / Verschlüsselung
Energieeffizienz
Nutzung von Open-Source-Lizenzen
einfache Erweiterung
Contiki OS Sensorsteuerung Heim-Server Einführung
Forschungsseminar Sensornetze 5
HTW Dresden
DAS INTELLIGENTE HAUS
Contiki OS Sensorsteuerung Heim-Server Einführung
Forschungsseminar Sensornetze 6
HTW Dresden
DERZEITIGER STAND
selbst bei Neubau noch unerschlossen
Fertiglösungen teuer + proprietär
kabelgebunden bzw. unverschlüsselt
Eigenbau sehr aufwändig + pflegeintensiv
gesucht: günstige, freie Lösungen für den
Massenmarkt
Contiki OS Sensorsteuerung Heim-Server Einführung
Forschungsseminar Sensornetze 7
HTW Dresden
TEILAUFGABEN
Heimautomatisierungsserver
welche Funktionen und Dienste muss der
zentrale Server zur Verfügung stellen?
Sensoransteuerung
welche Sensoren?
wie werden diese angesteuert?
Contiki OS
Betriebssystem, mit dem die Sensorknoten
betrieben werden
Contiki OS Sensorsteuerung Heim-Server Einführung
Forschungsseminar Sensornetze 8
HTW Dresden
HEIMAUTOMATISIERUNGSSERVER
Anforderungen
Randbedingungen
Grundaufbau
Protokollstack
Datenbankmodell
Python
Contiki OS Sensorsteuerung Einführung Heim-Server
Forschungsseminar Sensornetze 9
HTW Dresden
ANFORDERUNGEN
Loggen von Sensordaten in Datenbank
Steuerung von Aktoren (Schalter, Steckdosen, …)
Berechnung/Anzeige von Statistiken
Bereitstellung einer API für externe Abfragen
Bereitstellung eines Webservers
Gateway zum Sensornetz
Steuerung mit Regeln (Fenster auf Heizung aus)
zeitgesteuertes Verhalten (Nachts Heizung aus)
Contiki OS Sensorsteuerung Einführung Heim-Server
Forschungsseminar Sensornetze 10
HTW Dresden
RANDBEDINGUNGEN
aktuell keine wirklich brauchbare Software
vorhanden
sollte relativ geringe Hardwareanforderungen
stellen
Betrieb bevorzugt auf Router oder NAS
Contiki OS Sensorsteuerung Einführung Heim-Server
Forschungsseminar Sensornetze 11
HTW Dresden
GRUNDAUFBAU
Contiki OS Sensorsteuerung Einführung Heim-Server
Forschungsseminar Sensornetze 12
DB-Modul
Eventhandler
Regelbaustein
Interface
zum
Sensornetz
API für Zugriffsmöglichkeiten
Kommunikations-
modul für
Sensornetz
externe Programme
(Apps bspw.) Webserver
Datenbank
HTW Dresden
Sensornetz
PROTOKOLLSTACK
Contiki OS Sensorsteuerung Einführung Heim-Server
Forschungsseminar Sensornetze 13
Gateway
Server
get coap://[aaaa::1]:76767/sensor1
Abfragen über Internet
(Website, HandyApp, Webservice)
CoAP
UDP
IPv6
Ethernet
Webserver
TCP
IPv4/6
Ethernet
CoAP
UDP
6LoWPAN
802.15.4
Koordinator
CoAP
UDP
6LoWPAN
802.15.4
µController
n Sensoren
CoAP
UDP
6LoWPAN
802.15.4
HTW Dresden
DATENBANKMODELL
Contiki OS Sensorsteuerung Einführung Heim-Server
Forschungsseminar Sensornetze 14
ReadingID
Value
Timestamp
State
SensorID
Readings
SensorID
Name
Description
Unit
State
Type
NodeID
Sensor
NodeID
Address
State
RoomID
Node
GroupID
Description
Type
Group
1
c
1
m
m
GroupID
SensorID
GroupSensor
nc
GroupID
NodeID
GroupNode
nc
m
HTW Dresden
PYTHON
Multiplattform, Router/NAS oder ähnlichen
Geräte mit Linux Python lauffähig
dynamische Programmiersprache,
Objektorientierung möglich
einsteigerfreundlich sichert Weiter-
entwicklung durch künftige Studenten u.a.
Contiki OS Sensorsteuerung Einführung Heim-Server
Forschungsseminar Sensornetze 15
HTW Dresden
PYTHON
viele mitgelieferte Module erleichtern
Implementierung
große Auswahl an Web-Frameworks
z.B. Django und Zope
CoAPy - Python-Implementierung von CoAP
(HTTP-Ersatz)
Contiki OS Sensorsteuerung Einführung Heim-Server
Forschungsseminar Sensornetze 16
HTW Dresden
SENSORANSTEUERUNG
6LoWPAN Netzwerk Topologie
Hardware
Sensoren und Sensoranbindung
Ziel
Vorgehen
Sensoransteuerung mit/ohne Betriebssystem
Contiki OS Heim-Server Einführung Sensorsteuerung
Forschungsseminar Sensornetze 17
HTW Dresden
6LOWPAN NETZWERK TOPOLOGIE
Edge Router (Coordinator)
Routerknoten
Sensorknoten (End Device)
Contiki OS Heim-Server Einführung Sensorsteuerung
Forschungsseminar Sensornetze 18
HTW Dresden
HARDWARE
Microcontroller: Atmel ATmega 128RFA1
Assemblersprache: AVR
Radio-Controller-Board: RCB128RFA1
Evaluationsboard: Sensor Terminal Board
Contiki OS Heim-Server Einführung Sensorsteuerung
Forschungsseminar Sensornetze 19
HTW Dresden
SENSOREN
Feuchtigkeit (Temperatur): SHT21
Luftdruck (Temperatur): BMP085
Beschleunigung nach 3 Achsen: BMA180
Verschiedene Wettermessungen:
Niederschlag
Windgeschwindigkeit
Windrichtung
SEN-08942
Contiki OS Heim-Server Einführung Sensorsteuerung
Forschungsseminar Sensornetze 20
HTW Dresden
SENSORANBINDUNG
Contiki OS Heim-Server Einführung Sensorsteuerung
Forschungsseminar Sensornetze 21
SHT21 BMP085 BMA180 SEN-08942
SPI Nein Nein Ja Nein
I2C Ja Ja Ja Nein
Beliebiger Pin Nein Nein Nein Ja
HTW Dresden
ZIEL
Contiki OS Heim-Server Einführung Sensorsteuerung
Forschungsseminar Sensornetze 22
Ziel:
möglichst plattformunabhängige Schnittstellen
für Sensoren schaffen
gute Adaptierbarkeit auf andere Anforderungen
(Sensoren, Plattformen)
Vorgehen:
Ansteuerung der Sensoren ohne Betriebssystem
Ansteuerung der Sensoren mit Betriebssystem
HTW Dresden
VORGEHEN
Contiki OS Heim-Server Einführung Sensorsteuerung
Forschungsseminar Sensornetze 23
Ansteuerung der Sensoren ohne Betriebssystem:
Testen der Sensoren auf Funktionalität
Verwendung bereits vorhandener Implementierungen und Anpassung derer
Ansteuerung der Sensoren mit Betriebssystem
Trennung der Ansteuerung in hardwareunabhängige und -abhängige Schnittstelle
Trennung von Systemkern und Anwendung
neue Anwendungen können zur Laufzeit überspielt werden
Systemkern bestimmt Schlafzeiten (Batterie schonend)
HTW Dresden
SENSORANSTEUERUNG OHNE BETRIEBSSYSTEM
Contiki OS Heim-Server Einführung Sensorsteuerung
Forschungsseminar Sensornetze 24
HTW Dresden
SENSORANSTEUERUNG MIT BETRIEBSSYSTEM
Contiki OS Heim-Server Einführung Sensorsteuerung
Forschungsseminar Sensornetze 25
Grundfunktionen bereits vorhanden
Trennung von System- und Anwenderschicht
Trennung der Implementation:
Core = Dateisystem, Internet-Protokoll, Webserver
CPU = Clock
Plattform = USB-Treiber
Trennung von hardwareunabhängigem/-abhängigem
Code für Portierung auf verschiedene Plattformen
Chance auf Community-Erfolg
HTW Dresden
Sensorsteuerung
CONTIKI OS
Warum Contiki?
Einstieg
erste Erfahrungen
Systemaufbau
Fazit zu Contiki
Contiki OS Heim-Server Einführung
Forschungsseminar Sensornetze 26
HTW Dresden
Sensorsteuerung
WARUM CONTIKI?
freies internetfähiges Betriebssystem für
Mikrocontroller
Grundlage für alle Controller und Sensoren
TCP/IP- und IPv6-Support
6LoWPAN
Contiki OS Heim-Server Einführung
Forschungsseminar Sensornetze 27
HTW Dresden
Sensorsteuerung
EINSTIEG
vorgefertigte Beispiele für versch. Plattformen
Problem 1: schwierige Einarbeitung
Problem 2: schlechtes Debugging für Sensor-
Boards von „dresden elektronik“
Umstieg auf „Raven“-Entwicklungsplattform
Contiki OS Heim-Server Einführung
Forschungsseminar Sensornetze 28
HTW Dresden
ERSTE ERFAHRUNGEN
Webserver-Beispiel
einfache Website
Ping
UDP-Beispiel
Versenden von UDP-Paketen
Grundlage für Kommunikation
Forschungsseminar Sensornetze 29
Sensorsteuerung Contiki OS Heim-Server Einführung
HTW Dresden Forschungsseminar Sensornetze
SYSTEMAUFBAU
30
Sensorsteuerung Contiki OS Heim-Server Einführung
HTW Dresden
FAZIT ZU CONTIKI
Vorteile
vollständige IPv6 Funktionalität
Verschlüsselung möglich
eventbasiertes System
Nachteile
hoher Einarbeitungsaufwand
schlecht dokumentiert
Forschungsseminar Sensornetze 31
Sensorsteuerung Contiki OS Heim-Server Einführung
HTW Dresden
Contiki OS
AKTUELLER STAND
Konzept zum Heimautomatisierungsserver
konkrete Vorstellungen zu den Komponenten
des Sensornetzes (Server, Knoten, Sensoren)
Kommunikation der Knoten über UDP
Ansteuerung der Sensoren ohne OS
Kenntnisse in Contiki OS
Forschungsseminar Sensornetze 32
Sensorsteuerung Heim-Server Einführung
HTW Dresden
Contiki OS
NÄCHSTE ZIELE
Einbindung der Sensoren in Contiki
Programmierung eines Web-Servers
Untersuchung zur CoAP-Funktionalität in
Contiki
Konzept zur Prozessorganisation im Contiki
(Untersuchung der Batterieeffizienz)
lauffähiges Demo-System
Forschungsseminar Sensornetze 33
Sensorsteuerung Heim-Server Einführung
AUFBAU EINES SENSORNETZES
Forschungsseminar Sensornetze
Prof. J. Vogt
Thomas Bettermann,
Martin Doenicke,
Angelos Drossos,
Robert Krampe,
Hermann Lorenz,
Ulrich Meckel