[Lezarva] Raspberry PI-bol szobatermosztat?

Hi,

Nem csinalt / tervez csinalni valaki RPi-bol szobatermosztatot? Felmerult bennem, hogy lehetne egy inteligens termosztatot kesziteni, a GPIO-kra epp illik az osszes periferia, SPI-s LCD, I2C-s homero (esetleg paratartalommero), rele kapcsolgatas.

Ethernet-en kereszul lokalis halora, de akar Internet-re is lehet kotni. Okostelefonnal meg vezerelgetni.

A fentiekkel nincs is gond, talan egyedul is elboldogulnek vele. A kemenyebb dio a franko szabalyzas, gondolom valami PID, tullovesek elkerulese, ablaknyitas erzekeles, stb. Na ezekkel egyaltalan nincs tapasztalatom.

Szoval ha mast is erdekel, talan itt osszegyujthetnenk a lehetosegeket, otleteket, a tudomanyt...

/sza2

Szerk.: Mivel _mindenki_ arrol akar meggyozni, hogy:
1. csinaljam kontrollerrel, vagy
2. ne ezzel foglalkozzak, csinaljak mast
Ugy gondolom ezt a thread-et lezarnam.

Persze ha valakinek van otlete _ezzel_ kapcsolatban, azert dobja ide nyugodtan:-)

Hozzászólások

Ez tipikusan olyan, amit mikrokontrollerrel célszerűbb megoldani mert nagyságrendekkel kisebb a fogyasztása.

Esetleg a prototípust megcsinálhatod rpi-n, s ha bevált, abból készítessz egy központi egységet, s a többit megoldod mikrokontrollerrel.

Nagyon drágák, de egy lehetséges megoldás távoli, mechanikus jellegű események észlelésére:
http://www.adhocelectronics.com/Self-powered-Radio-Transmitter-Modules

-1

Ha olyat keresel amin barmilyen net van, az altalaban nem az olcso kategoria.

A kiegeszitoket (LCD, homero, doboz) ahhoz is meg kell venni/szerezni/csinalni, igy osszessegeben nem lesz nagy kulonbseg arban.

Cserebe egy eleg magas szinten programozhato, konnyen modosithato, szerkezetet kapsz, tobbek kozott floating-point kezelessel - ami mellesleg egy szornyuseg a fenti kontrollereken. Van egy csomo helyed log mentesre, akarmire.

Szerintem osszessegeben, fajlagosan, jobban jon ki.

/sza2

Ami a stabilitast illeti, minel tobb a kod, annal biztosabban lesz benne hiba, ez igaz.

De egy custom kernel, csak a minimalis userland-del lehet hasznalhato. Volt olyan gepem, ami kikapcsolas nelkul joval tobbet elment mint egy-ket futesi szezon, pedig nem csak egy celszoftver futatt rajta.

Bar termeszetesen az ember arra torekszik, hogy tokeletes legyen a rendszer, ha megis gond van, ket dolog tortenhet:
- nem fut a rendszer amikor kellene
- folyamatosan fut, amikor nem kellene
ebbol talan a masodik a problemasabb, mert koltsegnovekedest okoz (egy folyamatosan lakott epuletnel egyik sem igazan veszelyes, inkabb zavaro, ha hiba eseten foglalkozni kell vele).

/sza2

Persze, nekem is van olyan rendszerem, ami hosszú időt bír újraindítás és bármiféle stabilitási gond nélkül.

Én mégis inkább egy mikrokontroller + rPI kombinációját látnám jobb megoldásnak, egyben egy "watchdog" is lehetne belőle így a Pi-nek. :)
Termosztát funkciót mindenesetre nem PI-vel csinálnék - monitorozást, távoli beállítófelületet már inkább.

-1

Szerk: itt egy db szobatermosztatrol beszelunk. Mire egy short range wireless renszert (adoval, vevovel (esetleg adovevovel)) felepitesz bonyolultabb lesz mint ez, es arban is rosszabb.

Itt az a lenyeg, hogy van egy szinte kesz cucc, ami relative olcso is es csak par kiegeszito kell hozza.

