English  Deutsch
Biosolar Forum  =>  Mérésadatgyűjtés  =>  Single Board Computer - 1Wirelapozz: « előző   1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34   következő »
Mielőtt kérdezel olvasd el a témához tartozó KIEMELT CIKKEKET!
2012-07-11
07:39:22
#31453
Azt hiszem már itt is előkerült valamikor, hogy valaki nem szünetmentest használ, hanem 12V-os akksit tölt folyamatosan és azon keresztül megy a gépnek az áram.
Gondolkodtam azon, hogy veszek egy szünetmentest, de mivel a gépem eszik mindennel együtt cirka 15W-ot, s luxusnak érezném ha ehhez minimum a dupláját hozzátennénk, úgy gondoltam, ez a megoldás sokkal szimpatikusabb lenne. (Valószínűleg nem zabálna ez a módszer 30W-ot)
No, ebben szeretném kérni a segítségetek áramköri rajz és egyéb jótanács formájában.
Előre is köszi!
macko003Válasz erre
2012-06-28
19:49:51
Előzmény: Jesu #31093#31179
én sem láttam egy évvel ezelöttig PHP-t, ne aggódj miatta.
Takyka-nak fent van 1-2 kódja, ajánlom őket. Az enyémek hosszúak, és átláthatatlanok. :( 2 scripttel oldottam meg a jelenelegi feladatimat, egy mysql tölti percenként az adatokat, a másik a fűtést nézi.

A rendszeremhez tartozó képek a macko003.dyndns.org oldalon megtalálhatóak.

Fűtésem:
var.php:
<?php
$szoba = array("TESzoba2", "TENappali" , "TEEFurdo", "TEEKozlekedo", "TEFFurdo", "TEFKozlekedo", "TEKonyha", "TEApu", "TEDiti");
$korr = array("TESzoba2" => -1, "TENappali" => 0, "TEEFurdo" => -2, "TEEKozlekedo" => 0, "TEFFurdo" => -1, "TEFKozlekedo" => 0, "TEKonyha" => 2,"TEApu" => 2, "TEDiti" => -1);
$futes = array("TESzoba2" => 1, "TENappali" => 1, "TEEFurdo" => 1, "TEEKozlekedo" => 1, "TEFFurdo" => 1, "TEFKozlekedo" => 1, "TEKonyha" => 1,"TEApu" => 0, "TEDiti" => 1);

$impdata = array("IOVegyesCs","IOGazCs","TEFutesElore");

$criticalwater = 70;
$onwater = 40;
$offwater = 30;
$diffwater = 3;
$kemenymin = 90;
$gazmaxtemp = 70;
$mintemp = 19.5;
$maxtemp = 20.5;
$under = 0;
$over = 0;
//ezt csak tavasszal használtam, hogy ne fűtsön "feleslegesen"
$atmenetiorak = array (6,7,8,18,19,20);


futes.php:

#!/usr/bin/php-cli
<?php

//ALAPBEÁLLÍTÁSOK
ini_set("max_input_time","10");
ini_set("max_execution_time","250");

include_once "/mnt/hdd/scripts/beolvas.php"; //ehyszerű file műveletként beolvassa a 1wire szenzor értékét
include_once "/mnt/hdd/scripts/kiir.php"; //file műveletként kiírja az értéket, pl relé-nek vagy lcd-nek
//a fenti kettő tartalmaz hibaérzékelést, ha nem tudja beolvasni/kiírni az értéket mysql-be riportol
include_once "/mnt/hdd/scripts/laststate.php"; //mysql-ből lekérdez
include_once "/mnt/hdd/scripts/var.php"; //fenti file változók vannak benne, mert eredetileg máshol is akartam azokat használni

$VegyesSz = 0;
$GazSz = 0;
$GazT = 0;
$futottszobak = 0;

//ALAPBEÁLLÍTÁSOK VÉGE

//ADATOK LEKÉRDEZÉSE SQL-BŐL
$con = mysql_connect("127.0.0.1","********","*******");
if ($con) {
mysql_select_db("1wire", $con);
$result = mysql_query("SELECT * FROM `ertek` WHERE ( ID > date_sub(now(),interval 15 MINUTE)) ORDER BY `ID` DESC LIMIT 1"); //érték táblába tölti a másik script az értékeket
$row = mysql_fetch_array($result);
mysql_close($con);

//UTOLSÓ ÉRTÉKEK LEKÉRDEZÉSDE laststate.php SEGÍTSÉGÉVEL SQL-BŐL
$laststate = laststate("vezerles", array("VEVegyesSz","VEGazSz","VEGazT")); //a vezerles táblába töltöm, ha pl egy szivattyút letiltok, bekapcsolok, ezzel felülbírálva a lenti script egy részét
}

//DEBUG //ha a scriptet 1-es paraméterrel hívom (pl kézzel futtatáskor) akkor kiír dolgokat, hogy könnyebb legyen megérteni, most miért is így döntött
if ($argv[1] == 1) {
echo "sql:\n";
print_r($row);
}
//fontos hiányzó adatok pótlása
//ha nem létezik * akkor próbálja beolvasni most (pl a feltöltő script kiakadt, syntax hibája van, mert szerkesztettem...
if (!isset($row["IOVegyesCs"])) $row["IOVegyesCs"] = substr(decbin(beolvas("pincehub/main/csap","sensed.BYTE")),-3,1);
if (!isset($row["IOGazCs"])) $row["IOGazCs"] = substr(decbin(beolvas("pincehub/main/csap","sensed.BYTE")),-2,1);
if (!isset($row["TEFutesElore"])) $row["TEFutesElore"] = beolvas("pincehub/main/futeselore","temperature");
if (!isset($row["TEFutesVissza"])) $row["TEFutesVissza"] = beolvas("pincehub/main/futesvissza","temperature");
if (!isset($laststate["VEVegyesSz"])) $laststate["VEVegyesSz"] = 2;
if (!isset($laststate["VEGazSz"])) $laststate["VEGazSz"] = 2;
if (!isset($laststate["VEGazT"])) $laststate["VEGazT"] = 2;
//ADATLEKÉRDEZÉS VÉGE


//szükséges adatok ha nincsenek meg, akkor laststate-tel lekérdezve behelyettesítem //ha nem volt az elműlt 15 percben adat, és nem tudom beolvasni, akkor a legutoló értéket nézem
for ($i = 0; $i < count($impdata);$i++) {
if (!isset($row[$impdata[$i]])) {
$ls = laststate("ertek",array($impdata[$i]));
$row[$impdata[$i]] = $ls[$impdata[$i]];
}
}

//DEBUG
if ($argv[1] == 1) {
echo "\nadatok pótlása utána:\n";
print_r($row);
print_r($laststate);
}
//csapok helyzetének ellenőrzése //a csapokon van érzékelőm, ezzel "jelezve" a rendszernek épp melyik fűtési mód megy (vegyes/gáz), mert csak egy kéményem van, így a kettő kizárt
switch ($row["IOVegyesCs"].$row["IOGazCs"]) {
case "11":
//HIBA
mysqlinserterror("mindket csap nyitott, hiba!!!"); //hibákat mysql-be töltöm, hogy visszakövethető legyen
break;
case "01":
//GÁZ FŰTÉS
//relé kártya állapotának ellenőrzése
if (beolvas("pincehub/main/relay1","strobe") <> 1 ) kiir("pincehub/main/relay1","strobe","1"); //a strobe állapota határozza meg DS2408-on, hogy ki v bemenet

switch ($laststate["VEGazT"]) {
case 0 : $GazT = 0; break;
case 1 : $GazT = 1; break;
case 2 :
for ($i = 0; $i < count($szoba); $i++){
//DEBUG
if ($argv[1] == 1) {
echo "\n".$szoba[$i].": ".$futes[$szoba[$i]].": ".$row[$szoba[$i]]." + ".$korr[$szoba[$i]]." = ".($row[$szoba[$i]] + $korr[$szoba[$i]])."\n";
}
if ($futes[$szoba[$i]] == 1) {
if (($row[$szoba[$i]] + $korr[$szoba[$i]]) < $mintemp) $under++; //megnézem hány szoba van a beállított hőmérséklet alatt
if (($row[$szoba[$i]] + $korr[$szoba[$i]]) > $maxtemp) $over++; //hány felette
$futottszobak++;
}
}
$GazT = $row["IOGazT"];
//fűtési időszak
//if (($under-$over)>=($futottszobak/3)) $GazT = 1;
//átmeneti időszak
if (in_array(date(H), $atmenetiorak) &&($under-$over)>=($futottszobak/3)) $GazT = 1; //az adott órában kell-e fűteni
if (($over-$under)>=($futottszobak/3) || $row["TEFutesElore"] > ($gazmaxtemp - 20)) $GazT = 0;

//DEBUG
if ($argv[1] == 1) {
echo "\nGázkazán:\n";
echo "Gáz ki:$GazT Fütött szobák:$futottszobak Under: $under Over: $over";
}
break;
}
//Gázkazán bekapcsolása, ha bekell, hogy a szivattyú késöbb kapcsoljon be
$GazSz = $row["IOGazSz"];
if ($GazSz == 0 && $GazT == 1) kiir("pincehub/main/relay1", "PIO.BYTE", bindec($VegyesSz.$GazSz.$GazT));

switch ($laststate["VEGazSz"]) {
case 0 : $GazSz = 0; break;
case 1 : $GazSz = 1; break;
// case 2 : if (($GazT == 1 && $row["TEFutesElore"] > $onwater) || $row["TEFutesElore"] > $offwater) $GazSz=1; break;
case 2 :
if ($row["TEFutesElore"] > $onwater) $GazSz=1;
if ($row["TEFutesElore"] < $offwater && $GazT == 0) $GazSz=0;
if ($GazSz == 0 && $GazT == 1) {
//DEBUG
if ($argv[1] == 1) echo "\nVárakozás: ".(($gazmaxtemp - $row["TEFutesElore"]) * 5)."\n";
sleep(($gazmaxtemp - $row["TEFutesElore"]) * 5);
if ( beolvas("pincehub/main/futeselore","temperature") > $onwater) $GazSz=1;
}
//DEBUG
if ($argv[1] == 1) {
echo "\nGáz Szivettyú:\n";
echo "$GazSz";
}
break;
}
break;
//GÁZ FŰTÉS VÉGE
case "10":
//VEGYES FŰTÉS
//relé kártya állapotának ellenőrzése
if (beolvas("pincehub/main/relay1","strobe") <> 1 ) kiir("pincehub/main/relay1","strobe","1");

switch ($laststate["VEVegyesSz"]) {
case 0 : if ($row["TEFutesElore"] > $criticalwater) $VegyesSz = 1; break;
case 1 : $VegyesSz = 1; break;
case 2 : if ($row["TEFutesElore"] > $onwater) {
$VegyesSz = 1;
} else {
//Ha Eloremeno nagyobb mint a kikapcsolási höm vagy nagyobb mint a kikapcsolási hőm - 5 fok és az eloremeno $diffwater-rel melegebb
if ($row["TEFutesElore"] > $offwater || $row["TEKemeny"] > $kemenymin) $VegyesSz = $row["IOVegyesSz"];
}
}
//DEBUG
if ($argv[1] == 1) {
echo "\nVegyes:\n";
echo "Szivattyú: $VegyeSz Fűtéselőre: ".$row["TEFutesElore"];
}
break;
//VEGYES FŰTÉS VÉGE
default:
//00 ÉS NULL ÉRTÉKEK ESETÉN NINCS MŰVELET
break;
}

//ADATOK KIÍRÁSA
//DEBUG
if ($argv[1] == 1) {
echo "\nVége:\n";
echo $VegyesSz.$GazSz.$GazT."\n";
}

if (!($row["IOVegyesSz"] == $VegyesSz && $row["IOGazSz"] == $GazSz && $row["IOGazT"] == $GazT)) kiir("pincehub/main/relay1", "PIO.BYTE", bindec($VegyesSz.$GazSz.$GazT));

2012-06-26
15:36:01
Előzmény: macko003 #31090#31095
Az egy felhúzó ellenállásos kialakítású 1W busmaster nem alkalmas nagy távolságú kommunikációra!

Nehogy valaki belefusson ebbe a zsákutcába...


T.
2012-06-26
15:15:08
Előzmény: macko003 #31090#31093
Köszi a segítséget!

Arduinohoz én se értek és sajnos a kódolás is elég döcögve halad, leginkább példákon keresztül megy csak, mivel vagy 10-12 éve nem foglalkoztam semmilyen programozással. A PHP-ből is kimaradtam eddig, doksival kell körbeágyaznom magam és ezért tetű lassan haladok a legalapabb dolgokkal is, ehhez persze meg bazi sok idő kéne, ami nincs. Nem egyszerű. Ezért csak a járt utak maradnak.

Ha elküldenétek a saját 1w PHP scripteket, éveket löknétek rajtam előre, pláne ha kommentezett is, örök hála és sörhegyekkel üldöznék mindenkit egy esetleges topictalin! :D
macko003Válasz erre
2012-06-25
20:02:11
Előzmény: Jesu #30983#31058
Jesu,

www.owfs.org/index.php?page=ds2438
Kb az oldal egy harmadánál az owfs által támogatott szenzorok.
Nem tudom miért a 4000-es sorozatot használják, jobban tűnik a 3610 a paraméterek alapján. Azzal viszont Neked kell elvégezned a feszülség-RH konverziót. Annó én is keresgettem olcsóbb megoldást, de szint mindenhol ezt láttam, így inkább ezt vettem. Most is körbenéztem, van a hol a 3610-et használják, viszont találtam olyan megjegyzést, miszerint azért tértek át a 4000-re, mert a Honeywell megszüntette a 3610-et.
www.midondesign.com/Documents/1-WireApplicationGuide103.pdf
23.oldal, 13-as példa


Itt kb 4500 1 db, ha jól számoltam 20e-re jönne ki az 5 (szállítás kedvezőbb, és talán 4-5 esetén tudsz alkudni is).
Ha nagyon az árat nézed, akkor talán ez is szóba jöhet:

Habár nem tudom mennyire viseli el a távolságot (és Te milyen messze szeretnéd őket). Egy arduinoval, és hozzá ethernet kártyával 10 alatt megáll.
macko003Válasz erre
2012-06-25
19:51:58
Előzmény: envagyok #31032#31056
Igen, néha eléggé kiszámíthatatlan a rendszer. Nekem is rendszeresen produkál olyat, hogy nem látja a szenzort, vagy a default hiba értéket adja vissza (napi 5-10-20, a kb 33e olvasásból), pedig a rendszerem kiterjesztett csillag topológiában van, a két legtávolabbi vég egymástól 30-40m is lehet, sima 3 egymás mellett futó vezetéken, nem utp-n, egy kínai utánzat usb-soros-1wire átalakítóval. Tápot a bus nagy része az usb-ről kap, ezen felül egy elem van még a DS2423-on, és a pincében egy hub-bal (DS2409-el) le van választva egy rész, és ott az USB-től kapott + le van cserélve egy 5V 1A-es kis tápra, a föld a közös csak. Nekem volt olyan, hogy a meglévő, és hetek-hónapok óta működő kábelt áthelyeztem (a végét más irányba vittem, hossz változatlan) és nem ment az egyik érzékelő (4-ból), ami addig gond nélkül. hosszas tesztelgetés után (kb 1-2 nap) kiderült, hogy 2 csatlakozó nem szerette egymást, és a hiba csak akkor jött elő, ha az a kettő érintkezett.
Amit ki lehet esetleg próbálni, hogy a gép oldalán az usb tápját lecseréled egy stabil tápegységre (csak a földet hagyod közösen), nekem ez javított 1-2 érzékelőm stabilitásán.
A 300m-es dob végére milyen érzékelőt kötötteket? Nekem a fenti helyzetnél a kábel végén látta a DS2423-at, a másik ágazásnál is a DB18x20-et, viszont a DS2438-at nem (egy lapon a DS15-al).
Nekem akkor szokott eltűnni a felcsatolt mappából minden érzékelőm (owfs) , ha lezárlatolom a bus-t.
Mi van a 40m utp gép felőli oldalán? nem lehet áttelepíteni, és az UTP-n hálózatot vinni? Mi van, ha az UTP-n az USB-t viszed át (habár nem biztos, hogy az USB egyáltalán átmegy)? Egyéb eszköz? Pl egy arduino + hozzá ethernet kártya (kb 7e), vagy egy kis router/egyéb OWFS-el (kb 5-10e) a szenzor oldalára?
2012-06-25
10:12:59
Előzmény: envagyok #31032#31036
Szia,


Személyes tapasztalatom (és a leírások) szerint a soros-1w átalakító jobban megfelel hosszú/nagy 1w buszrendszerhez. Bár nálam a problémák CRC hibaként jelentkeztek.

Amire figyelned kell, az a földhurok kerülése (táp és 1w földelés), parazitikus táplálás mellőzése.
Ezenkívül ajánlom olvasgatni az alábbi application note-ot:
www.pdfserv.maxim-ic.com/en/an/AN148.pdf

Ez a hosszú 1w buszok problematikájával foglalkozik.


Üdv,
T.
envagyokVálasz erre
2012-06-24
23:33:38
#31032
macko003, köszi a linkeket.

Más:
Növényházi környezetben szerettük volna egy tartály szintjelzését 1-wire buszra ültetni egy DS2450-el, de nem is ezen van a hangsúly. A teszteket közvetlen a szenzornál végeztük pár méter kábellel és egy mikrogéppel, minden tökéletesen működött. A végleges kiépítésben az usb vezérlő és a szenzor között kb 40 méter utp kábel van (korábban egy egész dob /300m/ utp végére csattintottunk érzékelőt próbaképpen, gond nélkül működött). Persze most nem működik. Egy egész napi szívás tapasztalatai a következőek: Az usb vezérlőt látja a gép, amint csak simán rákötöm a kiépített kábelt (a másik végén nincs semmi), akkor még az usb vezérlőt is elveszti az owserver (lsusb látja). Egy másik kábelt rákötve, ami mellettem van még a dobon, szintén megszűnik az egész érzékelés. Elég csak DQ-ra, tehát a busz vezetékre rákötni a kábelt (a GND-n még nincs is semmi) akkor is kinyírja. Kipróbáltuk 2 usb adapterrel, 3 géppel, több kábellel, linux, windows :). Az idegeinkről ne tegyünk említést :). Szinte egy véletlen folytán a laptopomból kihúztam a töltőt, és hoppá beugrott az adapter a listába, beugrott a próba hőmérő. Amint visszadugtam a töltőt, megint elment minden. A másik gépet is az elektromos hálózatról leválasztva (akksiról táplálva) voálá, megjött az 1wire. Tudom mérni a ráakasztott A/D konverter értékeit egészen addig, amíg rá nem kötöttük a szintjezőt.. Amint ez elekromos hálózattal bármi nemű módon kapcsolatba kerül, megszűnik az 1w busz. Ez olyan szinten, ha a laptomom akkuról mindent lát pöpecül, és bedugom az utp kábelt a switchen keresztül, megint elszáll minden :(.
Valami olyan zavart vesz föl az elektromos hálózatból, ami használhatatlanná teszi a buszt pár méter kábel felett.
Van esetleg valami tippetek hogyan lehet továbblépni ezzel a kérdéssel?
A DS9503 csak a buszról érkező tulfeszt szűri, vagy ilyen jellegű zavarszűrésre is alkalmas? Soros 1w adapterrel érdemes próbálkozni?
Huh, elnézést hogy így idezúdítottam.
2012-06-22
15:07:53
Előzmény: macko003 #30317#30983
www.forgalmazo.net/elektronika/pdf/hih-3610.pdf

Ezt nem lehetne alkalmazni a 4000-es helyett?
Ez jóval olcsóbb. 2100 Ft-os árat írnak rá. Mi lehet az oka az ekkora különbségnek?

Kéne csinálnom 4-5db szenzort.
2012-06-22
13:44:28
Előzmény: pali #30973#30974
pali,

Üzemóra számlálók különböző feszültségre 5000Ft-ól a Conrad-tól.




2012-06-22
13:24:32
#30973
Sziasztok!

Nem találtam jobb helyet a primitív üzemidő számláló ötletemnek.
Elemes, mutatós óra. Amikor megy egy szivattyú, vagy bármi egyéb elektromos berendezés, akkor elindulna az óra.
Jó az ötlet?

Pali
macko003Válasz erre
2012-06-18
21:22:30
Előzmény: envagyok #30820#30847
Az oldalon még fent vannak a régi tartalmak, csak nincs linkelve.
www.hobby-boards.com/catalog/links/8cio8-r1/
Sajnos a tervrajzát nem találtam, csak az összetevőket, és a kapcsolást, de én pl egy kb 3*3as panelon csináltam meg a vezérlését egy 4 portos relé kártyának DS2408-al (ami lehetne akár 8as is), így ha nem sorozatgyártásban gondolkodsz, akkor egy próba panelen is össze lehet dobni. (régebben tettem fel róla képeket, http://biosolar.hu/forum/show/18077#18077 , az egész fűtésszezonban ez vezérelte a kazánt és a szivattyúkat)
envagyokVálasz erre
2012-06-18
11:53:50
#30820
Sziasztok,
DS2408-as nyákotok vagy nyáktervetek nincs véletlenül? Régebben a hobby-board árulta KIT-ként is, de jól látom most csak a komplett panelt adja.
macko003Válasz erre
2012-06-11
16:26:16
Előzmény: lindy #30455#30504
Köszönöm a hibajelzést, nem ie-t használok, nem arra optimalizáltam...
CSS kiegészítve, már szebb ie alatt is, de a felugró ablak sarkának lekerekítését nem sikerült megoldanom, de nem is baj.
Ezt a ráfedés problémát nem oldottam meg annó sem, csak kikerültem, a jobb alsó saroktól töltöm fel, így "feljebb" kerülnek azok az elemek, amik betakarhatnak.
A képet is valahogy másképp rajzolja az IE, így a felrajzott adatok is úgy tünnek, mintha feljebb csúsznának.

Az esőhöz van egy "vödrös" (vagy milyen) eső érzékelőm.
Gyakorlatilag egy tölcsér alatt egy libikóka, ami végén a 2 "vödörbe" folyik a víz, ami a súlynál fogva egy idő után átbillen. Az átbillenéseket számolja a rendszert. Nem akartam ennek kivitelezésével játszani, így ebay-en vettem egy esőérzékelős benti "időjárás állomást" (csak hőmérsékletet, és pontos időt tud, meg az esőt), kb 5e, és a külső egység elektronikáját kidobtam. A vödrök méretéből és a tölcsér méretéből kijön, hogy kb 0,3 mm csapadék esése után billen át.

2012-06-11
07:10:49
Előzmény: macko003 #30298#30455
Csak, hogy belekössek valamibe...
IE-t használok, lehet hogy más böngészővel ez nem gond: ha a vegyes kazán fölötti szivattyúra állok, a gázkazán szivattyújának pöttye a megjelenő rész előtt van. de egy-két helyen a szöveggel is ugyan ez a helyzet.
Ez annyira zavaró, hogy a további hibakeresést már nem is csináltam. :) (valamire rá kell fogni, hogy nem tudok másba belekötni...)
Viszont kérdésem is volna: az esőt hogyan méred?
macko003Válasz erre
2012-06-07
14:20:01
Előzmény: zsezse #30310#30317
HIH-4000-et ebayen 5e körül találsz, Itthon picit drágább.
A kapcsolása pedig szinte semmi.
www.owfs.org/uploads/File/humsensor.pdf
DHT11 már van 500 ft-ért is, amit nem tudom hogy lehetne olvasni, viszont az arduino-val működik, és így a kettő olcsóbb, mint egy HIH szernzor :) Ha külső-belsőt veszel, akkor lehet jobban kijössz, egy arduinoval, egy ethernet kártyával, és 2 DHT11 szenzorral :)
2012-06-07
08:41:40
Előzmény: macko003 #30309#30310
ez a paratartalom resz nekem meg hianyzik, szeretnem megvalositani en is.
igazbaol csak kivancsisagbol, illetve kesobb esetleg ha lesz valaha hovisszanyeros szelloztetom, akkor ahhoz jol johet
+ a falhutesnel lesz erdekes a harmatpont kiszamitasa

