Diplomarbeit Technische Lösung zur Optimierung der Energieeffizienz mittelständischer Unternehmen Eingereicht von: Name, Vorname : Winz, Janek Matrikelnummer : Telefon : Email : Projektwebsites : http://www.kyoto4u.de (Deutsch) http://www.kyoto4u.net (Englisch) Pilotinstallation : Lazar Malermeister GmbH 1. Betreuer : Herr Prof. Steyer 2. Betreuer : Herr Prof. Grude Studiengang : Medieninformatik Schwerpunkt : Softwareentwicklung Fachbereich : Informatik VI Datum : 02.03.2009 Inhaltsverzeichnis KAPITEL / THEMA: SEITE: DANKSAGUNGEN 6 VORWORT 7 Das Kyoto4u Projekt 9 1 AUFGABENBESCHREIBUNG 1.1 11 Lösungsansätze 11 2 VERWENDETE SOFTWARE 12 2.1 Entwicklungswerkzeuge 12 2.2 Datenbankwerkzeuge 12 2.3 Netzwerk-Tools 12 3 VERWENDETE HARDWARE 13 3.1 Protokolle 13 4 FACHLICHES UMFELD 14 4.1 Stromleitung als Übertragungsmedium 4.1.1 Das X10 Protokoll 4.1.2 LON 14 14 18 4.2 Übertragung per Funk 4.2.1 Intertechno 4.2.2 Z-Wave 18 19 19 4.3 Zweidrahtkommunikation 4.3.1 C-Control 20 20 4.4 KYOTO4U 21 4.4.1 Alleinstellungsmerkmale Kyoto4u 22 5 BENUTZERANFORDERUNGEN/LASTENHEFT 23 6 PFLICHTENHEFT 24 6.1 Zielbestimmungen 6.1.1 Musskriterien 24 24 Seite 2 von 110 6.1.2 Wunschkriterien 6.1.3 Abgrenzungskriterien 25 25 6.2 Produkteinsatz 6.2.1 Anwendungsbereiche 6.2.2 Zielgruppen 6.2.3 Betriebsbedingungen 6.2.4 Technische Produktumgebung 6.2.5 Produkt-Schnittstellen 26 26 27 27 28 29 6.3 Produktübersicht 30 6.4 Produktfunktionen (Mussfunktionen und Wunschfunktionen) 33 6.5 Stammdaten-, Struktur-, Mengen-, Beschaffungsvorgaben 34 6.6 Qualitätsanforderungen 6.6.1 Technische QA 6.6.2 Interaktions- und Ergonomieanforderungen 6.6.3 Wirtschaftliche Qualitätsanforderungen 6.6.4 Rechtliche und normative Vorgaben (Auflagen) 34 34 36 37 38 6.7 Projektplan 6.7.1 Meilensteine 6.7.2 Gantt-Diagramm 40 40 41 6.8 Wechselseitige Verfügbarkeitsanforderungen 42 6.9 Anforderungen an die Entwicklungs- und ggf. Einsatzumgebung 43 6.10 Beschaffungs-, Schulungsanforderungen mit Terminvorgaben 45 7 SYSTEMENTWURF 46 7.2 Scheduler 47 7.3 Webplattform 48 7.4 Releaseplan Diplomarbeit 49 7.5 Gantt-Diagramm Diplomarbeit 50 8 IMPLEMENTIERUNG 51 8.1 Anbindung Datenbank 51 8.2 Anbindung Protokolle und Medien 8.2.1 Refactoring nach Command Pattern 8.2.2 Implementierung des Intertechno Protokolls 52 52 55 8.3 Logging 56 8.4 Fehlerbehandlung 8.4.1 Webanwendung 8.4.2 Scheduler Anwendung 57 57 58 Seite 3 von 110 8.5 Vorgehensmodell 58 8.6 Projektmanagement 60 8.7 Installationsprogramm 61 8.8 Gewährleistung der Stabilität des Systems 62 8.9 Absicherung des Quellcodes 63 9 BUSINESSPLAN 64 9.1 Break Even 65 10 PRODUKTERSTELLUNG 66 10.1 Profil des Endproduktes 66 10.2 Paketkosten 10.2.1 Kyoto4u 10.2.2 X10 Module 10.2.3 433 MHz Funk-Module 66 66 68 71 10.3 Markteinführung 10.3.1 Guerilla-Marketing 10.3.2 Reguläres Marketing 72 72 72 11 HANDBÜCHER 73 11.1 Benutzerhandbuch 11.1.1 Einführung 11.1.2 Anmeldung am System 11.1.3 Erstellen eines Schaltbefehls 11.1.4 Ändern von Schaltzeiten und Befehlen 11.1.5 Löschen eines Schaltbefehls 11.1.6 Steuerung eines PCs 11.1.7 Technische Unterstützung 73 73 73 75 78 79 79 80 11.2 Systemdokumentation 11.2.1 Einführung 11.2.2 Systemanforderungen 11.2.3 Installation 11.2.4 Anmelden am System 11.2.5 Ändern des Admin Kennwortes 11.2.6 Anlegen Arbeitsplätzen 11.2.7 Anlegen von Geräten 11.2.8 Anlegen von Benutzern 11.2.9 Schaltzeiten festlegen 11.2.10 Datensicherung 11.2.11 Installation Scheduler 11.2.12 Installation des Melders für Schaltzeiten 81 81 81 82 85 86 89 90 93 94 95 97 100 12 LEISTUNGSBESCHREIBUNG 101 Seite 4 von 110 13 ZUSAMMENFASSUNG UND AUSBLICK 102 13.1 Release 3.0 102 13.2 Zukünftige Erweiterungspakete: 13.2.1 Kyoto4u Energy 13.2.2 Kyoto4u Security 13.2.3 Kyoto4u Smart Home 103 103 103 103 14 ANHANG 104 15 PILOTINSTALLATION 105 16 VERZEICHNISSE 106 16.1 Abbildungsverzeichnis 106 16.2 Quellen (Web) 108 16.3 Quellen (Literatur) 109 17. RECHTSBELEHRUNG 110 Seite 5 von 110 Danksagungen Seite 6 von 110 Vorwort Obwohl der natürliche Vorrat an fossilen Energieträgern begrenzt und sein Ende in Sicht ist, steigt der weltweite Verbrauch: laut IEA-Studie „Welt-Energie-Ausblick 2002“ soll der Energiebedarf bis 2030 um mehr als 2/3 steigen - dabei auch bei fossilen Energieträgern1. Weiterhin ist mit einer Steigerung der CO2 Emissionen zu rechnen. 2 Abbildung 1: Welt Energie Bedarf Neben dem Bedarf an erneuerbaren Energiequellen steigt auch der Bedarf an Verfahren zur Optimierung des Energiebedarfes von Industrie, Wirtschaft und Privathaushalten. Laut dem Vortrag „Energiepolitik am Scheideweg – ein Jahrhundert der Ökologie“ (von Herrn Staatssekretär Michael Müller vom Umweltministerium bei den Berliner Wirtschaftsgesprächen vom 21.11.2008) führen die in den letzten dreißig Jahren verursachten CO2 Emissionen zu einer weltweiten Erwärmung von 2 Grad. Es ist damit zu rechnen, dass diese Erwärmung z.B. in Afrika 1 2 Agenda21 Prognos2030 Seite 7 von 110 zum Wegfall eines großen Teils der Ernährungsgrundlage führen wird. Hier kommen schwere Konflikte auf uns zu. Eine Kernforderung des Vortrags war, in der Wirtschaft verstärkt Verfahren einzusetzen, die effizienter mit Energie umgehen, um zumindest das Fortschreiten dieser Probleme zu bremsen. Laut Herrn Müller läuft in Deutschland allein für den Standbybetrieb von elektrischen Geräten ein ganzes Atomkraftwerk. Politik und Wirtschaft sind aufgefordert, dieser verschwenderischen Entwicklung innovativ zu begegnen. Seite 8 von 110 Das Kyoto4u Projekt Das „Kyoto4u“-Projekt wurde von mir ins Leben gerufen, um eine IT basierte Lösung zur Optimierung des Energieverbrauches mittelständischer Unternehmen, kleiner Konzerne und von Privathaushalten anzubieten. Der Name Kyoto4u ist der amerikanisierten Version des Slogans „Kyoto für Dich“ („Kyoto for you“) entliehen und bedeutet, dass man mit Einsatz dieser Lösung seinen persönlichen Beitrag zur CO2 Reduktion leisten kann. Kyōto ist der Name der japanischen Stadt, in der 1997 über das nach ihr benannte KlimaschutzProtokoll verhandelt wurde. Es sieht vor, dass die unterzeichnenden Industrienationen von 2008 bis 2012 ihre Treibhausgasemissionen um durchschnittlich 5,2% des Niveaus von 1990 senken.3 Das während der Diplomarbeit entworfene neue Kyoto4u Logo ist angelehnt an die Grafik des Deutschen Energiepasses4, der Aufschluss über die Energieeffizenz von Gebäuden gib, da Kyoto4u auch zur Verbesserung der Energieeffizienz von Gebäuden beiträgt: Abbildung 2: Kyoto4u Logo Kyoto4u benutzt Relais- und Dimmermodule um gezielt die Stromzufuhr von elektrischen Verbrauchern zu steuern. Dadurch kann Standby-Verbrauch von Geräten verhindert und das unbeabsichtigte Laufen lassen elektrischer Geräte vermieden werden. Da der Energiebedarf so nachhaltig gesenkt werden kann, wird folglich der CO2-Ausstoß des Energieversorgers reduziert. 3 4 Kyoto Energiepass Seite 9 von 110 Durch eine zukünftige weltweite Verbreitung der Software kann so ein maßgeblicher Beitrag zur Schonung der Umwelt geleistet werden. In einem üblichen Büro existieren diverse elektrische Geräte, die Standbyverbrauch verursachen und teilweise sogar unnötig laufen gelassen werden: z.B. Kaffeemaschinen, Bildschirme, Abbildung 3: Geräte mit Standbyverbrauch Computer, Handynetzteile, PDA-Netzteile, Scanner, Kopierer, Drucker, Netzteile von schnurlosen Telefonen, Kochplatten, … verursachen täglich unnötigen Energieverbrauch, der in der Summe ein beachtliches Ausmaß hat. Kyoto4u steuert die Stromzufuhr dieser Geräte anhand der Arbeitszeiten der Angestellten und verhindert den unnötigen Verbrauch dieser Geräte. Seite 10 von 110 1 Aufgabenbeschreibung Unter dem Namen „Kyoto4u“ wurde in einer früheren Version einer Lösung zur Reduktion des Energiekonsums elektrischer Verbraucher in mittelständischen Betrieben von mir entwickelt. Für die Ansteuerung der Verbraucher basiert diese Version ausschließlich auf dem PLC (Powerline) System „X10“. Software Design Patterns kamen bei der Realisierung nicht zum Einsatz. Die Datenbankanbindung erfolgte zwar bereits über Hibernate, Objekte wurden aber nur über XML Dateien gemappt. Foreign Keys kamen in der Datenbank noch nicht zum Einsatz. Für den Login in das System existiert zwar eine Benutzerverwaltung, es ist aber keine Festlegung von individuellen Schaltrechten möglich. Die Kyoto4u-gesteuerte Abschaltung eines Computers erfolgt bislang immer nach 2 Minuten. Einmaliges Schalten ist nicht möglich. Schaltzeiten werden hier wöchentlich wiederholt. Zeitweises Aussetzen von Schaltzeiten (z.B. wegen Betriebsferien) ist ebenfalls nicht möglich. 1.1 Lösungsansätze In der neuen Version werden folgende Punkte implementiert: - Einsatz von gängigen Software Design Patterns für die wesentlichen Programmteile - Erweiterung der Unterstützung von PLC – Powerline mit 433MHz Funk - Hibernate Einsatz über Annotations - Unterschiedliche Schaltrechte für Benutzer - Individuelle Konfiguration des Abschaltverfahrens von Computern - Unterstützung von datumsgebundenen Schaltzeiten - Zeitweises Aussetzen von Schaltzeiten - Erweiterung der Weboberfläche Seite 11 von 110 2 Verwendete Software 2.1 Entwicklungswerkzeuge Java: Eclipse 3.x5, Sysdeo Tomcat Plugin6, Java 1.507, Struts 1.x8, Hibernate 3.x9, Tomcat 5.5.2x10, JUnit11, X10 CM17A API12 Delphi: Borland Delphi 513 Webdesign: GIMP 2.614 Textpad 5.2.015 Databecker Web2Date 1.016 2.2 Datenbankwerkzeuge XAMPP (MySQL 5, PHPMyAdmin)17 2.3 Netzwerk-Tools Wireshark18 5 Eclipse Sysdeo 7 Java 8 Struts 9 Hibernate 10 Tomcat 11 JUnit 12 CM17A API 13 Delphi 14 Gimp 15 Textpad 16 Web2Date 17 XAMPP 18 Wireshark 6 Seite 12 von 110 3 Verwendete Hardware X10 CM11G PC-Adapter für X10 (RS232-Variante, Deutsche Ausführung)19 AM12G Relaismodul für X10 (Deutsche Ausführung)20 LM12G Dimmermodul für X10 (Deutsche Ausführung)21 433MHz Allnet ALL3000RF Mk2 Netzwerk-Fernbedienung für 433MHz Intertechno-Protokoll22 Intertechno ITR-3500 Funkstecker Relaismodul für 433MHz Intertechno-Protokoll23 3.1 Protokolle PLC – Powerline: X1024 Funk: 433MHz - Intertechno25 19 CM11 AM12 21 LM12 22 AllnetInterface 23 AllnetRelais 24 X10 25 Intertechno 20 Seite 13 von 110 4 Fachliches Umfeld Im jungen Heimautomationsmarkt gibt es bereits zahlreiche Lösungen, die eine automatisierte Steuerung von Geräten in Gebäuden ermöglichen. Je nach Anbieter verwenden diese Lösungen unterschiedliche Übertragungsmedien, Übertragungsfrequenzen, Modulationen und unterschiedliche – meist proprietäre – Übertragungsprotokolle zur Ansteuerung der Akteure. Die preiswertesten gängigen Systeme und Produkte werden hier vorgestellt. Anschließend werden die Unterschiede zu Kyoto4u 2.0 beschrieben. 4.1 Stromleitung als Übertragungsmedium Die Stromleitung als Übertragungsmedium zu nutzen gestattet eine preiswerte Nachrüstung in bestehenden Gebäuden. Da Unternehmen meist lediglich Mieter ihrer Räumlichkeiten sind, ist die Nachrüstfähigkeit und Möglichkeit, der Mitnahme, bei einem Umzug ein wichtiges Kriterium. Z.B. die Protokolle X10 und LON nutzen die Stromleitung als Kommunikationsmedium. LON ist allerdings auch für andere Übertragungsmedien einsetzbar. 4.1.1 Das X10 Protokoll Für das X10 Protokoll sind Sender (Fernbedienungen, Schalter, PC-Interfaces, …) und Empfänger (Relais, Dimmer, Thermostate, Rollosteuerungen, …) verschiedener Hersteller weltweit verfügbar. Das Protokoll arbeitet mit einer 120KHz Frequenz, die auf der bestehenden 50Hz (Deutschland) bzw. 60Hz (USA) Frequenz des Wechselstroms aufmoduliert wird. Für X10 sind auch zahlreiche Module erhältlich, die ohne Elektroinstallateur installiert werden können. Dadurch sind die Installationskosten vergleichsweise gering und das System ist auch attraktiv für Privatpersonen. Mit einer Adressierung aus 16 Haus- und 16 Unitcodes können mit diesem System 256 Geräte individuell adressiert werden. Seite 14 von 110 4.1.1.1 „ActiveHome“ Software für X10 Abbildung 4 : ActiveHome X10 Software 26 ActiveHome (hier Version 1.42) ist eine Windows basierte Smart Home Software, die das direkte Steuern von X10 Geräten mittels einer graphischen GUI erlaubt. Die Software kann im Internet kostenlos bezogen werden. Für den Betrieb muss ein „CM11“ oder „CM11 USB“ direkt am Computer angeschlossen sein. Die beschriebene Version 1.42 hat sich auf verschiedenen Rechnern als instabil erwiesen (getestet mit Windows 2000 Prof., Windows XP SP2 und Vista Business SP1). Dies äußert sich durch zeitweise Abstürzens der Kommunikationsbridge für die serielle Schnittstelle und komplettes Einfrieren der Anwendung. 26 ActiveHome Seite 15 von 110 Abbildung 5: Fehlermeldung ActiveHome Software Die Software kann nur auf dem Computer genutzt werden, an dem der CM11 angeschlossen ist. Die Funktionalität steht nicht für das Computernetzwerk zur Verfügung. Das Programm bietet eine anwenderfreundliche graphische Benutzeroberfläche. Es wird nicht berücksichtigt, dass Computer vor einer Abschaltung der Stromzufuhr automatisiert herunter gefahren sein müssen, oder zumindest der Anwender darüber informiert wird. Seite 16 von 110 4.1.1.2 „HomeSeer“ Software für X10 und Z-Wave Abbildung 6: HomeSeer Smart Home Software 27 HomeSeer ist eine Webanwendung, die für 199,95 $ auf dem US Markt angeboten wird. Diese Anwendung unterstützt X10 und Z-Wave basierte Komponenten. Ein interessantes Merkmal ist, dass die Anwendung über Plugins erweitert werden kann. Die Software bietet ein Webinterface, das über das Netzwerk genutzt werden kann. Es wird nicht berücksichtigt, dass Computer vor einer Abschaltung der Stromzufuhr automatisiert herunter gefahren sein müssen, oder zumindest der Anwender darüber informiert. Der Server muß unter Windows laufen. 27 Homeseer Seite 17 von 110 4.1.2 LON Das „Local Operating Network“ wurde von der Firma Echelon28 entwickelt. Dieses Bus System kann mit verschiedenen Übertragungsmedien genutzt werden. Jeder Netzwerkknoten enthält einen „Neuron“-Chip. Die Adressierung der Netzknoten erfolgt über eine 48Bit ID, die weltweit eindeutig ist. Damit können theoretisch 248 = 281.474.976.710.656 Geräte adressiert werden. Die Leistungsfähigkeit dieses Systems hat ihren Preis: LON Komponenten sind deutlich teurer als z.B. X10 oder Intertechno basierte Komponenten. Für LON sind auch Module erhältlich, die ohne Elektroinstallateur installiert werden können. Eine Unterstützung dieses Systems erfolgt nicht im Rahmen der Diplomarbeit ist aber bei einer späteren Weiterentwicklung angedacht. Funktionslose Beispielklassen wurden bereits angelegt. 4.2 Übertragung per Funk Auch die Übertragung per Funk ermöglicht eine preiswerte und unkomplizierte Nachrüstung in bestehenden Gebäuden. Allerdings kann die Reichweite durch die örtlichen Gegebenheiten teilweise stark begrenzt sein. In Neubauten stellen Wände (Stahlbeton) oft ein undurchdringbares Hindernis dar. Als Frequenzen werden dabei üblicherweise die freien Frequenzen 433MHz und 868MHz verwendet. Bei 433MHz ist gesetzlich eine kontinuierliche Übertragung möglich, während bei 868MHz nur kurzfristige Übertragungssequenzen gestattet sind. Bei 433MHz sind dadurch oft viele Sender aktiv (z.B. Funk-Kopfhörer, Funk-Fernbedienungen, …), die sich gegenseitig stören können. Übertragungsproblemen kann aber mit Funk-Repeatern (verstärken das Funksignal) und Setzen von mehreren Sendern begegnet werden. 28 Echelon Seite 18 von 110 4.2.1 Intertechno Das Intertechno Protokoll überträgt im 433MHz Frequenzband. Für dieses System sind preiswerte Sende- (Fernbedienungen, Schalter, PC-Interfaces, ...) und Empfangsmodule (Relais, Dimmer, ...) verschiedener Hersteller verfügbar. Die Unterstützung dieses Systems wird im Rahmen dieser Diplomarbeit implementiert. Aufgrund des niedrigen Preises dieser Komponenten ist die Anschaffung gerade für Privathaushalte sehr attraktiv. Mit 16 Haus- und 16 Unitcodes können 256 Geräte individuell adressiert werden. 4.2.2 Z-Wave Z-Wave29 ist ein herstellerunabhängiges Funkprotokoll, was mit der Frequenz 908,42 MHz (USA) bzw. 868 MHz (Europa) arbeitet. Z-Wave unterstützt Routing und erlaubt somit die Funk-Reichweite durch Datenübertragung über Zwischen-Knoten zu verlängern. Es können 232 Geräte adressiert werden. 29 Z-Wave Seite 19 von 110 4.3 Zweidrahtkommunikation Die Datenübertragung über einen Zweidrahtbus hat trotz der Verfügbarkeit von Funk- und Powerline-basierten Kommunikationsverfahren ihre Daseinsberechtigung. Während ein Zweidraht basiertes System einen höheren Aufwand beim Nachrüsten in bestehenden Gebäuden darstellt, bietet es dafür eine höhere Sicherheit gegenüber Manipulationen. Im Rahmen der Diplomarbeit wird noch kein Zweidrahtbussystem unterstützt, ist aber für die weitere Entwicklung angedacht. Funktionslose Beispielklassen wurden bereits angelegt. 4.3.1 C-Control Abbildung 7: C-Control Interface 30 C-Control ist ein Zweidraht basiertes Bussystem der Firma Conrad Elektronik und richtet sich an Elektroinstallateure. Die C-Control Interfaces können – je nach Modell – direkt in BASIC oder Assembler programmiert werden. Eine Unterstützung dieses Systems erfolgt nicht im Rahmen der Diplomarbeit ist aber bei einer späteren Weiterentwicklung angedacht. 30 C-Control Seite 20 von 110 4.4 Kyoto4u Kyoto4u unterstützt in der Version 2.0 die Übertragungsmedien Stromleitung und Funk. Es wurden dabei die Protokolle X10 (PLC – Datenübertragung über die Stromleitung) und Intertechno (Datenübertragung per Funk im freien Frequenzband 433 MHz) implementiert. Die während der Diplomarbeit geschaffene Protokollunabhängigkeit ermöglicht ein späteres Unterstützen weiterer Protokolle, ohne maßgebliche Änderungen am Gesamtsystem vornehmen zu müssen. Exemplarisch wurden bereits weitere Protokollklassen angelegt (z.B. CControlDevice, CEBusDevice, etc.). Diese sind aber noch ohne Funktion. Die Software ist über Ressource Bundle Dateien sprachunabhängig und in Deutsch und Englisch übersetzt. Die Unterstützung weiterer Sprachen ist durch Übersetzung der Ressource Buddle Dateien möglich. Für PCs bietet die Software eine Anwenderbenachrichtigungsfunktion und eine ferngesteuerte Herunterfahrfunktion. Kyoto4u 2.0 verfügt über eine Rechteverwaltung: die Rechte, Geräte zu konfigurieren und zu schalten können eingeschränkt werden. Da Kyoto4u 2.0 über eine Webbenutzerschnittstelle verfügt, kann das System mittels PCs, PDAs und Handys stationär und mobil genutzt werden, soweit die Geräte über einen Browser verfügen. Die Möglichkeit der mobilen Nutzung ist wichtig, damit bei spontanen Änderungen der Arbeitszeiten ein unkomplizierter Zugriff auf das System möglich ist (das Browser-Handy wird quasi zur Smart Home Fernbedienung). Da die Kyoto4u Plattform in Java geschrieben ist, kann sie auf den Plattformen Windows, Linux und Mac OS eingesetzt werden. Bei der Entwicklung von Kyoto4u wurde auf System Performance und schonenden Umgang mit Systemressourcen geachtet: während des Entwicklungsprozesses musste sich die gesamte Plattformsoftware auf einem in die Jahre gekommenen Pentium 3 Test-Server behaupten. Daher kann Kyoto4u auf bereits bestehenden Servern (Fileservern, Datenbankservern, Webservern, …) installiert werden, ohne den eigentlichen Zweck des Servers zu beeinträchtigen. Für die Anschaffung eines Kyoto4u Systems ist nicht zwingend die Anschaffung eines weiteren Servers erforderlich. Seite 21 von 110 Durch die Unterstützung von nicht kabelgebundenen Übertragungsmedien ist Kyoto4u besonders attraktiv für Firmen, da die meisten Firmen nur Mieter von Räumlichkeiten sind. Bei einem Umzug kann das System mitgenommen werden. 4.4.1 Alleinstellungsmerkmale Kyoto4u Kyoto4u ein Produkt das sich durch seine Unabhängigkeit von menschlichen Sprachen, Computer Plattformen, Übertragungsmedien, Übertragungsprotokollen und der Transparenz seines Schaltens bei den bislang am Smart Home Markt angebotenen Energie Produkten deutlich hervorhebt. Neben dem ursprünglichen Antrieb des Entwicklers weltweit den Ausstoß von CO2 zu verringern, ist Kyoto4u ein System, was sich durch vergleichsweise geringe Kosten schnell amortisiert und maßgeblich zur Einsparung von Energiekosten beiträgt. Seite 22 von 110 5 Benutzeranforderungen/Lastenheft Kyoto4u 1.0 wurde auf der langen Nacht der Wissenschaften am 14. Juni 2008 in der TFH Berlin präsentiert und stieß bei den Besuchern auf reges Interesse. Einzelne kritisierten die eingesetzte Powerlinetechnologie, da über eine ungeschirmte Leitung Daten übertragen werden. Hierbei können Abstrahlungen entstehen, die andere funkbasierte Übertragungen eventuell stören.31 Dies ist allerdings bei dem eingesetzten X10 Standard nur bedingt der Fall. Es soll die Kyoto4u Software angepasst werden, sodass leicht weitere Übertragungsmedien und Protokolle unterstützt werden können. Als 2. Übertragungsmedium soll eine Funklösung implementiert werden, so dass den Bedenken von potentiellen Kunden gegenüber der Powerline Technologie Rechnung getragen wird. Das System soll in der Anschaffung günstiger als X10 sein und damit das Produkt auch für private Haushalte interessant machen. Es soll möglich sein, die unterstützten Technologien mit einander zu kombinieren (um z.B. mit eventuell auftretenden Reichweitenproblemen besser umgehen zu können). Weiterhin soll die Basis geschaffen werden, später ohne großen neuen Entwicklungsaufwand weitere Smart Home Protokolle zu unterstützen. 31 PLC_stört Seite 23 von 110 6 Pflichtenheft 6.1 Zielbestimmungen Aufbauend auf der bestehenden Version soll eine übertragungsmedienunabhängige (Powerline und 433MHz mit Option auf weitere Übertragungsverfahren) Lösung zum optimieren des Energieverbrauches in mittelständischen Betrieben, kleinen Konzernen und Privathaushalten entwickelt werden. 6.1.1 Musskriterien Es soll die Java 1.50 basierte Webanwendung und eine Delphi 5 basierte Desktop Anwendung unter Beibehaltung dieser Programmiersprachen weiter entwickelt werden. Die bereits bestehende Unterstützung von PLC-Powerline (X10) basierten Releas- und Dimmermodulen soll dabei um die Unterstützung von 433 MHz Funk (Intertechno) basierten Relais- und Funkmodulen ergänzt werden. Im Hinblick auf die Unterstützung noch weiterer Übertragungsmedien und –protokolle sollen diese beiden Protokolle lose angekoppelt werden. Die Verwaltung der Schaltzeiten erfolgt über ein Webinterface auf Basis von JSP und Struts. Schaltzeiten sollen nun aufgeschlüsselt nach Arbeitsplätzen angezeigt werden. Schaltzeiten werden in einer MySQL Datenbank gespeichert. Die Anbindung erfolgt über Hibernate. Im Gegensatz zur Version 1.0 soll Hibernate nicht über XML-Dateien, sondern über Annotations genutzt werden. Während die bestehende Version nur wiederkehrende Schaltzeiten unterstützte, soll die Version 2.0 auch einmalige Schaltzeiten und das Aussetzen von Schaltzeiten für begrenzte Perioden (z.B.: Betriebsurlaub) unterstützen. Seite 24 von 110 Für zu schaltende PCs wurde eine Windows Anwendung entwickelt. Während die Version 1.0 nur über bevorstehende Schaltzeiten informierte, soll die Version 2.0 über einen Rückkanal zur Plattform verfügen: Schaltzeiten sollen temporär über den Windows Client verschiebbar sein. Bevor der Rechner von der Windows Anwendung runter gefahren wird, soll die Plattform darüber informiert werden. Die Windows Anwendung soll per TCP/IP mit der Plattform kommunizieren. Die Webplattform soll intuitiv handhabbar sein und über eine Onlinehilfe verfügen. Bei der Geräteverwaltung soll der Leistungswert manuell eingebbar sein. Über einen Hilfe Button soll in der Webplattform eine Hilfefunktion zur Verfügung stehen. 6.1.2 Wunschkriterien Die Plattform soll auch auf Linux und Mac Rechnern lauffähig sein (bei den Designentscheidungen der Version 2.0 eine spätere Migrationsmöglichkeit auf diese Plattformen nicht torpedieren!). Die Anwendung zum Herunterfahren von Computern soll auch auf Linux und Mac Rechnern lauffähig sein. Es sollen weitere Übertragungsprotokolle unterstützt werden. Die durch den Einsatz von Kyoto4u eingesparte Energie soll in verschiedenen Diagrammen über die Webplattform abrufbar sein. 6.1.3 Abgrenzungskriterien Die Plattform führt keine Leistungsmessung der elektrischen Verbraucher durch. Andere Netzwerkprotokolle als TCP/IP werden nicht unterstützt (IPX/SPX, NetBUI, etc.). Es können und dürfen keine Produktionsmaschinen, Heizanlagen, medizinische Anlagen und Anlagen, bei denen Menschenleben in Gefahr geraten können, gesteuert werden. Drehstrom wird nicht unterstützt. Seite 25 von 110 6.2 Produkteinsatz 6.2.1 Anwendungsbereiche In mittelständischen Betrieben, kleinen Konzernen und privaten Haushalten kann durch diese Lösung der Stromverbrauch reduziert und der Komfort gesteigert werden. Das Durchlaufen lassen ungenutzter elektrischer Verbraucher (PCs, Beleuchtung, Kaffeemaschinen, Kopierer, Drucker, Ladegeräte, ...) kann verhindert werden. Weiterhin ist die Reduktion von Standbyverbrauch möglich. Viele elektrische Geräte verbrauchen auch im ausgeschalteten Zustand Strom (z.B. hat ein ATX Netzteil eines ausgeschalteten PCs eine Leistungsaufnahme von ca. 3-4 Watt): Abbildung 8: Foto eigene Messung Leistungsaufnahme 350 Watt ATX Netzteil bei heruntergefahrenem PC: 3,6W Die Leistungsaufnahme eines X10 Relaismoduls und eines X10 Dimmermoduls liegt bei unter einem Watt. Bei eigenen Messungen war die Leistungsaufnahme beider Module unterhalb des messbaren Bereiches des eingesetzten Meßgerätes: Seite 26 von 110 Abbildung 9: Foto eigene Messung Leistungsaufnahme X10 Relais Modul 6.2.2 Zielgruppen - mittelständische Betriebe - kleine Konzerne - private Haushalte ..sind mit dieser Lösung in der Lage ihren Stromverbrauch zu optimieren und den Komfort zu steigern. 6.2.3 Betriebsbedingungen Das System kann nur in Gebäuden installiert werden und ist auf einen 24h Betrieb ausgelegt. Es ist ein Server erforderlich, der 24h in Betrieb ist und noch Leistungsreserven frei hat, die mindestens der Leistung eines ungenutzten Pentium 3 mit 500MHz und 256 MB RAM entsprechen. Der Server muss über eines der folgenden Windows Betriebssysteme verfügen: Windows 2000 Prof., Windows XP, Windows Vista, (ggf. auch Windows 2003 Server) Er muss am lokalen Netzwerk per TCP/IP angebunden sein. Seite 27 von 110 Seine Firewall muss so konfigurierbar sein, dass der Tomcat Port (8080) und der Kommunikationsport für die Meldeanwendung für Schaltzeiten (7000) zu öffnen ist. Alternativ können die Ports geändert werden, müssen aber zu öffnen sein. Es kann eine lokale SQL Datenbank genutzt werden, soweit diese von Hibernate unterstützt wird. Ansonsten ist ein passender SQL Server zu installieren (vorzugsweise MySQL). Es kann auch ein neuer Server extra für diese Lösung installiert werden. Er muss dann die hier beschriebenen Kriterien erfüllen. 6.2.4 Technische Produktumgebung 6.2.4.1 Software Clients: Die zu schaltenden PC-Clients benötigen Windows 2000 Prof., Windows XP oder Windows Vista und den installierten Kyoto4u Melder für Schaltzeiten. Browser: Internet Explorer 6/7 oder Firefox 2/3 Server: Betriebssystem: Windows 2000, XP, Vista VM: Java 1.50 + Java Comm. API 2.0 Servlet-Container: Tomcat 5.5.x 6.2.4.2 Hardware Clients (steuerbar über Kyoto4u Plattform): Prozessor: ab 200MHz RAM: ab 128MB Festplatte: ab 1 GB frei Netzwerkkarte: Ethernet, ab 10Mbit Server (Minimalanforderung): Prozessor: ab Pentium III Taktrate: ab 500 MHz RAM: ab 256MB Seite 28 von 110 Server (Empfehlung): Prozessor: Pentium M (Centrino) oder Atom Taktrate: ab 1 GHz RAM: ab 1 GB Server - Peripherie: PLC Interface: CM11G oder CM11G USB PLC Relais: AM12G PLC Dimmer: LM12G PLC Phasenkoppler: FD10 433MHz Interface: Allnet ALL 3000RF Mk2 433MHz Relais: Intertechno ITR-3500 6.2.4.2 Orgware: organisatorische Rahmenbedingungen Es muss ein Stromnetz mit 220V, 50 Hz Wechselstrom und ein Ethernet TCP/IP-Netzwerk vorhanden sein. Die Installation des Phasenkopplers muss ein zugelassener Elektroinstallateur durchführen. Für die Einrichtung der netzwerkrelevanten Parameter (Firewalls, Ports, Routing, …) muss der zuständige Netzwerkadministrator vor Ort sein. 6.2.5 Produkt-Schnittstellen 6.2.5.1 Software-Schnittstellen • TCP/IP • Datenbankanbindung über Hibernate (andere Programme können DB als Schnittstelle nutzen, wenn sie die Kyoto4u Hibernate Mapping-Informationen berücksichtigen) Seite 29 von 110 6.2.5.2 Computer- und/oder andere hardware-technische Schnittstellen • Netzwerkkarten >=10Mbit • Netzwerk >=10Mbit Switch (Anzahl Ports mind. entsprechend Anzahl Clients + Server + Router/DSL Modem) 6.3 Produktübersicht Beispiel einer Kyoto4u Installation in einer Firma: Abbildung 10: Beispiel Installation Kyoto4u System Seite 30 von 110 Der Kyoto4u Server beherbergt hier die Datenbank, die Webplattform (Benutzerschnittstelle für Zugriff per Browser) und den Scheduler für die Steuerung von Relais-Modulen. Diese können aber auch jeweils auf getrennten Servern laufen, soweit diese per TCP/IP miteinander kommunizieren können. Am Kyoto4u Server sind die Sender für die verschiedenen unterstützten Übertragungsmedien und Übertragungsprotokolle angeschlossen. Die oben Stromzufuhr der oben dargestellten Computer wird über Relaismodule individuell geregelt. Durch die Webschnittstelle ist ein Zugriff auf die Plattform mit den verschiedensten Geräten, die über einen Internet Browser verfügen, möglich: Abbildung 11: Kyoto4u Übersicht Schaltzeiten und Befehle Die Einsparung von Strom erfolgt durch die Steuerung der Relaismodule. Nach Feierabend lässt die Kyoto4u Scheduler-Anwendung automatisch die Relais ausschalten und die Stromzufuhr der Geräte wird gekappt. Standbyverbrauch und das durchlaufen lassen von elektrischen Geräten wird dabei verhindert und dieser unnötige Energieverbrauch vermieden. Seite 31 von 110 Kyoto4u Server: PLC – Powerline Netz Funk Netz (zukünftige NetzeA) Scheduler - Anwendung Java VM Datenbank L A N / Web-Plattform Servlet Container W A N Kyoto4u Server Meldeanwendung für Schaltzeiten (mit automatischer Herunterfahr-Funktion) Arbeitsplatz PC Seite 32 von 110 6.4 Produktfunktionen (Mussfunktionen und Wunschfunktionen) Abbildung 12: Use Case Diagramm Produktfunktionen Seite 33 von 110 6.5 Stammdaten-, Struktur-, Mengen-, Beschaffungsvorgaben Zur Installation ist es notwendig, folgendes zu erfassen: − zu steuernde PCs mit IP Adresse − die anderen zu steuernden elektrischen Geräte − Arbeitsplätze, in denen zu steuernde Geräte stehen − Benutzer, die Zugriff auf die Plattform erhalten sollen 6.6 Qualitätsanforderungen 6.6.1 Technische QA 6.6.1.1 Zeit- und Speichereffizienz, Bandbreite und Kommunikationsgeschwindigkeit 100Kbit pro Intranet-Client 6.6.1.2 Genauigkeit Entsprechend der Serveruhr, Abgleich über NTP (Network Time Protokoll) 6.6.1.3 Zuverlässigkeit Ein Absturz des Plattform Servers, des Switches, des Stromnetzes oder der SQL Datenbank verhindern die Funktionstüchtigkeit der Plattform. Die Festplatte des Servers darf nicht vollaufen. 6.6.1.4 Skalierbarkeit Kyoto4u ist softwaretechnisch prinzipiell stufenlos erweiterbar. Hardwaretechnisch sind das X10 PLC und das Intertechno 433MHz Protokoll systembedingt auf unterschiedliche 256 Adressen (16 Hauscodes * 16 Gerätecodes = 256) beschränkt. Bei Kombination beider Netze ist maximal eine Adressierung von 512 einzeln ansteuerbaren Geräten möglich. Wenn es Geräte gibt, die gemeinsam an ein Relais angeschlossen werden können (z.B. Seite 34 von 110 alle elektrischen Geräte eines Arbeitsplatzes), kann die Anzahl der zu steuernden Geräte insgesamt dadurch erhöht werden. Lizenzbedingt wird die Kyoto4u Plattform mit einer bestimmten Anzahl Client-Lizenzen (je nach Paket) ausgeliefert. Das gewählte Kyoto4u Paket kann nachträglich in 10´er Schritten aufgerüstet werden. 6.6.1.5 Portabilität Die Portabilität auf Linux und Mac Server ist bedingt durch die gewählte Programmiersprache Java theoretisch möglich. Wird im Rahmen der Diplomarbeit aber nicht untersucht. 6.6.1.6 Kompatibilität Server: Betriebssystem: Windows 2000, XP, Vista VM: Java 1.50 + Java Comm. API 2.0 Servlet-Container: Tomcat 5.5.x Client - für Zugriff auf Webplattform: Betriebssystem: Windows 95,98, NT 4.0, 2000, XP, Vista, Pocket PC 2003, Windows Mobile Browser: Internet Explorer 6/7, Firefox 2/3, Pocket Explorer Client, der von Kyoto4u heruntergefahren/gestartet werden soll: Betriebssystem: Windows 2000, XP, Vista 6.6.1.7 Fehlerrobustheit Im Fall eines Absturzes des Plattformservers müssen, nach Wiederinstandsetzung des Servers und der SQL Datenbank, die Kyoto4u Web-Plattform und der Kyoto4u Scheduler neu gestartet werden. Ein Neustart der Clients ist nicht notwendig. Benutzer, die zur Zeit des Absturzes angemeldet waren, müssen sich wieder anmelden. Während der Zeit des Server Ausfalles wurden keine Schaltbefehle ausgeführt. Diese müssen dann manuell nachgeholt werden. Seite 35 von 110 6.6.2 Interaktions- und Ergonomieanforderungen 6.6.2.1 Online-/Offline-Nutzungsschnittstelle Den Benutzern steht eine Weboberfläche zur Verfügung, über die Schaltzeiten, Arbeitsplätze, Geräte und Benutzer angezeigt und verwaltet werden. 6.6.2.2 Interaktionsleistungen Online- / Offline-Nutzer − Grundsystem 1-10 Benutzer gleichzeitig (mehr möglich mit stärkerem Server und größerem Kyoto4u Paket) − Keine Offline Nutzer Interaktionsperformance Webplattform: Anmeldung: 2-3 Sekunden Abmeldung: 1-2 Sekunden Anlegen Benutzer: 1-2 Sekunden Ändern Benutzer: 1-2 Sekunden Löschen Benutzer: 1-2 Sekunden Anzeigen Benutzer: 2-3 Sekunden Anlegen Schaltbefehl: 1-2 Sekunden Ändern Schaltbefehl: 1-2 Sekunden Löschen Schaltbefehl: 1-2 Sekunden Anzeigen Schaltbefehle: 2-3 Sekunden Anlegen Arbeitsplatz: 1-2 Sekunden Ändern Arbeitsplatz: 1-2 Sekunden Löschen Arbeitsplatz: 1-2 Sekunden Anzeigen Arbeitsplätze: 2-3 Sekunden Melder für Schaltzeiten: Wartezeit Anwenderreaktion: in Version 2.0 individuell einstellbar Wartezeit für Herunterfahren: in Version 2.0 individuell einstellbar Seite 36 von 110 Scheduler: Datenbankabfrage für Befehle einer Minute: 5 Sekunden Ausführung eines Schaltbefehls: 10 Sekunden 6.2.2.3 Standard für Ergonomieanforderungen Über eine intuitiv handhabbare grafische Weboberfläche können registrierte Kyoto4u-Benutzer und Kyoto4u-Administratoren die Plattform nutzen: Benutzer: Schaltbefehle: Anzeigen, Ändern und Löschen von Schaltzeiten für den eigenen Arbeitsplatz Arbeitsplätze: Anzeigen Administratoren: Benutzer: Anzeigen, Anlegen, Ändern und Löschen Schaltbefehle: Anzeigen, Anlegen, Ändern und Löschen Arbeitsplätze: Anzeigen, Anlegen, Ändern und Löschen Wird der Mauszeiger auf ein Element der Weboberfläche platziert, wird ein Hinweis zu diesem Element angezeigt. Zusätzlich steht in der Webplattform eine über einen Hilfe-Button abrufbare Onlinehilfe zur Verfügung, 6.6.3 Wirtschaftliche Qualitätsanforderungen 6.6.3.1 Wiederverwendbarkeit Die Wiederverwendbarkeit ist durch ein modulares System gegeben. Da die Kyoto4u Plattform selbst eine reine Softwarelösung ist, kann sie schnell auf einem anderen System installiert werden. Die vorherige Installation ist zuvor zu löschen, da sonst die Lizenzbedingungen verletzt werden: eine Plattform-Lizenz darf nur einmal auf einem Server installiert sein. Die X10 und 433 MHz Komponenten sind modular und können bei einem Umzug mitgenommen werden. Für einige X10 Komponenten ist ggf. der Einsatz eines Elektroinstallateurs notwendig. Seite 37 von 110 Bei einem Umzug der Firma oder Änderung der Räumlichkeiten müssen die Einstellungen für Arbeitsplätze und zu steuernde Geräte entsprechend angepasst werden. 6.6.3.2 Varianten Kyoto4u ist für den Einsatz in mittelständischen Unternehmen, kleinen Konzernen und privaten Haushalten konzipiert. Für Unternehmen eignet sich der Einsatz von X10 wegen der besseren Reichweite und Unterstützung 256 Geräten, während 433 MHz wegen des geringeren Preises interessanter für Privatkunden ist. Für den Privatnutzer gibt es eine Community Version. Die 10 User Lizenz ist ebenfalls für Privatnutzer interessant. Für Unternehmen wird eine 10 User Lizenz oder größere Pakete von Kyoto4u angeboten. Die Lizenzen können nachträglich in 10er Schritten aufgestockt werden. Die Kyoto4u 2.0 wird zuerst für Windows 2000 Prof., XP und Vista angeboten. Linux- und MacVersionen folgen. Kyoto4u 2.0 ist eine internationalisierte Anwendung (I18N) und derzeit in den Sprachen Deutsch und Englisch verfügbar. Weitere Sprachen können durch Übersetzen der Ressource Bundle Dateien bequem ergänzt werden. 6.2.3.3 Sicherung Das Sichern der MySQL Datenbank muss von Hand erfolgen. Hierzu ist das Datenbankverzeichnis (in \mysql\data) von Kyoto4u auf einen externen Datenträger (z.B. USB Stick, DVD RAM Medium, …) zu kopieren. Wird die Datenbank beschädigt, ist eine Zurückführung in einen wohl definierten Zustand durch Zurückkopieren der Sicherungskopie möglich. 6.6.4 Rechtliche und normative Vorgaben (Auflagen) Die Installation von X10 DIN Modulen, X10 Lichtschaltern und X10 Phasenkopplern ist in Deutschland gesetzlich nur durch zugelassene Elektroinstallateure gestattet (die Installation von Seite 38 von 110 X10 Steckdosenmodulen, dem X10 PC Interface CM11 kann aber auch ohne Elektroinstallateur durchgeführt werden). Die Installation der Kyoto4u Plattform und der Meldeanwendung für Schaltzeiten muss durch fachkundige Administratoren durchgeführt werden. Eine Weitergabe von erworbenen Kyoto4u Lizenzen an andere Firmen ist nicht gestattet. Seite 39 von 110 6.7 Projektplan 6.7.1 Meilensteine Abbildung 13: Projektplan Entwicklung Die Arbeitsschritte Entwicklung und Dokumentation erfolgen nebenläufig. Seite 40 von 110 6.7.2 Gantt-Diagramm Abbildung 14: Gantt Entwicklung Seite 41 von 110 6.8 Wechselseitige Verfügbarkeitsanforderungen Zur Installation ist die Erfassung folgender Parameter erforderlich: − Arbeitszeiten der Benutzer − Benutzer, die Zugriff auf das System haben sollen − Administratoren, die Zugriff auf das System haben sollen − Arbeitsplätze an denen zu schaltende Geräte vorhanden sind − PCs, die zu steuern sind mit IP-Adresse − Übrige Geräte, die zu steuern sind − Welche Benutzer an welchem Arbeitsplatz arbeiten Der Kyoto4u Server muss die zu schaltenden Clients über das Intra-/Internet erreichen können und umgekehrt (Konfiguration Firewalls!). Auf dem Kyoto4u Server muss der SQL Server über den Standard Port 3306 erreichbar sein (andernfalls ist die Hibernate Config entsprechend anzupassen). Seite 42 von 110 6.9 Anforderungen an die Entwicklungs- und ggf. Einsatzumgebung Stabilität – auch im Dauerbetrieb - hat bei der Entwicklung der Kyoto4u Software hohe Priorität. Um mit den vorhandenen Mitteln Erfahrungen über das Verhalten der Software im Dauerbetrieb zu sammeln, liefen während der ganzen Diplomarbeit zwei Server im 24h-Betrieb (einer Linux, einer Windows) mit den jeweiligen Releaseständen der Kyoto4u Software. Hardware: Entwicklungsrechner Prozessor: Intel Dual-Core 1,7 GHz RAM: 3 GB Festplatte: 200 GB Netzwerk: 100Mbit Video: WXGA (1280*800) Interfaces: CM11G USB, Allnet 3000RF Mk2 Relaismodule: AM12G, ITR-3500 Test-Server #1: Webplattform Prozessor: Intel Pentium III 1 GHz RAM: 1,792 GB Festplatte: 250 GB Netzwerk: 100Mbit Video: XGA (1024*768) Test-Server #2: Scheduler Prozessor: Intel Pentium M 500MHz RAM: 256MB Festplatte: 12 GB Netzwerk: 100 Mbit Video: XGA (1024*768) Interfaces: CM11G, Allnet 3000RF Mk2 Relaismodule: AM12G, ITR-3500 Netzwerk Router: Arcor DSL WLAN Router mit 4 Port 100Mbit Switch Internet: 6 Mbit DSL Seite 43 von 110 Software: Entwicklungsrechner Betriebssystem: Vista Business SP1 Entwicklungsumgebungen: Eclipse 3.3.1, Delphi 5 VM: Java 1.50, Java Comm. API 2.0 Versionsmanagement: TortoiseSVN Datenbank: MySQL Workbench 5.0.27, MySQL 5, PHPMyAdmin Installer IDE: Nullsoft Installer NSIS 2.40 Auf dem Entwicklungsrechner befindet sich die aktuelle Version aus dem Entwicklungsprozess, die autark ausgeführt werden kann. Test-Server #1 (LINUX): Webplattform Betriebssystem: Open Suse 10 Servletcontainer: Apache Tomcat 5.5.27 VM: Java 1.50 Datenbank: MySQL 5, PHPMyAdmin Webserver: Apache 2 mit PHP Issue-Tracking-System: Eventum Zwischenversionen werden auf den Testservern installiert und laufen im Dauerbetrieb. Die Webanwendung wird dabei auf dem Linux Server installiert und nutzt die lokale MySQL Datenbank. Test-Server #2 (WINDOWS): Scheduler Betriebssystem: Windows XP SP3 VM: Java 1.50, Java Comm. API 2.0 Datenbank: / (Nutzung der DB von Testserver #1) Die Zwischenversion des Schedulers wird auf dem Windows XP Server installiert und greift über das lokale Netzwerk (LAN) auf die Datenbank des Linux Servers zu. Auch dieser Server läuft ununterbrochen im Dauerbetrieb zwecks der Untersuchung der Stabilität der Software. Seite 44 von 110 6.10 Beschaffungs-, Schulungsanforderungen mit Terminvorgaben 1) Die Regelarbeitszeiten der Benutzer müssen erfasst worden sein. 2) Vor der Installation von Kyoto4u müssen die zu steuernden Geräte, ihr Ort (Arbeitsplatz), die Benutzer, die Zugriff auf das System haben sollen schriftlich erfasst worden sein. 3) Ein Elektriker muss die Lauflänge der Signale auf der Stromleitung prüfen und eine Aufstellung anfertigen, ob ein Phasenkoppler erforderlich ist (zur Verteilung der X10 Signale auf alle drei Phasen), ob X10 Repeater zur Verstärkung des X10 Signals und ob Filter zur Beseitigung von Störungen durch andere elektrische Geräte erforderlich sind. 4) Die Installation von Steckdosenmodulen, dem Server oder der Kyoto4u Software auf einem bestehenden Server wird von einem Kyoto4u Administrator oder dem lokalen Administrator selbst durchgeführt. 5) Die Installation von DIN-Modulen erfolgt von einem zugelassenen Elektroinstallateur 6) Der Kunden Administrator erhält eine Schulung im Umgang mit dem Kyoto4u System vom Kyoto4u Administrator 7) Der Kunden Administrator schult selbst die Angestellten im Umgang mit der Steuerung von Geräten an ihrem Arbeitsplatz über die Kyoto4u Webplattform Seite 45 von 110 7 Systementwurf Seite 46 von 110 7.2 Scheduler Der Scheduler (business.kyoto4u.Scheduler) ist als eine eigenständige Anwendung entwickelt worden, die denzentral (also getrennt von der Webplattform) eingesetzt werden kann. Das ermöglicht z.B. einen Einsatz der Webplattform direkt beim Büroausstatter, während der Scheduler vor Ort beim Kunden läuft. Weiterhin kann der Scheduler mehrfach auf verschiedenen Rechnern laufen. Das ist hilfreich, wenn man Reichweitenprobleme bei der Ansteuerung von Relais beseitigen möchte. In diesem Fall hängt man an jeden Scheduler Server ein X10 oder Intertechno PC Interface. Der Scheduler wurde in Java 1.50 unter Verwendung von Java Communication API 1.2 entwickelt und ist theoretisch plattformunabhängig (Windows, UNIX, Mac OS) einsetzbar. Im Rahmen der Diplomarbeit wird nur die Lauffähigkeit unter Windows 2000, XP und Vista garantiert (Aktivitätsdiagramm Scheduler s. 14.1.2, Klassendiagramm Scheduler s. 14.3.2, Sequenzdiagramm Schaltung elektr. Verbraucher s. 14.2.1 ). PCs werden vor einer Abschaltung der Stromzufuhr ferngesteuert herunter gefahren (Sequenzdiagramm Schaltung Computer s. 14.2.2). Für diese Funktionalität wurde mit Delphi 5.0 ein Windows Programm entwickelt, dass den Anwender über eine bevorstehende Abschaltung seines Rechners informiert (Der Anwender kann die Abschaltung dann verzögern oder ihr zustimmen. Meldet er sich überhaupt nicht, wird nach einer in der Datenbank festgelegten Zeit der Rechner automatisch von der Delphi Anwendung herunter gefahren. Die Kommunikation zwischen dem Scheduler und der Delphi Anwendung erfolgt über das Netzwerk (kann LAN oder WAN sein) per TCP/IP. Für die Delphi Anwendung wurde im Rahmen der Diplomarbeit auf Basis des Nullsoft Installers ein eigener Installer geschrieben, der eine Out-of-the-Box Installation ermöglicht. Dabei wird sicher gestellt, dass die Delphi Anwendung beim Start des Systems automatisch geladen wird. Weiterhin wird das Programm unter Windows in der Übersicht der installierten Software eingetragen und kann darüber deinstalliert werden. Seite 47 von 110 7.3 Webplattform Bei der Webplattform von Kyoto4u wird das Struts Framework kombiniert mit JSP Seiten und etwas JavaScript (für OnHints und Buttons) unter Berücksichtigung des MVC-Patterns eingesetzt. Das Model-View-Controller Pattern sieht eine saubere Trennung von Datenhaltung, Visualisierung und Eventhandling vor. Trennung der Schichten nach MVC: Controller http Anfrage Struts Action Servlet Action Klassen (z.B. AddDeviceAction) Servlet/ JSP Container (Tomcat) Model http Antwort Formbeans (z.B. AddDeviceBean) Business Objekte (kyoto4u.business.*) View JSP-Seiten (z.B. adddevice.jsp) (Aktivitätsdiagramm zur Webplattform s. Anhang 14.1.1, Klassendiagramm zur Webplattform finden Sie im Anhang 14.3.1) Seite 48 von 110 7.4 Releaseplan Diplomarbeit Abbildung 15: Projektplan Diplomarbeit Die Arbeitsschritte Entwicklung, BWL und Dokumentation erfolgen nebenläufig (s. 7.6 Gantt Diagramm) Seite 49 von 110 7.5 Gantt-Diagramm Diplomarbeit Abbildung 16: Gantt Diplomarbeit Seite 50 von 110 8 Implementierung Als Entwicklungsumgebung wurde Eclipse 3 gewählt, da sie ausgereift, kostenfrei und sehr gut geeignet für die Entwicklung von Java Programmen ist. Als Java VM wurde noch die Version 1.50 beibehalten, da sie den Anforderungen des Projektes ausreicht und bereits zahlreiche Updates erfahren hat (Stabilität im Dauerbetrieb ist für die Kyoto4u Software wichtiger als die neuesten Sprachfeatures). Als Datenbank kommt während der Entwicklung MySQL 5 zum Einsatz. Aber um kompatibel zu möglichst vielen gängigen Datenbanksystemen zu sein, wurde Hibernate als OR Mapper gewählt. Hat der Kunde schon ein bestehendes SQL Datenbanksystem, was von Hibernate unterstützt wird, kann dieses eingesetzt werden. Für die Entwicklung der Meldeanwendung für Schaltzeiten wurde Delphi 5 beibehalten, da sich damit schnell (RAD) native und kompakte Windows Tools entwickeln lassen. Obwohl die Version 5 schon in die Jahre gekommen ist, laufen damit erzeugte Programme auch noch unter Windows Vista und neuere Versionen von Delphi sind weniger ressourcenschonend. Als Aufgabenverwaltungs-System (Issue Tracking) wurde Eventum gewählt, da es hier den Anforderungen für die Verwaltung von Aufgaben und Fehlern genügt, kostenfrei verfügbar ist und auf der bestehenden MySQL Datenbank in Verbindung mit einem Apache Server und PHP lauffähig ist. 8.1 Anbindung Datenbank Die Datenbankanbindung erfolgt über das OR-Mapping Framework „Hibernate“32. Hibernate ermöglicht das Mappen von Objekten in eine Datenbank. Die Member-Variablen und Beziehungen der Klassen werden dazu in XML-Mapping Dateien oder ab Java 1.50, direkt im betreffenden Objekt, über Annotations33 beschrieben. Hibernate erledigt den Rest. Durch Hibernate wird die Anwendungslogik vom eingesetzten Datenbank losgekoppelt: wird der Datenbanktyp gewechselt, muß in der Hibernate-Konfigurationsdatei „hibernate.cfg.xml“ lediglich der entsprechende Datenbankdialekt eingetragen werden. Mühsame Änderungen der SQL-Skripte entfallen. Beim eingesetzten Datenbanksystem muß es sich lediglich um ein von Hibernate Unterstütztes handeln. 32 33 Hibernate Annotations Seite 51 von 110 8.2 Anbindung Protokolle und Medien 8.2.1 Refactoring nach Command Pattern Kyoto4u unterstützt in der Version 2.0 zwei Übertragungsmedien und zwei Übertragungsprotokolle. In Zukunft sollen weitere Übertragungsmedien und –protokolle folgen. Dazu wurde der Quellcode der Version 1.0 komplett redesigned. Einsatz des „Command Patterns“34 sorgt nun für eine lose Kopplung der unterstützten Protokolle durch Kapselung der Schaltbefehle. Abbildung 17: Einsatz des Command Patterns in Kyoto4u 2.0 Die Kyoto4u Plattform kennt dabei nur die Methode „execute()“(ausführen). Der Befehl selbst weiß, für welches Protokoll er bestimmt ist und was er zu tun hat (einschalten, dimmen, PC herunter fahren, …). Dem Befehl wird eine Referenz auf das zugehörige zu schaltende Gerät übergeben. Dadurch können zukünftig mit geringem Aufwand weitere Smart Home Protokolle der Plattform hinzugefügt werden: es müssen hierfür nur die neuen Befehle und konkreten Geräte- 34 http://de.wikipedia.org/wiki/Kommando_(Entwurfsmuster) Seite 52 von 110 Klassen, die das Interface IDevice implementieren, programmiert werden (+ deren Hibernate Mappings). Ein komplettes Umschreiben der Kyoto4u Plattform ist dazu nicht mehr erforderlich. public interface ICommand { public int getId(); public void setId(int id); public void execute(); public String getCommand(); public IDevice getDevice(); public void setDevice(IDevice device); Interface ICommand } Alle Smart Home Befehle müssen nun das Interface ICommand implementieren. public class TurnOn implements ICommand { private int id; private IDevice device; private final int command = Commands.TURNON; public TurnOn(){ } public TurnOn(IDevice device){ this.device=device; } public void execute() { device.turnOn(); } public String getCommand(){ return "einschalten"; } public IDevice getDevice() { Befehlsklasse TurnOn (Teil1) Seite 53 von 110 return device; } public void setDevice(IDevice device) { this.device=device; } Befehlsklasse TurnOn (Teil 2) ... } Ein Befehlobjekt hält eine Referenz vom Typ des Interfaces IDevice auf das zu schaltende Geräteobjekt. In seiner execute()-Methode ruft es bei dem zugehörigen Gerät den betreffenden Befehl auf (hier turnOn()). Seite 54 von 110 8.2.2 Implementierung des Intertechno Protokolls Zur Unterstützung des 433MHz Intertechno Protokolls fiel die Wahl auf das „Allnet Mk2 3000 RF“ PC Interface. Dieses Gerät ist im Handel preiswert erhältlich und kann direkt an das LAN angeschlossen werden. Es muß also nicht wieder X10 PC Adapter direkt am Server hängen. Das Allnet Mk2 wird per Browser konfiguriert und erhält eine eigene IP Adresse, über die es über Port 80 im Netzwerk erreichbar ist. Abbildung 18: Allnet Intertechno Interface Das Allnet Mk2 ist als Standalone Lösung konzipiert und verfügt über eine eigene Weboberfläche über die das direkte Schalten von 433MHz Funkempfängern möglich ist. Um das Gerät über Kyoto4u ansprechen zu können, musste das Protokoll des Webservers analysiert werden. Hierfür wurde der freie Netzwerksniffer Wireshark eingesetzt. Mit dieser Seite 55 von 110 Anwendung ist das Mitschneiden von Netzwerkkommunikation möglich. Da hier schnell eine große Datenmenge entstehen kann, bietet dieses Werkzeug die Möglichkeit, Filter zu setzen. Zur Analyse der Kommunikation zwischen Browser und Allnet Mk2 wurde ein Filter gesetzt, der nur den Netzwerktraffic zwischen Browser PC und Allnet Mk2 aufzeichnet. Während die Aufzeichung lief, wurde ein 433MHz Empfänger über das Webinterface des Allnet Mk2 ein- und ausgeschaltet. Die Analyse ergab, dass der Steuer-Befehl "ts?s="+unitcode+"&t="+command lautet, wobei unitcode die Adresse des Empfängers und command die ID des auszuführenden Befehls ist. In der Klasse kyoto4u.business.intertechno.IntertechnoGateway wurde das Protokoll entsprechend implementiert. 8.3 Logging Das System verfügt über eine persistente Log-Funktion. In der Datei kyoto4u.log.xml (im Root der Anwendung) werden automatisch Systemereignisse im XML Format festgehalten. Dabei wird automatisch zwischen informellen und gravierenden Fehlermeldungen unterschieden. Diese Funktionalität wird in der Singleton-Klasse „kyoto4u.control.GlobalLogger“ anwendungsweit bereitgestellt. Andere Klassen übergeben ihre Log-Meldungen an das Singleton-Objekt dieser Klasse. Seite 56 von 110 8.4 Fehlerbehandlung 8.4.1 Webanwendung Fehlermeldungen des Struts Webframeworks werden abgefangen und über die Seite error.jsp im Browser gemeldet. Abbildung 19: Kyoto4u Fehlerbehandlung (Weboberfläche) Java Laufzeitfehler werden abgefangen und über die Seite baderror.jsp im Browser gemeldet. In beiden Fällen hat der Benutzer die Möglichkeit, sich noch vom System abzumelden. Simuliert werden kann ein solcher Fehler z.B. durch eine fehlende Datenbankverbindung. Das Gesamtsystem bleibt dabei stabil. Man kann andere Funktionen weiter nutzen, soweit sie nicht durch die Fehlerursache mit beeinträchtigt werden. Der Administrator hat die Möglichkeit, detaillierte Log-Informationen zur Fehlerursache der LogDatei kyoto4u.log.xml zu entnehmen. Seite 57 von 110 8.4.2 Scheduler Anwendung Fehlermeldungen werden auf der Kommandozeile ausgegeben. Fehler wie eine fehlende Datenbankverbindung werden abgefangen. Das System läuft weiter, kann in diesem Fall aber erst wieder Schaltbefehle ausführen, wenn die Datenbankverbindung wieder steht. 8.5 Vorgehensmodell Es wurde ein Modell gesucht, bei dem der Kunde (stellvertretend durch den Diplom-Betreuer, Herrn Prof. Steyer), regelmäßig den Projekt-Fortschritt verfolgen kann und eventuelle Anforderungsabweichungen bei der Entwicklung frühzeitig erkannt und beseitigt werden können. Das Spriral-Modell von Barry W. Boehm bietet hier eine geeignete Strategie: Das Projekt wird in Form von Iterationen vorangetrieben. Hierbei bekam Herr Prof. Steyer ein einem festen Zeitintervall von 14 Tagen den Projektfortschritt demonstriert und es wurden jeweils die Meilensteine für das nächste Intervall festgelegt. Abbildung 20: Spiralmodell 35 Spiralmodell Seite 58 von 110 35 Jede Iteration wird dabei in Form eines Wasserfallmodells durchgeführt: Abbildung 21: Wasserfallmodell 36 Wasserfallmodell Seite 59 von 110 36 8.6 Projektmanagement Teilaufgaben, Fehler und codebezogene Notizen wurden im Issuetrackingsystem „Eventum“ festgehalten.37 Es benötigt lediglich einen MySQL- und Apache Server und die Scriptsprache PHP und verfügt damit über eine Weboberfläche. Somit war es möglich, auch von unterwegs, Informationen zentral abzurufen oder festzuhalten. Abbildung 22: Eventum – Projektstatusübersicht Erkenntnisse, die nebenbei beim Testen der Anwendung, Schreiben der Diplomarbeit oder während der Entwicklung erfolgten, konnten dank diesem Werkzeug nicht in Vergessenheit geraten. 37 Eventum Seite 60 von 110 8.7 Installationsprogramm Die Kyoto4u Software soll möglichst „Out-of-the-Box“ funktionieren. Eine gute Hilfe stellt der kostenlose „Nullsoft Installer“38 dar. Er ermöglicht die Erstellung von Installationsprogrammen anhand einer Script-Datei: Abbildung 23: NSIS Installations-Script NSIS erstellt bei der Installation automatisch die angegebene Programmgruppe, Programmlinks und einen Deinstaller zur Entfernung der kompletten Installation. 38 NSIS Seite 61 von 110 8.8 Gewährleistung der Stabilität des Systems An eine Anwendung, die die Betriebsfähigkeit von Geräten steuert, werden besonders hohe Anforderungen gestellt. Folgende Maßnahmen tragen zur Stabilität der Software bei: - Jeder Steuerbefehl (sowohl X10, als auch 433MHz) wird drei Mal hintereinander gesendet. So wird Übertragungsstörungen vorgebeugt. - Das Systemverhalten wird in der Log-Datei kyoto4u.log.xml im XML Format festgehalten. XML ist nicht nur zeitgemäß, sondern auch ein sehr robustes Dateiformat. Diese Datei kann im laufenden Betrieb kopiert und die Kopie mit einem einfachen Texteditor gelesen werden. - Datenbankzugriffe werden über Transaktionen durchgeführt. Im Falle eines Fehlers wird ein Rollback durchgeführt. - Datenbankzugriffe werden beim Auftreten von Fehlern nach dem Rollback wiederholt Eine Zwischenversion von Kyoto4u wurde bei der Berliner Lazar Malermeister GmbH während der Diplomarbeit installiert und läuft dort im Dauerbetrieb. Hier konnten erste reale Einsatzerfahrungen gesammelt werden (s. Punkt 15 im Anhang). Seite 62 von 110 8.9 Absicherung des Quellcodes Der Quellcode der zu veröffentlichen Version von Kyoto4u soll durch Code Obfuscation39 geschützt werden. Hierbei werden automatisiert Klassen, Methoden und Member-Variablen umbenannt, sodaß der Code für fremde Entwickler schwerer nachvollziehbar wird. Für die Scheduler Anwendung lässt sich dieses Verfahren gut automatisiert einsetzen. Lediglich die Hibernate Mapping-Dateien müssen dann noch manuell an die neuen Bezeichner angepasst werden. Bei der Webanwendung hingegen muß berücksichtigt werden, dass neben der Anpassung der Hibernate Mapping-Dateien auch noch die struts-config.xml und die JSP Seiten angepasst werden müssen. Hier ist bislang leider ein hoher manueller Nachbearbeitungsaufwand erforderlich. 39 yGUARD Seite 63 von 110 9 Businessplan Es wurde ein Business Case am Beispiel einer Verwaltung mit 100 Mitarbeitern - bei heutigen Energiepreisen aufgestellt, um die Amortisationszeit für eine Kyoto4u Installation (mit Hardware) zu untersuchen. Seite 64 von 110 Es wird vom durchschnittlichen Deutschen Arbeitnehmer ausgegangen mit 230 Arbeitstagen im Jahr (Wochenenden, Urlaub und Krankheitstage wurden abgezogen). Der Eigenverbrauch des Systems wird von der Ersparnis abgezogen. 9.1 Break Even Bei der durchgeführten Kalkulation erreicht der Kunde den Break-Event bereits nach 1,15 Jahren. Nach dieser Zeit haben sich die Anschaffungskosten für Software, Hardeware und Installationsdienstleistungen über die eingesparten Stromkosten amortisiert. Ab diesem Zeitpunkt erwirtschaftet Kyoto4u für diesen Kunden mit den eingesparten Energiekosten „Gewinn“. Bei dieser Kalkulation wurde sogar noch nicht berücksichtigt, dass Kyoto4u Geräte sequentiell (d.h. nacheinander) einschaltet. Hier ist noch eine zusätzliche Energiekostenersparnis zu erwirtschaften, da gewerbliche Kunden bei den meisten Energieversorgern für Verbrauchsspitzen zusätzlich zur Kasse gebeten werden. Spannungsspitzen entstehen meist, wenn mehrere Geräte gleichzeitig eingeschaltet werden (z.B. wenn alle Angestellten morgens zur gleichen Zeit ihre PCs einschalten). Bei dieser Beispielinstallation wird die Kyoto4u Software auf einem bestehenden Firmenserver installiert. Soll für das System eigens ein Server angeschafft werden, fällt er einmalig mit ca. 500 Euro und jährlich ca. 52,56 Euro (bei 0,040 KWh Verbrauch eines Eco Servers) an. Seite 65 von 110 10 Produkterstellung 10.1 Profil des Endproduktes Die Community/Home Edition von Kyoto4u wird unter http://www.kyoto4u.de/download bzw. http://www.kyoto4u.net/download (International Release) kostenfrei zum Download bereitgestellt werden. Die kommerziellen Editionen können online bestellt werden und werden auf einer CDROM im DVD Cover ausgeliefert. Je nach Paket ist wird das Handbuch in gedruckter Form beigelegt oder befindet sich als PDF auf der CDROM. Kyoto4u kompatible Hardware kann von fachkundigen Personen direkt über Partnershops unter http://www.kyoto4u.de/hardware bzw. http://www.kyoto4u.net/hardware (int.) geordert werden. Für später ist der Aufbau eines Netzwerkes von Elektroinstallateuren angedacht, die die Installation optional für den Kunden durchführen können. 10.2 Paketkosten 10.2.1 Kyoto4u Community / Home Edition: Steuerung von Powerline und 433MHz Akteueren Komfortables Webinterface Scheduler Anwendung Als kostenfreier Download 24-7 über http://www.kyoto4u.de 0,00 € Die Community Edition kann von der Kyoto4u-Website heruntergeladen werden. Seite 66 von 110 Starter / Commercial Edition: 10 Benutzer Lizenz für 10 PCs Arbeitsplatzverwaltung für 10 Arbeitsplätze Meldetool für Schaltzeiten Lieferung auf CD im DVD Cover Handbuch auf CD als PDF 499,00 € Premium Edition: Wie Starter Edition mit: 20 Benutzer Lizenz Gedrucktes Handbuch 899,00 € Enterprise Edition: Wie Starter Edition mit: 100 Benutzer Lizenz Gedrucktes Handbuch Hotline Service 2.999,00 € Lizenzerweiterung bestehender Pakete um 10 User: Lieferung auf CD im DVD Cover Handbuch auf CD als PDF 499,00 € Die Hardware muß separat erworben werden. Unter http://www.kyoto4u.de/hardware (Deutschland) bzw. http://www.kyoto4u.net/hardware (USA, UK, Frankreich) sind einige Bezugsquellen angegeben. Es folgt eine Aufstellung der wichtigsten Hardwarekomponenten: Seite 67 von 110 Kyoto4u Server (nur Hardware) (ist nicht erforderlich, wenn bereits ein Server vorhanden) Intel Atom Prozessor Solid State Disk Linux Betriebssystem Leistungsaufnahme ca. 20 W 699,00 € Abbildung 24: Barebone DL1087 mit Atom Prozessor 40 Installationsservice wird auf Wunsch gesondert angeboten: Fachkraft: Stundensatz zzgl. Anfahrt: 99,00 € IT Administrator Softwareentwickler 149,00 € Elektroinstallateur 49,00 € 10.2.2 X10 Module CM11G PC Interface CM11G PC Interface 220 V Ausführung Anschluß an RS232 69,95 € 41 Abbildung 25: CM11G PC-Adapter für X10 40 41 Barebone CM11 Seite 68 von 110 CM11G USB PC Interface CM11G PC Interface 220 V Ausführung Anschluß an USB Port 69,95 € AM12G Relais Steckdosenmodul 220 V Ausführung Schaltet Lasten bis 3600 W 29,95 € 42 Abbildung 26: Relaismodul AM12G LM12G Dimmer Steckdosenmodul 220 V Ausführung Schaltet Lasten bis 300 W nur für Glühlampen! 29,95 € Abbildung 27: Dimmer Modul LM12G 42 43 AM12 LM12G Seite 69 von 110 43 LW11G Wanddimmer 59,95 Euro netto AD10G DIN-Schienenschalter 39,95 Euro netto LD11 DIN-Schienen-Dimmer 39,95 Euro netto FD10G DIN-Phasenkoppler 49,95 Euro netto CAT3000 X10 Repeater 599 Euro netto Abbildung 28: Installation eines X10 Wandschalters Diese Module dürfen nur durch einen Elektroinstallateur installiert werden! Es wurden nur die wesentlichen X10 Module aufgeführt. Am Markt sind noch deutlich mehr X10 kompatible Module erhältlich (z.B. Mikromodule, Transceiver, Fernbedienungen, …). Eine weitergehende Übersicht von Kyoto4u kompatiblen X10 Geräten für den Deutschen Markt wurde unter http://www.kyoto4u.de/hardware und für die Märkte USA, UK und Frankreich unter http://www.kyoto4u.net/hardware veröffentlicht. Seite 70 von 110 10.2.3 433 MHz Funk-Module Intertechno System - PC Interface Allnet 3000 RF Mk2 PC Interface Ethernet Anschluss Schaltet per Funk Intertechno Empfänger inkl. 3 Steckdosenmodule 79,00 € 44 Abbildung 29: Allnet 3000 RF Mk2 IT-300 Dimmer Steckdosenmodul IT-300 Dimmersteckdosenmodul 220 V Ausführung Schaltet Lampen bis 300 W auch für Hochvolt-Halogenlampen 19,00 € Abbildung 30: IT-300 Dimmer Steckdose 45 IT-3500 Relais Steckdosenmodul IT-3500 Relaissteckdosenmodul 220 V Ausführung Schaltet Lasten bis 3500 W 19,00 € 46 Abbildung 31: ITR-3500 Schalter Steckdose YWT 8500 Funk Wandschalter YWT 8500 Funk Wandschalter Schaltet alle Intertechno Empfänger Reichweite ca. 30 Meter 19,00 € 47 Abbildung 32: YWT 8500 Wandschalter 44 AllnetInterface AllnetDimmer 46 AllnetRelais 45 Seite 71 von 110 Es wurden nur die wesentlichen 433 MHz Module aufgeführt. Am Markt sind noch deutlich mehr Intertechno 433MHz kompatible Module erhältlich (z.B. weitere drahtlose Schalter, Blinklichter, Fernbedienungen, …). Eine weitergehende Übersicht von Kyoto4u kompatiblen Intertechno-Geräten für den Deutschen Markt wurde unter http://www.kyoto4u.de/hardware (unter den X10 Produkten) veröffentlicht. 10.3 Markteinführung 10.3.1 Guerilla-Marketing48 Mit wenig Einsatz möglichst viel erreichen: wenig Einsatz ist in der Ausgangssituation möglich. Damit soll eine möglichst breite Produkt Awareness geschaffen werden: - Eine Community-Edition von Kyoto4u wird kostenfrei angeboten und so beworben (Download im Internet, auf Fachmagazin CDs, etc.) - Vorstellung des Produktes bei allen Fachzeitungen und passenden Magazinen - Präsenz auf Messen (z.B. „Lange Nacht der Wissenschaften“) - Pilotinstallationen bei Multiplikatoren 10.3.2 Reguläres Marketing Sobald die finanzielle Lage es erlaubt, erfolgt reguläres Marketing. Z.B. - Installation bei größeren Multiplikatoren - Anzeigen in Fachmagazinen - Eigener Messestand auf Fachmessen - … 47 48 AllnetWandschalter Marketing Seite 72 von 110 11 Handbücher 11.1 Benutzerhandbuch 11.1.1 Einführung Herzlich willkommen bei Kyoto4u! Das Kyoto4u System optimiert den Energieverbrauch Ihres Unternehmens und hilft der Umwelt durch Reduktion des CO2-Ausstoßes Ihrer Energielieferanten. Dazu werden für elektrische Verbraucher Schaltzeiten definiert, zu denen die Stromversorgung aus- oder eingeschaltet wird. Bei PCs wird der Anwender bei einer bevorstehenden Abschaltung seines Computers informiert und kann die Schaltzeit verzögern oder aussetzen. 11.1.2 Anmeldung am System Wenn Ihnen Ihr Administrator Zugangsdaten für das Kyoto4u System mitgeteilt hat, haben Sie die Möglichkeit, Schaltzeiten für Ihren Arbeitsplatz anzupassen. Für den Zugriff auf die Kyoto4u Plattform benötigen Sie die IP Adresse des Kyoto4u Servers. Sie erhalten sie von Ihrem Administrator. Starten Sie einen Browser und geben Sie die IP-Adresse des Kyoto4u-Servers ein: http://<ip adresse> Seite 73 von 110 Abbildung 33: Kyoto4u Anmeldung Webplattform Es erscheint der Anmeldebildschirm der Kyoto4u-Plattform. Geben Sie Ihren Benutzernamen (meist Ihre Email-Adresse) und Ihr Passwort ein. Bestätigen Sie die Eingabe durch Klick auf den Anmelden Button. Wenn Ihre Logindaten vom System akzeptiert wurden, landen Sie in der Übersicht der Kyoto4u Plattform. Seite 74 von 110 11.1.3 Erstellen eines Schaltbefehls Klicken Sie in der Übersicht auf den „Schaltzeiten“ – Button. Wählen Sie den Arbeitsplatz, für den Sie einen Schaltbefehl erstellen möchten. Abbildung 34: Kyoto4u Arbeitsplatz auswählen Bitte beachten: Sie können Schaltzeiten und Befehle eines Arbeitsplatzes nur erstellen, wenn Sie für diesen Arbeitsplatz die entsprechenden Rechte von Ihrem Administrator erhalten haben! Sie erhalten eine Übersicht der bereits im System hinterlegten Schaltzeiten und Befehle für diesen Arbeitsplatz. Seite 75 von 110 Abbildung 35: Kyoto4u Übersicht Schaltzeiten pro Arbeitsplatz Klicken Sie auf den „Hinzufügen“ – Button. Es erscheint eine Ansicht, in der Sie die Parameter des neuen Schaltbefehls angeben: Seite 76 von 110 Handelt es sich um einen einmalig auszuführenden Befehl, geben Sie das Datum an, zu dem der Befehl ausgeführt werden soll. Andernfalls wählen Sie den Wochentag, an dem der Befehl regelmäßig wiederholt werden soll. Wählen Sie dann die Zeit für die Ausführung des Befehls. In der Geräteliste finden Sie alle am Arbeitsplatz eingerichteten Geräte. Anschließend wählen Sie den auszuführenden Befehl aus und verlassen diese Ansicht durch Klick auf den „Speichern“ – Button. Möchten Sie Ihre Auswahl hingegen nicht speichern, klicken Sie auf den „Zurück“ – Button. Ihre Angaben werden dann verworfen. Seite 77 von 110 11.1.4 Ändern von Schaltzeiten und Befehlen Klicken Sie in der Übersicht auf den Button „Schaltzeiten“. Wählen Sie dann den Arbeitsplatz aus, für den Sie eine Schaltzeit ändern möchten. Bitte beachten: Sie können Schaltzeiten und Befehle eines Arbeitsplatzes nur ändern, wenn Sie für diesen Arbeitsplatz die entsprechenden Rechte von Ihrem Administrator erhalten haben! Sie erhalten eine Übersicht der Schaltzeiten und Befehle, die für den ausgewählten Arbeitsplatz konfiguriert sind. Klicken Sie auf die ID vor der zu ändernden Schaltzeit. Es erscheint eine Ansicht mit dem Schaltermin, zu schaltendem Gerät und dem auszuführenden Befehl: Abbildung 36: Kyoto4u Schaltzeit ändern Seite 78 von 110 Ändern Sie die gewünschte Einstellung und verlassen Sie diese Ansicht durch Klick auf den „Speichern“ – Button. Möchten Sie hingegen doch keine Änderungen vornehmen, verlassen Sie diese Ansicht durch Klick auf den „Zurück“ – Button. Eventuelle Änderungen werden dann verworfen. 11.1.5 Löschen eines Schaltbefehls Klicken Sie in der Übersicht auf den „Schaltzeiten“- Button. Wählen Sie anschließend den Arbeitsplatz bei dem Sie einen Schaltbefehl löschen möchten. Bitte beachten: Sie können Schaltzeiten und Befehle eines Arbeitsplatzes nur löschen, wenn Sie für diesen Arbeitsplatz die entsprechenden Rechte von Ihrem Administrator erhalten haben! Sie erhalten eine Übersicht der für den Arbeitsplatz konfigurierten Schaltzeiten und Befehle. Klicken Sie hinter dem zu löschenden Befehl auf den „Löschen“ – Link. Wenn Sie dann die Sicherheitsabfrage bestätigen, wird der gewählte Schaltbefehl gelöscht. 11.1.6 Steuerung eines PCs In der Kyoto4u Plattform sind in der Regel Schaltzeiten für Ihren Computer konfiguriert, die Ihren Arbeitszeiten entsprechen. D.h. Ihr PC wird vor Arbeitsbeginn automatisch gestartet und nach planmäßigem Arbeitsende automatisch herunter gefahren. Vor einer Abschaltung Ihres Computers werden Sie automatisch informiert: Seite 79 von 110 Abbildung 37: Kyoto4u Meldeprogramm für Schaltzeiten Sie haben dann die Möglichkeit, die Abschaltung zu verzögern. Reagieren Sie nicht auf die Meldung werden automatisch alle noch offenen Anwendungen geschlossen und Ihr Computer herunter gefahren. Die Stromzufuhr Ihres Computers wird anschließend abgeschaltet. 11.1.7 Technische Unterstützung Bei offen gebliebenen Fragen können Sie sich telefonisch oder per Email wenden an: Email: [email protected] Telefon: 030 / 41 11 08 15 Web: http://www.kyoto4u.de Abbildung 38: Technische Unterstützung Seite 80 von 110 11.2 Systemdokumentation 11.2.1 Einführung Herzlich willkommen bei Kyoto4u! Das Kyoto4u System optimiert den Energieverbrauch Ihres Unternehmens und hilft der Umwelt durch Reduktion des CO2-Ausstoßes Ihrer Energielieferanten. Dazu werden für elektrische Verbraucher Schaltzeiten definiert, zu denen die Stromversorgung aus- oder eingeschaltet wird. Bei PCs wird der Anwender bei einer bevorstehenden Abschaltung seines Computers informiert und kann die Schaltzeit verzögern oder aussetzen. 11.2.2 Systemanforderungen Kyoto4u wurde möglichst Systemressourcen schonend entwickelt, d.h. es ist möglich die Kyoto4u Plattform auf einem bereits in der Firma bestehenden Server zu installieren. Der Prozessor und Speicher des Servers wird dabei kaum durch die Kyoto4u Plattform Software belastet. Bei 1-10 Kyoto4u Benutzern muß Ihr Server dabei lediglich Leistungsreserven frei haben, die der Leistung eines Pentium III mit 500 MHz entsprechen. Folgende Technologien sind für den Betrieb der Kyoto4u Plattform erforderlich: Servlet-Container: Tomcat 5.5.x VM: Java 1.50 oder neuer, Java Comm. API 2.0 Datenbank: MySQL 5 oder andere von Hibernate unterstützte SQL Datenbank Seite 81 von 110 11.2.3 Installation 11.2.3.1 Servlet-Container Downloaden Sie von http://tomcat.apache.org/download-55.cgi den aktuellen Tomcat 5.5.x Servlet Container. Entpacken Sie dieses Archiv in ein beliebiges Verzeichnis auf dem Server. 11.2.3.2 Java VM Wenn Ihr Server noch über kein installiertes Java oder es älter als Version 1.50 (5.0) ist, laden Sie das Java Runtime Environment (JRE) Version 5.0 von http://java.sun.com/javase/downloads/index_jdk5.jsp herunter und installieren Sie sie auf dem Server in ein beliebiges Verzeichnis. 11.2.3.3 Java Communications API Wenn Sie das X10 System einsetzen möchten, benötigen Sie die Java Communications API 2.0. (auch wenn Sie die USB Variante des X10 Interfaces CM11 verwenden. Diese CM11 Ausführung stellt Ihnen dann einen virtuellen RS232 Port zur Verfügung). Laden Sie Java Comm. API von http://java.sun.com/products/javacomm/ und installieren Sie es auf dem Server. Achtung! Fehlerquelle: vermeiden Sie es möglichst, mehrere Java VMs parallel auf dem Server zu installieren. Bei einigen Betriebsystemen ist eine VM gleich dabei! Wenn Sie JavaComm. API installieren, achten Sie darauf, dass Sie JavaComm bei der VM installieren, die für Kyoto4u verwendet wird. Andernfalls scheitert die Kommunikation mit dem PC Interface! Seite 82 von 110 11.2.3.4 SQL Datenbank Wenn auf Ihrem Server keine Hibernate kompatible SQL Datenbank läuft, benötigen Sie eine entsprechende Datenbank. Wir empfehlen Ihnen die kostenlose SQL Datenbank „MySQL Community Server 5.0“. Ihr Leistungsumfang genügt den Anforderungen der Kyoto4u Plattform völlig und die Community Edition ist kostenfrei verfügbar. Sie können MySQL 5 unter http://dev.mysql.com/downloads/mysql/5.0.html#downloads herunterladen. Installieren Sie anschließend MySQL in ein beliebiges Verzeichnis und starten Sie die Datenbank. Achtung: Falls der Server über eine lokale Firewall verfügt, achten Sie darauf, dass die Kyoto4u Plattform Zugriff auf den SQL Server Port erhält. Tip: Es ist auch möglich, die SQL Datenbank auf einem anderen Server, als dem Kyoto4u Server laufen zu lassen. In dem Fall ist ebenfalls sicherzustellen, dass die Firewalls des Kyoto4u Servers und des SQL Datenbank Servers eine Kommunikation zulassen. 11.2.3.5 Installation Kyoto4u Webplattform Rufen Sie den Installer der Kyoto4u Plattform auf. Abbildung 39: Kyoto4u Installation Seite 83 von 110 Bei der Installation werden Sie zum Pfad Ihrer Tomcat Installation befragt. Während der Installation wird im „webapps“-Verzeichnis Ihrer Tomcat Installation das Verzeichnis „kyoto4u“ angelegt, in dem die Plattform Dateien gespeichert werden. In der Programmgruppe „Autostart“ wird ein Eintrag zum Start des Tomcats angelegt. D.h. die Plattform wird automatisch beim Systemstart gestartet. Wenn Sie das nicht möchten, löschen Sie den Eintrag in der „Autostart“ Gruppe. Bitte beachten: die Datenbank muss vor dem Start der Kyoto4u Plattform laufen! 11.2.3.6 .Anpassung Hibernate.cfg.xml Öffnen Sie die Datei hibernate.cfg.xml im Unterverzeichnis \WEB-INF\classes des Verzeichnisses kyoto4u mit einem Texteditor (z.B. Notepad unter Windows oder z.B. vi unter Linux). In dieser Datei tragen Sie den Pfad zur Datenbank, den Benutzernamen und das Passwort für den Datenbankzugriff und den Datenbankdialekt der zu verwendenden Datenbank ein. Hier ein Beispiel für den Einsatz mit einer MySQL Datenbank: Seite 84 von 110 Abbildung 40: Hibernate Konfiguration anpassen 11.2.3.7 Erzeugen der Datenbank und des Admin Kontos Starten Sie die Datenbank. Rufen Sie einmalig die Datei makeconfig.bat im Verzeichnis \WEB-INF\classes auf. Es wird automatisch ein Standard-Benutzerkonto angelegt. Achten Sie beim Ablauf dieses Programmes, ob Fehlermeldungen auftreten. Sollten Sie eine Fehlermeldung erhalten, müssen Sie den Fehler beheben und diesen Vorgang wiederholen. Lief das Programm ohne Fehlermeldung durch, löschen Sie diese Datei aus Sicherheitsgründen nach der ersten Anmeldung am System. 11.2.4 Anmelden am System Wenn Sie sich direkt oder per Remotedesktop auf dem Server befinden, starten Sie einen Browser und geben in der Adresszeile http://127.0.0.1:8080/kyoto4u ein. Wenn Sie von einem anderen Rechner über das Netzwerk (LAN) oder Internat (WAN) auf den Server zugreifen, geben Sie in der Adresszeile des Browsers http://<ip des Servers>:8080/kyoto4u ein. Seite 85 von 110 Abbildung 41: Kyoto4u Anmeldebildschirm Es erscheint der Anmeldebildschirm, wo Sie sich mit dem Benutzernamen [email protected] und dem Passwort kyoto4uadmin anmelden. Achtung: das Admin Kennwort sofort ändern! 11.2.5 Ändern des Admin Kennwortes Melden Sie sich am System an. Sie gelangen in die Übersicht. Dort klicken Sie auf den Button „Benutzer“. Es wird eine Auflistung der eingerichteten Benutzerkonten angezeigt. Seite 86 von 110 Abbildung 42: Kyoto4u Benutzerverwaltung Wählen Sie dort den Benutzer „Admin“ durch einen Mausklick auf die ID. Es werden daraufhin die Einstellungen für diesen Benutzer angezeigt. Sie können nun ein neues Kennwort für den Admin festlegen. Seite 87 von 110 Abbildung 43: Kyoto4u Benutzerdaten ändern Verlassen Sie diese Ansicht durch Klick auf den „Speichern“-Button. Das neue Kennwort wird daraufhin in der Datenbank gespeichert und ist sofort gültig. Möchten Sie hingegen keine Änderungen vornehmen, klicken Sie auf den „Zurück“-Button. In dem Fall werden die hier vorgenommenen Änderungen verworfen. Seite 88 von 110 11.2.6 Anlegen Arbeitsplätzen Abbildung 44: Kyoto4u Arbeitsplatzverwaltung Seite 89 von 110 11.2.7 Anlegen von Geräten Abbildung 45: Kyoto4u Geräteverwaltung Klicken Sie in der Hauptansicht auf den “Geräte”-Button. Sie gelangen in die Übersicht der installierten Geräte. Dort klicken Sie unten auf den „Hinzufügen“-Button. Seite 90 von 110 Abbildung 46: Kyoto4u Anlegen von Geräten Es erscheint eine neue Ansicht, in der Sie die Parameter eines neuen Gerätes eingeben können: Übertragungsmedium: Bei Kyoto4u 2.0 können unterschiedliche Übertragungsmedien gewählt werden. Es ist sogar möglich, diese Medien kombiniert einzusetzen (z.B. um Reichweitenprobleme zu begegnen oder aus Kostengründen). Wählen Sie hier das Übertragungsmedium, dass zum Ansteuern des Empfängers (Schalters/Dimmers) dieses Gerätes verwendet wird. Hauscode: Der Hauscode ist Teil der Adresse des Seite 91 von 110 Empfängers. Die Kombination aus Hauscode und Gerätecode muss bei der gesamten Installation eindeutig sein, um diesen Empfänger einzeln zu schalten. Gerätecode: Der Gerätecode ist der zweite Teil der Adresse des Empfängers. Typ: Typ des eingesetzten Empfängers (Relais, Dimmer,..). Ist ein Computer angeschlossen, der vor einer Abschaltung seiner Stromzufuhr automatisch heruntergefahren werden soll, muss hier PC gewählt werden. Beschreibung: Geben Sie hier eine eindeutige Beschreibung des Gerätes an, anhand der Sie das Gerät gut zuordnen können. IP / Port: Handelt es sich bei dem zu steuernden Gerät um einen PC, geben Sie hier seine IP Adresse ein und den Port (Standard: Port 7000). Ansonsten bleiben diese Feld leer Benutzerreaktion: Hier geben Sie die Zeit (in Min.) an, die einem PC Benutzer bleibt, auf eine Abschaltwarnung zu reagieren. Nach Ablauf dieser Zeit wird sein PC automatisch herunter gefahren. Abschaltzeit: Dies ist die Zeit, die ein PC zum herunterfahren benötigt. Bedenken Sie auch das gelegentliche Einspielen von Systemupdates. Diese können zeitweise den Herunterfahrvorgang verlängern. Wenn Sie alle Angaben vorgenommen haben, können Sie die Einstellungen durch einen Klick auf den „Speichern“-Button sichern. Möchten Sie die Daten doch verwerfen, klicken Sie auf den „Abbruch“-Button. Seite 92 von 110 Im Falle von Eingabefehlern, wird die Ansicht nicht geschlossen, sondern Sie erhalten einen Hinweis vom System in roter Schrift. Nach der Korrektur der Eingabe, können Sie die Daten speichern. 11.2.8 Anlegen von Benutzern Klicken Sie in der Hauptansicht auf den Button „Benutzer“. Sie gelangen in eine Übersicht der bereits eingerichteten Benutzerkoten. Klicken Sie dort unten auf den „Hinzufügen“-Button. Abbildung 47: Kyoto4u neuen Benutzer anlegen Es erscheint eine neue Ansicht, in der Sie die Parameter eines neuen Benutzers angeben können. Während der Vor- und Nachname im System mehrfach aufkommen dürfen, muss die eingegebene Email-Adresse eindeutig sein. Sie ist später der Anmeldename für das System. Seite 93 von 110 ACHTUNG: Wählen Sie ein sicheres Passwort, was kein Wort aus dem Wörterbuch ist, und möglichst zufällig verteilt aus Zahlen, Sonderzeichen und Buchstaben besteht und möglichst lang ist (z.B. 10 Zeichen). So erschweren Sie Hackern den Zugriff auf das System. Bedenken Sie, dass ein Hacker sonst unerwünschte Schaltungen vornehmen kann! 11.2.9 Schaltzeiten festlegen Abbildung 48: Kyoto4u Schaltzeiten In der Übersicht klicken Sie unten auf den „Hinzufügen“-Button. Es erscheint eine neue Ansicht, in der Sie die Parameter einer neuen Schaltzeit festlegen können. Seite 94 von 110 Abbildung 49: Kyoto4u neue Schaltzeiten hinzufügen Geben Sie den Wochentag und die Uhrzeit an, wann der Schaltbefehl ausgeführt werden soll. Wählen Sie dann das zu schaltende Gerät und den auszuführenden Befehl. Mit einem Klick auf den „Speichern“-Button wird die neue Schaltzeit in der Datenbank gesichert und ist ab sofort gültig. 11.2.10 Datensicherung Dieses Verfahren gilt nur für die Datenbank MySQL. Die Kyoto4u Datenbank befindet sich komplett im Verzeichnis \data\kyoto4u unterhalb des MySQL Verzeichnisses: Seite 95 von 110 Abbildung 50: Speicherort Datenbank Fahren Sie die Kyoto4u Plattform regelmäßig herunter und sichern Sie dieses Verzeichnis komplett auf einen externen Datenträger (z.B. DVD RAM- Medium oder USB Stick). Im Falle eines Datenbankschadens können Sie dieses Verzeichnis vom Backup-Medium zurückkopieren und haben die Datenbank wieder im Zustand vom Sicherungsdatum. Bei größeren Datenbanken (z.B. Kyoto4u Enterprise) sind ggf. differentielle Backupverfahren einzusetzen. Seite 96 von 110 11.2.11 Installation Scheduler Die Plattform und der Scheduler sind zwei unabhängig voneinander laufende Programme. Dadurch ist es möglich, beide bei Bedarf auf unterschiedlichen Servern zu installieren. Ihre gemeinsame Schnittstelle ist die SQL Datenbank. Rufen Sie den Installer für den Kyoto4u Scheduler auf. Abbildung 51: Kyoto4u Installation Scheduler Anwendung Bei der Installation können Sie den Zielpfad ändern. Dort wird dann der Scheduler installiert. In der Programmgruppe „Autostart“ wird ein Eintrag zum Start des Schedulers angelegt. D.h. der Scheduler wird automatisch beim Systemstart gestartet. Wenn Sie das nicht möchten, löschen Sie den Eintrag in der „Autostart“ Gruppe. Bitte beachten: die Datenbank muss vor dem Start des Kyoto4u Schedulers laufen! Seite 97 von 110 11.2.11.1 Konfiguration des Schedulers (Datenbank) Öffnen Sie die Datei hibernate.cfg.xml im Unterverzeichnis \classes des Scheduler-Verzeichnisses mit einem Texteditor (z.B. Notepad unter Windows oder z.B. vi unter Linux). In dieser Datei tragen Sie den Pfad zur Datenbank, den Benutzernamen und das Passwort für den Datenbankzugriff und den Datenbankdialekt der zu verwendenden Datenbank ein. Haben Sie diese Datei bei der Webplattform bereits konfiguriert, können Sie die Hibernate-Konfiguration der Webplattform verwenden. Hier ein Beispiel für den Einsatz mit einer MySQL Datenbank: Abbildung 52: Hibernate Konfiguration anpassen Seite 98 von 110 11.2.11.2 Konfiguration des Schedulers (Hardware) Öffnen Sie die Datei WINZ.CFG mit einem Texteditor (z.B. Notepad unter Windows oder z.B. vi unter Linux). *********************************************************** * HARDWARE CONFIG FILE VERSION 0.2 * *********************************************************** * Kyoto4u - more efficient handling of energy * *********************************************************** * (c) 2009 by Janek Winz * *********************************************************** In dieser Konfigurationsdatein werden festgelegt: 1.: COM-Port an dem der X10 PC Adapter (CM11) angeschlossen ist 2.: IP-Port über den der Server mit den PC Clients kommuniziert 3.: IP Adresse des Allnet Intertechno PC Interface 1 7000 192.168.0.5 WINZ.CFG Tragen Sie den COM-Port (serielle Schnittstelle) ein, an dem Sie den CM11 angeschlossen haben (Vorgabe: 1). Falls Sie die USB Version des CM11 einsetzen, beachten Sie bitte, dass dieses Modell einen virtuellen COM-Port bereitstellt, dessen Nummer hier angegeben werden muß. Die Kyoto4u-Plattform kommuniziert mit zu steuernden PCs per TCP/IP. Dazu wird standardmäßig Port 7000 verwendet. Möchten Sie einen anderen Port verwenden, tragen Sie ihn hier ein. Bitte beachten Sie auch die entsprechende Konfiguration Ihrer Firewall. Wenn Sie das Allnet MK2 Intertechno PC Interface einsetzen, tragen Sie hier seine IP-Adresse ein. Seite 99 von 110 Bei Änderungen an der Datei WINZ.CFG müssen die Kyoto4u Webplattform und der Scheduler anschließend neu gestartet werden. 11.2.12 Installation des Melders für Schaltzeiten Auf allen Computern, die von Kyoto4u ferngesteuert herunter gefahren werden sollen, muß das Meldeprogramm für Schaltzeiten installiert werden. Im Falle einer bevorstehenden Abschaltung der Stromzufuhr des Computers wird der Anwender von diesem Programm informiert und hat die Möglichkeit, die Abschaltung zu verzögern. Im Falle einer Zustimmung oder keiner Reaktion des Benutzers, wird der Computer automatisch herunter gefahren, bevor die Stromzufuhr abgeschaltet wird. Alle eventuell offenen Anwendungen werden dabei automatisch geschlossen. Seite 100 von 110 12 Leistungsbeschreibung - Reduktion des Stromverbrauches in Büros und Privathaushalten - Deutliche Verringerung von Standbyverbrauch - Kein Durchlaufen lassen von elektrischen Geräten - Sequentielles automatisches Einschalten von Geräten (verhindert teure Lastspitzen, die sonst bei gleichzeitigem Anschalten von Geräten entstehen). - Schnelle Amortisation (1-2 Jahre) über die eingesparten Energiekosten - Freie Wahl der Übertragungsmedien zur Ansteuerung von Relais: Stromleitung, Funk (Zweidraht geplant) - Verschiedene Empfängerarten (Stromleitung, Funk) können kombiniert werden (z.B. um Reichweitenprobleme zu verhindern oder aus Kostengründen) - Geringer Ressourcenbedarf: kann auf bestehendem Windows Server dazu installiert werden (Unterstützung von Linux und Mac Servern in Vorbereitung) - Ferngesteuertes Herunterfahren von Windows - PCs mit vorangehender Informierung des Anwenders (Linux und Mac Arbeitsplätze in Vorbereitung) - Komfortable Weboberfläche (kann von jedem Gerät mit JavaScript fähigem Browser genutzt werden) - Verteiltes System (Webplattform kann an einem anderem Standort als die Schaltanwendung laufen) Seite 101 von 110 13 Zusammenfassung und Ausblick Neben der Wichtigkeit des kaufmännischen Aspekts (rasche Amortisation und des Einsparen von Energiekosten) für den erfolgreichen Vertrieb der Lösung, wurde die ursprüngliche Initialzündung für dieses Projekt, einen maßgeblichen Beitrag zur Reduktion von CO2 zu leisten, nicht außer Acht gelassen: wenn es gelingt, dass weltweit Firmen anfangen, Kyoto4u einzusetzen, können zukünftig unzählige Megawattstunden Energie eingespart und damit zahlreiche Tonnen CO2 Emission verhindert werden. Durch die lose Kopplung der Smart Home Protokolle an die Kyoto4u Plattform wurde die Basis für ein erweiterungsfreudiges System geschaffen. Während bei der Version 2.0 die Implementierung von Smart Home Protokollen durch den Autor erfolgte, ist für spätere Versionen denkbar, dass Anwender selbst weitere Protokolle implementieren können. Die dafür benötigten neuen Klassen könnten dann z.B. über Reflection dynamisch in das bestehende System geladen werden. 13.1 Release 3.0 - Unterstützung weiterer Smart Home Systeme (EIB, CEBUS, LON, …). - Übersetzung in andere Sprachen - Unterstützung von Open Suse Linux und Ubuntu als Server Betriebssystem - … Seite 102 von 110 13.2 Zukünftige Erweiterungspakete: 13.2.1 Kyoto4u Energy Kyoto4u mit Meeteringfunktionen: - Visualisierung des Lastganges der Stromverbraucher in verschiedenen Diagrammen. - Verbrauchsprognostik für die Entwicklung des zukünftigen Stromverbrauchs - Simulation des möglichen zukünftigen Lastganges bei virtueller Hinzuschaltung/Abschaltung weiterer Verbraucher. 13.2.2 Kyoto4u Security Kyoto4u wird zur Alarmanlage: - Unterstützung von kabelgebundenen Alarmsensoren. - Bei Scharfstellung automatisches Ausschalten vorgegebener Verbraucher - Anwesenheitssimulation durch zufälliges Schalten von Raumbeleuchtungen - Festhalten von Kamerabildern und automatisches Speichern der Bilder im Internet (FTPServer) im Alarmfall 13.2.3 Kyoto4u Smart Home Kyoto4u wird zur Universal-Fernbedienung: - Direktes Schalten von Geräten von unterwegs mit Handy, PDA und anderen Geräten mit Browser - Fernsicht über Webcams von unterwegs ins Eigenheim oder Büro Seite 103 von 110 14 Anhang Seite 104 von 110 15 Pilotinstallation Seite 105 von 110 16 Verzeichnisse 16.1 Abbildungsverzeichnis BILD: SEITE: Abbildung 1: Welt Energie Bedarf ....................................................................................................... 7 Abbildung 2: Kyoto4u Logo ................................................................................................................. 9 Abbildung 3: Geräte mit Standbyverbrauch ..................................................................................... 10 Abbildung 4 : ActiveHome X10 Software .......................................................................................... 15 Abbildung 5: Fehlermeldung ActiveHome Software ........................................................................ 16 Abbildung 6: HomeSeer Smart Home Software................................................................................ 17 Abbildung 7: C-Control Interface ...................................................................................................... 20 Abbildung 8: Foto eigene Messung Leistungsaufnahme 350 Watt ATX Netzteil bei heruntergefahrenem PC: 3,6W ................................................................................................. 26 Abbildung 9: Foto eigene Messung Leistungsaufnahme X10 Relais Modul ..................................... 27 Abbildung 10: Beispiel Installation Kyoto4u System ......................................................................... 30 Abbildung 11: Kyoto4u Übersicht Schaltzeiten und Befehle ............................................................ 31 Abbildung 12: Use Case Diagramm Produktfunktionen ................................................................... 33 Abbildung 13: Projektplan Entwicklung ............................................................................................ 40 Abbildung 14: Gantt Entwicklung ...................................................................................................... 41 Abbildung 16: Projektplan Diplomarbeit........................................................................................... 49 Abbildung 17: Gantt Diplomarbeit .................................................................................................... 50 Abbildung 18: Einsatz des Command Patterns in Kyoto4u 2.0 ......................................................... 52 Abbildung 19: Allnet Intertechno Interface ...................................................................................... 55 Abbildung 20: Kyoto4u Fehlerbehandlung (Weboberfläche) ........................................................... 57 Abbildung 21: Spiralmodell ............................................................................................................... 58 Abbildung 22: Wasserfallmodell ....................................................................................................... 59 Abbildung 23: Eventum – Projektstatusübersicht ............................................................................ 60 Abbildung 24: NSIS Installations-Script ............................................................................................. 61 Abbildung 25: Barebone DL1087 mit Atom Prozessor ..................................................................... 68 Abbildung 26: CM11G PC-Adapter für X10 ....................................................................................... 68 Abbildung 27: Relaismodul AM12G .................................................................................................. 69 Abbildung 28: Dimmer Modul LM12G .............................................................................................. 69 Abbildung 29: Installation eines X10 Wandschalters ........................................................................ 70 Abbildung 30: Allnet 3000 RF Mk2 .................................................................................................... 71 Abbildung 31: IT-300 Dimmer Steckdose .......................................................................................... 71 Abbildung 32: ITR-3500 Schalter Steckdose...................................................................................... 71 Abbildung 33: YWT 8500 Wandschalter............................................................................................ 71 Abbildung 34: Kyoto4u Anmeldung Webplattform .......................................................................... 74 Abbildung 35: Kyoto4u Arbeitsplatz auswählen ............................................................................... 75 Abbildung 36: Kyoto4u Übersicht Schaltzeiten pro Arbeitsplatz ...................................................... 76 Abbildung 37: Kyoto4u Schaltzeit ändern ......................................................................................... 78 Abbildung 38: Kyoto4u Meldeprogramm für Schaltzeiten ............................................................... 80 Abbildung 39: Technische Unterstützung ......................................................................................... 80 Abbildung 40: Kyoto4u Installation ................................................................................................... 83 Abbildung 41: Hibernate Konfiguration anpassen ............................................................................ 85 Seite 106 von 110 Abbildung 42: Kyoto4u Anmeldebildschirm ..................................................................................... 86 Abbildung 43: Kyoto4u Benutzerverwaltung .................................................................................... 87 Abbildung 44: Kyoto4u Benutzerdaten ändern ................................................................................ 88 Abbildung 45: Kyoto4u Arbeitsplatzverwaltung ............................................................................... 89 Abbildung 46: Kyoto4u Geräteverwaltung........................................................................................ 90 Abbildung 47: Kyoto4u Anlegen von Geräten................................................................................... 91 Abbildung 48: Kyoto4u neuen Benutzer anlegen ............................................................................. 93 Abbildung 49: Kyoto4u Schaltzeiten ................................................................................................. 94 Abbildung 50: Kyoto4u neue Schaltzeiten hinzufügen ..................................................................... 95 Abbildung 51: Speicherort Datenbank .............................................................................................. 96 Abbildung 52: Kyoto4u Installation Scheduler Anwendung ............................................................. 97 Abbildung 53: Hibernate Konfiguration anpassen ............................................................................ 98 Seite 107 von 110 16.2 Quellen (Web) ActiveHome Agenda21 AllnetDimmer http://www.marmitek.com http://www.agenda21-treffpunkt.de/daten/energie.htm https://www.xmediasat.com/shop/liste/intertechno/1.htm?efaksource=adwords AllnetInterface http://www.connected24.de/product_info.php?cPath=62&products_id=1318 AllnetRelais https://www.xmediasat.com/shop/liste/intertechno/1.htm?efaksource=adwords AllnetWandschalter https://www.xmediasat.com/shop/liste/intertechno/1.htm?efaksource=adwords AM12G http://www.amazon.de/Marmitek-X10-Ger%C3%A4tefernschalterSteckermodul-Ausschalten/dp/B001NIGF0C http://www.hibernate.org/397.html http://www.delock.de/produkte/suche/Barebone_Mini-PC_DL1087_10870.html Annotations Barebone C-Control CM11G CM17A API Delphi Echelon Eclipse Energiepass EnergyCheck Eventum Gimp Hibernate Homeseer Intertechno Java JavaScript Junit Kyoto LM12G Marketing NSIS PLC_stört Prognos2030 Spiralmodell Struts Sysdeo Textpad Tomcat Wasserfallmodell Web2Date Wireshark http://www.conrad.de http://www.amazon.de/Marmitek-Steuerger%C3%A4t-Schnittstelle-ComputerInterface-Seriell/dp/B000VPO20S http://www.micheldalal.com/sw/java/x10/ http://www.codegear.com/de/products/delphi http://www.echelon.com http://www.eclipse.org http://www.essen.de/Deutsch/Rathaus/Aemter/Ordner_59/Energie/Energiepass _Was_ist_der_Energiepass.asp http://www.conrad.de http://dev.mysql.com/downloads/other/eventum http://www.gimp.org http://www.hibernate.org http://homeseer.com http://www.amazon.de/s/ref=nb_ss_w?__mk_de_DE=%C5M%C5Z%D5%D1&u rl=search-alias%3Daps&field-keywords=intertechno&x=0&y=0 http://java.sun.com http://www.walterzorn.com http://www.junit.org http://de.wikipedia.org/wiki/Kyoto-Protokoll http://www.amazon.de/Marmitek-LM12-Lampenmodul-DimmermodulSteckdose/dp/B000XMBZN6/ref=sr_1_5?ie=UTF8&s=cede&qid=1234548853&sr=8-5 http://de.wikipedia.org/wiki/Guerilla-Marketing http://sourceforge.net/projects/nsis http://www.heise.de/newsticker/Oesterreichische-Behoerde-Powerline-stoertKurzwellenfunk--/meldung/55557 http://www.agenda21-treffpunkt.de/archiv/02/daten/ieaprognos2030-g.jpg http://de.wikipedia.org/wiki/Vorgehensmodell_zur_Softwareentwicklung http://struts.apache.org http://www.eclipsetotale.com/tomcatPlugin.html http://www.textpad.com http://tomcat.apache.org http://de.wikipedia.org/wiki/Wasserfallmodell http://www.webtodate.de/ http://www.wireshark.org/ Seite 108 von 110 X10 XAMPP yGUARD Z-Wave http://de.wikipedia.org/wiki/X10 http://www.apachefriends.org/de/xampp.html http://www.yworks.com/de/products_yguard_about.htm http://de.wikipedia.org/wiki/Z-Wave 16.3 Quellen (Literatur) „Entwurfsmuster von Kopf bis Fuß“ – O´Reilly Verlag – ISBN 3-89721-421-0 „Softwareentwicklung von Kopf bis Fuß“ – O´Reilly Verlag – ISBN 978-3-89721-862-8 „Jakarta Struts for Dummies” – Wiley Publishing Inc. – ISBN 0-7645-5957-5 “Alles über den C64“ – Markt & Technik Verlag AG – ISBN 3-89090-379-7 Seite 109 von 110 17. Rechtsbelehrung Die Urheberrechte an den ausführbaren Programmen dieses Projektes, ihren Quellcodes und der Dokumentation liegen bei Janek Winz. Die Veröffentlichung dieser Diplomarbeit als Ganzes oder in Teilen in der Bibliothek der TFH Berlin/Beuth Hochschule ist nicht gestattet. Der Einsatz des hier beschriebenen Systems als Ganzes oder in Teilen ist ausschließlich im Rahmen der Beurteilung der Diplomarbeit zugelassen. Änderung 02.10.2010 für www.kyoto4u.de: eine Veröffentlichung als Ganzes oder in Teilen, ohne die schriftliche Genehmigung von Janek Winz, ist nicht gestattet. Seite 110 von 110