Elektronik (4)

Dinge einfach ins „Internet Of Things“ bringen


Möchte man eine kompakte Lösung, um Geräte mit einer Schnittstelle zu versehen, welche bisher eben nicht mit dem LAN zu Hause oder dem Internet verbunden waren, dann bietet sich ein Microchip ENC28J60 absolut an. Die Ethernet-Schnittstelle ist einiges kleiner (56x34mm) als ein diverses Aufsteckshield auf einem Raspberry oder Arduino.
Mit einer diversen Intelligenz versehen, muss man das Interface natürlich auch noch. Dabei braucht es im Allgemeinen nur geringe Leistung, um schon verblüffende Sachen zu bewerkstelligen. Ein ATMega-328-Controller beispielsweise reicht völlig. Unkompliziert und klein geht es mit der “Fertigvariante” eines Arduino-Nano.

Damit hat man dann zwei Miniplatinen im Einsatz, welche man über den SPI-Bus folgendermaßen verbinden sollte:

Ethernet-Modul – Arduino Nano
CS             – Pin13 D10 (SS)
SI             – Pin14 D11 (MOSI)
SO             – Pin15 D12 (MISO)
SCK            – Pin16 D13 (SCK)
VCC            – Pin17 3V3
RESET          – Pin28 Reset
GND            – Pin29 GND


Auf unserer Steckplatine ist das schon mal vorbereitet, nebst einem kleinen Spannungsteiler mit einem Fotowiderstand. Diese Anordnung ist also unser “offline-Gerät” mit welchem es gilt, online zu gehen. Könnte auch ein Dämmerungsschalter oder die alte Waschmaschine sein (*Hihi*).
Jetzt braucht es noch die entsprechende Software, welche man beim Dino dann in ein C++-Sketch schreibt und auf den Rechner hochlädt. In unserem Fall ein kleiner Webserver.