macko003Válasz erre
2012-06-07
08:20:56
Előzmény: zsezse #30306#30309
köszi, a nem kevés munka igaz... majdnem egy éve kezdtem el, és apró lépésekkel

egyenlőre csak 1wire eszközök vannak, már rendeltem egy arduino-t, amit kijelzőnek, és 1-2 apró adat beolvasására tervezek bevezetni, és integrálni a rendszerembe.
Páratartalom DS2438 és HIH4000 (?). OWFS automatikusan elvégzi a feszültség-RH konverziót, majd ebből számolok AH-t.
A füstgáz mérés is hasonlóképpen egy K típusú mérő, rajta DS2780 (semmi elektronika), majd OWFS átváltja Fahrenheitre, majd a php Celsiusra. (340°C volt eddig a max)
Mivel még házfelújítás előtt vagyok, és nem akarok költeni addig rá, ezért egy nagy fűtési köröm van, amit az összes (fűtött) helység hőmérséklete alapján kapcsolok.
Meghatároztam egy min és egy max hőmérsékletet, megnézem a szobákat, hogy hány van a min alatt, és hány a max felett (korrekciót alkalmazva, pl konyha hőmérsékletéhez hozzáad pár fokot, fürdőéből levon...), és ha 3-mal több szoba van alatta, mint felette, akkor bekapcsol, ha 3al több van felette, mint alatta, akkor kikapcsol.
Sajnos csak a on/off műveletig jutottam el, még nem foglalkoztam az AC szivattyúk fordulatszám szabályozásával, de ha felújítás lesz, akkor valószínűleg a szivattyúk is mennek...
TP-LINK WR1043ND, 400MHz (ha jól emlékszem), rajta OpenWRT, OWFS, a vezérlés PHP-ban, Apache és MySQL. De lassan tervezem, hogy egy HP Microserver-t teszek alá, mert ezekhez ez a HW kevés, és a jövőben több funkciót is szeretnék rátenni.


