1 Kurzinformationen Berufskolleg Ostvest Hans-Böckler-Straße 2 45711 Datteln Projektteilnehmer Kassandra Stangel 20.10.1998 DIT11A Jan Sniehota 20.11.1999 DIT11A Andre Wieczorek 24.9.1999 DIT11A Verantwortlicher Lehrer Ernst Schulz 2 Datenbank gestützte Smart Home Installation Das Smart Home System ist eines der neuesten und modernsten technischen Entwicklungen und momentan in aller Munde. Es gibt unzählige Hersteller auf dem Markt, welche aber alle ein Problem haben. Sie sind nicht miteinander kompatibel und man ist somit immer an einen Hersteller gebunden. Unser Konzept bietet die Möglichkeit, alle auf dem Markt gebotenen Sensoren in einem Netzwerk miteinander zu verknüpfen. Zu den Sensoren zählen z.B. Temperatursensoren, Bewegungssensoren, Fernbedienungsfunktionen, schaltbare Steckdosen, Infrarot LED´s und viele mehr. Durch die zentrale Verwaltung aller Sensordaten und Steuerungszustände innerhalb einer Dantebank ist man in der Lage komplexe Zusammenhänge für die intelligente Steuerung zu nutzen. Zur Steuerung der Sensoren werden Mikrocontroller verwendet, welche kontinuierlich arbeiten. Durch diese bekommt der Nutzer die Möglichkeit, via Website oder Android App alle Komponenten zu steuern und zu verwalten. Im Zentrum unseres Projektes befinden sich eine Datenbank und ein Webserver, die mittels eines komplexen Netzwerkes mit allen Geräten verbunden sind. Dadurch eröffnen sich vielfältige Möglichkeiten. Hierzu zählen ferngesteuerte Funksteckdosen, Lichterketten, Haushaltsmaschinen oder auch jegliche Elektrik in und um das Haus. Der Nutzer kann dann von der Arbeit sowie von unterwegs jederzeit auf sein Zuhause zugreifen, alles einsehen und kontrollieren. „Your-Home“ ist einfach zu installieren und benutzerfreundlich gegenüber unerfahrenen Nutzern. Durch die Komplexität und die Vielfältigkeit des Projektes umfasst es viele verschieden Bereiche der Informatik, von Elektrotechnik über Netzwerktechnik bis hin zur Programmierung von Mobil- und Webapplikationen. 3 Anlass Der Anlass unseres Smart Home Projektes ist, dass es diverse Smart Home Anbieter auf dem Markt gibt, wodurch der Benutzer sich an eine Marke binden muss. Damit meinen wir, dass man mit diesen Produkten nur bestimmte oder hauseigene Produkte bzw. Marken in das Smart Home mit einbinden kann. Zum einen gefällt dies dem Nutzer nicht immer und zum anderen kann es auch teuer werden. Damit punktet „Your Home“, denn mit unserem System kann man beliebige Hersteller einbinden und somit nur die Produkte kaufen, denen man als Nutzer vertraut und die man kennt. Durch die ständige Überwachung der elektronischen Geräte wird zudem Strom gespart und unsere Umwelt geschützt. Des Weiteren ist die Smart Home Szene sehr reizvoll für uns gewesen, da wir mit Hilfe dieses Projektes verschiedene Bereiche im Unterricht verbinden konnten und uns so gleichzeitig in vielen Abschnitten der Informatik einarbeiten konnten. Von der technischen Seite hatten wir den Anlass besprochen ein System zu entwickeln, bei dem im Mittelpunkt eine Datenbank steht, mit der alle Bauteile verbunden sind und man diese flexibel bearbeiten kann. Uns war es wichtig, dass jeder, der unser System benutzt, es individuell für sich einrichten kann, um so den für sich optimalen und vollen Funktionsumfang genießen zu können. Außerdem war es für uns essenziell, dass wir etwas erschaffen haben, was selbst nach dem Wettbewerb noch Entwicklungschancen hat. Ein weiterer Grund für die Entwicklung von „Your-Home“ ist, dass wir etwas erschaffen wollten, was unabhängig von Behinderungen und Einschränkungen genutzt werden kann. „Your-Home“ setzt nämlich keinerlei technische Kenntnisse voraus, was das Projekt offen für jeden macht. Es ist daher auch möglich älteren Leuten den Umgang und die Pflege mit ihrem Haus zu erleichtern und ihnen bei alltägliche Aufgaben im Haus zu helfen. Dazu zählt z.B. das Licht ausmachen, falls man es vergessen hat, durch Kameras sehen, wer vor der Tür steht oder die Fenster schließen. Letztendlich war es uns wichtig die Steuerungselemente so zu entwickeln, dass sie einfach von jedem zu bedienen sind, um so Missverständnisse und Probleme gegenüber jedem Menschen zu umgehen. Durch „Your-Home“ haben sich drei verschiedene Menschen zu einer Sache zusammengeschlossen um ein gemeinsames zukünftiges Ziel zu verfolgen, nämlich die Technisierung und Modernisierung des Eigenheims zu erreichen. 4 Ziele Alle Ziele die wir uns bis zur Präsentation gesetzt hatten konnten wir rechtzeitig erfüllen. Wir haben ein komplettes Netzwerk aufgebaut, welches alle Komponenten miteinander vernetzt. Wir haben eine Datenbank geschaffen, welche alle Steuerbefehle und Sensordaten verarbeitet und speichert. Der Raspberry Pi agiert hierbei als Basis für den von uns installierten Webserver, Datenbank und Fileserver. Wir sind in der Lage von stationären, als auch mobilen Endgeräten alle Smart-Home Elemente zu steuern und zu verwalten. Dazu haben wir die angekündigte App Programmiert und zugleich noch eine komplette Homepage erschaffen, wodurch wir in der Lage sind von überall im Haus die Kontrolle über die Elektrik und Co. zu behalten. Der Raspberry Pi übernimmt zum einen die ganzen Kommunikationswege und Steuerungseinheiten, zum anderen ist er auch dank seinen StreamingFähigkeiten für das Entertainment im Wohnzimmer zuständig. Alle diese Funktionen sind dank der App und der Homepage sehr komfortabel zu benutzen und für jedermann verständlich. Dank einer Internetanbindung können wir auch von Außerhalb unser SmartHome System verwalten. Dank Infrarot Empfängern sind wir in der Lage jede Fernbedienung von elektronischen Geräten auszulesen und sie somit durch unser System zu ersetzen. Über Mikrocontroller ist der „Your-Home“ Benutzer in der Lage sämtliche Sensoren und Sender zu benutzen. Dazu zählen die bereits genannten Wetter Sensoren, Fernbedienungen, Lichterketten, Lampen und viele weitere Elektrogeräte. Schlussendlich haben wir ein System aufgebaut, welches alle erhältlichen Sensoren auf dem Markt einbinden kann und dank künstlicher Intelligenz und weiterem Ideeneinfluss noch sehr viel Potenzial zur Weiterentwicklung hat. 5 Verlauf Am Anfang des Projektes war es nur ein Temperatursensor, welcher Daten über eine serielle Schnittstelle – in dem Fall ein Arduino Uno – ausgegeben hat. Dies haben wir soweit erweitert, dass wir zur Ausgabe einen LCD Monitor genommen haben, welcher die Ausgaben dann übernommen hat. Nach Absprache mit dem Team und unserem Lehrer haben wir uns überlegt, die Temperaturen in einer MySQL-Datenbank zu speichern - mit Hilfe eines EthernetShields - damit sie von jedem Endgerät aus abgerufen werden können. Mithilfe der Datenbank haben wir dann angefangen das System zu erweitern. Die erste Aufgabe war eine App bzw. eine Website zu erstellen, welche einfach die Temperatur von der Datenbank empfängt und darstellt. Nachdem wir dies gemacht hatten, versuchten wir neue Sensoren hinzuzufügen. Der nächste Schritt war der Luftfeuchtigkeitssensor, welchen wir zu der Datenbank hinzugefügt und mit dem Arduino verbunden haben. Nun war es uns möglich, die Temperatur und die Luftfeuchtigkeit über eine Web – und Mobilapplikation abzurufen und in einer Datenbank zu speichern. Nach der Kick-Off Veranstaltung und den dort erkämpften 500€ Startgeld haben wir uns mit unserem Mentor zusammengesetzt und die weiteren Schritte besprochen. Folgend haben wir die benötigten Materialien für den weiteren Projektablauf gekauft wie z.B. Arduinos, Funksteckdosen, Raspberry Pi, PoE Switch, RFID Chips, LED Lichterketten und vieles mehr. Im Zuge dessen haben wir damit begonnen die Funksteckdose in das System zu integrieren. Mithilfe der Entwicklungsumgebung des Mikrochips und der PHP Skripte haben wir die Funksteckdosen mit der App und der Website verbunden und die Steuerungselemente integriert. Die LED Steuerung haben wir ähnlich integriert, nur dass man in dem Steuerungsmodul verschiedene Farben und Farbmuster steuern und abspielen kann. Die App wurde und wird auch in der Zukunft mit der Entwicklungsumgebung Android Studio programmiert. Letztendlich haben wir die Datenbank, die Website und alle PHP – Skripte auf dem Raspberry Pi gespeichert, um das komplette Projekt noch flexibler und zentraler zu gestalten. Per File Sharing laufen die Entwicklungen zwischen den verschiedenen Computern problemlos und zuverlässig im Team ab, da alle mit den gleichen Daten arbeiten. Bei den weiteren Schritten werden wir uns auf das Design und die Benutzerfreundlichkeit konzentrieren und weitere zusätzliche Funktionen implementieren. 6 Hinweise zu der Verwendung im Schulunterricht Dieses Projekt ist eine hilfreiche und große Bereicherung im Schulunterricht, da es verschiedene Themen aus dem Schulunterricht behandelt und nicht viel kostet. Zum einen gibt es die Grundlagen der Elektrotechnik, die wir bei „Your-Home“ für die Komponenten und deren Funktionsfähigkeit brauchen. Damit z.B. der Infrarotempfänger die verschiedenen Signale für die LED Steuerung bereitstellen kann, braucht es Kabel und Lötverbindungen. Des Weiteren gibt es den Bereich der Datenbanktechnik. Zu diesem Bereich gehört hauptsächlich die zentrale My – SQL Datenbank, welche der Mittelpunkt unseres Projektes ist. Diese muss konfiguriert, bearbeitet und gepflegt werden, damit „Your-Home“ zu 100% funktionsfähig bleibt. Ein weiterer Aspekt, der behandelt wird, ist die Programmierung. In diesem Bereich werden die verschiedensten Programmiersprachen verwendet, zum einen C++ und C für die Mikrochips, PHP und SQL für die Datenbank, Java für die Android App und HTML und CSS für die Webprogrammierung bzw. das Webdesign. Die Mikrocontroller Technik gehört ebenfalls zu einem von den Bereichen, die innerhalb dieses Projektes behandelt werden. Hier geht es darum, den Arduino Uno sowie den Raspberry Pi so zu programmieren und umzubauen, dass verschiedenste Probleme damit gelöst werden können und man ihn für unser Smart Home System einsetzen kann. Ein ebenfalls nicht zu unterschätzender Bereich ist das Linux Servermanagement auf dem Raspberry Pi. Hierzu muss ein komplexer Linux Server aufgesetzt werden, welcher eine Datenbank, Webserver und einen FTP Server (File Sharing Dienst) beinhaltet. Dabei müssen dem Raspberry Pi jegliche Programmiersprachen beigebracht werden. Ein genau so wichtiger Teil ist die Netzwerktechnik, ohne die unsere einzelnen Komponenten keine Verbindung miteinander aufbauen könnten. Die App und die Datenbank hängen somit im selben Netzwerk, wodurch sie Daten untereinander tauschen können und so die einzelnen Dienste zur Verfügung stellen. Abseits der Entwicklung entwickelt man sich bei diesem Projekt natürlich auch menschlich weiter. Es muss ein Team aufgebaut werden, was nicht nur in der Schule, sondern auch in der Freizeit gerne an dem Projekt arbeitet. Probleme, die in der Schule nicht gelöst wurden, mussten als Hausaufgaben mit nach Hause genommen werden oder in einer Gruppe behandelt werden, um sie schnell und effizient zu lösen. 7 Ergebnisse Die Ergebnisse, die wir bis zum jetzigen Zeitpunkt erreicht haben, übertrafen alle unsere Erwartungen, da wir alles geschafft haben, was wir bis zur finalen Präsentation schaffen wollten. Natürlich sind wir mit diesem Ergebnis noch nicht am Ende von „Your-Home“, aber die grundlegenden Funktionen sind fertiggestellt. Wir haben eine funktionierende App und Website, welche Temperatur und Luftfeuchtigkeitsdaten von einer kleinen Wetterstation und Temperatursensoren darstellen können. Es ist möglich mit beiden Applikationen neben Funksteckdosen auch Lichterketten zu steuern und die Farben bzw. Farbmuster zu ändern. Dies ermöglicht es jedes elektrische Gerät zu steuern (Kaffeemaschine). Dank RFID sind wir bald in der Lage ein digitales Türschloss mit Hilfe von Türöffnungschips, wie man sie aus Hotels kennt zu betreiben. Diese werden wir in „Your-Home“ einbauen und so die programmeigene Intelligenz steigern. Wir haben eine bestehende und stabile Datenbankstruktur erschaffen, welche eine konstante Verbindung zwischen allen Bauteilen herstellt und die Daten speichert, um sie von Endgeräten später abzurufen. Dank einer bestehenden Netzwerkstruktur kann unsere Website, sowie unsere App mit dem Internet kommunizieren. Das Beste an unserem System ist die Möglichkeit sich aus der Ferne in sein Zuhause einzuloggen. Dies gibt einem die Möglichkeit alle Funktionen die man auch Zuhause nutzen kann, auch von Unterwegs zu nutzen. In der folgenden Fotostrecke werden wir Ihnen unsere Ergebnisse kurz präsentieren und Ihnen einen ersten Eindruck davon geben, was wir geschafft haben. Schlussendlich wurde das ganze Projekt von Grund aus selber programmiert und alle Bilder und Icons die Sie entdecken können sind von unserer ehemaligen Design Expertin erstellt worden. 8 „Your-Home“ Komponenten In Verbindung mit dem Router und dem Raspberry Pi ist das Grundlegende Netzwerk schon einsatzbereit. Die App kann somit auf alle PHP Skripte und Daten zugreifen, die sie benötigt. Alle Komponenten befinden sich im gleichen Netzwerk, damit jedes Bauteil mit jedem kommunizieren kann. Der Raspberry dient als zentrale Schnittstelle, die alle Befehle und Daten verwaltet und verteilt. Auf ihm liegen die Website, die Datenbank und der Webserver. Außerdem die PHP Dateien die, die gewünschten Aktionen ausführen. Er wird ganz simpel per LanKabel an den Router angeschlossen. Der Raspberry Pi wird über eine SSH Schnittstelle administriert, welche an die alten DOS Zeiten erinnert. Über diese werden alle Pakete und Updates eingespielt. Für die Administration werden umfangreiche Linuxkentnisse benötigt. Die Sensoren werden als Informationsund Datenquelle an den Arduino Uno angeschlossen und über das Ethernet Shield in das Netzwerk gespeist. Somit werden die App und die Website mit relevanten Informationen versorgt. 9 Per Infrarot LED können alle möglichen Infrarot Empfänger angesprochen werden. Dazu gehören Lichterketten, Fernbedienungen oder auch Roboter. Die Infrarot LED wird hier wie die Sensoren direkt an den Arduino Uno angeschlossen und erhält ihre Befehle direkt über das Ethernet Shield. In „Your-Home“ können alle auf dem Markt erhältlichen Funksteckdosen eingebunden werden und per App oder Website von Zuhause oder Auswärts gesteuert werden. An diese können Elektrogeräte wie Kaffeemaschinen Lampen oder auch Motoren angeschlossen werden. Die Funksteckdosen werden wie die Fernbedienung auch über einen Sender angesprochen. In diesem Fall ist es ein IC Sender, welcher auch direkt mit dem Arduino und dem Ethernet Shield verbunden ist. Er hat eine Reichweite von bis zu 10 Metern und muss nicht direkt auf die Funksteckdosen zeigen. Zu „Your-Home“ gehört eine selbst programmierte und designte Website. Die alle Funktionen übersichtlich darstellt. Dafür werden die Programmiersprachen HTML und CSS benötigt. Der Raspberry Pi übernimmt hier die Aufgabe ,alles im Netzwerk sichtbar zu machen. Für die Funktionen werden POST und GET Formulare an passende PHP Skripte geschickt. 10 Die eigens programmierte und entwickelte Android App wurde mit der Entwicklungsumgebung Android Studio umgesetzt und basiert auf der Programmiersprache Java. Um die neusten Entwicklungen live zu sehen und zu testen kann man mit der benutzten Entwicklungsumgebung sein Handy via USBKabel mit dem PC verbinden und mithilfe der neuesten Android Version die App begutachten. Die App kommuniziert über PHP Skripte mit der Datenbank und dem Internet, um die benötigten Daten zur Verfügung zu stellen. Nach dem letzten Entwicklungsstand ist die App in der Lage Temperaturdaten darzustellen, Funksteckdosen zu steuern, Radiosender über den Raspberry Pi zu streamen bzw. zu ändern und die Farbe bzw. die Farbmuster von Lichterketten zu ändern. Um die App bei sich Zuhause zu benutzen muss man sein Handy lediglich mit demselben WLAN Netzwerk verbinden wie das „Your-Home“ System und schon kann man alle Funktionen in vollem Umfang benutzen. Die Kenntnisse zur App Entwicklung mussten wir uns innerhalb des Projektes von Grund auf selbst beibringen. Mithilfe von Foren, Büchern und Tutorials haben wir uns alles selbstbeigebracht und Probleme im Team gelöst. 11 12 Aussichten Unser Ziel ist es, an dem Projekt auch nach dem Wettbewerb weiter zu arbeiten und es weiter zu entwickeln. Momentan ist unsere eigens entwickelte App weder im App Store noch im Play Store verfügbar. Dies wollen wir nach dem Wettbewerb ändern. Die App soll kostenlos im Play Store verfügbar sein, sodass jeder sie sich zu jedem Zeitpunkt herunterladen kann um so mit „Your-Home“ zu beginnen. Zurzeit ist das System nur auf Android verfügbar, jedoch ist eines unserer Ziele, es auch auf iOS zu veröffentlichen, um noch mehr Leute zu erreichen und sie von unserem Projekt zu begeistern. Des Weiteren ist es in Planung, die App und die Website noch leichter in der Bedienung und besser in der Benutzerfreundlichkeit zu machen. Unser Plan ist es uns auf das wesentliche in der Bedienung zu konzentrieren und die App komplexer durch z.B. Elemente der Sprachsteuerung zu machen. Durch Plug & Play wird die Implementierung neuer Elemente für uns und den Nutzer einfacher und benötigt keinerlei Vorkenntnisse. Ebenfalls in Entwicklung ist eine künstliche Intelligenz, die sich z.B. die Muster der betätigten Lichtschalter merkt oder die Uhrzeiten der Türöffnung, diese in einen Algorithmus einarbeitet und so das Haus dementsprechend auf die Rückkehr des Bewohners vorbereitet und Lichtmuster abspielt, wenn der Bewohner im Urlaub ist, um unerwünschte Besucher fernzuhalten. Außerdem haben wir eine erhöhte Datensicherung in Aussicht, um die Daten der Nutzer zu schützen. Ein weiterer Aspekt wäre die Kooperation mit Firmen wie z.B. Strom – und Gasanbietern, Mobilfunkanbietern, Hausvermietungen und Smart-Home Anbietern. Mithilfe dieser Firmen könnte die App an Reichweite gewinnen und neue Entwicklungschancen herbeirufen. Diese Firmen könnten dieses Produkt z.B. in Kundenwohnungen integrieren und neue Ideen für Implementierungen schaffen oder im Falle von anderen Smart Home Anbietern ein Netzwerk aus den Anwendungen schaffen, in dem die Systeme miteinander agieren. Dazu wäre es möglich, „Your-Home“ nicht nur in Privatwohnungen einzubauen, sondern auch in Firmen oder Veranstaltungsunternehmen zur Lichtsteuerung und zum Strommanagement. Außerdem könnte die Temperaturdatenbank auch die Lichtfarbe je nach Wetteralge, Stimmung und Temperaturen steuern. Über längere Zeit gesehen wäre in Betracht zu ziehen, dass Häuser oder auch ganze Siedlungen extra für „Your-Home“ beim Bau ausgestattet werden, sodass man den besten Funktionsumfang von Anfang an genießen kann. 13 14