2017 m. vasario 11 d., šeštadienis

Namo smegenys

Nuo pat pirmos minutės žinojau (ir žmoną sugebėjau įtikinti), kad būtų smagu, jei namas būtų šiek iek išmanesnis. Praeitą pavasarį lankiausi JAV, iš kur ir parsivežiau savo pirmąjį Raspberry PI. Nuo to viskas ir prasidėjo :) Iš kiniečių parsisiunčiau visokių daviklių, relyčių, su kuriomis ir pradėjau savo eksperimentus.







Ilgai netrukęs sugebėjau visą tai sujungti: davikliai rodė temperatūrą/drėgmę, jungikliai valdė relytes, o jų pagalba junginėjau diodus (apšvietimą). Kad sistema, būtų lengvai valdoma, suprogramavau ir pagrindinį "variklį", kuriam galima paduoti konfigūracinį failą, o jame galime suvesti jungiklių/apšvietimų grupes, sudėti daviklius ir be papildomų programavimo žinių susimodeliuoti visas tave dominančias zonas pagal namo patalpas. Papildomai, ant raspberry pakūriau web servisą, per kurį visą tai galėjau valdyti  ir iš telefono. Viskas lyg ir fun, tačiau pats Raspberry Pi turi ~20 įėjimų/išėjimų, kurie gali būti panaudoti apšvietimui, jungikliams, davikliams ir pan...O to pilnam namo valdymui yra "way too little". Bet čia problemų kaip ir nėra, nes Raspberry palaiko I2C protokolą, kurio pagalba galime prijungti papildomus 128 įėjimus/išėjimus, panaudojant MCP23017 Microchip'us. Tą pačią dieną, nulekiau į Lemorą, nusipirkau keletą jų ir puoliau jungt :) Be didesnių problemų pavyko viską sujungti ir vietoj 20 kanalų, jau turėjau ~60. Supratau, kad nusipirkęs reikiamą kiekį Microchipų, be didesnių problemų galėsiu patenkinti visą namo poreikį.  Tačiau, susidūriau su problema, kad jie palaiko ganėtinai mažas sroves, ir sujungus visas relytes, pastarieji turbūt neatlaikytų (neslėpsiu, nesu didelis elektronikos specas)..Pradėjau sukt galvą ir ieškot sprendimo variantų. Vėlgi visagalis internetas pasitarnavo ir radau „Darlington chip ULN2803a“, kuris iš esmės spręstų ne tik didesnių srovių problemą, bet ir leistų jungti daviklius/prietaisus, kurie dirba su aukštesnėmis įtampomis. O to, man kaip tik ir reikėjo, nes relytes kurias planuoju jungti, turėtų būti "užmaitinamos" 12v, o iš MCP23017 aš turiu viso labo 5v. Aišku, yra relyčių kurioms užtenka ir 5v, tačiau dažniau paplitusios būtent 12v.





Kuo toliau i mišką tuo daugiau medžių. Visas sprendimas po truputi darėsi vis komplikuotesnis :) Raspberry maitinimas 5v, raspberry input/output 3.3v, relytės ir kiti prietaisai 12v..Visai sistemai Reikia dviejų maitinimo šaltinių 5v ir 12v. Bet kaip bebūtų keista, viską pavyko sujungti ir paleisti, tačiau pats "vaizdelis" mane mažai tenkino. Dėl programinės įrangos ir pačio Raspberry'io buvau ramus, nes programavimas yra mano kasdienybė, kiek kitaip buvo dėl likusios dalies. Visus šiuos testus dariau ant maketavimui skirtų plokštelių, jungdamas skirtingus komponentus laideliais. Atėjo laikas viską mėginti sudelioti į vietas ir sulituoti :) Lituot moku - problemų nėra, tačiau kaip teisingai viską suprojektuoti ir sudelioti ant PCB plokštelės buvo pakankamai didelis iššūkis. Tada pradėjau sukti galvą, o gal internete rasčiau "pusgaminių". Radau. Tiek MCP23017 board'ą su 128 kanalais, tiek uln2803a chipų "plokšteles".
Tarkime, raspberry turiu, programinę įrangą turiu (kiek reikės papildomai - susiprogramuosiu), mikroschemų plokšteles nusipirkčiau, tačiau kaip visą tai gražiai sujungti? Mintis buvo viską montuoti ant DIN bėgelių, tačiau kad tą padaryti, reiktų pirkti tiek Raspberry'iui kažkokią dėžutę (~10eur), tiek mikroschemoms reiktų ieškot kažko tinkamo...Pradėjau galvot, ar VERTA? Visą tai sumontavus, reikės ir mob aplikacijos ir WEB aplikacijos, kad visus prietaisus galėčiau valdyti internetu. Problemų nėra, viską galiu pats, bet viso to suprogramavimas užimtų mėnesį-kitą.

