Integration von Fujitsu Klimaanlagen

User stellen ihre Haussteuerung vor

Moderator: Co-Administratoren

Antworten
Sven_A
Beiträge: 2378
Registriert: 26.01.2016, 08:14
Wohnort: Renningen
Hat sich bedankt: 10 Mal
Danksagung erhalten: 14 Mal

Integration von Fujitsu Klimaanlagen

Beitrag von Sven_A » 15.04.2019, 13:24

Hallo,

ich will hier mal vorstellen wie ich meine Klimaanlage von Fujitsu hier eingebunden habe. Prinzipiell ist die Lösung aber für alle Geräte geeignet die per Infrarot gesteuert werden.

Direkt vom Hersteller hätte es eine (teuere) Cloudlösung für die Smartphonesteuerung gegeben. Auch von Drittherstellern gibt es per Cloud steuerbare IR-Sender die für Klimaanlagen geeignet sind. Jetzt bin ich aber kein Freund von Cloudlösungen. Erstens will ich nicht das Hersteller XYZ weiß wann ich die Klimaanlage an habe, was aber noch viel wichtiger ist: Keiner Garantiert das der Hersteller nicht morgen seine Cloud abschaltet, Kostenpflichtig macht, oder einfach die API Schnittstelle soweit ändert das ich Tagelang Nacharbeiten muss.

Daher musste FÜR MICH eine lokale Lösung her.

Angeboten hat sich die Lösung die hier im Forum oft genannt wird wenn es um die Steuerung von Geräten geht die eine Fernbedienung haben: Die Kontakte der FB per HM ansteuern. Also kurz geschaut, aus China gibt es Nachbau(?)Fernbedienungen für unter 5 Euro das Stück. Da ich 3 Innengeräte habe also 3 Fernbedienungen in China geordert. Angesteuert sollte das über die 8-Fach HM Schaltaktoren werden. Einer davon lag noch im Keller, also auch da 2 weitere bestellt.

Gleichzeitig gedanken gemacht wie das in der WebUI umgesetzt werden soll.
Dazu ist eine kleine Hintergrundinfo nötig: Bei (den meisten) Klimaanlagen wird bei einem Tastendruck der Fernbedienung die GESAMTE Einstellung die auf dem Display sichtbar ist übertragen. Drückt man also auf die Taste - um die Temperatur von 20 auf 19 Grad zu senken wird nicht "-" übertragen, sondern die Einstellung: "Kühlen, 19 Grad, Lüfter Automatik". Wechselt man dann z.B. von Kühlen auf Heizen wird auch hier komplett alles übertragen "Heizen, 19 Grad, Lüfter Automatik".
Bedeutet für die Umsetzung per IR-Fernbedienung: Jeder Tastendruck muss in der WebUI mitgezählt werden. Geht ein Paket verloren, oder ändert jemand per Hand die Einstellungen der Fernbedienung hat die Homematic keine Chance mehr die Einstellungen korrekt vorzunehmen.

Da die Lieferzeit aus China doch etwas länger war also parallel dazu geschaut welche Lösungsmöglichkeiten es sonst gibt. Bald hatte ich die Idee die Klimaanlage per Arduino und einer IR Diode zu steuern. Die gängigen IR Bibliotheken die ich gefunden hatte können aber keine Codes für Klimaanlagen generieren.

Dann bin ich auf eine Lösung gestoßen die die IR Signale der Originalfernbedienung einfach aufzeichnet, und per Arduino wieder abspielt. Also schnell einen IR Empfänger an einen vorhandenen Arduino Uno anschließen, Signal aufzeichnen, und mit einer IR-Diode wieder abspielen. Piep, läuft. Da die IR-Codes der Klimaanlage aber deutlich länger sind (weil ja immer alles übertragen wird) als z.B. bei einem TV Gerät geht dem Arduino Uno doch recht schnell der Speicher aus.
Abhilfe bietet ein Arduino Mega. Also auch davon 3 geordert, und schonmal weiter programmiert. Schonmal das HM-Mod-RE-8 implementieren... beim testen kommt mir eine weitere Idee: Ich habe im gesamten Haus eine Netzwerkverkabelung mit Doppeldosen in jedem Zimmer. Wäre es nicht möglich die IR Diode nicht direkt an den Arduino anzuschließen, sondern über die Netzwerkkabel zentral vom Keller aus anzusteuern? Also schnell ein Kabel vom Arduino auf die RJ45 Dose gebastelt, im Zimmer wieder von der Dose auf die IR Diode, angeschlossen. Piep, läuft.