2012-06-07
07:13:08
Előzmény: macko003 #30298#30306
macko003

nagyon frankonak tunik! Gratula! latszik, hogy nem keves munkad van benne

rogton lenne hozzad par kerdesem is:
-mivel mered a homersekleteket? 1wire?
-a paratartalmat mivel tudod merni?
-hasznalod-e a vezerles soran az osszes homerseklet erteket, tehat koronkent/helyisegenkent szabalyzol, vagy csak informacio jelleggel van mindenhol?
en meg egyelore nem tudom koronkent szabalyozni, csak padlo/fal van kulonvalasztva
-milyen logika alapjan vezerled/szabalyzod a rendszert? sima on/off a szivattyukra, vagy van esetleg eloremeno hofok szabalyzod is?

azt hiszem elso korben ennyi:)
-ja es milyen routered van es miben irtad a SW-t?

macko003Válasz erre
2012-06-06
19:59:08
#30298
Hát nagyságrendileg elkészült az oldalam. Élő adatok, egyedileg generált grafikonok, statisztikai adatok, és még sok más.
Az oldal egy routeren fut, ezért a grafikonok generálásához szükség van egy kis időre.

www.macko003.dyndns.org

vélemények?
2012-05-04
09:13:28
Előzmény: takyka #27011#29110
meguntam, hogy ennyire kiszamithatatlan nalam az usb-s adattarolas, ezert a kovetkezo hacket csinaltam:

