1 00:00:00,000 --> 00:00:16,900 *RC3-Vorspann-Musik* 2 00:00:16,900 --> 00:00:20,750 Herald: Aber und damit herzlich willkommen wieder an diesem Morgen zur About-Future- 3 00:00:20,750 --> 00:00:26,060 Stage. Wir haben jetzt hier einen ganz interessanten Talk über DIY-Heizenergie- 4 00:00:26,060 --> 00:00:31,340 Optimierung mit einem neuronalen Netzwerk von Jens Dorfmüller hier zu meiner 5 00:00:31,340 --> 00:00:36,370 Rechten. Jens hat auch die Folien unter seiner Website wwwjens.dorfmüller.de, mit 6 00:00:36,370 --> 00:00:46,940 ü oder mit u ist egal. Ja Jens, wie bist du darauf gekommen, einen Talk über 7 00:00:46,940 --> 00:00:50,650 Heizenergie-Optimierung zu machen? Jens: Ich habe mich vor zweieinhalb Jahren 8 00:00:50,650 --> 00:00:55,520 habe ich einen Smart Meter eingebaut bekommen und habe mich damit beschäftigt, 9 00:00:55,520 --> 00:01:01,470 was man damit machen kann. Und daraus hat sich im Laufe von zweieinhalb Jahren ein 10 00:01:01,470 --> 00:01:04,989 bisschen größeres Projekt entwickelt. Und jetzt war ich.. ist das Projekt in einem 11 00:01:04,989 --> 00:01:08,940 Zustand, wo ich sag: Na ja, jetzt könnte man es eigentlich auch mal zeigen und 12 00:01:08,940 --> 00:01:13,400 gucken, ob es für andere Leute interessant ist, ob andere Leute vielleicht auch noch 13 00:01:13,400 --> 00:01:17,830 Ideen haben, was man weiter damit machen könnte. Ja und so habe ich gedacht, melde 14 00:01:17,830 --> 00:01:21,510 ich mal einen Talk an und es freut mich sehr, dass ich heute hier in München sein 15 00:01:21,510 --> 00:01:24,310 darf und mal wieder auf einer Bühne stehen darf. 16 00:01:24,310 --> 00:01:29,690 Herald: Wunderbar. Ich würde sagen, damit übergebe ich gleich an dich und wir sind 17 00:01:29,690 --> 00:01:36,330 gespannt, was du uns zu erzählen hast. Jens: Super, guten Morgen zusammen. So, 18 00:01:36,330 --> 00:01:39,660 ich fange gleich mit meiner ersten Folie an. Die ganze Geschichte hat bei mir 19 00:01:39,660 --> 00:01:44,071 angefangen, vor gut zweieinhalb Jahren, als ich einen Smart Meter eingebaut 20 00:01:44,071 --> 00:01:48,060 bekommen habe und ich mich damit beschäftigt habe: Was kann man denn 21 00:01:48,060 --> 00:01:52,501 eigentlich damit machen? Und als ich mich damit beschäftigt habe, habe ich dann 22 00:01:52,501 --> 00:01:56,780 festgestellt Na ja, dieses Smart Meter überträgt alle paar Sekunden den 23 00:01:56,780 --> 00:02:01,890 Zählerstand und die aktuell bezogene Leistung. Und zwar macht sie das über eine 24 00:02:01,890 --> 00:02:07,810 Infrarot-Schnittstelle, die da drauf ist. Auf der Folie, auf dem Bild sieht man 25 00:02:07,810 --> 00:02:11,731 diese Infrarot-Schnittstelle, abgedeckt durch so einen gelben Messkopf, den ich da 26 00:02:11,731 --> 00:02:18,510 draufgesetzt habe. Darunter sitzt die LED. Diese Infrarot-LED kann man mit einer 27 00:02:18,510 --> 00:02:23,670 einfachen Diode, mit einer einfachen Foto- Diode mit einer Infrarot-Foto-Diode 28 00:02:23,670 --> 00:02:28,329 abgreifen und kann die zum Beispiel über die Infrarot-Schnittstelle, über eine 29 00:02:28,329 --> 00:02:32,439 GPIO-Schnittstelle eines Raspberry PI auslesen. Oder ich habe ein bisschen die 30 00:02:32,439 --> 00:02:37,201 faule Variante genommen. Ich habe jemanden gefunden, der in der Kleinserie so ein 31 00:02:37,201 --> 00:02:45,719 Messkopf gebaut hat und der die quasi mit USB-Schnittstelle angeboten hat. Vorteil 32 00:02:45,719 --> 00:02:49,639 wenn man das Ding so semiprofessionell kauft, dann dann wird da auch gleich noch 33 00:02:49,639 --> 00:02:55,030 nen Magnet-Ring mit eingebaut, der das dann auf der Schnittstelle festhält und 34 00:02:55,030 --> 00:03:01,709 das ganze optisch abdichtet. So, damit kann ich jetzt den Zählerstand auslesen. 35 00:03:01,709 --> 00:03:06,930 Vielleicht noch einen Hinweis für Leute, die das nachmachen wollen. Man muss erst 36 00:03:06,930 --> 00:03:11,709 die Schnittstelle freischalten, da gibt es eine PIN, die man da eintippen, eingeben 37 00:03:11,709 --> 00:03:14,900 muss. Das ist ganz lustig über Morsezeichen, mit einer Taschenlampe muss 38 00:03:14,900 --> 00:03:19,879 man die eingeben und dann kann man den vollen, die Ausgabe des vollen Datensatz 39 00:03:19,879 --> 00:03:26,310 freischalten. Das habe ich dann gemacht und ich habe ein Projekt gefunden im 40 00:03:26,310 --> 00:03:32,370 Internet volkszähl.org, dieses Projekt liefert letztendlich die ganze Software, 41 00:03:32,370 --> 00:03:37,019 mit der man das dann auslesen kann, die die Daten aufbereiten kann. Dieses Projekt 42 00:03:37,019 --> 00:03:41,529 steht, besteht letztendlich aus mehreren Programmen. Das eine, erste Programm ist 43 00:03:41,529 --> 00:03:46,939 der vzlogger. Der liest quasi den Datenstrom mit, teilt ihn auf in 44 00:03:46,939 --> 00:03:50,980 verschiedene Kanäle, also in den Kanal, Zählerstand-Hauptzeit, Zählerstand- 45 00:03:50,980 --> 00:03:57,129 Nebenzeit und den aktuellen Verbrauch. Der kann aber auch puffern. Das heißt, wenn 46 00:03:57,129 --> 00:04:02,249 mein Server, auf dem die Daten gespeichert werden, mal down ist, dann puffer der 47 00:04:02,249 --> 00:04:07,650 zwischen, so lange bis der wieder ub ist und schickt dann die Daten rüber. Dieses 48 00:04:07,650 --> 00:04:13,769 Programm, vzlogger, schickt die Daten dann an eine Middleware, die auf meinem Server 49 00:04:13,769 --> 00:04:17,630 läuft. Das ist im Prinzip eine Schnittstelle, ein ganz einfacher http- 50 00:04:17,630 --> 00:04:24,470 request, über den das übertragen wird. Diese Middleware hat dann die Aufgabe, die 51 00:04:24,470 --> 00:04:29,300 die Messwerte zu empfangen und sie letztendlich in die Maria-DB, die im 52 00:04:29,300 --> 00:04:35,520 Hintergrund läuft, zu schreiben. Und dann gibt es noch das Web Frontend. Das ist 53 00:04:35,520 --> 00:04:39,860 letztendlich das, wie man das Ganze bedient. Die nimmt dann die Daten aus der 54 00:04:39,860 --> 00:04:45,240 Maria-DB und stellt sie grafisch dar. Und damit kann man schon ganz interessante 55 00:04:45,240 --> 00:04:52,919 Dinge machen. Hier zum Beispiel ist.. ist der Strom, der Stromverbrauch, der normale 56 00:04:52,919 --> 00:04:59,080 Stromverbrauch von unserem Haus. Und jetzt sieht man unten die Zeitskala und oben 57 00:04:59,080 --> 00:05:04,550 aufgetragen die Leistung, die abgerufen wurde. Jetzt habe ich folgendes Ereignis 58 00:05:04,550 --> 00:05:09,449 mal mit geplottet: Hier sieht man, was der Stromverbrauch ist vom Haus, wenn das 59 00:05:09,449 --> 00:05:14,520 Deckenlicht im Wohnzimmer an ist. So, dann bin ich hergegangen, habe die Leselampe 60 00:05:14,520 --> 00:05:20,810 neben dem Sofa angemacht. Man sieht der Stromverbrauch steigt. Dann habe ich das 61 00:05:20,810 --> 00:05:25,840 Decken Licht ausgemacht und habe gedacht naja, jetzt spare ich Strom, weil ich nur 62 00:05:25,840 --> 00:05:31,400 noch weniger Licht verbrauche. Dann habe ich aber mal mein Handy rausgezogen, habe 63 00:05:31,400 --> 00:05:35,790 die Oberfläche aufgerufen und habe geguckt und habe festgestellt: Ich habe gerade 64 00:05:35,790 --> 00:05:42,199 genau das Gegenteil gemacht. Ich habe mehr Strom verbraucht. Man sieht, das Ganze 65 00:05:42,199 --> 00:05:45,150 kann man rückgängig machen: Wenn ich das Licht wieder anmache und die Leselampe 66 00:05:45,150 --> 00:05:50,620 aus, dann verbrauche ich auf einmal wieder weniger Strom. Wenn man drüber nachdenkt: 67 00:05:50,620 --> 00:05:55,379 ganz logisch. Die Deckenlampe ist eine moderne LED-Lampe, wo die meiste Energie 68 00:05:55,379 --> 00:06:01,440 in Licht verwandelt wird und die Leuchte neben dem Sofa ist noch eine alte Halogen- 69 00:06:01,440 --> 00:06:08,080 Standleuchte, die verbrennt eben.. die erzeugt nicht nur Licht, sondern auch eine 70 00:06:08,080 --> 00:06:14,370 Menge Wärme und verbraucht deswegen mehr Strom. Seitdem ist die Stehlampe ehrlich 71 00:06:14,370 --> 00:06:18,800 gesagt auch ein bisschen in Ungnade gefallen. Sie wird deutlich weniger 72 00:06:18,800 --> 00:06:27,380 eingeschaltet. So, jetzt wollt ich mal ein bisschen mehr damit machen. Vorteil von 73 00:06:27,380 --> 00:06:31,289 dieser von dem Projekt volkszaehler.org ist, dass diese http-Schnittstelle sehr 74 00:06:31,289 --> 00:06:35,409 sehr gut dokumentiert ist und man relativ einfach auch andere Dinge da reinhängen 75 00:06:35,409 --> 00:06:41,949 kann. Ich habe zum Beispiel noch ein paar Temperatur-Sensoren da reingehängt. Das 76 00:06:41,949 --> 00:06:45,860 sind einfache Platin-Messwiderstand- Temperatursensoren. Ich habe mir von 77 00:06:45,860 --> 00:06:50,819 Adafruit einen Verstärker dafür gekauft, den kann ich dann.. da kann ich dann die 78 00:06:50,819 --> 00:06:55,560 Temperatur über die SPI-Schnittstelle mit einem RaspberryPI0 auslesen und ich kann 79 00:06:55,560 --> 00:07:00,849 ein einfaches Python-Script schreiben. Das sind wirklich nur 15 Zeilen und kann das 80 00:07:00,849 --> 00:07:08,249 dann an den vzlogger übergeben. Also hier rechts dargestellt sieht man dann auch wie 81 00:07:08,249 --> 00:07:11,580 das ganze aussieht. Also der Temperatursensor ist über ein vieradriges 82 00:07:11,580 --> 00:07:19,069 Kabel an den Verstärker angebunden, über SPI dann an an den RaspberryPI0. Da geht 83 00:07:19,069 --> 00:07:26,590 es dann an den vzlogger und über WLAN hängt der an meinem Server. Gut, eine 84 00:07:26,590 --> 00:07:34,009 weitere Datenquelle, die mich interessiert hat, war die Heizung. Da habe ich ein 85 00:07:34,009 --> 00:07:38,879 bisschen den Nachteil, da gibt es keine gut dokumentierte freie Schnittstelle. 86 00:07:38,879 --> 00:07:43,280 Erst kürzlich hat der Hersteller Vissmann die API zum Auslesen auch wirklich 87 00:07:43,280 --> 00:07:48,629 freigegeben und einigermaßen dokumentiert. Zum Glück gibt es aber eine OpenSource- 88 00:07:48,629 --> 00:07:57,259 Schnittstelle, eine OpenSource-API auf GitHub, die bereits.. die es schon länger 89 00:07:57,259 --> 00:08:03,340 gibt und die mir das Leben da ereinfacht: Da kann ich eben über diese API die Daten 90 00:08:03,340 --> 00:08:07,660 von meiner Heizungsanlage auslesen und aus der Cloud auslesen und damit in meinem 91 00:08:07,660 --> 00:08:13,599 volkszaehler.org einspielen. Die Daten, die ich da abgreifen. Das sind vor allen 92 00:08:13,599 --> 00:08:18,560 Dingen die Außentemperatur. Ich kann auslesen, ob die Heizung aktiv ist oder ob 93 00:08:18,560 --> 00:08:23,479 sie, ob sie im Sommer ausgeschaltet ist. Und was ganz interessant ist: Ich kann 94 00:08:23,479 --> 00:08:28,090 lesen, ob die Heizung gerade Warmwasser- Aufbereitung macht oder ob sie mein Haus- 95 00:08:28,090 --> 00:08:38,070 Fußbodenheizung betreibt. So, damit kann ich jetzt schon eine bisschen, bisschen 96 00:08:38,070 --> 00:08:41,970 interessantere Auswertung machen. Ich kenne also die Leistungsaufnahme meiner 97 00:08:41,970 --> 00:08:46,800 Heizung zu jedem Zeitpunkt und ich kenne den Betriebszustand zu jedem Zeitpunkt. 98 00:08:46,800 --> 00:08:51,830 Und jetzt kann ich mir einfach ausrechnen, wie viel Strom ich eigentlich für.. zum 99 00:08:51,830 --> 00:08:55,790 Heizen brauche und wie viel ich für die Warmwasser-Aufbereitung brauche. Also hier 100 00:08:55,790 --> 00:09:03,440 sieht man jetzt einen Plot über die letzten zweieinhalb Jahre. Jeder Balken 101 00:09:03,440 --> 00:09:08,840 ist eine Woche. In Blau sieht man die Energie, die ich zum Heizen benutzt habe 102 00:09:08,840 --> 00:09:14,530 und in Orange sieht man die Energie, die zum Warmwasser-Aufbereitung benutzt wurde. 103 00:09:14,530 --> 00:09:18,860 Ich kann dann auch sehen, ich kann daraus relativ schnell sehen, in welcher Woche 104 00:09:18,860 --> 00:09:28,481 ich wie viel, wie viel wie viel Geld ausgegeben habe zum Heizen. So, ich kann 105 00:09:28,481 --> 00:09:34,160 aber auch auftragen, wie viel Energie brauche ich gegenüber bei welcher 106 00:09:34,160 --> 00:09:38,980 Temperatur? Und da kriegt man schon was Interessantes raus, da sieht man relativ 107 00:09:38,980 --> 00:09:45,630 schnell eine eindeutige Korrelation. Je wärmer es ist, umso weniger Energie 108 00:09:45,630 --> 00:09:52,940 brauche ich zur Warmwasser-Aufbereitung. Das ist relativ einfach erklärbar. So eine 109 00:09:52,940 --> 00:09:58,370 Luft-Wasser-Wärmepumpe, die hat eine eine schlechtere Effizienz, wenn es kalt ist. 110 00:09:58,370 --> 00:10:07,360 Wenn ich mir das jetzt angucke, könnte ich jetzt, ist es eine der Ideen, die ich 111 00:10:07,360 --> 00:10:11,410 habe, was ich in Zukunft ausprobieren will. Ich könnte jetzt sagen, ich guck mir 112 00:10:11,410 --> 00:10:17,120 die Wettervorhersage an und verlege versuche die Wasser Warmwasser- 113 00:10:17,120 --> 00:10:23,080 Aufbereitung in die Zeit am Tag zu legen, in der es wärmer ist. Und in der kalten 114 00:10:23,080 --> 00:10:26,180 Zeit, vor allen Dingen in der Nacht, da unterdrücke ich dann die Warmenwasser- 115 00:10:26,180 --> 00:10:35,850 Aufbereitung bis in die frühen Morgenstunden. Ja, das ist eine Idee. So, 116 00:10:35,850 --> 00:10:41,100 dann habe ich aber auch zu Hause noch einen Komfort-Ofen, einen Holzofen im 117 00:10:41,100 --> 00:10:46,310 Wohnzimmer, den ich betreibe. Und was mich jetzt dann interessiert hat, ist: Wie viel 118 00:10:46,310 --> 00:10:53,030 Strom spare ich eigentlich dadurch, dass ich hin und wieder mit Holz heizen? Auch 119 00:10:53,030 --> 00:10:56,770 da habe ich mal einen einfachen Plot versucht. Ich habe einfach die Temperatur 120 00:10:56,770 --> 00:11:03,290 aufgetragen und dann dagegen die Energie, die ich zum Heizen mit meiner Was.. mit 121 00:11:03,290 --> 00:11:09,890 meiner Luft-Wärmepumpe brauche. Jeder Punkt hier, jeder Punkt ist quasi eine 122 00:11:09,890 --> 00:11:17,050 Woche, der Mittelwert einer Woche. Und man sieht in den Wochen, wo ich markiert habe, 123 00:11:17,050 --> 00:11:22,530 dass ich den Ofen relativ häufig anhatte, dort scheint der Stromverbrauch 124 00:11:22,530 --> 00:11:27,510 tatsächlich ein bisschen reduziert zu sein. Ob jetzt der Holzofen an war oder 125 00:11:27,510 --> 00:11:32,510 nicht, das kann ich eben an meine Temperatur-Sensoren messen. Da sehe ich, 126 00:11:32,510 --> 00:11:36,682 wenn.. wenn die Temperatur-Sensoren nur die Umgebungstemperatur anzeigen, dann war 127 00:11:36,682 --> 00:11:41,190 er offensichtlich aus und wenn die deutlich über der Raumtemperatur liegen, 128 00:11:41,190 --> 00:11:47,910 dann war der an. So, jetzt habe ich mich gefragt, kann ich das eigentlich auch noch 129 00:11:47,910 --> 00:11:54,632 genauer ausrechnen? Und da habe ich mir jetzt folgende Idee überlegt: Ich nehme 130 00:11:54,632 --> 00:11:59,980 ein neuronales Netzwerk, trainiere das auf die Außentemperatur, die Temperatur des 131 00:11:59,980 --> 00:12:07,200 Ofens und den Betriebsmodus der der Heizung. Und wenn ich das trainiert habe, 132 00:12:07,200 --> 00:12:11,190 dann manipuliert ich die Ofen-Temperatur, die dieses neuronale Netzwerk sieht, 133 00:12:11,190 --> 00:12:16,240 einfach so, dass ich so tue, als ob der Ofen nie angewiesen wäre. Und jetzt 134 00:12:16,240 --> 00:12:21,320 postuliere ich, dass die Differenz zwischen der Vorhersage mit dem Holzofen 135 00:12:21,320 --> 00:12:27,550 und die Vorhersage ohne den Holzofen, das müsste ungefähr meine gesparte elektrische 136 00:12:27,550 --> 00:12:35,310 Energie sein. So, so, sieht jetzt, sehen die eingangs Größen für das neuronale 137 00:12:35,310 --> 00:12:39,690 Netzwerk aus. Man sieht also hier die Außentemperatur, dass es eben nicht nur 138 00:12:39,690 --> 00:12:45,530 die aktuelle Außentemperatur, sondern eben auch die von den Zeitslots vorher. Ich 139 00:12:45,530 --> 00:12:50,890 mittel immer über Zeitslots von 6 Stunden, das heißt, ich betrachte hier die die 140 00:12:50,890 --> 00:12:56,430 Außentemperatur bis zu 24 Stunden rückwärts. Dasselbe mache ich mit dem 141 00:12:56,430 --> 00:13:01,390 Ofenspeicher mit dem Ofen. Dann nehme ich eben auch nicht nur die aktuelle 142 00:13:01,390 --> 00:13:08,510 Temperatur, sondern gucke mir auch bis.. gucke mir auch drei Slots zurück an. Denn 143 00:13:08,510 --> 00:13:12,280 bei dem Betriebszustand der Heizung, da gucke ich mir jetzt nur an Ist die Heizung 144 00:13:12,280 --> 00:13:17,690 aktuell an oder ist sie im Spar-Modus? Oder ist gerade die EVU-Sperre vielleicht 145 00:13:17,690 --> 00:13:22,610 noch ein Wort zu der EVU-Sperre: Das ist eben ein Recht, was mein Energieversorger 146 00:13:22,610 --> 00:13:27,630 hat. Mein Energieversorger darf mir sagen, dass an bestimmten Zeiten am Tag meine 147 00:13:27,630 --> 00:13:33,330 Heizung ausbleiben muss. Da hält sich die Heizung halt auch dran. Und das hat 148 00:13:33,330 --> 00:13:37,760 natürlich auch einen massiven Einfluss darauf, wie viel Strom meine Heizung 149 00:13:37,760 --> 00:13:45,110 verbraucht. So die aus... die Größe, auf die ich das neuronale Netzwerke trainiere, 150 00:13:45,110 --> 00:13:49,450 ist letztendlich die Heizenergie. Das ist die, die das Integral über die Leistung 151 00:13:49,450 --> 00:13:58,750 ohne die Warmwasser aufbereitung. So sieht dann das neuronale Netzwerk aus. Ich habe 152 00:13:58,750 --> 00:14:07,870 hier, dass das Input-Layer mit 11 Größen, einen Hidden-Layer mit 24 Neuronen dann im 153 00:14:07,870 --> 00:14:13,820 Hidden-Layer 2:16, im Hidden-Layer 3:12 und dann habe ich nachher einen Output- 154 00:14:13,820 --> 00:14:18,830 Layer und das Netzwerk ist fully connected. Man sieht hier an der Anzahl 155 00:14:18,830 --> 00:14:24,630 der Linien, hier gibt es sehr, sehr viele Parameter, sehr viel freie Parameter, mit 156 00:14:24,630 --> 00:14:30,550 der ich, mit dem ich das neuronale Netzwerke trainieren kann. Für mich als 157 00:14:30,550 --> 00:14:35,680 Physiker ist dieses neuronale Netzwerk erst einmal einfach nur eine Funktion mit 158 00:14:35,680 --> 00:14:43,300 insgesamt 905 Freiheitsgraden, also ein F(a1..a905) und dann noch die 159 00:14:43,300 --> 00:14:49,380 Eingangsgrößen hier und die Ausgangsgröße ist der Energieverbrauch. So und jetzt 160 00:14:49,380 --> 00:14:58,270 habe ich Datensätze für dieses x1 bis x11 von Datensatz 1 bis.. im Moment sind es 161 00:14:58,270 --> 00:15:03,440 über 23600 Stück, die ich da reinstecken will in diese Funktion. Und rauskommen 162 00:15:03,440 --> 00:15:10,380 soll der Energieverbrauch für jeden dieser einzelnen Datensätze. So, jetzt ganz kurz: 163 00:15:10,380 --> 00:15:15,380 Wie komme ich zu diesen Datensätzen? Hier sieht man jetzt aufgeplottet die Zeit, das 164 00:15:15,380 --> 00:15:21,730 sind zwei Tage. Man sieht hier in der Ockerfarbe den den den Stromverbrauch der 165 00:15:21,730 --> 00:15:28,020 Heizung und man sieht hier zum Beispiel in in Pink, das ist jetzt schwer zu erkennen, 166 00:15:28,020 --> 00:15:31,500 hier in Pink ist markiert, wo Warmwasser- Aufbereitung war. Das wird rausgerechnet. 167 00:15:31,500 --> 00:15:39,050 Und hier in Rot sieht man die Temperatur des Ofens. Und jetzt gehe ich her und 168 00:15:39,050 --> 00:15:44,700 teile das einfach in Sechs-Stunden-Slots auf und mittel die Werte für jeden dieser 169 00:15:44,700 --> 00:15:49,811 Sechs-Stunden-Slots. Wenn ich das ausrechene würde ich ungefähr auf, wenn 170 00:15:49,811 --> 00:15:53,500 ich das so mache über die ganze Zeit, über die ganzen zweieinhalb Jahre würde ich, 171 00:15:53,500 --> 00:15:57,810 glaube ich, auf 6000 Datensätze kommen. Jetzt mache ich noch ein bisschen.. 172 00:15:57,810 --> 00:16:01,560 schummeln ich noch ein bisschen. Ich schiebe diese Zeit-Slots einfach immer um 173 00:16:01,560 --> 00:16:06,350 eine Stunde weiter und so kann ich wesentlich mehr Datensätze generieren mit 174 00:16:06,350 --> 00:16:11,150 denselben Daten, die ich letztendlich habe. Das hilft mir sehr beim Trainieren 175 00:16:11,150 --> 00:16:18,280 des Netzwerks und erhöht die Genauigkeit. So, jetzt habe ich das neuronale Netzwerk. 176 00:16:18,280 --> 00:16:23,010 Ich habe die Daten. Jetzt ist die einzige Aufgabe, die noch fehlt: Ich muss das 177 00:16:23,010 --> 00:16:29,310 trainieren. Trainieren läuft normalerweise so, ich ich lege initiale Parameter fest. 178 00:16:29,310 --> 00:16:33,630 Dann schätze ich die die Datensätze. Ich berechne den Fehler, die Ableitung des 179 00:16:33,630 --> 00:16:38,750 Fehlers. Dann werden verbesserte Parameter bestimmt und so läuft das iterativ immer 180 00:16:38,750 --> 00:16:43,430 weiter, solange, bis der Fehler klein genug ist. Und dann sage ich: Das 181 00:16:43,430 --> 00:16:52,290 neuronale Netzwerk ist trainiert. So, das sind jetzt die Ergebnisse. Hier habe ich 182 00:16:52,290 --> 00:16:59,150 jetzt mal aufgetragen, wie viel Energie mein Ofen bei welcher Außentemperatur 183 00:16:59,150 --> 00:17:03,750 spart, das ist in rot aufgetragen. In schwarz sieht man noch, was passiert, wenn 184 00:17:03,750 --> 00:17:10,130 ich meine Heizung im Urlaubs-Modus betreibe. Aber wir konzentrieren uns jetzt 185 00:17:10,130 --> 00:17:13,860 hier auf die rote Linie und da sieht man je tiefer die Temperatur ist, umso mehr 186 00:17:13,860 --> 00:17:19,939 Energie spart er. Und zum Beispiel hier so bei minus 5, zwischen minus zwischen 0 und 187 00:17:19,939 --> 00:17:29,950 minus 5 Grad gibt es so ein Peak. Da spart mir mein Holzofen, da trägt er bis zu 0,5, 188 00:17:29,950 --> 00:17:40,080 bis zu 0,5 Kilowatt zur Heizung bei. So das Modell an sich, wenn ich das 189 00:17:40,080 --> 00:17:45,490 aufintegriere über den ganzen Zeitraum, dann sagt das Modell relativ gut den 190 00:17:45,490 --> 00:17:52,490 realen Energieverbrauch voraus. Das überschätzt den Energieverbrauch leicht um 191 00:17:52,490 --> 00:17:57,290 0,21%. Ich habe auch, ich habe das mehrmals wiederholt. Ich habe mal über 100 192 00:17:57,290 --> 00:18:01,250 Stück über 100 Läufe gemittelt und da komme ich auf eine Standardabweichung auf 193 00:18:01,250 --> 00:18:09,640 3,2%. Das finde ich schon relativ gut für den Ansatz. So, die Energieersparnis, die 194 00:18:09,640 --> 00:18:16,010 das Modell voraussagt, ist im Durchschnitt 6,.., ja ungefähr 6,4% und die 195 00:18:16,010 --> 00:18:19,040 Standardabweichung dort ist auch so gering, dass ich sag: Ja, dem Wert kann 196 00:18:19,040 --> 00:18:25,350 man vertrauen. Und insgesamt sagt das Modell mir voraus, dass ich mit dem 197 00:18:25,350 --> 00:18:33,820 Betrieb des Holzofen so ca. 575 Kilowattstunden an elektrischer Energie 198 00:18:33,820 --> 00:18:43,190 gespart habe oder in Stromkosten ca. 135 Euro. Gut. Wie kann man das einschätzen? 199 00:18:43,190 --> 00:18:49,900 Hier die beiden Wärmequellen verglichen einerseits meine Luft-Wasser-Wärmepumpe, 200 00:18:49,900 --> 00:18:57,130 auf der anderen Seite der Holz-Kaminofen. So Energieträger bei der Luft-Wasser- 201 00:18:57,130 --> 00:19:02,600 Wärmepumpe ist Strom. Inzwischen beziehe ich da nur noch Ökostrom. Die Kosten hatte 202 00:19:02,600 --> 00:19:10,151 ich gesagt, 135 Euro und die eingesparte Energie 575 Kilowattstunden. So, das ist 203 00:19:10,151 --> 00:19:16,310 aber der Stromverbrauch der Wärmepumpe. Und das, was an Heizenergie dann wirklich 204 00:19:16,310 --> 00:19:22,030 zu Hause ankommt, ist höher. Da gibt es eben einen Umrechnungsfaktor, der sagt, 205 00:19:22,030 --> 00:19:26,680 wie viel Energie wirklich im Haus ankommt, denn die Wärmepumpe erzeugt ja nicht 206 00:19:26,680 --> 00:19:31,560 Wärmeenergie, sondern sie pumpt die Wärmeenergie einfach von außen in das Haus 207 00:19:31,560 --> 00:19:38,180 hinein und der Holzofen wurde betrieben bei einer Durchschnittstemperatur von 5 208 00:19:38,180 --> 00:19:43,420 Grad. Und da liegt der "Coefficient of Performance" meiner Luft-Wasser-Wärmepumpe 209 00:19:43,420 --> 00:19:52,020 so ca. bei 4,7. Das heißt, das was an Heizenergie bei mir im Haus ankommt oder 210 00:19:52,020 --> 00:19:59,540 angekommen wäre von diesem, von der eingesparten Energie ist das 4,7 fache. So 211 00:19:59,540 --> 00:20:04,000 auf der anderen Seite habe ich den Holz- Kaminofen. Da habe ich in den zweieinhalb 212 00:20:04,000 --> 00:20:11,040 Jahren ca. 4 Schüttraummeter Buchenholz verbrannt. Hier sieht man, wie viel das 213 00:20:11,040 --> 00:20:16,570 ist. Das sind zwei Meter Buchenholz, das heißt das doppelte. Von dem habe ich ca. 214 00:20:16,570 --> 00:20:23,070 in dem Ofen in der Zeit verbrannt. Bezahlt habe ich dafür wesentlich mehr als für für 215 00:20:23,070 --> 00:20:32,730 den Strom, den ich gespart habe. Die Energie, die dieses Holz hat, sind ca. 216 00:20:32,730 --> 00:20:38,510 fünfeinhalb Kilowatt, 5500 Kilowattstunden. Jetzt hat der Ofen 217 00:20:38,510 --> 00:20:45,530 natürlich auch eine gewisse Effizienz. Die wird angegeben bei ca. 82%. Das heißt auch 218 00:20:45,530 --> 00:20:50,360 davon kommt natürlich nicht alles bei mir im Haus an. Jetzt, wenn man guckt, ist 219 00:20:50,360 --> 00:20:54,840 eine Differenz von fast 2000 Kilowattstunden. Das wirkt erst mal 220 00:20:54,840 --> 00:21:02,410 relativ groß. Aber an sich liege ich da in der richtigen Größenordnung. Die möglichen 221 00:21:02,410 --> 00:21:06,630 Ursachen für die Differenz, die da noch ist, zum einen unterschätze ich 222 00:21:06,630 --> 00:21:11,490 wahrscheinlich noch den Effekt von meinem Holzofen, denn ich mittel nur ich gucke 223 00:21:11,490 --> 00:21:17,800 nur bis zu 24 Stunden zurück. Und wenn der Ofen mal ordentlich läuft und auch die 224 00:21:17,800 --> 00:21:22,890 Wände vom Haus erhitzt, dann ist der Effekt wahrscheinlich noch wesentlich 225 00:21:22,890 --> 00:21:32,290 länger. Und zum anderen: die die Effizienz von 82% erreiche ich garantiert nicht zu 226 00:21:32,290 --> 00:21:39,260 Hause, denn der Ofen steht nur in einem Raum und der heizt genau einen Raum. Und 227 00:21:39,260 --> 00:21:43,390 da kommt nicht alles im ganzen Haus an. Auch da könnte man wahrscheinlich 228 00:21:43,390 --> 00:21:51,100 verbessern. So was schließe ich daraus. Zum einen: Wirtschaftlich ist der Betrieb 229 00:21:51,100 --> 00:21:59,630 meines Holzofens definitiv nicht rentabel. Denn wenn wir, wenn draußen Temperaturen 230 00:21:59,630 --> 00:22:02,450 so jenseits der Minus 10 Grad sind, dann macht es wahrscheinlich auch 231 00:22:02,450 --> 00:22:06,490 wirtschaftlich Sinn, den zu betreiben. Da muss man einfach bedenken Der "Coefficient 232 00:22:06,490 --> 00:22:11,340 of Performance" einer Wärmepumpe sinkt drastisch, wenn man in Richtung minus 10 233 00:22:11,340 --> 00:22:16,690 Grad geht. Ich habe mal aus dem Datenblatt hergeleitet. Leider sieht man das.. leider 234 00:22:16,690 --> 00:22:21,120 wird das für die Temperatur nie angegeben, weil die Werte dann relativ schlecht sind. 235 00:22:21,120 --> 00:22:23,990 Deswegen habe ich mir die aus dem Datenblatt mal hergeleitet. 236 00:22:23,990 --> 00:22:28,610 Schätzungsweise bei minus 10 prozent... bei minus 10 Grad Celsius ist der 237 00:22:28,610 --> 00:22:32,300 "Coefficient of Performance" wahrscheinlich nur noch bei 2,5. 238 00:22:32,300 --> 00:22:38,760 Dahingegen: Die Leistung und die Effizienz des Ofens bleibt aber unabhängig von der 239 00:22:38,760 --> 00:22:44,770 Außentemperatur immer gleich. Das heißt, irgendwo bei sehr tiefen Temperaturen 240 00:22:44,770 --> 00:22:53,880 draußen steigt das, macht es immer mehr Sinn, diesen Ofen zu betreiben. Von der 241 00:22:53,880 --> 00:23:00,910 CO2-Bilanz her kommt es ganz darauf an, was man für einen Strommix hat. Dadurch, 242 00:23:00,910 --> 00:23:07,740 dass ich jetzt nur noch nur noch Ökostrom nehme, macht das da auch nicht mehr so 243 00:23:07,740 --> 00:23:14,130 viel Sinn. Wenn ich die energetische Betrachtung von vorhin angucke, dann komme 244 00:23:14,130 --> 00:23:19,100 ich drauf, dass die Analyse-Methode an sich scheinbar ganz gut funktioniert und 245 00:23:19,100 --> 00:23:24,950 mir da auch Daten in der richtigen Größenordnung liefert. An sich lässt sich 246 00:23:24,950 --> 00:23:31,300 dieser Ansatz auch übertragen eben auf andere Dinge. Die Methode lässt sich 247 00:23:31,300 --> 00:23:35,490 eigentlich immer dann einsetzen, wenn man vorhersagen möchte, ob eine manchmal 248 00:23:35,490 --> 00:23:40,559 verwendete Verhaltens-Methode bei dauerhafter Anwendung zu einer Einsparung 249 00:23:40,559 --> 00:23:44,310 führen würde. Und dann kann man auch ausrechnen, wie groß diese Einsparung 250 00:23:44,310 --> 00:23:52,530 wäre. Das könnte man zum Beispiel machen, indem man die Umwälzpumpe für die 251 00:23:52,530 --> 00:23:57,530 Warmwasser-Aufbereitung mal einschaltet, mal ausschaltet, dann darauf ein Modell 252 00:23:57,530 --> 00:24:03,440 trainiert und am Schluss sich dann ausrechnet: Wenn ich die dauerhaft 253 00:24:03,440 --> 00:24:09,679 ausgeschaltet lassen würde, wie viel würde ich dann sparen? Oder ich könnte mir 254 00:24:09,679 --> 00:24:14,300 überlegen, wenn ich die Jalousien regelmäßig bei Kälte runter lasse, alle 255 00:24:14,300 --> 00:24:17,770 Jalousien runter lasse. Dann würde ich wahrscheinlich auch was sparen und ich 256 00:24:17,770 --> 00:24:20,940 könnte mir gucken.. ich könnte mir angucken, wie viel diese 257 00:24:20,940 --> 00:24:29,460 Verhaltensänderung nachher auch an Energie sparen würde. Gut, zum Schluss noch einmal 258 00:24:29,460 --> 00:24:35,340 die Projekte, die Software und die ich die verwendet habe. Zum einen habe ich schon 259 00:24:35,340 --> 00:24:39,300 erwähnt das OpenSource Projekt volkszaehler.org, was mir sehr geholfen 260 00:24:39,300 --> 00:24:48,420 hat und die Viessmann App von von True Avatar auf GitHub. Zum Auswerten habe ich 261 00:24:48,420 --> 00:24:55,090 sehr viel NumPy verwendet. Ich habe auf das Backend von Vissmann zugegriffen. Da 262 00:24:55,090 --> 00:25:00,850 gibt es das Developer Portal, wo man dann ja die dokumentierte API findet. 263 00:25:00,850 --> 00:25:04,040 Programmiersprachen habe ich das meiste in Python geschrieben, auch ein bisschen PHP 264 00:25:04,040 --> 00:25:10,720 ist dabei. Machine Learning habe ich in Keras mit Tensor Flow als Backend 265 00:25:10,720 --> 00:25:16,530 angewendet und als Package Manager hatte ich Anaconda und ein Buch was ich 266 00:25:16,530 --> 00:25:22,200 empfehlen kann ist hier von Jörg Frochte: Maschinelles Lernen. Das hat mir sehr viel 267 00:25:22,200 --> 00:25:27,480 Spaß gemacht, es zu lesen und es hat mir sehr viel gebracht zum Verständnis von 268 00:25:27,480 --> 00:25:33,059 neuronalen Netzwerken. Damit bin ich fertig. Möchte mich herzlich bedanken fürs 269 00:25:33,059 --> 00:25:39,300 Zuhören. Die Folien wie gesagt habe ich abgelegt auf meinem auf meiner Homepage. 270 00:25:39,300 --> 00:25:43,231 Ihr könnt mich per E-Mail erreichen oder auch über Event Phone, wenn ich dann 271 00:25:43,231 --> 00:25:47,809 wieder zu Hause bin, könnte mich auch über Event Phone anrufen. Vielen Dank. 272 00:25:47,809 --> 00:25:53,429 Herald: Wunderbar. Wir sagen auch: Vielen Dank! Ich hoffe, es hat den 273 00:25:53,429 --> 00:25:57,590 Zuschauer*innen an den Endgeräten gefallen. Wir haben eins, eins, zwei, drei 274 00:25:57,590 --> 00:26:02,350 Fragen bekommen. Wir haben auch noch Zeit für eine kurze Q&A. Falls noch Fragen 275 00:26:02,350 --> 00:26:07,240 aufkommen, einfach in den IRC, da kommt es am besten zu uns durch. Genau, und zwar 276 00:26:07,240 --> 00:26:11,059 wurde gefragt, ob du es schon vorher mit einem einfachen physikalischen Modell 277 00:26:11,059 --> 00:26:15,290 versucht hast, das einfach nur den Wärmefluss oder den Energiefluss mit 278 00:26:15,290 --> 00:26:20,830 einbezieht und nicht ein komplettes neuronales Netzwerk mit 509 Parametern, 279 00:26:20,830 --> 00:26:25,700 oder bzw. 11 Parameter waren es glaub ich und 509 Einstellmöglichkeiten, oder? 280 00:26:25,700 --> 00:26:30,520 Jens: Das habe ich nicht probiert, weil mir relativ schnell klar wurde, dass es 281 00:26:30,520 --> 00:26:37,810 eben sehr viele verschiedene Kombinationen aus verschiedenen Dingen gibt. Also 282 00:26:37,810 --> 00:26:43,320 spielen eben so viele verschiedene Dinge eine Rolle, dass ich gesagt habe: Naja, da 283 00:26:43,320 --> 00:26:47,650 mache ich mir das Leben einfacher. Ich probiere es mit dem neuronalen Netzwerk, 284 00:26:47,650 --> 00:26:49,240 da muss ich mich nicht um die Details kümmern. 285 00:26:49,240 --> 00:26:56,210 Herald: Okay, genau die zweite Frage geht in eine ähnliche Richtung, nämlich das 286 00:26:56,210 --> 00:27:00,190 bzw. dass man das neuronale Netzwerk auch als modellfreien Ansatz charakterisieren 287 00:27:00,190 --> 00:27:05,770 könnte, weil da weniger Parameter und weniger Daten vonnöten würden. Hast du da 288 00:27:05,770 --> 00:27:11,880 mal drüber nachgedacht? Jens: Ne habe ich so noch nicht drüber 289 00:27:11,880 --> 00:27:14,929 nachgedacht. Herald: Okay. Genau, und es wurde noch 290 00:27:14,929 --> 00:27:18,060 gefragt, was für eine Wärmepumpe du benutzt hast, ob die Wärme aus der Luft 291 00:27:18,060 --> 00:27:22,111 oder aus dem Boden kommt, von dem, wie sie es angeordnet hat. Es kommt aber aus der 292 00:27:22,111 --> 00:27:24,111 Luft. Jens: Es ist eine Luft-Wasser-Wärmepumpe. 293 00:27:24,111 --> 00:27:28,680 Das heißt, die Wärmepumpe zieht die die Wärme aus der Luft raus. Auf der einen 294 00:27:28,680 --> 00:27:32,460 Seite saugt sie die Luft an, auf der anderen Seite pumpt sie die kalte, 295 00:27:32,460 --> 00:27:37,929 abgekühlte Luft wieder raus. Ja, natürlich könnte man die Effizienz steigern, indem 296 00:27:37,929 --> 00:27:43,480 man auf eine eine andere Art von Wärmepumpe, wie zum Beispiel mit einer 297 00:27:43,480 --> 00:27:49,160 Tiefbohrung die Energie aus dem aus dem Boden holen. Das würde wahrscheinlich die 298 00:27:49,160 --> 00:27:54,420 Effizienz und vor allen Dingen den Effizienz-Verlust bei tiefen Temperaturen, 299 00:27:54,420 --> 00:27:57,680 der wäre dann längst nicht so stark. Herald: Ich kann mir auch vorstellen, dass 300 00:27:57,680 --> 00:28:02,340 der Boden ja auch einen guten Puffer oder guten Zeitpuffer bietet. Besser als die 301 00:28:02,340 --> 00:28:04,760 Luft. Jens: Ja, und es gibt auch, es gibt 302 00:28:04,760 --> 00:28:10,400 inzwischen Wärmepumpen, wo man sich einen großen Wassertank in in, in den Boden 303 00:28:10,400 --> 00:28:15,190 einlässt und über den Winter macht man das zu Eis und im Sommer lässt man es langsam 304 00:28:15,190 --> 00:28:18,740 schmelzen. Herald: Auch sehr interessant. Es gab 305 00:28:18,740 --> 00:28:23,740 sogar noch Feedback über den IRC, dass der Talk sehr informativ war und es wird dir 306 00:28:23,740 --> 00:28:26,340 gedankt. Jens: Vielen Dank. 307 00:28:26,340 --> 00:28:29,310 Herald: Gut, wenn sonst jetzt noch nichts mehr hier eintrudelt... Ah, doch noch was. 308 00:28:29,310 --> 00:28:33,690 Und zwar ob es die Leser am Stromzähler auch mit WiFi und Akku gibt, dass sie 309 00:28:33,690 --> 00:28:37,920 nicht über eben diese Vier-Draht_Leitungen angeschlossen werden müssen. 310 00:28:37,920 --> 00:28:43,510 Jens: Die die am Stromzähler oder die am.. Herald: die Leser am Stromzähler, ja 311 00:28:43,510 --> 00:28:46,920 genau. Jens: Am Stromzähler habe ich noch keine 312 00:28:46,920 --> 00:28:53,490 gesehen. Das frage ich mich auch. Warum? Wir machen überall Smart Home, machen alle 313 00:28:53,490 --> 00:28:59,910 Lichtschalter per WLAN, aber ein Zähler, der auf den Zähler aufgesteckt wird und 314 00:28:59,910 --> 00:29:03,050 dann per WLAN einfach so überträgt, habe ich noch nirgendwo gefunden. 315 00:29:03,050 --> 00:29:08,440 Herald: Das wäre ja mal ein spannendes Bastelprojekt für die Community, ein WLAN- 316 00:29:08,440 --> 00:29:17,060 und Akku- Infrarotlesegerät für den Stromzähler. Es kommt noch eine Frage. 317 00:29:17,060 --> 00:29:22,510 Noch mal die gleiche Geschichte: Ein nettes kleines Modell mit gekoppelten 318 00:29:22,510 --> 00:29:26,870 Wärmespeicher als Differentialgleichung hätte sehr viel weniger Parameter und die 319 00:29:26,870 --> 00:29:29,790 Daten müssten nicht erst gemittelt werden. Ich glaube, du hast eine Hausaufgabe 320 00:29:29,790 --> 00:29:36,200 bekommen. Gut, mal schauen. Dann sehen wir vielleicht nächstes Jahr mit einem 321 00:29:36,200 --> 00:29:39,200 kleineren Modell. Jens: Mal gucken. Wenn ich wenn ich das in 322 00:29:39,200 --> 00:29:41,420 einem Jahr hinkriege, dann melde ich mich für nächstes Jahr. 323 00:29:41,420 --> 00:29:45,740 Herald: Gut. Genau dann würde ich sagen: Vielen Dank an alle Zuschauer*innen da 324 00:29:45,740 --> 00:29:50,910 draußen. Ich hoffe es hat euch gefallen. Auch nochmal vielen Dank an Jens und ich 325 00:29:50,910 --> 00:29:54,540 würde dir noch das letzte Wort lassen und dann sind wir soweit fertig. 326 00:29:54,540 --> 00:29:59,130 Jens: Ja, vielen Dank euch auch fürs Organisieren. Und dann bis demnächst. 327 00:29:59,130 --> 00:30:02,760 Tschüss! 328 00:30:02,760 --> 00:30:08,040 *RC3-Abspann-Musik* 329 00:30:08,040 --> 00:30:13,669 Untertitel erstellt von c3subtitles.de im Jahr 2022. Mach mit und hilf uns!