Anstatt in jedem Zimmer einen Arduino zu platzieren und mit Strom zu versorgen reicht mir also 1 Arduino Mega im Keller, der dann über die Hausverkablung 3 IR-Dioden in den verschiedenen Zimmern ansteuert. Da ich zu dem Zeitpunkt bereits drei von den HM-Mod-RE-8 da hattte, war schnell klar:
Pro Zimmer gibt es ein 8fach Modul. Ein kurzer Impuls eines Ausgangs des Moduls soll auf dem Arduino jeweils für das zugehörige Zimmer ein vorher definiertes Programm starten. Damit hab ich pro Zimmer 8 Klimaeinstellungen, wobei ein Programm davon schlicht "AUS" ist. Also bleiben 7 verschiedene Programme. Derzeit sind davon nur 3 umgesetzt, nämlich: Kühlen 20°, Nur Lüften, Trocknen. Was ich wirklich brauch werde ich sehen wenn die heise Jahreszeit losgeht und die Programmierung des Arduinos entsprechend erweitern.
Um den AKTUELLEN Status der Klimageräte zu überwachen wollte ich Fensterkontake an den Lamellen anbringen. Jetzt hatte ich aber Angst das die Batterie leidet wenn sie direkt im Kalten Luftstrom hängt. Da kam der Newsletter von ELV der das neue HmIP-SCI Modul zum anschluss eigener Sensoren bewarb. Damit spar ich mir ein Gehäuse mit Batteriehalter für das 8-Kanal-Sendemodul zu entwerfen, und hab das und passende Magnetkontakte auch gleich noch bestellt.

Hardware:
- 1x Arduino Mega 2560 R3
- 1x IR Receiver: Vishay IR-Empfänger/Demodulator TSOP2236, 36 kHz (ELV Nr.: 68-11 23 31)
- 3x IR Diode: Everlight Infrarot-LED ELIR333C/H0/L10, klar, 5 mm, 40° (ELV Nr.: 68-11 23 03)
- 3x 150 Ohm Widerstände um die Eingänge des Arduinos zu schützen
- 3x HM-MOD-Re-8
- 3x HmIP-SCI + Magnetkontakte
Sowie aus Bestand:
- Lochraster Platine
- altes Flachbandkabel einer IDE Festplatte
- Gehäuse und Halter aus dem 3D-Drucker
- Netzwerkkabel, Crimpzange und RJ45 Stecker
- Pfostenstecker
- Schrumpfschlauch
- 12V Netzteil für den Arduino

Für die 8-Kanal-Module hab ich eine Trägerplatine gemacht, die die 8 Ausgänge jeweils über ein Flachbandkabel auf die Eingänge des Arduinos führen. Auch die Spannungsversorgung der Module übernimmt der Arduino, der hat einen passenden 5V Ausgang.

IMG_20190331_114948_727.jpg
Arduino und 8fach Empfangsmodul montiert
MVIMG_20190414_100231_093.jpg
IR Sender im Gehäuse
MVIMG_20190414_100253_830.jpg
IR Sender ohne Gehäuse

Bei den Tests (und auch den Berichten im Internet) hat sich gezeigt: Die Reichweite der IR Dioden ist eher (sehr) gering, daher nachher so nah wie möglich am Gerät positionieren.

In den Zimmern sind zwei mal klassische Wandgeräte, die knapp unter der Decke hängen verbaut, davor/darunter steht jeweils der Kleiderschrank. Also hab ich die IR Diode auf den Schrank geführt und dort in kurzer Distanz zum Klimagerät positioniert.