Šiandien atsakymą jau turiu - neverta :) Jei ir paleisčiau sistemą sėkmingai, aš būčiau vienintelis kuris ją žino. Esant bent menkiausiam gedimui, kitam žmogui įsigilinti į visą sprendimą galėtų būti per daug sudėtinga. O jei kada sugalvotume namą parduoti, kaip į tokį sprendimą pažiūrėtų pirkėjai? Tad visos mano pastangos ir liks tik pastangomis..:) Bet sukauptos žinios niekur nedings :)

Pradėjau ieškoti jau pagamintų valdiklių, kurie tenkintų mūsų poreikius. Pradžioj akis užkliuvo už kito bloger'io post'o http://www.livinprojects.lt/elektros-instaliacija-protingas-namas/, tačiau nuodugniau pasidomėjus, šį sprendimą atmečiau. Priežastys buvo paprastos. Valdikliai yra gan primityvūs, mobili aplikacija ar tai web prieiga, kažkokia yra, bet ir ta labai primityvi. Valdikliai neturi net elementaraus laiko pakeitimo galimybės. Laikas lenkiškas :) Pagrindinis valdiklis turi apribojimą, kiek papildomų input/output priedelių galima prijungti, tad mano namui reiktų pirkti minimum du valdiklius ir galutiame rezultate kaina gautųsi nemaža. Vystymas šio produkto taip pat abejotinas.

Tada nutariau pasikonsultuoti su kolega, kurio name jau įdiegta panaši sistema. Jis pasirinko openrb.com produkciją,  ties kuria šiai dienai esu apsistojęs ir pats. Ji palaiko visus pagrindinius protokolus (KNX, 1-wire ir t.t.), turi tiek web tiek mob programas, turi geras administravimo priegas. Yra galimybė sudelioti viso namo patalpų vizualizaciją, su visais įrenginiais ir t.t. Tad dabar rezgu mintį, kad prie šių valdiklių aš be didesnių problemų galėsiu prijungti  irsavo Raspberry'į, kad bet kada galėčiau įgyvendinti kažkokius nestandartinius sprendimus.


Numatomos funkcijos:

1) Apšvietimo valdymas.

               A) Bet kuris jungtukas galės būti suprogramuojamas bet kuriai šviesų grupei.

               b) Galimybė apšvietimą valdyti telefonu, ar WEB prieiga.

               c) Galimybė double-click paspaudimu, užmigdyti namą. Eini miegot, paspaudi atitinkamą jungiklį ir visas namas užmiega.

               d) Šviesų junginėjimas imituojant veiksmą namuose. Išvyksti atostogoms, užprogramuoji, kad šviesos atsitiktine tvarka kambariuose įsijungtų/išsijungtų, sudarant įspūdį, kad namuose verda veiksmas :)

               e) Apšvietimo konfigūravimas pagal timerius. Pvz: Akvariumui, lauko apšvietimui



2) Temperatūros bei dregmės stebėjimas. Jei pavyks, bandysiu šiuos duomenis panaudoti šildymo/vėdinimo kontrolei.