/sza2

Valami dereng irányítástechnikából a Nyquist(Nesquik), Bode-diagramrokról meg a visszacsatolt/zártkörű rendszerektől és túllövésről. Még csináltunk is MATLAB-ban jó kis példákat.
Kár, hogy nem akkor jött elő a kérdés, akkor vágtam ezeket... :)

Szerencsére a szoba levegője egy akkora holtidős tag, hogy nem kell túlbonyolítani a témát :)
Az ablaknyitogatós "túllövésekre" meg könnyű reagálni. Ha kinyitod az ablakot, leáll a fűtés. Korszerű fűtéstechnikai rendszerek is ezt csinálják. Egy egyszerű (biztonságtechnikában használatos) reed relé az ablakra és kész.

Némileg hasonlóval bohóckodok én is, de ott 6-10 DS18B20 hőszenzor arduinoval, ethernet shielddel webre téve, kis szerveren (ami lehet akár RPI is) mrtg-vel grafikont rajzolok belőle.

Ezt bármerre tovább lehet vinni. Akár arduinoban további vezérlések, arduino webjéről kattingatva vagy RPI-re tenni webszervert amin keresztül az arduinot piszkálgatod.

Vicces vagy :)
N+1 dologtól függ, mint pl. szoba, fűtőtest, ablak mérete; fűtés, szigetelés hatékonysága.
Ha van komplett monitorozó rendszer akkor egy nyitott ablak fűtéssel és egy nyitott ablak fűtés nélküli 5 perces időintervallum alatt elhasznált energia+hőfok görbe alatti terület integráljából lehetne pontos számokkal szolgálni. Akinek sok ideje van számolja, én ehelyett megelékszem nálam okosabb emberek (villamosmérnök tanárok, energetikai szakemberek) ajánlásával, de a józan fanyeles paraszti ész is azt sugallja, hogy nem fűtünk és hűtünk egyszerre.

De ha már mélyrehatóbb gondolatmenet kell, abban gondolom egyet értünk, hogy az energia áramlása arányos az energia (jelen esetben hő) hülönbséggel.
A szobád meleg levegője mikor távozik gyorsabban, feltételezve egy kinti 10°C-ot? Ha bent 15 van vagy ha bent 25 van? Persze, ha bent 25 van, akkor minek fűtesz rá, hogy gyorsabban kimenjen?
Ha meg úgyis fullba kihűtöd a szobád (mert egy intenzív szellőzéssel kihűtöd) akki mi a túrónak menjen még a fűtés is?
Egyébként szintén nálam okosabbak írták le, hogy nem gazdaságos órák hosszatt szellőztetni fűtésszezonban. Sokkal hatékonyabb és gazdaságosabb 1-2 rövid, de intenzív átszellőztetés.

"Sokkal hatékonyabb és gazdaságosabb 1-2 rövid, de intenzív átszellőztetés."

igen, erre mondtam, hogy ezen mennyit sporolsz, ha lekapcsolod a fűtést?

tegyük fel megy éppen a fűtés, a radiátorod meleg. kinyitod az ablakot. fűtést lekapcsolod, radiátorod meleg marad, a belepumpált energiát ugyanugy kikapja a huzat. tehát 3 percre leállítod a fűtést. ehhez oda drotoztál, szétfurtad az ablaktokot jobbesetben egy nyitásérzékelőért, rosszabb esetben látszik minden...

ha nem megy a fűtés, mert nincs fűtéskérés, akkor meg minek kapcsolom le ugye...

fixme!

de mindez pótmegoldás. hővisszanyerős szellőzőrendszer beépitése amegfejtés.

úgy látom, hogy a hőcserélő és a doboz meg is volna kb 3-400e árban (250m3/h kapacitással). már csak légosztó doboz, speciális csövek és szerelvények kellenek, ugye. A szigetelt csövek ára alsó hangon is kb 2000Ft/m (mindenféle szerelvények nélkül) - azt nem tudom, h ezek egészségügyileg megfelelnek-e (légionella és társaik miatt). Ha nem toronyiránt vezeted (hogy normálisan lehessen közlekedni a telepítés után is a padláson) akkor 100m-el lehet számolni. Ha megveszed a hozzá tartozó szerelvényeket, és hozzáértő emberrel csináltatod, akkor a fentiekre a központi egységen kívűl mégannyit simán ráköltesz, a végeredmény majd' 1 milla lesz.
Hadd kérdezzem meg, hogy nálad hány nm-es házra mennyiből jött ki kompletten?

