Office Control 1.0
Office Control 1.0 ist eine bestehende Smart-Office-Webanwendung, die ich im Rahmen meines Praxis- und Abschlussprojekts um eine kalenderbasierte Heizungsautomatisierung erweitert habe.
Termine werden über die Microsoft Graph API ausgelesen und im Backend verarbeitet. Daraus werden Heizzeiten abgeleitet, die anschließend über RaspberryMatic und Homematic IP auf die realen Geräte übertragen werden.
Mein Schwerpunkt lag auf der Einarbeitung in die vorhandene Codebasis, der API-Anbindung, der Heizungslogik, der Datenhaltung sowie der technischen Stabilisierung der Anwendung.
Projektart
Praxis- und IHK-Abschlussprojekt
Schwerpunkt
Automatisierte Heizungssteuerung
Ziel
Mehr Komfort und weniger Energieverbrauch
Mein Beitrag
Codeanalyse, API-Anbindung, Heizungslogik, Datenhaltung und Fehlerbehebung
Ziel des Projekts
Ziel war es, eine bereits vorhandene Anwendung gezielt um eine zuverlässige kalenderbasierte Heizungssteuerung zu erweitern.
Die Anwendung erkennt anhand von Microsoft-Teams-Terminen, wann ein Raum genutzt wird, heizt ihn rechtzeitig vor Beginn auf und senkt die Temperatur nach der Nutzung wieder ab.
Wichtig war dabei, die bestehende Anwendung nicht neu zu entwickeln, sondern vorhandene Strukturen zu verstehen, sinnvoll zu erweitern und technisch zu stabilisieren.
Komfort
Räume werden automatisch vorgewärmt.
Energieeffizienz
Heizphasen werden nur bei tatsächlichem Bedarf aktiviert.
Erweiterbarkeit
Die Anwendung bleibt modular und zukünftig ausbaubar.
Umgesetzte Funktionen
Die zentrale Erweiterung war die Verbindung von Kalenderdaten mit der vorhandenen Smart-Home-Steuerung.
Termine werden über Microsoft Graph eingelesen, im Backend ausgewertet und anschließend in Steuerbefehle für die angebundenen Homematic-Geräte übersetzt. Die manuelle Bedienung über die Weboberfläche bleibt weiterhin möglich.
Kalenderintegration
Termine werden über die Microsoft Graph API ausgelesen.
Heizungsautomatik
Heizkörper werden abhängig von Terminen automatisch geregelt.
Gerätesteuerung
Steckdosen und Thermostate können über Homematic gesteuert werden.
Manuelle Steuerung
Geräte können weiterhin direkt über die Weboberfläche bedient werden.
Sommermodus
Die Heizungslogik kann in den warmen Monaten deaktiviert werden.
Logging
Fehler und Systemereignisse werden zur Nachverfolgung protokolliert.
Manuelle Gerätesteuerung
Trotz der Automatisierung bleibt die direkte Bedienung einzelner Geräte möglich.
Dadurch bleibt die Anwendung flexibel nutzbar. Benutzer können beispielsweise Steckdosen schalten, Lichtfunktionen prüfen oder Thermostate unabhängig von Kalenderereignissen bedienen.
Technischer Aufbau
Die Anwendung trennt Weboberfläche, Geschäftslogik, Datenhaltung und externe Schnittstellen in klar abgegrenzte Bereiche.
Die Anwendung wurde mit C# und ASP.NET Core umgesetzt. Die Benutzeroberfläche stellt Räume, Geräte, Kalenderdaten und Heizungsfunktionen übersichtlich dar. Im Hintergrund übernehmen verschiedene Services die Kommunikation mit der Microsoft Graph API, der Homematic XML-API und der Datenbank.
Frontend
Darstellung der Weboberfläche mit Geräteübersicht, Kalender und Heizungssteuerung.
Backend
Verarbeitung der Kalenderdaten und Steuerung der Smart-Home-Geräte.
Datenbank
Speicherung von Benutzern, Geräten, Terminen, Heizprofilen und Logdaten.
Microsoft Graph API
Abruf von Terminen aus dem Microsoft Teams Kalender.
Homematic XML-API
Kommunikation mit Thermostaten, Steckdosen und weiteren Homematic-Geräten.
RaspberryMatic
Smart-Home-Zentrale auf einem Raspberry Pi 3B+.
Meine Schwerpunkte
Mein eigener Anteil lag vor allem in Codeanalyse, API-Anbindung, Datenhaltung, Fehlerbehebung und der Umsetzung der Heizungsautomatisierung.
Zu Beginn musste ich mich in die vorhandene Codebasis einarbeiten und bestehende Fehler sowie unvollständige Funktionen nachvollziehen. Danach wurden die notwendigen Schnittstellen eingebunden, die Datenhaltung erweitert und die Steuerungslogik Schritt für Schritt umgesetzt.
Codeanalyse
Bestehende Strukturen verstehen, Fehler finden und gezielt überarbeiten.
API-Anbindung
Microsoft Graph API und Homematic XML-API in die Anwendung integrieren.
Heizungslogik
Kalenderdaten auswerten und daraus automatische Heizvorgänge ableiten.
Datenhaltung
Benutzer-, Geräte-, Termin- und Statusdaten strukturiert speichern.
Fehlerbehebung
Probleme in Datenbank, API-Kommunikation und Geräteanbindung lösen.
Dokumentation
Technische Abläufe, Tests und Projektergebnisse nachvollziehbar festhalten.
Verwendete Komponenten
Die Anwendung kommuniziert über RaspberryMatic mit realen Homematic-IP-Geräten.
Die Komponenten bilden die technische Grundlage für die Kommunikation zwischen Webanwendung, RaspberryMatic und den realen Geräten im Büro.
Projektvorgehen
Die Umsetzung erfolgte schrittweise in mehreren Sprints nach Scrum.
Nach jedem Sprint wurde der aktuelle Stand überprüft, getestet und bei Bedarf angepasst. Dadurch konnten technische Erkenntnisse direkt in die weitere Umsetzung einfließen.
Ergebnis
Das Projektergebnis ist eine funktionsfähige Erweiterung der bestehenden Anwendung, die Kalenderdaten automatisch in Heizungssteuerung übersetzt.
Die Kalenderintegration und Heizungsautomatisierung arbeiten im Zusammenspiel mit RaspberryMatic und den angebundenen Homematic-IP-Geräten. Zusätzlich bleibt die manuelle Steuerung über die Weboberfläche erhalten.
Logging, strukturierte Datenhaltung und die modulare Architektur schaffen zugleich eine gute Grundlage für Wartung und spätere Erweiterungen.
Automatisierung
Die Heizungssteuerung arbeitet kalenderbasiert und reduziert manuelle Eingriffe.
Komfort
Räume werden passend zur tatsächlichen Nutzung vorbereitet.
Energieeinsparung
Unnötige Heizphasen werden vermieden und Ressourcen geschont.
Stabilität
Die Anwendung wurde technisch überarbeitet, getestet und stabilisiert.
Wartbarkeit
Die modulare Struktur erleichtert spätere Anpassungen und Erweiterungen.
Praxiserfahrung
Das Projekt verbindet Webentwicklung, API-Anbindung, Datenbank und Smart Home.