Domotica
Het idee:
Ik
loop al een tijdje rond met het idee om een domotica projectje te
starten. Wat ik zou willen bereiken is dat er een elektronische
status weergave is van dingen in en om het huis. Weergave zou via een
website mogelijk moeten zijn. Aanpassingen via een beveiligde
website. Ik zit te denken aan de volgende onderdelen. (Controleren
of alle ramen en buitendeuren gesloten zijn, Controleren of de schuur
en poort deur gesloten zijn, Temperatuur in het huis meten,
Buitentemperatuurr meten, Zonlicht / neerslag, Waterniveau in vijver
bepalen (en evt bijvullen), Tuin sproeien als de grond te droog is,
Tellerstand van de gasmeter uitlezen, Tellerstandenelektraa uitlezen
, Verlichting aan en uit zetten, Temperatuur cv water metenetc.c)
Dit is slechts een voorbeeld. Maar ja, hoe ga ik dit in praktijk brengen. Omdat ik ook historische gegevens wil bewaren en nodig heb voor bij gemiddeld gasverbruik te kunnen laten zien heb ik iets van een database nodig. Omdat er aan de server kant processen moeten lopen die je vanaf een browser start heb ik de keuze laten vallen op PHP en MySQL. Veel verstand heb ik hier niet van, dus een leuk project om daar wat van te leren. Ik schrijf deze pagina om een beetje bij te houden wat voor software ik in gebruik heb en wat de status van het project is. De software ontwikkel ik op mijn laptop (Opensolaris)
Wat is de status:
maart 2009:
Boardje binnengekregen (conrad.nl) Direct in elkaar gezet K8055 programma gecompileerd voor OpenSolaris Dit document in een eerste vorm geschreven
april 2009:
Veel verschillende modules voor dit board geprobeerd .pfffff wat een problemen met de Tecra. Lekker met het boardje aan het stoeien. Ik ga verder met de cueib software (dit werk onder Linux en Solaris) eerste programmaatjes geschreven in PHP (status uitlezen, veranderen van outputwaarde en een deamon )
december
2009:
het project heeft een paar maanden stilgelegen. Inmiddels weer wat aangepast. De server software van Nevada met aparte zones voor web en database naar OpenSolaris 0906 build 127 gebracht. Een licht-sensor (oud nachtlampjes van de kids) aangesloten en licht / donker programma gemaakt. Lampen gaan nu automatisch aan als het donker wordt. Temperatuusrsensor aangesloten en website gemaakt om temp digitaal uit te lezen. Werkt heel erg nauwkeurig. Ga ik gebruiken om de kachel aan te sturen. (dit lukt al op de website, moet nog een relais hebben om de thermostaat te overbruggen) De draden hangen al een poosje uit de thermostaat. Verder programma gemaakt om een sms vanuit een PHP programma te verzenden. Zo kan ik een sms naar me sturen als er iets niet goed gaat. Werkt allemaal prima. Nog een paar van dit soort modules bouwen en dan de informatie de database (MySQL) in.
Januari 2010:
De
relais zijn binnen, alles in elkaar gezet. Probleem met de voeding,
het stroom verbruik is te hoog. Ik gebruik een oude laptop voeding
met een 7809 IC. Ik heb een koelplaatje op de gebruikte 7809 ic's
gezet. Nu kan je het weer vasthouden zonder blaren op je vingers.
Moet nog wel een paar weken draaien voor het in productie gaat.
Schakelen van de uitgangen werkt goed. Ik wacht nog even met
aansluiten op de cv tot ik een goede behuizing heb. Ook programma's
gemaakt om het systeem als alarm systeem te gebruiken. (deur
contact, tijd om het huis te verlaten, flitser en sirene uitgangen
en ook weer een knop om het uit te zetten. Leuke is dat je het ook
via de website kan besturen. Bij een alarm kan ik ook een sms naar
me laten sturen. Bij aan, uitzetten en bij alarm ook geluid uit de
pc door middel van esdplay. (scheelt weer digitale uitgangen)
Zou
eigenlijk nog een zelfde systeem moet hebben voor het scheiden van
ontwikkeling en productie. Huidige zou dan in productie gaan en een
nieuwe voor development. Ook ontwikkelen op het productie systeem
blijkt geen handige zet. Ik maakte een paar foutjes in het deamon
programma en het besturing systeem maakte sneller processen aan als
dat het het kon stoppen. Wel heel cool met de zfs beadm om even
terug te gaan naar een root snapshot. Ook het rc2.d proces
omgeschreven naar een smf omgeving. (weet nog niet of dat ik dat ga
gebruiken in productie, laat het maar even rusten)
Februari 2010:
SMF is lastig in dagelijks gebruik. Zodra ik de deamon stop om andere versie etc. te laden of er wat in aan te passen start hij direct de deamon weer op. Ga het wel gebruiken als alles stabiel is maar dat zal nog wel even duren.
Aanpassingen
in de aansturing. Ik lees nu in 1 keer alle inputs. (performance)
Verder check ik de temp op de vorige waarde en neem het gemiddelde
van de laatste 10 lichtmetingen. Verder worden alle testfiles in
swap gemount om de diskakties te bepreken.
Rrdtool gebruikt om gemiddelde te bereken en te tonen op website (3 aparte round-robin databases voor verlichting binnen en buiten temperatuur en CPU-load.
Onderdelen staan in bestelling om tweede board te gaan gebruiken. Dan ga ik ook alles in de meterkast bouwen.
Ben nu aan het prutsen met een sensor om de vochtigheid van de tuin te meten. Eerste versie waren op gelijkspanning gebaseerd en dan gaan de elektrodes snel corroderen. (na twee weken al doorgeroest)
Eerste versie van de pulsteller voor gas en elektra on-line. Gas werkt met spiegel, Elec gaat nog niet lekker (blijft op nachtstroom staan) Per 1000 puls 1 kWh
Maart 2010:
Systeem
staat nu te draaien. ls alles paar weken goed blijft ga ik het in de
meterkast inbouwen. De opzet zoals het nu is beperkt me tot Velleman
producten. Op zoek naar wat anders. Via Jeelabs iets heel leuks
gevonden. Een arduino compatibele omgeving. Eerste starterskit
besteld. Kan niet wachten tot het binnen is.
Kit is binnen, ben nu vooral aan het spelen met de kit.
Lcd panel werkt naar tevredenheid (display status, cpuload en temp)
Ben nu met de rooms sensor bezig om dit via een zonnepaneel aan te sturen
April 2010:

Tjaaaa
eindelijk: Het staat in de meterkast, de server heb ik nog snel even
verandert naar een laptop. Dit gebruikt 17 watt. Electriciteits
sensoren aangesloten, de puls werkte in 1 keer de led voor dag –
nachtstroom werkte slecht. Hierbij en extra darlington aangesloten.
Ook dit werkt nu. De gasmeter lukt nog niet, ik pik geen pulsen op.
Vandaag een paart transistoren besteld om de gain wat op te
schroeven. Huiskamer temperatuur werkt, ik kan de ketel op afstand
aan / uit zetten, dus al met al flink opgeschoten. Ik wil de
thermostaat nog wel uitrusten met een extra schakelaar zodat je het
ook kan uitzetten als 1 van de kids in de winter thuiskomt en niet
weet hoe het werkt. De temp en licht sensor zitten nu in de
meterkast. (kan ik even in de gaten houden of dat het niet te warm
wordt daar.) Een volgend versie van de vochtigheidssensor gemaakt
van gips. (ik denk iets te groot want de vochtigheid zie je niet
echt veranderen)
Gasmeter doet het nu ook ,ik gebruik een andere sensor. Qrb 1134, sketch in de meterkast aangepast zodat ik nu ook de temp van de atmel kan uitlezen.
Mei 2010:
Jeedeamon
gemaakt , een achtergrond proces op de server om de informatie van
de verschillende jeenode te filteren en daarna te verwerken(meestal
met rrdtool)
Pressure sensor aangesloten en ik kan nu ook de luchtdruk meten.
Juni 2010:
Deze
maand maar eens goed gebruikt om bugs op te lossen. (er zaten er
nogal een paar in) De meeste niet erg hinderlijk maar toch. (de temp
in de huiskamer ging boven de 25.5 graden en dat gooide behoorlijk
roet in het eten. )
De jeenode kan ook 433 Mhz signalen ontvangen en versturen. Gaat niet zo heel erg lekker (er gaat nog wel eens een verkeerde lamp aan of uit.) Het lampje in de gang daar heeft niemand last van) is het proefkonijn geworden.
Inmiddels draait de Solaris laptop build 134. (al een tijdje) Zit met het volgende dilemma, hoe ga ik dit nu verder updaten (de interne repository zit al op build 141)
Als alternatief ben ik het ook op Ubuntu aan het installeren.
Tweede laternatief het ook in een multi tier model. draaien (de deamons draaien lokaal, alle status informatie in memory houden en periodiek doorsturen naar een externe server in een datacenter. Daar met rrd tool plaatjes op het web zetten. Heeft als voordeel dat ik lokaal minder cpu gebruik heb. En dat kijkers ook niet mijn verwarming of het alarm kunnen aan /uit zetten. De beveiligde lokale site kan dit dan wel. Verder nog wat aan het knutselen geweest.
Een
oude muis en een telefoonlader gebruikt om de rooms sensor een
behuizing te geven.