Ha jól emlékszek, talán jakubovics forumtársnak van már kiépített rendszere, talán meg tudja mondani, h mire kell vigyázni. Én elsősorban tippelek a speciális csőre (van vmi antibakteriális bevonatú talán), majd a megfelelő hangszigetelésre, mert nincs annál rosszabb mint minden szobában hallani, ki mit csinál.
Ellenben engem is érdekelne, mert - főleg átmeneti időszakban - kellemesen rá lehetne fűteni kicsit a házra (nopláne gyorsabban mint a padlófűtéssel), valamint a cserépkályha melegét nem csak 1 légtérben lehetne élvezni.

Szerencsére a szoba levegője egy akkora holtidős tag, hogy nem kell túlbonyolítani a témát :)

Ez szerencse? A holtidős tagot kellemetlen szabályozni, a D szabályozás kiesik, mert abból csak túllövés illetve oszcilláció lesz. Lényegében marad az I szabályozó, ami ugyan pontos, de marha lassú. A holtidő mellé ez egy fene tudja, hány tárolós tag is, de ugye egy biztosan. (Van az több is.)

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

lehet hasonló árban van, de egy microcontrollert ne hasonlíts egy rpi-hez, ami fejre állhat kb. bármitől, ez egy microcontrollerél elég ritka...
Én egy ilyen jellegű dolgot inkább egy bármilyen microcontrollerre bíznék inkább mint egy rpi-re.
Ha kicsit beleásod magad jobban, akkor saját pcb-t is csinálhatsz erre nem sok munkával :)
---------------------------------------------------
Hell is empty and all the devils are here.
-- Wm. Shakespeare, "The Tempest"

En mar lattam mikrokontrollert is kiakadni. Elismerem, mivel kevesbbe bonyolultak belulrol, illetve altalaban a rajtuk futo programok is egyszerubbek (talan mert nincs eleg RAM, flash, teljesitmeny, etc? - ugye...)

Nem tudom mennyire kellene jobban beleasnom magam, ~15 eve a munkam reszet kepezi mikrokontrollerek programozasa, aramkor-, nyaktervezes...

A RPi azert merult fel, mert relative keves befektettett munkat igenyel egy, a cimben szereplo eszkoz kialakitasa.

/sza2

"Nem tudom mennyire kellene jobban beleasnom magam, ~15 eve a munkam reszet kepezi mikrokontrollerek programozasa, aramkor-, nyaktervezes..." - ezt nem tudtam, akkor helyzeti előnybe vagy :)

Csinálhatod RPi-ben, arduinoban, bármiben, majd egy blogbejegyzést írj róla, engem érdekel a dolog.

---------------------------------------------------
Hell is empty and all the devils are here.
-- Wm. Shakespeare, "The Tempest"

én ilyennel nem fecsérelném az időt. semmi értelme. szerintem macerás pl a szoba hiszterézisét kitalálni, mikor kezdjél el fűteni, hogy délután 5re 21 fok legyen, és mikor állitsd le a fűtést, hogy 22 orára már 19 fok legyen...

szóval nemcsak relék kapcsolgatása, meg szép ui felület, az csak a felszin....

értelmesebb lehetne pl hővisszanyerős szellőzőrenszerhez valami mérőt késziteni:
hány fokos levegő megy ki, hány fokos levegő jon be, milyen sebességgel, ebből gondolom számolható a hőmennyiség, amiből a megsporolt pénz, amit az ablaknyitogatásos szellőzéssel pazaroltál el. vagy hány fokos kinti levegőbol hány fokos benti levegőt készit....

ugyanerre a szettre lehetne valami lakatfogós elven műkodo árammérő, amivel pedig lehetne az egyes villanyos eszközök költségét mérni kellő pontossággal.

