Vorwort

Diesen Artikel habe ich von der alten Website übernommen, da er recht häufig aufgerufen wurde und immer noch wird. Heutzutage heißt es nicht mehr Hausautomatisierung sondern Smart Home.

Übrigens kann ich jedem davon abraten einfach mal was zu basteln. Ein System sollte nicht nur ein paar Jahre funktionieren, sondern auch von einem potentiellen Käufer oder Mieter problemlos betrieben werden. Sonst wird der die ganze schöne Technik rausreißen - und was Richtiges kaufen. Meine Technik ist jetzt ziemlich genau 10 Jahre alt- und funktioniert im Großen und Ganzen recht problemlos. In dieser Zeit habe ich viele sogenannte professionelle Systeme auf dem Markt kommen und gehen gesehen. Zu gr0ß ist die Konkurrenz und der jeweilige Hype der Entwicklungsinvestitionen der Firmen in die Tonne haut. Daher spricht in meinen Augen nichts - aber auch wirklich garnichts - gegen eine Selbstbaulösung.

In Kürze erscheint hier auch die neue "Smarthome" Alarmanlage, die sich auch vernetzen läßt und über GEO-fence dann auch herausfindet wenn ich vor der Haustüre stehe.

Einleitung

Vor ziemlich genau 10 Jahren hatte ich mich gefragt wie man denn wohl Dinge im Haushalt automatisieren könnte. Eigentlicher Auslöser war die Anschaffung von recht vielen Aussenjalousien die elektrisch bedient werden können. Nach Recherche findet man recht schnell so was wie EIB-Bus, LON etc.

Das Problem ist, das ist zwar ein Standard aber durch recht hohe Lizenzgebühren wird verhindert dass sich der Standard durchsetzt. Alleine für ein Programmiertool soll man fast 2000 Euro bezahlen, aber das ist natürlich nur für den "Edel-Elektriker" gedacht - der Rest der Bevölkerung ist ja dafür zu doof. Die Komponenten die man natürlich dann im ganzen Haus installieren muss, sind auch nochmal mit 75 bis 100 Euro für einen einfachen Schalter eher hinderlich. Kurz und gut man muss was suchen und finden was das Ganze etwas billiger macht.

Heute gibt es ja allerlei proprietäre Lösungen (ja ja - wie meine auch) die dann zwar alle Produkte EINES Herstellers steuern können, aber die Zusammenarbeit mit Produkten anderer Hersteller klappt leider nicht so gut - bis garnicht.

Ja OK Arbeitszeit ist auch teuer.., aber der Weg ist das Ziel. KNX hab ich mir auch etwas detailierter angeschaut, das geht genau in die richtige Richtung, aber auch hier ist die SW und die einzelnen Komponenten doch recht teuer.

Zentralcomputer bitte melden

Der zentrale Rechner ist ein kleiner Nano PC der Firma ZOTAC. Mit ca. 25W Stromverbrauch erschien mir der am besten geeignet dauerhaft die Steuerung, Datenerfassung im Haus zu übernehmen. Der ist noch erheblich kleiner als ein Netzwerkrouter und kann mit einer kleinen SSD Drive auch anspruchsvolle Aufgaben wie Bewegungserfassung der Türkamera locker erbringen. Er hat diverse - kompakte - Schnittstellen wie USB, eSATA oder HDMI. Als Betriebsystem läuft ein Debian Linux auf dem dann auch alle modernen Packages installierbar sind. Ein Apache Webserver und eine Menge Java Script bringt alle Aufgaben und Schnittstellen per Webseite zum Benutzer - und zurück.

Die Größe des Rechners auf dem Bild ist übrigens ca. 130*130*60mm.

Es gibt Ihn auch in einer noch kleineren Version ohne WLAN und fester SSD-Festplatte. Dann ist er sogar nur 90mm*90mm groß (das Bild mit dem Bleistift)

Alle Anschlüsse in die "elektrische Welt" werden über USB abgewickelt. Hierzu habe ich kleine USB Controller-Platinen entwickelt (dazu später mehr). Die Entscheidung für USB war insofern schnell getroffen, da kaum noch Rechner einen RS232 oder Parallelport besitzen.

Nachtrag: Ja so kleine Rechner wie der Zotac Nano haben eben nur noch "kleine" Schnittstellen. USB war also eine perfekte Wahl. Den Raspberry Pi zur Haussteuerung einzusetzen hatte ich auch bereits einmal probiert, allerdings war der für die Aufzeichnung der Webcambilder und als interner Webserver in meinen Augen eigentlich zu langsam. Den Ausschlag hat aber gegeben, daß der Raspberry Pi immer mal wieder einfach stehen blieb. Ich denke entweder durch Störungen die über die Stromleitung einstreuen oder durch Flashfehler. (ja die Flashkarte hatte ich auch schon mehrfach getauscht).

Temperaturmessung

Die wirklich erste Aktion - quasi als Test auch von möglichen Bussystemen - war der 1-wire Bus von Dallas Semiconductor. Dies ist ein 1-Draht-Bus der angeblich eine Ausdehnung von mehr als 100m haben darf. Er wird aber meist nur auf Platinen, Motherboards etc. verwendet.