Im dritten Zimmer ist eine Wandkasette, ähnlich eines Nachtspeicherofens, in Bodennähe platziert. Einfach weils unter der Dachschräge scheiße aussehen würde wenn auf halber Höhe zum Giebel ein klassisches Gerät hängen würde. Hier hab ich an der Wand keinen passenden Ort für die IR-Diode gefunden, daher wurde diese kurzerhand ohne Gehäuse direkt in das Klimagerät, ca. 2cm von dessen IR-Receiver, platziert.
MVIMG_20190414_101023_060.jpg
IR Sender auf dem Schrank, direkt unter dem Empfänger der Inneneinheit
MVIMG_20190414_154941_190.jpg
IR Sender direkt in der Wandkasette
MVIMG_20190414_102610_639.jpg
Kabel zum Sender unter der Sockelleiste
MVIMG_20190414_162517_484.jpg
HmIP_SCI mit Magnetkontakt
Software:
Als erstes hab ich mit einem im Internet gefundenen Sketch am Arduino Uno die Signale der Fernbedienung aufgezeichnet. Programm dazu im Anhang (long_ir.zip). Das ist schon entsprechend getunt damit es mit den langen Codes der Klimaanlage zurecht kommt. Auf den Arduino Uno aufspielen, den IR Receiver anschließen (VCC, GND und DATA). Data an PIN13 des Arduinos. Per Konsole mit dem Arduino verbinden, Einstellungen auf der Fernbedienung vornehmen, auf den Receiver richten, übertragen. An der Konsole sollten jetzt die Codes auftauchen.
ACHTUNG: Diese werden abwechselnd als positive und negative Werte dargestellt, zum senden muss nachher aber alles positiv sein, also alle Minuse rauslöschen.

Dann hab ich eine getunte IR-Bibliothek gebraucht, die mehr als nur eine IR Diode getrennt ansteuern kann. Auch das war bald gefunden, auch diese im Anhang (IRRemote.zip).

Dann noch selber ein kures Programm geschrieben. Dieses frägt in Dauerschleife alle 3x8 Eingänge ab, und reagiert dann entsprechend falls gerade ein Eingang auf Masse gezogen wird. Danach wird das Modul für 1200ms Sekunden ignoriert. Damit wird sichergestellt das nicht bei jedem Schleifendurchlauf ein erneutes IR-Signal generiert wird.
Auch mein Programm im Anhang (AC_Sender.zip).

WebUI:
In der WebUI hab ich zwei Programme und eine Sysvar pro Raum für die Steuerung angelegt.
In der Sysvar wird der Aktuelle/bzw Sollzustand der Klimaanlage als Werteliste hinterlegt.
Im ersten Programm wird auf ein Manuelles ein- oder ausschalten der Klimaanlage über die Fernbedieung in den Räumen reagiert, ausgelöst über die Zustandsänderung des Magnetkontaktes.
Im zweiten Programm wird das IR Signal ausgelöst wenn sich der Status der Sysvar ändert.

Bilder der WebUI Programme werden im nächsten Post nachgeliefert, da wohl nicht mehr als 10 Bilder pro Beitrag möglich sind.

Wenn jemand Fragen oder Anregungen hat: Nur her damit.

Viele Grüße,
Sven
Dateianhänge
Long_IR.zip
Programm um die IR Codes aufzuzeichnen
(1.3 KiB) 7-mal heruntergeladen
IRremote.zip
IR Bibliothek, erweitert um mehrere Sender
(32.78 KiB) 7-mal heruntergeladen
AC_Sender.zip
Mein Code für den Arduino Mega
(1.45 KiB) 6-mal heruntergeladen

Sven_A
Beiträge: 2378
Registriert: 26.01.2016, 08:14
Wohnort: Renningen
Hat sich bedankt: 10 Mal
Danksagung erhalten: 14 Mal

Re: Integration von Fujitsu Klimaanlagen

Beitrag von Sven_A » 15.04.2019, 13:25

Ich hab jeweils noch einen kleinen Logikfehler in den Programmen gefunden, wurde nun korrigiert.
Klima_steuern_2.png
Klima_aus_unbekannt_2.png
Zuletzt geändert von Sven_A am 16.04.2019, 09:08, insgesamt 1-mal geändert.

Sven_A
Beiträge: 2378
Registriert: 26.01.2016, 08:14
Wohnort: Renningen
Hat sich bedankt: 10 Mal
Danksagung erhalten: 14 Mal

Re: Integration von Fujitsu Klimaanlagen

Beitrag von Sven_A » 15.04.2019, 13:32

Ganz vergessen: Gesteuert wird das ganze dann über ein Androidtablet, das per Tinymatic über Widgets auf dem Homescreen die Sysvar ändert, oder eben per Programm (z.B. vorstellbar: Wenn morgens gelüftet wird und drausen >20° sind soll die Ventilatorfunktion aktiviert werden, um den Luftaustausch zu fördern).

Antworten

Zurück zu „Projektvorstellungen“