és ugyanerre a szettre wireless hőmérők amik páratartalmat is mérnek, és ezeket is loggolni.

a sok adatbol meg még én is tudok grafikont rajzolni, és látni a lak költségeit... ennek pl több értelmét látom...

Akkor megegyszer:

Csak egy kazanra kotott termosztatot szeretnek kivaltani egy inteligens valamire. Arban, kb. annyiba kerul ezt megvalositani, mint venni egy also-kozep kategoriaba tartozo szobaretmosztatot - tavolrol vezerelhetok szerintem meg tobbe is kerulnek.

Lehet, hogy amit Te mondasz, annak tobb ertelme van, de en ILYET szeretnek, nem VALAMIt ami masra jo.

/sza2

wow... két ilyen kifejezés, hogy "hiszterézis" és még én leszek frusztrált, hogy nem értek hozzá...
Nem kell hiszterézis: 20.8 fok alatt bekapcsol, 21.2 fölött megáll.

"hány fokos levegő megy ki, hány fokos levegő jön be": honnan a túróból tudjam, hogy az idióta termopán ablakomnak mennyire szar a szigetelése. És mi van, ha az asszony mákos beiglit süt, azzal is kimelegszik a konyha...? Attól a másik szobában még lehet hűvösebb.

A dolgokat nem kell túlbonyolítani: sza2king egyszerű szobatermosztátot akar. Nálam is hasonló működik, minden szobában külön állítom a hőmérsékletet, elektronikusan vezérlem a fűtőtesteket, ráadásul wireless módon. A fűtés költségei pedig megvannak abból, hogy mennyi ideig működött a kazán (gáz).

szerk: a központi egység az linuxot futtat (rtl8186-based router, 2.4 kernel, 3 éve egyszer le nem fagyott), de erre tökéletes lenne a rpi is. A többi kütyü az viszont mikrokontrolleres (ezek olvassák le a szenzortól a hőmérsékletet és kapcsolgatják a fűtőtesteket), ez sima PIC16F84. A wireless modul az rf12b.

Talaltam egy szamomra erdekes reszt:

"minden szobában külön állítom a hőmérsékletet, elektronikusan vezérlem a fűtőtesteket"

Mivel csinalod?

Neztem en is futotestre szerelheto temosztatokat, amik autonom modon mukodnek, mindossze annyit tud, hogy meri a homersekletet (sajnos kozvetlenul a radiatornal, ami szeritnem nem a legszerencsesebb), es egy motorral nyitja / zarja a radiatorszelepet. Mellesleg egy ATmega van benne. A gond az, hogy a legolcsobb is 7eFt a Lidl-ben (vagy a Conrad-nal), es ebbol nekem gyakorlatilag csak a motor kell.

A vegso cel nekem az volna, hogy szobankent lehessen szabalyozni a homersekletet. Gondoltam a radiatorra egy RF-en vezerelheto motor, a szoba egy vagy tobb helyre RF homerseklet- (+ paratartalom) ado, meg egy kozponti egyseg, ami iranyit, begyujt / kikuld. Tudom, van ilyen keszen is, csak azok tobb helyseg (nalam 7+) eseten 100eFt+ nagysagrendben vannak.

De pillanatnyilag csak a mechanukus termosztatot szeretnem lecserelni valamire amit tavolrol is elerek.

/sza2

PS: "20.8 fok alatt bekapcsol, 21.2 fölött megáll" - azt hiszem ez pont a hiszterezis :-)

Én pont hasonlót építettem otthonra. Jelenleg egy Via EPIA-n megy, de fontolgatom, h rPI-re, vagy WRAP-ra cserélem, fogyasztási okokból.

A fűtés nálam: vegyes kazán fűti fel a puffertárolót.
Van két fűtéskör: radiátor (fsz és pince), padlófűtés (fsz), külön keringetőszivattyúval.

A hőszenzorok nálam is DS18S20, ebből 10+

A radiátoros fűtéskörön van ESBE motoros szelep is. Mivel a pince nem lakószint, ott esetleges a folyamatos fűtés - valamint a "kazánház" is itt van, így simán 15+ fok a hőmérséklet.

