HTML

smarthome

1.0 Első körben a hőmérsékletet mérem a lakásban, hogy kiderüljön mitől olyan magas a gáz számla. Aztán 3.0 számítógéppel vezérlem a kazánt, 5.0 szabályozom a villamos áram fogyasztást, 10.0 távolról működtetem a berendezéseket. 20.0 reggelente csak szóban engedélyt adok a kifogyott kaják pótlására, és estére tele is lesz a hűtő. Elolvashatod meddig jutok.

Friss topikok

Linkblog

Linux install

2008.07.23. 14:48 negyvenkettod

Újrainstalláltam a gépem, ezért újratelepítek mindent, ami kell a hőmérséklet méréshez és a grafikon rajzoláshoz. Az almúlt hónapok tapasztalataival együtt leírom részletesen hogyan érdemes ubuntu linuxra felrakni, a howto alapján.

A hőmérők leolvasását a digitemp csomag elvégzi.

# root jogok kellenek a parancsokhoz
sudo su -
apt-get install digitemp
# a csomagban 3 bináris van különböző kommunikációhoz
# a howtoban szereplő felállásban a DS9097-es kell:
ln -s /usr/bin/digitemp_DS9097 /usr/local/bin/digitemp
# a hőmérsékletek eltárolására, és a grafikon rajzolására az rrdtoolt használom
apt-get install rrdtool
# php installálása, ami lehúzza az apache2-t is.
apt-get install php5 php5-cli
cd /var/www/
# ha ez a cím megváltozik, akkor a howto 6. lépésénél keresd a forrást.
wget http://www.instructables.com/files/orig/FO7/E845/F9053Y6O/FO7E845F9053Y6O.null -O php.tgz
tar -xzvf php.tgz
mv tempsensor temperature
rm php.tgz
 

Eddit felinstalláltuk az összes szükséges programot. Nekem úgy tetszik, ha minden összetartozó adat egy helyen van, ezért a konfiguráció és a mért hőmérsékletek tárolása is a /var/www/temperature könyvtár alatt lesznek. A hőmérséklet olvasáshoz root jogok kellenek, azt a root crontabjába rakom.

# elmentjük a kommunikációhoz a szenzorok adatait:
digitemp -s /dev/ttyS0 -i -c /var/www/temperature/digitemp.conf
# root crontabjába felveszem ezt:
* * * * * /usr/local/bin/digitemp -aq -c /var/www/temperature/digitemp.conf > /tmp/digitemp; mv /tmp/digitemp /var/www/temperature/curr.txt
# odaadom magamnak a fájlokat, és többet nem kell root jog
chown -R myuser /var/www/temperature

/var/www/temperature/config.php módosítása:
Az $inData értéke ez lesz: /var/www/temperature/curr.txt (8. sor)
$rrdDir: /var/www/temperature/digitemp_rrd/ ezt a könyvtárat létre is kell hozni
$rrdImgDir: /var/www/temperature/ ide megy a kimenet
$sensors tömb kitöltése a saját hőmérők neveivel.
43. sorban én nem kérem, hogy külön logoljon hőmérsékleteket:
$outFile = array();
// $outFile[0] = "/var/www/temperature.txt";
// $outFile[1] = "/var/www/temperature_garage.txt";
 

Az eredeti forrásban csak 2 napig tartja meg az 5 perces felbontást, ezt én nem szerettem. Nem foglal olyan sok helyet, legyen csak meg az összes. Ehhez a logdata.php fájlban az 51-dik sortól lecseréltem erre:

//'RRA:AVERAGE:0.5:1:576 '.     // two days at 5 min intervals
//'RRA:AVERAGE:0.5:6:672 '.     // two weeks at 30min(5*6) intervals
//'RRA:AVERAGE:0.5:24:732 '.    // two weeks at 2h intervals (120min/5min=24)
//'RRA:AVERAGE:0.5:144:1460';   // two years at 12h intervals (12*60/5=144)
'RRA:AVERAGE:0.5:1:518400';     // five years at 5 min intervals
 

/var/www/temperature/graphdata.php módosítása
Jobban tetszik, ha az összes hőmérő eredménye legfelül van, ezért a 63. sort erre cseréltem:
//$sensors['all'] = "All sensors";
$n="all";
$str="Osszes homero";
$index .= '<tr><td>';
$index .= '<a href="index_'.$n.'.html">';
$index .= '<img src="'.$n.'_day.png" border="0">';
$index .= '</a><br>'.$str.'<br><br></td></tr>';

Ha fut a root crontabjából a hőmérséklet mérés, akkor máris lehet logolni a logdata.php-val:
# hőmérséklet kiiratás:
cat /var/www/tempreature/curr.txt
# logolás:
php /var/www/tempreature/logdata.php
# grafikonok rajzoltatása:
php /var/www/tempreature/graphdata.php

Cron jobok, amik eltárolják az adatokat, és megrajzolják az aktuális grafikont:
*/5 * * * * php /var/www/temperature/logdata.php
*/5 * * * * php /var/www/temperature/graphdata.php
 

Az első néhány mérés eredménye:

Szólj hozzá!

Újra hőmérők

2008.03.02. 23:41 negyvenkettod

Zárlatos lett a rendszer, és néhány hétbe beletelt, mire utána néztem mi a baj. Nem a drót ablakon kizárása okozta a problémát, hanem simán összeért valahol a piros meg a fekete kábel, mert lusta voltam leszigetelni.
Szóval újra vannak adatok, és bekötöttem plusz egy hőmérőt, ami a meleg vizet méri. Meglátjuk van-e értelme.

Szólj hozzá!

Első kísérlet

2008.01.27. 21:51 negyvenkettod


Azt terveztem, hogy felírom a gázóra állását időnként, és összehasonlítom a grafikonnal.
Nem pont úgy, ahogy most, de ez is valami.
jan. 26. szombat 14:44 972
jan. 27. vasárnap 13:29 978
jan. 27. vasárnap 17:19 983
Majdnem 24 órán át 14 fokon tartani a lakást 6 köbméter gáz, felfűteni 14 fokról 20 fokra 4 óra alatt 5 köbméter.























Kéne csinálni egy programot, ami kiszámolja az előre menő és a visszatérő görbék közti területet, és azt összehasonlítani az elfogyasztott gázzal. Ha igaz, hogy van arányosság, akkor könnyen lehetne tesztelni a különböző beállítások közötti különbséget.

Szólj hozzá!

A hőmérők ügyetlenkedése

2008.01.22. 17:51 negyvenkettod

Kiderült, hogy 9 hőmérőt már nem bír el a soros port. Először levettem egyet, aminek viszonylag hosszú volt a vezetéke. Az nem volt elég. Utána lehúztam a radiátort mérőt. Most úgy tűnik újra szabályos görbét rajzolnak.























Jól látszik a grafikonon, hogy 17-én éjjel kerültek rá a plusz hőmérők, és onnantól 21. estig többször is ugrálnak a hőmérsékletek.

Azt gondolom, hogy a magasabb hőmérséklet méréséhez több áramra van szükség, ezért kezdett el rendetlenkedni, amikor a radiátor után még két meleg dolgot rákötöttem a rendszerre.

Szólj hozzá!

Címkék: hőmérő ugrál

Első

2008.01.12. 18:06 negyvenkettod

A múltbeli bejegyzéseket is felveszem, majd valamikor...

Röviden a lényeg: ide fogom megírni a tapasztalataimat a fűtéssel az ezt mérő hőmérőkkel kapcsolatban. Egy ilyennel mérem a hőmérsékletet, és készítem a grafikonokat.

Szólj hozzá!

süti beállítások módosítása