3) Audio sistemos valdymas: Pirties zonoje, svetainėje.

4) Žolės laistymas. Čia manau pasitarnaus ir raspberis :) Dažnai laistymo sistemos turi lietaus daviklius. Ateina laikas laistyti - įsijungia, jei pradeda lyti lietus - išsijungia. Klausimas, kam pradėti laistyti žolę, jei yra galimybė pasitikrint orų prognozę ir net nepradėti laistymo? :)

5) Signalizacija. Iš tikro šiuo klausimu dar nepasidomėjau, tad ar pavyks ją prijungti prie sistemos nesu tikras.

6) Daug daug kitų funkcijų, kurios, man kaip  žmogui iš IT pasaulio, gali būt smagios :)

Sistemos minusai:

1) Kaina. Pati sistema manau kainuos ~1500eur. + šiek tiek daugiau laidų reikės, nes nuo kiekvieno šviestuvo turės būti nuvestas laidas iki centralės, taip pat ir nuo jungtukų.

2) Patikimumas. Kuo daugiau elektronikos, tikėtinai ir daugiau problemų :)

Kiek visko pavyks įgyvendinti, dar nesu garantuotas, nes dar net pamatai neišlieti :), bet esu linkęs kiek galima daugiau visko suplanuoti dar statyboms neprasidėjus, nes jų metu dažnai ir taip laisvo laiko beveik nebūna.

P.S. šiuo metu rasberry esamuose namuose sėkmingai naudoju, kaip pridėlį prie TV (ale media centras) . Tv ganėtinai senas, nėra galimybės jo prijungti prie interneto, tad čia sėkmingai pasitarnavo raspberry pi. Suinstaliavau http://openelec.tv/ ir dabar turiu galimybę tiek muziką tiek video streaminti per internetą. Visas valdymas vyksta telefono pagalba.