A padlófűtésnél a körök szeleppel vannak behangolva, így - jelenleg - on/off a rendszer. Mivel elég lusta, így bőven elég fél fokos pontosságal kapcsolni. Azaz nappal (7től fél9ig és 18tól 23h-ig ) 22C, éjszaka 19C. Ha ezt eléri kikapcsol, ha fél foknál többet csökken, akkor bekapcsol. Mivel a DS szenzor elég precízen mutatja a változást, így lehetne ennél kisebb is a hiszterézis.

A körök kapcsolása a fűtésosztón történik elektromos termoszeleppel. Na, ennek ~10k HUF darabja.
A következő projekt a padlófűtés vezérlés továbbfejlesztése, azaz azon szobákban ne menjen a fűtés, amit felfűtött a nap (ill. egyéb hőforrás, pl cserépkályha, felhasználó, etc).
Radiátoros fűtésnél gazdaságosabb a multinál kapható (akár heti szinten programozható) termosztátos fej.
Persze (ha van puffertárolód) akkor az előremenőt is hangolhatod, a termofej pedig úgyis a hőigény szerint fog nyitni.

ps: sourceforge.net -en láttam vmi teljesen kész platformot, amivel a ház fűtését, hűtését lehet vezérelni, grafikonokkal, scheduling-el, etc, sajnos a neve nem ugrik be.

"Mivel csinalod?"

http://www.ebay.de/itm/Stellantrieb-stromlos-geschlossen-thermal-actuat…
+
szilardtest relé

Az ebay-es cucc olcsó és megbízható, nincs benne mozgó alkatrész: egyetlen hibája volt, hogy a rugója kicsit gyenge, ezért le kellett cserélnem. Ezért lehet hogy jobb választás valami márkásabbat venni.
pl. Honeywell MT4-230-NC

A hőmérséklet szenzorok pedig DS18B20.

A hõvisszanyerõ a megoldás, de mennyiért?
A szelepet meg azért zárod el, mert 10% nyitásròl semmi perc alatt 100%-ra nyit a termoszelep, ha rányitod az ablakot.

Szerintem ez nem rossz ötlet, főleg, ha érdekel a dolog.
Esetleg ha már a sima ki/bekapcsolgatás megy, fasza szabályzással - de régi emlékek, még a fuzzy logicra emlékszem a fősuliról :) - neki lehet állni OpenThermes termosztát leprogramozásának.
http://en.wikipedia.org/wiki/OpenTherm

én csak azt nem értem, hogy miért nem a vízhőfok alapján szabályozzák ezeket a rendszereket? 35 foknál bekapcsol, 38 foknál meg ki, vagy fokozatot vált. kint kb konstans a hőmérséklet, bent is nagyjából olyan a cél. mi a rákért kell szobahőmérséklethez igazítani?

hidegvan, 'fűtsünk vaze!' elkezd fűteni, még mindig hideg, aztán kezd melegedni a szoba, kezd melegedni a levegő, elértük a kívánt hőmérsékletet, kikapcsolhatsz. a radiátor még mindig forró, melegszik a szoba, nem kell fűteni, jégcsap a radiátor, de még mindig jó, hopp lement a hőmérséklet, fűtsünk bakker! és még mindig hűl a szoba..

35fokos víznél hideg a szoba, jó akkor állítsuk 40re és nézzük meg mi lesz. nem értelmesebb?

na mindegy. amúgy az ötleted tetszik.

Gázkazánnak van egy optimális vízhőmérséklete, melynél a legjobb a hatásfok. Vegyestüzelésűnél meg annál alacsonyabb hőmérsékleten nagy a kátrányképződés, csökken az élettartam.
Vannak intelligens felügyeleti rendszerek, melyek képesek ezt a túlfűtést kiküszöbölni mindenféle számításokkal. Ha érdekel, küldj privátot.

