Es wird warm!!! Projekt Heizung

Hallo Leute!

Year!!! Es wird warm und das freut mich, weil Wärme und Kälte was mit meinem Projekt gemeinsam haben und ich jetzt mal ein wenig darüber schreiben kann. Erfolg und Misserfolg sind zwei enge Freunde.

Viele Menschen fragen sich immer, was macht Ihr? Das ist zu kompliziert für mich und ich würde eher stören als nützen. NEIN!!! Hier stört keiner und man lernt echt viel und man kann eigentlich nicht viel kaputt machen. Es sollte nur den letzten Zustand haben bevor man darin rumgebastelt hat.

Bevor es jetzt an das Projekt geht und alle Erfolge und Rückschläge erzähle, kurz was über mich. Ich bin Piwko und ich sitze wie alle anderen nicht täglich am Computer und schreibe Codes, sondern ich sitze Abends am PC und versuche meine Projekte umzusetzen, was nicht immer möglich ist (Familie :-))

Was am Anfang und bei anderen wie drei Mausklicks aussieht, ist doch nicht so leicht wie man immer denkt, aber im Space bist du nicht alleine! Ich habe viel von anderen gelernt und es kommt immer mehr (Wissen) dazu! (Verdammt! :-))

Da ich jetzt nicht weiß, wann ich genau mit dem Projekt angefangen habe, gehen wir mal einfach in der Zeit zurück und habe den 18 Juni 2019! Keine Ahnung, ob es der Tag war, aber wir starten da mal. Wie an jeden Donnerstag, quasselten wir über Dinge die Space so angefallen sind und was man verbessern könnte. Die Heizung war schon in der Homesteuerung mit eingebunden, wenn die Tür auf oder zu geschlossen wurde, ist die Heizung in den jeweiligen Tag oder Nacht Modus gewechselt. Ich dachte kein Problem, jetzt wo wir einen Pi in der Nähe von der Heizung haben, kann er die Heizung über ein Relais schalten und wenn die Heizung eine Störung hat, was zu damaligen Zeit immer zwischendurch vorkam, können wir uns eine Rückmeldung geben lassen. Mit den anwesenden gesprochen, die Idee war geboren und mach mal, wird ja nicht so schwer sein.

Also Kabel gekauft und bei nächster Gelegenheit verlegt, warum ist der Keller immer so warm? Egal, kann mir einer helfen? Zack in 30 Minuten war der Pi mit der Heizung verbunden. So, jetzt den Laptop aufschlagen und sich an dem Pi anmelden. Mhmm…. Welcher ist das denn? Welche IP hat er? Leichter Rückschlag, aber schon war das Problem gelöst, oder?? Stecker raus, die IP die verschwindet! Jaer, ich weiß die IP!

Aber schon war der Space mit allen Lampen an! Ganz schön hell, die Stimmung kaputt, aber bei Stromausfall geht das Licht an! Oder auch nicht! Weil zwischen durch, warum auch immer, der FI ausgelöst hat, sollte man nicht im dunkeln stehen, so das bei Rückkehr des Stromes auch erstmal das Licht angeht und dann an bleibt oder wieder ausgeht. Keine Ahnung anderes Projekt!

Ok, nach dem ich dann endlich auf dem PI war, war es auch schon spät und ich war müde. Schnell die Standartzeit einstellen und nächste Woche weiter machen, war auch erstmal kein Problem, weil war ja warm. Jetzt sind so 7 Tage erst mal nicht viel, aber es kommt doch zwischen durch einer rein, der was machen möchte und wie mache ich die Heizung an? MÄH!!!

Puh, ich war am Donnerstag wieder da, voller Tatendrang und jetzt hatten sich schon einige Fehler aufgetan. Erstmal eine Website programmieren, das man sie Heizung auch zwischen durch an und aus machen kann. Was dann aufgefallen ist, man vergisst es wieder, dann läuft die Heizung 3 Tage im Tagebetieb, auch Nachts! Arrrr, nicht gut!

Website war schon eine gute Idee, aber dann einfach jeden Abend um 23 Uhr wird die Heizung in den Nachtmodus gesetzt. Jetzt wollte man nicht erst 5 Minuten am Handy drücken, um eine die Heizung an oder aus zumachen, also musste eine externes Bedienfeld besorgt werden. Kleine Box, 4 Elemente, 5 Funktionen und sind auch beleuchtet, damit erst mal das Grundgerüst stand, wurde die Schalter nur aufgelegt, den Rest machen wir später.

Wer schon mal bei uns war, kennt jetzt mein Problem, ich sitze am PC und schreibe mein Code. Man hört die Relais schalten, aber welche Sinn es und welcher Schalter geht, auf welchen Eingang. Zack, raus gefunden und nur erst mal ins Programm geschrieben. Wer könnte den erahnen, das eine Woche später ich nicht da war und ein andere sich das Programm anschauen und weiter machen. Danke an SilSon, das Du mir den Anfang gemacht hast, das schon mal im Wiki zu dokumentieren. Es macht für alle leichter! 🙂