18 komentarų:

  1. Tiesa, pačiam tokią didelę sistemą kurti verta tik dėl dviejų priežasčių - kainos arba didžiulio entuziazmo, hobio :) Galvojau ir aš prieš statybas, kad norėsiu "smart house'o", bet po to supratau, kad didžioji dalis funkcijų bus pasižaidimui, o kainuos nemažai.

    Tik hobio vedinas planuoju pasidaryti mobiliuoju telefonu valdomą lauko apšvietimą, bevielius termometrus kiekvienoje patalpoje, GKK monitoringą ir orų stotelę. Bet tai atskiri maži projektukai, kad būtų kur panaudot turimas ar planuojamas nusipirkt arduino ar raspberry "plokšteles" :D Visgi smagus užsiėmimas.

    Bet kokiu atveju bus įdomu pamatyti įgyvendinimą planuojamos sistemos. O dar įdomiau bus iš praktinės pusės atsiliepimai apie tokios sistemos realų naudojimą/reikalingumą. Gal aš per daug skeptiškai nusiteikęs jų atžvilgiu.

    AtsakytiPanaikinti
    Atsakymai
    1. Aš manau, kad tokio tipo sistema bus nesibaigiantis projektas :) Ribos tik vaizduotė :) Ar to reikia? Vienareikšmiškai nėra būtina, bet smagu :)

      Panaikinti
    2. Nesakau ir aš, kad tai labai reikalinga, bet kad tik pasižaidimas, tai tikrai ne. Mano pagrindinė mintis buvo atjungti elektrą vandens siurbliui, kad trūkus kokiam vandentiekio vamzdžiui ar kaip kitaip išsihermetizavus sistemai, kad viso namo neužpiltų vanduo, kai nieko nėra namie. Ar tai reikalinga funkcija? Tikiuosi, kad jos neprireiks visą gyvenimą, bet jai jau kas panašaus nutiktų, geriau kad elektros tiekimas siurbliui būtų nutrauktas. Įvykus avarijai vandens išbėgtų tik ~10 litrų, kiek yra hidrofore. Valdymas jungiant prie signalizacijos labai paprastas, įjungiai signalizacija ir atjungiamos visos nereikalingų prietaisų, tame tarpe ir vandens siurblio, nereikalingų razečių ir pan, maitinimas. Atėjai, išjugei signalizaciją ir viskas veikia. Šviesos valdymą galima ir kitaip būtų užprogramuoti, čia jau labiau prie hobio, vagių atbaidymas šviesos junginėjimo pagalba - bobučių pasakos. Taigi, "proto įkrėtimas" tai tikrai ne tik pramoga.

      Panaikinti
  2. Pas mane panašus vaizdas ant stalo :)
    O latviai šaunuoliai. Tik irgi reikia laiko suprasti jų sistemą: kelių šimtų puslapių tik programeriams suprantamas Manual. Taip, kainuos kelis kart pigiau nei koks KNX, bet vis vien nepigiai.
    O programos jų darytos? Tai irgi uždara sistema gaunasi.

    AtsakytiPanaikinti
    Atsakymai
    1. Nu ir kainos, pažiūrėjau...
      Ten tik kontroleris nuo 1500€ kainuoja?

      Panaikinti
    2. Autorius pašalino šį komentarą.

      Panaikinti
  3. Kontroleris kurį planuoju pirkti (LogicMachine Re:actor V3) kainuoja 950eur, tačiau jie sėkmingai pritaiko 30% nuolaidą, bent jau porą žmonių tokiu būdų pas juos nusipirko.

    AtsakytiPanaikinti
    Atsakymai
    1. parašyk svarbus.mailas@g..
      dviese daryt lengviau ;)

      Panaikinti
  4. Irgi mėgini kažką panašaus pasigamint? Aš pasidaviau kai atėjo laikas viską gražiai sujungt..Variantas mikroschemas jungt laidukais manęs nežavėjo... Bet iš esmės trūksta nedaug..trūkstą tik žmogaus su patirtim, kuris sprendimą galėtų perkelt nuo maketo į produktą :) šiaip šis raspberry sprendimas https://monterail.com/blog/2016/how-we-built-a-truly-smart-office-system-based-on-raspberry-pi įkvepia :)

    AtsakytiPanaikinti
  5. Sveiki. Džiugu matyti namų automatizavimo planus, ypač kai pats domuosi elektronika. Siūlyčiau taip greitai nenurašyti varijanto pačiam pasidaryti visą sistemą kai abejojama kad sistema bus suprantama tik pačiam jos gamintojui. Esu pasidares saulės kolektoriaus valdyma karštam vandeniui ir akumuliatoriams krauti panaudojant Arduino mikro valdiklį ir galiu pasakyti kad sistemą reikėjo tik iš pradžių paderinti kol sureguliavau ir ji tiesiog dirba jau antri metai ir nereikia ten nieko reguluoti. Taip ir namu automatizavimą manyčiau kad suprogramuoji ir viskas, o jei kas sugenda tiesiog pakeiti nauju. Dėl skirtingų įtampu galima labai paprastai panaudoti įtampos stabilizatorių kad ir iš 12v viską užmaitini su stabilizatoriu LM2576T-5(priklauso kiek srovės reikia) ar kokiu panašiu pasidarai 5V rasberiui apmaitinti, o iš pinout 3,3v sužadini tranzistoriu kuris lengvai paleidinėja 12v rėles. Reikėtų atkreipti dėmesi kad reikia apsaugoti mikro valdikio pinIn nuo pašalinių srovių kai pavyzdžiui visi laidai eina vienas šalia didesnį atstumą gali indukuotis tam tikros kenkėjiškos srovės ko nepamatysi viską junginėjant ant montažinės plokštės. Aš tai galvočiau kad galima daryti ir nebūtinai visą nama pilnai automatizuotą o kad ir iš dalies automatizuotą, taip galima pataupyti kaikur.

    AtsakytiPanaikinti
  6. Visą maketą deliojausi taip, kad kuo mažiau naudoti pačio raspberrio pin'ų. Realiai porą pin (i2c) panaudojau bendravimui tarp raspberry ir MCP23017 mikroschemų grandinės ir keletos IN pinų reikia tam, kad gauti interruptus iš Mikrochipų, jei juos panaudočiau IN signalams..Noras buvo patį raspberry kiek įmanoma izoliuoti nuo išorinių įrenginių jį apsaugant nuo nenumatytų klaidų :)
    Laiko dar šiek tiek turiu, tad gal pavyks dar projektą privesti iki finišo..O gal atsiras entuziastų, kurie geriau gaudosi elektronikoje ir norėtų prisijungti prie šio projekto :)

    AtsakytiPanaikinti
  7. Aš tai galvočiau apie kelių lygių architektūrą: viršuje RasberiPI(RPI) sujungtas nuosekliu interfeisu (pvz. RS485, UART ar CAN) su žemesnio lygio kontroleriu, kuris valdytų I/O interfeisus. Mikrokontrolerį rinkšiausi STM32 Nucleo serijos, dėl kainos (10-20Eur) ir pagalbinių plokščių(shields) pajungimo galimybės pvz. http://eu.mouser.com/ProductDetail/STMicroelectronics/NUCLEO-F767ZI/?qs=sGAEpiMZZMv%252bkWzvOmGqmoVIBB6TTm4n9IOGZ64qhak%3d. Automatikos valdymui jungčiau X-NUCLEO-PLC01A1 shield (~10Eur). Kaip pavyzdi STMicroelectronics duoda idustrinių I/O valdymą per WiFi http://www.st.com/content/st_com/en/products/embedded-software/evaluation-tool-software/st-plc.html. Programavimo supaprastinimui galima naudoti mbedOS platformą https://developer.mbed.org/

    AtsakytiPanaikinti
  8. o nebus taip, kad nustimpa SD kortelė ar pats raspberis ir rūkai be elektros? :D

    AtsakytiPanaikinti
    Atsakymai
    1. Kas būtų jeigų būtų visad išlieka :) Raspberry nusipirkt yra vienos dienos klausimas, o kadangi pas mane namie bus ne vienas raspberry (jau ir dabar yra), tai laikinai sukeist vietomis gedimo atveju nebūtų problemų. Turėti SD kortelę pakaitinę irgi yra kelių eurų klausimas. Nemanau, kad reiktų dėl to sukti galvą.

      Panaikinti
  9. "Tą pačią dieną, nulekiau į Lemorą," Nežinojau, kad ir "Lemora" jau siūlo "Raspberry Pi", nors aš vis tiek pas juos nepirkčiau, "Lemona" rimčiau atrodo, kai kalba eina apie tokio tipo įrangą ;).

    AtsakytiPanaikinti
  10. Apie "proto įkrėtimą" namui galvojau ir aš. Relių valdymą aš patikėsiu signalizacijai "Eldes ESIM364"
    Ši signalizacija sugeba:
    Patalpų apsauga - Pagrindinė funkcija.
    Elektrinių prietaisų valdymas SMS žinutėmis. Palaiko 4 reles, praplėsti galima iki 76 relių palaikymo.
    Temperatūros matavimas ir kontrolė - palaikoma iki 8 temperatūros daviklių.
    Elektros tinklų problemų kontrolė
    Bevielis domofonas
    Cisternų lygio ar kitų 0-30V voltažo sensorių matavimas (papildomai)

    Na čia mano, kaip ne informatiko sprendimas. Pliusas pirmiausiai kainoje, antras dalykas, pakankamai patogus signalizacijos valdymo interfeisas. Minusas, nors ir teigiama apie valdymo internetu galimybę, trumpai pabandžiau, man nepatiko ir valdymui naudoju tik SMS žinutes.

    Relių dar nepajungiau, bet tikrai jungsiu prie signalizacijos, papildomai jokios protingos valdymo elektronikos nepirksiu.

    AtsakytiPanaikinti