"hidegvan, 'fűtsünk vaze!' elkezd fűteni, még mindig hideg, aztán kezd melegedni a szoba, kezd melegedni a levegő, elértük a kívánt hőmérsékletet, kikapcsolhatsz. a radiátor még mindig forró, melegszik a szoba, nem kell fűteni, jégcsap a radiátor, de még mindig jó, hopp lement a hőmérséklet, fűtsünk bakker! és még mindig hűl a szoba.."

Azert erre vannak mar megoldasok, mint PID szabalyzo, ontanulo termosztat - vegulis ez a cel.

De a mai futesrendszerek elegge osszetettek tudnak lenni. Ma mar egyaltalan nem ritka a kulsohomerseklet-erzekelo es a langmodulacio, elmeno/visszajovo vizhomerseklet merese, stb.

Viszont ha egy regi kazanja van valakinek, ami egyetlen jelet fogad: ki/be, akkor meg mindig ez (egyszeru ki/bekapcsolos termosztat) a legkezenfekvobb megoldas.

/sza2

Az a probléma, amit írsz, abből következik, hogy elfogyott a fázistartaléka a szabályozónak, így oszcillálni fog. Más szóval rosszul vannak méretezve a szabályozási paraméterek. Valamelyest tudni kellene a holtidő nagyságát, s legalább az 1/(1+sT) tag T időállandóját, hogy egy integráló szabályozót meg tudj csinálni hozzá. Ha így csinálod, nem fog lengeni, s nem kell a víz hőmérsékletét sem mérni. Ennek az eredménye az lesz, hogy közeledve a kívánt hőmérséklethez egyre kisebb kitöltési tényezővel fog fűteni a radiátor, átlagosan egyre hüvösebb, de a környező szoba levegőjénél még melegebb lesz. Így nem lesznek lengéseid.

Abban viszont igazad van, hogy lehet a szabályozónak segíteni, hogy egy alárendelt szabályozást használsz, amely a víz hőmérsékletét tartja adott határokon belül, s ezzel vezérled a beavatkozó egységet - radiátor -, amelyet a fölé rendelt szabályozó a szoba hőmérsékletének mérésével és az alapjelhez - referencia - hasonlításával fog szabályozni.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Egy helyiség, egy radiátor esetén ok. Több helyiség, helyiségenként egy vagy több radiátor esetén nem működik. Egyes helyiségek túlfűtöttek lesznek, mások hidegek ha egy fő helyiségre optimalizálod a vízhőfokot.
Másrészt ha nemcsak radiátor van, hanem fal, és/vagy padlófűtés is akkor alapban más hőfokot kell keringtetni a rendszerekben amihez kell még pár apróság... Ha nemcsak kazán van hanem mondjuk vízteres kandalló, hőszivattyú, napkollektor akkor megint a helyzet fokozódik... :)
- - - - - - -
"Nagy kár, hogy az informatika abba a korba ért, hogy lehet nyugodtan pazarolni az erőforrásokat." Saxus

Kicsit Off, de talán mégse annyira. Némi ötlet azoknak akiknek van egy linux-os non-stop gépe már és kis pénzből akarnak vezérelni valamit.

Én először csak hőmérsékleteteket szerettem volna mérni és mivel fut egy linux-os NAS, nem akartam erre még egy RPi-t is venni. Fillérekből össze lehet dobni egy soros 1-Wire vevőt DS1820-as hőmérőkhöz. Elsőre parazita módot próbáltam, kb. 10m feletti távolságnál már nem megbízható, így ha valakinek messzebbről kell adatot gyűjteni, kezdjen rögtön a nem parazita verzióval.

Aztán jött a gondolat, hogy kellene kapcsolgatni valamit a hőmérsékletek alapján (kb. egy termosztát analógiáján), ehhez próbaként ezt a két dolgot vettem dx-en:
http://dx.com/p/ft245-mini-usb-to-parallel-fifo-communication-module-14…
http://dx.com/p/8-channel-relay-module-board-w-optocoupler-isolation-bl…

Sokat nem játszottam még velük, de használhatónak tűnnek, pl. Phyton-ból elég egyszerűen lehet kapcsolgatni a reléket, ezt használva:
http://pylibftdi.readthedocs.org/en/latest/installation.html