indulaskor minden valtozo adatot (mysql tablak, rrd adatok) kimasolja a ramdiskre (/tmp), majd lezarja a filerendszereket readonlyba (illetve alapbol igy csatolodnak fel)
a rendszer innen dolgozik, 5 percenkent csinal egy frissitest az usbre

mount -o remount,rw
cp -a
sync
mount -o remount,ro

csinaltam egy alap adat csomagot is, ha veletlenul megserulne a szinkronizalas kozben.
ezen felul napi mentes van mindenrol egy tavoli helyre.

remelem most mar nem fog kiakadni/megserulni a fajlrendszer.
2012-03-11
12:09:57
Előzmény: zsezse #26975#27011
Szia,

Folyamatosan megy az USB-s vinyó minden gond nélkül.


T.
2012-03-11
09:47:18
#26975
takyka

egyszer mar beszeltuk, hogy Neked az USBs 1wire adapter nem jott be, mert resetelte a buszt idonkent.

Eddig az egyik RSPROm tokeletesen mukodott, de mostanaban egyre gyakrabban elveszti ez is a fejet.

a jelenseg kb az, hogy megy X ideig (van, hogy napokig, van, hogy csak 30 percet), aztan valami miatt jon egy reset es az USB stick meghal.
Hibasnak veli, nem csatolja fel, RO-ba teszi, vagy el is tunik teljesen.

