.. vim: noexpandtab fileencoding=utf-8 nomodified wrap textwidth=270 foldmethod=marker foldmarker={{{,}}} foldcolumn=4 ruler showcmd lcs=tab\:|- list tabstop=8 noexpandtab nosmarttab softtabstop=0 shiftwidth=0 :date: 2023.09.20 18:26:48 :tags: HW :authors: Gilhad :summary: Měřaduino :title: Měřaduino :nice_title: |logo| %title% |logo| %HEADER% Měřaduino -------------------------------------------------------------------------------- Mám chatičku, kde je v létě horko a v zimě zima. Ale nevím jak moc. A mám Arduina, která zahálí. Takže plán je jasný - koupím hrst senzorů `DS18B20`, připojím na nějaké Arduino, přihodím `SD kartu`, `RTC` a nechám si to změřit. Teda původně jsem myslel jen jeden senzor, ale pak mě napadlo, že možná v té chatičce se ta teplota uvnitř bude lišit u podlahy a u stropu, u vchodu, v podkroví a hluboko ve sklepě, a tak vůbec a když to bude víc těch senzorů, tak už je celkem jedno kolik, tak proč neměřit všechno, co mě zajímá? Kvůli propojení mezi sklepem a vrškem dám Arduina dvě a taky vytáhnu nějaký senzor ven, pro porovnávání. Aktuální SW je uložen tady ``__ HW -------------------------------------------------------------------------------- Takže zatím to vypadá na takovouto síť senzorů: * 1 jeden nepromokavý z venku, ideálně něčím vystrčený kus od zdi a zabezpečený proti cloumání větrem (asi pár prkýnek na zeď) - připojený dírou od klimatizace k `A` "vršku" * 1 obyčejný pod střechu na verandičku * `A` síť ("vršek - obývák") * 1 u Arduina (ve výši sedící hlavy u stolu u okýnka) * 1 na stropě u kamen (v rohu, v horké kapse) * 1 na stropě u schodů (pod trámem, ať bere proudící vzduch) * 1 u dvojplošníku na zemi * 1 u stolu na zemi * 1 u kamen na zemi * 1 ve skřínce na vodovodní trubce * 1 nad baterií u hrníčků * = 8 * `A` síť ("vršek půda") * 1 pod krovem uprostřed * 1 u hlav na noze nočního stolku * 1 na zemi nad schody - mimo "teplý proud" * 1 nad schody v rohu kde není podlaha * = 4 * `B` síť ("spodek") * 1 u vodovodu na zdi vzadu * 1 u nádržky záchodu * 1 u "rozvodu vody" svislé trubky x vodorovně k bojleru * 2 vzadu (podlaha, strop) * 2 uprostřed u nedveří (podlaha, strop) * 2 vpředu u vchodových dveří (podlaha, strop) * 1 u Arduina pokud to nebude jeden viz výše * = 10 * 2x fotorezistor pro střídání dne a noci (a pro přítomnost - svícení lampou) * 2x SD karta pro logování * 2x RTC pro datum a čas * 4x tlačítko (2 červená, 2 zelená), 4xLED s odporem Taky je naprosto nutné velké červené tlačítko, které, když se zmáčkne, tak počká na ukončení aktuální operace (možná udělá zvláštní čtecí cyklus a zapíše poznámku na kartu), "odpojí SD kartu" (teda ona se vlastně odpojuje po uzavření každého souboru, ale prostě počká na dokončení zápisu), rozsvítí velkou červenou LED (a zablokuje všechny operace) , (a teď jde SD kartu vytáhnout a v počítači přečíst, zazálohovat, promazat, cokoli a zase vrátit), a potom vrátit kartu zpět, stisknout tlačítko (provede se nový "bootovací" zápis ) a měření budou pokračovat. A asi ještě jedno tlačítko a zelená LED, které ji jen přepne tam / zpět a význam je, jestli tam jsme, nebo ne a projeví se to značkou v logu `+` / `-` hned za datem Měření -------------------------------------------------------------------------------- Měřit bude asi stačit 1x za hodinu, Senzory berou něco jako 1.5 mA každý, ve srovnání s 55 mA na Arduino a ztrátami nabíječce to asi nemá cenu řešit. Zkusil jsem jich 14 "klasicky" na breadboardu a všechno chodilo, přepojil jsem to na "parasitic" a nechodilo nic - takže pojedu na jistotu. Senzory mají 8byte adresy - při startu se oskenují, spárují se souborem `/SENZORY.TXT`, případně se tam dopíšou nové, ze souboru se vezmou názvy a vypíšou se do logu `/MERrrmmA.LOG` nebo `/MERrrmmB.LOG` (rr rok (23), mm měsíc (09)) a místo indexu musím ty senzory zpracovávat podle adres (jinak, když nějaký vypadne, tak se ostatní posunou na jeho místo a pak v tom bude bordel) (a kašlu na to, jestli s tím bude mít Arduino jednou za hodinu víc počítání a pár ms navíc). Boot se zapisuje do logu `/BOOT.LOG`. Bude mě zajímat: * když tam nikdo není * průměr za A/B/vnějšek * odchylky od průměru * jsou pořád asi tak stejné, nebo něco lítá výrazně víc? * pro podobné senzory - dávají podobné hodnoty, nebo se liší? * zamrzání: * zamrzá něco výrazně dřív? * jsou nějaké nezámrzné? * kolik dní v roce je něco/všechno zamrzlé? * je běžné, že něco zamrzne jen přez noc a přez den rozmrzne? * jak moc to lítá v rámci jednoho dne? * jak moc se liší denní průměry po sobě? * a jak moc se liší odchylky od průměru v průběhu času? * když tam někdo je * jak moc se to liší od neobsazených dnů, pokud se netopí? * zadýchýní, větrání, vaření, ... * co udělá zatopení? * jak se přesouvá teplý vzduch, jak rovnoměrně se oteplí v pokoji, na půdě? * hřeje to na půdě sáláním z podlahy, nebo větráním?