Dafür habe ich dann im Haus bereits verlegte Telefonleitungen und Alarmanlagenkabel verwendet die noch freie Adern hatten. Mein erster Schritt war es Temperaturen an wichtigen Stellen zu messen und permanent aufzuzeichnen. Als Temperatur-Sensoren habe ich DS18S20 und DS1820 verwendet. Die Temperaturen habe ich dann alle 10s in einer MYSQL Datenbank geloggt und per Webseite auch angezeigt. Anzeige erfolgt mit Dygraphs wie hier:

Geht im Prinzip ganz gut - aber wenn es nicht geht kann man fast immer nur probieren (was hab ich noch als letztes angeschlossen...mmhh). Der Vorteil genau dieser Sensoren ist, die haben wirklich nur 3 Beine und liefern die Temperatur digital gewandelt auf 0.25 Grad genau. Weiter gibt es noch diverse IO-Chips mit 8bit- oder 16bit-Digital IO Port, die im Prinzip auch funktionieren, aber wie gesagt meine Tests ergaben eigentlich: völlig ungeeignet für einen zuverlässigen Hausbus.

ATMEGA und Co - CPU

Um die Wünsche von HoLi - so heisst unser Steuerrechner Ho=Home Li=Linux) in die Außenwelt zu tragen, gibt es kleine Schnittstellenplatinen die USB nach was auch immer realisieren. Die Platinen haben einen ATMEGA 644(AU) als CPU mit 8 bzw. 16MHz getaktet, sowie USB-Controller, manche auch noch CAN-Controller und CAN-Treiberchips, man weiß ja nie was man noch braucht. Die Wahl fiel 2008 auf den Atmel Controller ATMEGA64420AU weil er relativ einfach zu programmieren ist. Die AU-Version (für Automotive) hat zwei UARTS zur Kommunikation mit externen Systemen, eine davon wird für den USB Interface Controller-Chip verwendet falls eingebaut.

Nachtrag 2015

7.6.2015: Neue Rolladenkontroller funktionieren jetzt auch mit dem STM32F103RB oder auch mit STM32F405RGT6 ARM CORTEX M4. Dies sind Chips aus der ARM Cortex Serie von ST mit eingebautem CAN Bus. Hierdurch kann man das ganze noch kleiner bauen und man benötigt nur noch einen einzigen Chip.

Die Stromversorgung der verteilten Busplatinen erfolgt wie bereits an anderer Stelle beschrieben per zentraler Stromversorgung mit einem kleinen 12V DC Schaltnetzteil.

Bei Olimex gibts zwei Boards die man zum Test aber auch schon als fertige Elektronik nutzen kann. Zugegeben die verwendeten MPUs sind eigentlich zu leistungsfähig für die Anwendung, aber die PCBs sind halt recht günstig.

1.10. 2016: Neues STM32 basiertes Board mit Anschluss für 4(!) Motoren ist entwickelt und geht jetzt in die Betatestphase. So kann man einen Raum der bis zu 4 Jalousien oder Rolladen hat mit einer Platine "bedienen". Die Elektronik funktioniert mit der neuen Software soweit ganz gut und braucht in Ruhe 17mA.

Die Software habe ich allerdings jetzt komplett neu geschrieben, da mit dem 32-Bit CPU des STM32 vieles viel einfacher geht als vorher noch mit dem 8-Bit ATMEGA 644.

Mit den nachfolgenden kleinen USB/TTL Wandler Platinen kann man dann per Laptop und Hyperterminal über ein Textmenü die Basiseinstellungen machen (wie z.B. CAN Id, Gruppen Id).

Hier ist nochmal ein Artikel zum USB-TTL Converter.

Mit einem Jumper kann man wählen ob für 5V oder 3.3V Logik.

Hier nochmal die Bilder zu den Platinen der Einzelcontroller, die an den Jalousien und Rolladenmotoren sitzen: - unbestückt und bestückt im passenden Gehäuse.

Diese passen zur Not auch in eine tiefe UP-Dose. Bei neuen Einbauten verwende ich allerdings größere Bopla- oder Elektrogehäuse aus der Hausinstallation mit einem "richtigen" Klemmraum. Die Sicherung verhindert bei einer Fehlfunktion oder Kurzschluss des Rolladenmotors, dass die Platine oder die Relais Schaden nehmen können. Von oben wird die BUS-Leitung eingeführt und angeklemmt, von unten die Schaltkabel des Aktors per Phönix-Klemme direkt über der Sicherung über einen 3-poligen Phönix-Stecker. So ist dann sicher gewährleistet, dass keine Potentiale versehentlich verbunden werden. Auf der Rückseite habe ich die 230V Seite noch mit flüssigem Kunststoff (Heißkleber) gegen jede ungewollte Berührung oder Kriechströme gesichert, auch wenn sie ja eigentlich später im Gehäuse sind.

Hier gehts zu den Details des Rolladenkontroller 1-Kanalig auf Basis des ATMEGA644 Prozessors - jetzt aber auch mit neuestem STM32 Prozessor ;-)