eddig azt csinaltam, hogy umount -l majd reboot, de van, hogy ez sem segit, reboot utan sem latszik az eszkoz, egyre valtozatosabb hibauzenetekkel orvendeztetve meg.

ha aramtalanitom, utana altalaban megjavul, de van, hogy a filerendszert teljesen odavagja.


te hasznalsz USB hattertarat az RS-en? nalad nincs vele gond?



2012-03-09
10:21:37
Előzmény: gyapo #26867#26874
Jó gondolat!

Ha a legkevesebb szívást akarod magadnak az AVR-el, akkor innét el tudsz indulni.
www.arduino.cc

T.


2012-03-09
08:51:45
#26867
Nézegetem az avr mikrovezérlőket, ha sikerül valamennyire megismerni, akkor akár rá is lehet bízni az 1W eszközök leolvasását, és akkor egyszerű byte-beolvasás lesz a művelet a vezérlőnek. Meg időben is függetlenné válik a leolvasás, az avr-nek van ideje, amikor kész, akkor beadja a byte-okat a vezérlőnek.
Biosolar Forum  =>  Mérésadatgyűjtés  =>  Single Board Computer - 1Wirelapozz: « előző   1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34   következő »
Copyright © 2005-2017 Bernáth Róbert
Minden jog fenntartva