Die Kälte war da und es sollte vor Beginn geheizt werden, damit keiner frieren muss. Bäm! Es war natürlich kalt, aber warum, wo hat es gelegen? Lösung, wir brauchen einen Mitarbeiter, wer macht es? Das war Geburtsstunde für Fynn, ein Bot der von Chris immer mal wieder benutzt wurde. Jetzt sollte Fynn die Heizung überwachen und uns kunt tun, wenn er die Heizung verstellt oder wen einer von Hand den Modus ändert.

Die ersten Minuten war sehr gut, Fynn sagte „Habe Heizung an gemacht“ oder „Habe Heizung ausgemacht“. Bis Smash die Taste von der Heizung mehrmals hintereinander gedrückt hatte. Der Raum war innerhalb weniger Sekunden mit der Status der Heizung überflutet worden. Menschen die nicht war waren, werden es Fynn und dann mich gehasst haben. Die Schalterabfrage fand im Millisekundenbereich statt, so das der nicht entprellte Schalter, mit jedem drücken 20 bis 30 Nachrichten geschickt hat. Verdammt! Die Abfrage musste geändert werden, aber wie.

Der erste Versuch war, man drückt so lange den Taster bis sich der Status ändert und der gewünschte Effekt eintrifft. Hat man oder auch Frau nicht aufgepasst, war die Heizung nach 2 Sekunden aus. Ein bißchen die Zeiten angepasst und kurze Zeit später, war jeder darauf eingestellt. Da jetzt die Heizungssteuerung aus zwei Programmen stand, die uns irgendwann mal aufgefallen, das die Beleuchtung falsch war. Wenn Heizung an, dann Licht an, war nicht so! MÄH! Also Fehlersuche, hat einen ganzen Tag gekostet, weil man den Modus von der Fußbodenheizung nicht direkt, sondern erst einstellen muss, der aber nach 2 Minuten zurück in das Standardbild geht. Super, auch das ist jetzt richtig.

Das mit der Taste war mir irgendwie ein Dorn im Auge, also noch mal ran. Smash schaute mal darüber und meinte „Warum packst Du die An und Aus-Funktion nicht nach oben in einen Block und wenn Du sie brauchst und startest du den jeweiligen Block?“ Gesagt getan, von meinen 200 Zeilen sind wir runter auf 80 Zeilen und das Programm lässt sich warum auch immer leichter lesen und Änderungen müssen jetzt nicht mehr an x – Stellen gemacht werden, sondern nur noch an einer. Zweiter Versuch! Jetzt ging mir auch ein Licht auf, ich hatte meine Abfrage falsch aufgebaut. Der Taster wird jetzt in Millisekundenbereich abgefragt und wenn dann eine Aktion ausgelöst wird, startet er die Funktion, wartet 2 Sekunden und fängt dann wieder an den Taster abzufragen. Besser geht es doch nicht, kurzen drücken und schon erfolgt eine Aktion.

Kann man das nicht mit MQTT und dem Status vom Raum verbinden? Das hat auch einige Nerven gekostet. Alles Programme sind in Bash programmiert und sind einfach gehalten, zu mindestens denke ich das, aber es soll auch erst mal laufen. Nach ein paar Tagen, war es dann auch drin und es klappte.

Was mich dann eines Abends dann geritten hat, weiß ich bis heute nicht, aber der Ansatz war gut, nur meine Ausführung, war ein Schuss ins Kalte. Ich wollte, wenn um 14 Uhr die Heizung eingeschaltet wird, um für Abends vor zu heizen, dann soll die Heizung bis Abends an bleiben. Manchmal denkt man, oh ich bringe das kurz rum und brauche es nicht heute Abend schleppen. Solche Aktionen macht man immer um 14:01 Uhr, warum auch eher, macht ja kein Sinn. Was ist denn jetzt das Problem? Die Heizung wird um 14 Uhr von Fynn angestellt, ich komme um 13:59 Uhr in der Space, lege meine Sache ab und werde durch eine Kekse kurz abgelenkt, der sich in einer Dose befindet. Nachdem der Kekse in meinem Magen ist, verlasse ich den Raum um 14:01 Uhr, die Heizung wird ausgemacht. Es bleibt kalt!!! ARRRRG!

Also, ein Zähler einprogrammiert und es klappt auch erst! ERST??? WARUM?? Verändere keine Programme die laufen, ich mache es trotzdem. Die Rechnung ohne Fynn gemacht. Die Zahlenkombi hat sich durch verschiedene Aktionen so verschleppt, das die Heizung nicht mehr an oder aus zumachen war. Wer liebt der schiebt! Nach ein paar Wochen habe ich das Problem, dann doch erstmal wieder rausgenommen, um ein Testbetrieb damit zu fahren.

Hier macht einer viel MQTT-Traffic! Das ist ungewöhnlich viel! Natoll, mein Skript macht Traffic, ist nicht schlimm, aber könnte weniger sein. Schreibt Dein Programm doch in Phyton!

Jetzt ist der Frühling da und ich kann in Ruhe Phyton lernen und meine Heizungssteuerung umbauen. Keiner der friert und ich kann neue Funkionen gleich mit eintippen.

Wer Lust hat, mir zu helfen ist gerne dazu eingeladen.

Ich werde versuchen, zwischen durch mal einen Status von dem Projekt zu geben und vielleicht auch von anderen Projekten zu berichten

Bis später

Piwko