Dazu braucht es neben der Arduino-IDE zuerst das Plugin-Replacement “arduino_uip” von Norbert Truchsess (https://github.com/ntruchsess/arduino_uip), welches auf den ENC28J passt und so zu installieren ist:

$ cd [path to Arduino distribution]\libraries
$ git clone https://github.com/ntruchsess/arduino_uip UIPEthernet


Nun hat man die UIPEthernet-Samples für Eigenentwicklungen zur Verfügung oder man nutzt die originale Stock-Library, in dem man die entsprechende Header-Datei (UIPEthernet.h) austauscht. Bei uns funktionierte der Webserver (http://arduino.cc/en/Tutorial/WebServer) gut, mit ein paar Modifikationen bei den IPs und analogen Eingängen zeigt dieser auf seiner Site (192.168.178.33) den Wert unseres Lichtsensors (664) am analogen Eingang (A5) im Heimnetz an.

Man kann unser “Gerät” jetzt also per HTTP abfragen. Was vorher offline war, ist nun im IoT eingebettet und kann mit anderen Geräten im Netz M2M kommunizieren. Ziel erreicht…

Empfänger für die Wetterstation


In diesem Elektronik-Projekt war Ziel, von preiswerten Sensoren, wie sie für Wetterstationen eingesetzt werden (LaCrosse oder Ti+ Protokoll), Temperatur und Luftfeuchte zu empfangen und die Werte dann für den eigenen FHEM-Hausautomationsserver und sonstige Zwecke (wie im Bild der Webcam) zu verwenden.

Ein fertiger „Jeelink“-Stick kann mit solchen Sensoren, wie für Technoline-Wetterstationen gebräuchlich, kommunizieren. Aber den wollen wir mit unserem Eigenbau ersetzen, weil preiswerter und mit voller Kontrolle über die Firmware. Macht man das dann noch „richtig“, entwirft ein entsprechendes PCB- und sonstiges Design, dann sieht das Ganze auch ganz ansehnlich aus…

Wichtig: Guten Standort, etwas entfernt von sonstigen Signalquellen wählen (langes USB-Kabel) und auf die Antennlänge achten…

Schwibbbogen


Ganz fertig ist er noch nicht, darf aber bald aus der Werkstatt raus. Und natürlich mit Auerbach-Motiv . Lange ist ja nicht mehr hin, dass er ins Fenster soll. Und mal sehen, was wir noch so zu Stande bringen bis Weihnachten…

Natürlich ist er komplett LED und hilft Strom sparen. Die Leuchten auf dem Bogen hängen mittels Spannungsregelung direkt am Netz, die Beleuchtung der „unteren Etage“ bewerkstelligt ein kleines 12-Volt-Netzteil.
Nebenbei, heutzutage werden die Bögen gelasert, sieht man auch am dunklen Rand der Figuren. Dadurch wird’s Massenware. Freut einen natürlich, dass die dann auch erschwinglich sind. Individuell ist’s dann aber nicht. Womit wir wieder beim Thema Zeit für den Eigenbau wären… Also wirklich nur zum Eigenbedarf gebaut.

Luftdruck messen mittels BMP180


Der BMP180 als Nachfolger des BMP085 hängt nun an unserem Hausserver, dem Banana-Pi. Noch vor wenigen Jahren war der Aufbau einer Luftdruck-Messung eine größere Sache, jetzt kann das schon einfacher erledigt werden. Das Breakout-Board der BMP-Sensoren ist wirklich klein und preiswert bei den bekannten Versendern zu erwerben.

Der 180 wird über I2C am GPIO-Konnektor des Pi angebunden. Dafür haben wir die vier notwendigen Kabel verbunden und starten ein Python-Skripts über die Crontab unseres Servers. Dies ruft nun regelmäßig ein kleines C-Programm auf, welche die Adresse 0x77 am Bus abfragt und die etwas komplizierte Umrechnung der Werte übernimmt…

Diese schicken wir dann über das LAN und rechtzeitig zur Cam, bevor diese das nächste Bild schießt. Und dort taucht der Luftdruck dann im Webcam-Bild auf, neben den sonstigen Infos, welche wir per Pythonmagick in das Bild der Cam integireren.

Neuer Melder


Aus dem „Baukasten“, also waren nur ein paar wenige Bauteile zu verlöten und dann der mechanische Aufbau zu machen.

Nichtsdestotrotz sollte dieser Bewegungsmelder dann ein paar wichtige Aufgaben übernehmen. Zuerst (07/2014) nutzten wir ihn, um eine Überwachung inklusive einer RaspiCam aufzubauen (siehe Codeschnipsel und Projektseite).


Mittlerweile ist der Melder im Treppenhaus positioniert, wo er mittels der Hausserver-Software ein „Minutenlicht“ schalten.

Legt man sich Bausätze zu, kann man durchaus etwas sparen, diverse Hardware ist schliesslich nicht ganz billig.

Funktioniert die Schaltung dann, muss man hier freilich den Sensor noch verknüpfen bzw. an die Zentrale (Homematic) oder wie bei uns an den FHEM-Server anlernen…

Miniwoofer


Die Hausautomation sollte eine Sprachausgabe bekommen und ein kleiner, ansehnlicher Lautsprecher stand zur Debatte (04/2014), welcher keinen Hifi-Anspruechen genuegen muss.

Also ein Gehaeuse auf die bewaehrte Art gebaut, eine Kork-Auflage ergibt eine Federung, genauso wie die vier Standfuesse aus Filz.


Mit einem kleinen Lautsprecher darin, welcher den wesentlichen Frequenzgang abbildet und die freundliche TTS-Stimme des FHEM-Servers im Reflexverfahren aus einem halbrunden Ausschnitt nach vorne wiedergibt.

Wenn man denn eine „wichtige“ Taste an der Fernbedienung drueckt. Wie z.B.: „Alarm ist scharfgeschalten“…

 

 

Swen Hopfe

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.