Obsah:

Šetřete vodu a peníze s monitorem sprchové vody: 15 kroků (s obrázky)
Šetřete vodu a peníze s monitorem sprchové vody: 15 kroků (s obrázky)

Video: Šetřete vodu a peníze s monitorem sprchové vody: 15 kroků (s obrázky)

Video: Šetřete vodu a peníze s monitorem sprchové vody: 15 kroků (s obrázky)
Video: AOR - Šetřete vodu, čas i peníze! 2024, Červenec
Anonim
Šetřete vodu a peníze s monitorem sprchové vody
Šetřete vodu a peníze s monitorem sprchové vody
Šetřete vodu a peníze s monitorem sprchové vody
Šetřete vodu a peníze s monitorem sprchové vody
Šetřete vodu a peníze s monitorem sprchové vody
Šetřete vodu a peníze s monitorem sprchové vody
Šetřete vodu a peníze s monitorem sprchové vody
Šetřete vodu a peníze s monitorem sprchové vody

Který spotřebuje více vody - vana nebo sprcha?

Nedávno jsem přemýšlel o této otázce a uvědomil jsem si, že vlastně nevím, kolik vody se používá, když se sprchuji. Vím, že když jsem ve sprše, občas mi bloudí mysl, přemýšlím o skvělém nápadu na nové projekty nebo se pokouším rozhodnout, co si dát k snídani, zatímco voda stéká do kanalizace. Bylo by mnohem snazší snížit spotřebu vody, kdybych věděl, kolik litrů pokaždé spotřebuji!

Udělal jsem malý průzkum a zjistil jsem, že různé sprchové hlavice mohou používat kdekoli od 9,5 litru (2,5 galonu) za minutu do méně než 6 litrů (1,6 galonu) za minutu, pokud máte nainstalován omezovač průtoku. Velmi stará sprcha by mohla spotřebovat ještě více vody.

Rozhodl jsem se navrhnout a postavit zařízení, které by zobrazovalo celkový objem vody použité na sprchu, náklady na vodu a průtok. Toto zařízení mám nainstalované několik týdnů a je opravdu užitečné mít živé odečtení množství použité vody.

V tomto Instructable vysvětlím, jak jsem to postavil. Samozřejmě nemusíte přesně sledovat mé kroky! Vždy je dobré využít dílů, které máte kolem sebe. Zahrnul jsem odkazy na všechny části, které jsem použil, nebo ekvivalentní část, která bude fungovat.

Zásoby

(Všechny ceny v USD)

  • Průtokový senzor - 3,87 $
  • LCD obrazovka - 2,29 $
  • Arduino Nano - 1,59 $
  • Boost Converter - 1,88 $
  • Nabíječka LiPo - 1,89 USD
  • Vodotěsný kolébkový přepínač - 0,93 $ (ne přesně ten, který jsem použil, ale měl by fungovat)
  • Vodotěsné tlačítko - 1,64 $
  • Distanční sloupky, šrouby a matice M3 - 6,99 $
  • 2 x 3,5 mm jack - 2,86 USD
  • Zástrčka 3,5 mm - 1,48 USD
  • Sestava kabelu 3,5 mm 3 ' - 3,57 $
  • Sestava kabelu USB - 1,74 $
  • 1/2 "NPS spojka žena-žena-1,88 USD
  • 500mAh 3,7V LiPo baterie - 3,91 $

Nástroje a běžné zásoby

  • Páječka a páječka
  • Drát
  • Nůžky na drát
  • Odizolovače drátu
  • Oboustranná páska
  • Phillips šroubovák
  • 3D tiskárna (volitelně)

Krok 1: Hydroizolace

Hydroizolace
Hydroizolace

Nejtěžším aspektem tohoto projektu je udělat celou věc vodotěsnou. Vzhledem k tomu, že bude pobývat ve sprše, musí být schopen přežít extrémní vlhkost a občasné stříkání. Asi 75% z celkového času stráveného na tomto projektu bylo vyřešení této části.

Vidím to tak, že mám dvě možnosti: navrhnout vlastní 3D vytištěný kryt nebo se pokusit zajistit, aby fungoval s běžným pouzdrem. Protože jsem nedávno dostal vlastní 3D tiskárnu, rozhodl jsem se jít s první možností.

Pokud nemáte přístup k 3D tiskárně, zde jsou některé běžné skříně, o kterých jsem zjistil, že jsou vodotěsné a pravděpodobně by fungovaly. Vezměte prosím na vědomí, že jsem nezakoupil ani jeden z těchto krytů, takže neručím za to, že se všechny komponenty vejdou dovnitř!

Banggood - krabice 100x68x50mm s průhledným víkem - 5,35 $

Digikey - krabice 130x80x70mm s průhledným víkem - 11,65 $

V tomto bodě, když mluvím o krytu, mluvím o svém 3D tištěném.

Krok 2: Moje vlastní 3D tištěná příloha

Moje vlastní 3D tištěná příloha!
Moje vlastní 3D tištěná příloha!
Moje vlastní 3D tištěná příloha!
Moje vlastní 3D tištěná příloha!
Moje vlastní 3D tištěná příloha!
Moje vlastní 3D tištěná příloha!

Poté, co jsem pracoval několik hodin ve Fusion 360, jsem přišel s touto přílohou. Má tři kruhové výřezy, do kterých se vejdou dva 3,5mm jacky a jeden přepínač. Víko má 16mm otvor pro momentální tlačítko a obdélníkový výřez pro obrazovku, stejně jako čtyři montážní otvory pro držení obrazovky na svém místě. Víko je samostatná část a má okraj, který pomáhá zabránit pronikání vlhkosti přes šev. Čtyři otvory v rozích krabice mají držet víko pomocí 30mm podpěr. Všechny otvory pro šrouby mají průměr 3 mm, což odpovídá šroubu M3.

Soubory STL si můžete stáhnout z mé stránky Thingiverse. Lze jej tisknout bez raftů nebo podpěr, ale pro jistotu jsem použil podpěry. Také jsem použil 100% výplň. Vzhledem k tomu, že stěny jsou tak tenké, snížení procenta výplně ve skutečnosti nezmění celkovou dobu tisku ani celkový materiál, takže jsem to nechal na 100%.

Aby byla obrazovka viditelná, mohla buď vyčnívat přes výřez ve víku skříně, nebo být umístěna za průhledným oknem. Vzhledem k tomu, že obrazovka by neměla být vystavena vlhkosti, zůstáváme u druhé možnosti. 3D tisk s průhledným vláknem je bohužel stále v plenkách, takže budeme muset být trochu kreativní.

Moje řešení bylo vytvořit ve víku obdélníkový výřez a přilepit kousek průhledného plastu z nějakého zeleninového obalu. Tuto techniku lze použít, i když nepoužíváte můj vlastní kryt; jednoduše vystřihněte obdélník užitkovým nožem nebo Dremelem. Samozřejmě, pokud používáte kryt s průhledným víkem, není to vůbec potřeba.

Nejlepší zdroj transparentního plastu, který jsem našel, je výroba obalů. Špenát nebo jiná listová zelenina se obvykle dodává ve velkých průhledných plastových nádobách. V mém případě jsem použil obal z „pepřové směsi“.

Chtěl jsem přesah 5 mm, aby měl dostatek povrchové plochy pro lepení, a tak jsem vystřihl obdélník 27x77 mm z čirého plastu. Musel jsem trochu oříznout rohy, aby šrouby zapadly. Po obvodu výřezu jsem vystříkl řadu superlepidla a pak jsem na něj umístil čirý plast. Poté, co jsem se ujistil, že je zapečetěný, jsem přidal trochu více lepidla kolem okraje.

Pro-Tip: Umístěte díl před malý ventilátor, zatímco lepidlo schne. Jak superglue schne, má tendenci po sobě zanechávat odporné bílé zbytky, což na průhledném okně rozhodně nechceme. Použil jsem starý ventilátor 12V z napájecího zdroje počítače. Nechal jsem lepidlo odležet 12 hodin, abych se ujistil, že je úplně suché.

Krok 3: Montáž obrazovky LCD

Montáž obrazovky LCD
Montáž obrazovky LCD
Montáž obrazovky LCD
Montáž obrazovky LCD
Montáž obrazovky LCD
Montáž obrazovky LCD

Jakmile průhledné okno zaschne, lze LCD namontovat. LCD je velmi populární 16x2 znakový displej s „batohem“I²C předpájeným na zadní straně. Důrazně doporučuji získat tuto obrazovku s rozhraním I²C. Zapojení všech paralelních vedení je docela otravné a přináší větší potenciál pro chyby - verze I²C má pouze dva vodiče pro napájení a dva vodiče pro signál.

K montáži obrazovky jsem použil čtyři 10mm stojky. Distanční sloupky mají na jednom konci vnější závit a na druhém vnitřní závit. Vložil jsem vnější závit skrz otvory v LCD a na každý z nich utáhl matici M3. Poté jsem pomocí čtyř šroubů M3 zajistil vnitřní konce distančních sloupků víkem krytu. Dostal jsem tento balíček distančních podložek, které mají 10mm ty pro upevnění LCD a delší držáky víka k základně. Navíc jsou zde šrouby a matice M3, takže nemusíte kupovat žádný další hardware.

Ujistěte se, že jsou matice velmi těsné, aby se při dotahování šroubů patky neotáčely. Dbejte také na to, abyste šrouby příliš neutáhli, jinak by se plastové víko mohlo zdeformovat a řádně netěsnit.

Řada 16 kolíků záhlaví na displeji LCD by měla být nahoře - ujistěte se, že nemontujete displej LCD vzhůru nohama!

Krok 4: Montáž momentálního tlačítka

Montáž momentálního tlačítka
Montáž momentálního tlačítka
Montáž momentálního tlačítka
Montáž momentálního tlačítka
Montáž momentálního tlačítka
Montáž momentálního tlačítka

Rozhodl jsem se použít toto špatně vypadající chromové tlačítko na předním panelu. Použil jsem je v předchozích projektech a moc se mi líbí, jak vypadají. Měly by být vodotěsné a jsou dodávány s gumovým kroužkem, aby se zabránilo vniknutí vlhkosti do pouzdra přes závity.

Tento krok je docela přímočarý. Odšroubujte matici, ale ponechte gumový kroužek. Vložte knoflík otvorem ve víku a utáhněte matici ze zadní strany. Vyvarujte se nadměrného utahování matice, jinak bude gumový kroužek rozdrcen a nesplní svůj účel.

Krok 5: Obvod napájení a nabíjení

Napájecí a nabíjecí obvod
Napájecí a nabíjecí obvod
Napájecí a nabíjecí obvod
Napájecí a nabíjecí obvod
Napájecí a nabíjecí obvod
Napájecí a nabíjecí obvod

Nyní dáme dohromady součásti napájení z baterie. To zahrnuje baterii, hlavní spínač, monitorovací/nabíjecí desku baterie a převodník zesílení.

Baterie, kterou jsem použil, je lithium-iontová baterie 3,7 V 1 500 mAh. Konkrétní, který jsem použil, byl stažen z rozbitého ovladače Playstation. Každá jednočlánková Li-Ion nebo LiPo baterie bude fungovat, pokud se vejde do vaší skříně. Tento typ baterie bývá velmi tenký a plochý, takže byste pravděpodobně mohli bez problémů použít jednu dvakrát větší než ta moje. Buňka 18650 by fungovala, ale nevejde se do mé vlastní skříně, takže si budete muset navrhnout vlastní nebo použít skříň z krabice. Pokud je to možné, doporučuji použít zachráněnou baterii (jako já), protože doprava baterií je často drahá!

Baterie by měla být nejprve připájena k nabíjecí desce TP4056. Pokud chcete, můžete pro pohodlí připájet konektor JST RCY k baterii a nabíječce (udělal jsem to), ale není to nutné. Dbejte na správnou polaritu podle označení na desce nabíječky, protože deska není chráněna proti přepólování baterie!

Dále připájejte vodič z kladného výstupu nabíječky (umístěný vedle kladného vodiče baterie) na kladný vstup v převodníku posilovače. Poté připájejte vodič ze záporného výstupu (umístěný vedle záporného vodiče baterie) ke společnému (střednímu) kolíku hlavního přepínače. Nakonec připájejte vodič z normálně otevřeného pinu přepínače k zápornému vstupu převodníku zesilovače. Pokud připojíte multimetr k výstupu zesilovače a zapnete hlavní spínač, mělo by se zobrazit napětí.

Protože naše Arduino, LCD obrazovka a snímač průtoku potřebují 5V, musíme nastavit výstup zesilovače na 5V. Toho docílíme otáčením knoflíku na potenciometru malým šroubovákem. Když je hlavní vypínač zapnutý, baterie připojena a multimetr připojen k výstupu zesilovače, pomalu otáčejte potenciometrem, dokud výstup neuvede 5V. Bude obtížné získat hodnotu přesně 5 000 V, ale zaměřte se na napětí mezi 4,9 V a 5,1 V.

Vzhledem k tomu, že můj vlastní kryt je držen zavřený několika šrouby, nechceme muset pouzdro otevírat pokaždé, když je potřeba jej nabít. K tomu jsem použil 3,5 mm konektor pro sluchátka. Přesný konektor, který jsem použil, je tento od společnosti Digikey (pro který jsou dimenzovány výřezy v mém krytu), ale tento od Banggood by měl také fungovat.

Nejprve jsem vložil konektor do nejspodnějšího otvoru v krytu. Vzhledem k tomu, že toto bude po většinu času odpojeno, a proto náchylné k pronikání vlhkosti, je nejlepší jej namontovat na dno, aby voda nemohla kapat dovnitř. Po instalaci pojistné podložky a utažení matice jsem připájel dva dráty k jazýčkům „hrot“a „rukáv“na konektoru. Vývod konektoru je zobrazen na jednom z mých komentovaných obrázků. Druhý konec „objímkového“vodiče jsem připájel k zápornému vstupu na nabíječce vedle portu micro USB. Nakonec jsem „špičkový“vodič připájel k podložce +5V na druhé straně portu USB. USB port na nabíječce nebude použit, protože by bylo obtížné nechat port USB proniknout do skříně, aniž by dovnitř vnikla vlhkost.

Krok 6: Nabíjecí kabel

Nabíjecí kabel
Nabíjecí kabel
Nabíjecí kabel
Nabíjecí kabel
Nabíjecí kabel
Nabíjecí kabel

Vzhledem k tomu, že jako nabíjecí port používáme 3,5mm audio konektor, musíme vyrobit adaptérový kabel, který má na jednom konci zástrčku 3,5 mm a na druhém konci konektor USB A. To nám umožní použít k nabíjení tohoto zařízení jakoukoli obecnou nabíječku mobilních zařízení (například nabíječku pro iPhone).

Dalo by se koupit sestavu kabelu USB s konektorem USB A na jednom konci a pocínovanými dráty na druhém konci, ale pokud jste jako já, pravděpodobně se vám povaluje tucet náhodných kabelů USB, které nepotřebujete. Místo nákupu sestavy kabelu USB jsem dostal kabel micro USB na USB A, který jsem nepotřeboval, a odřízl konektor micro USB.

Dále jsem svlékl bílý plášť z kabelu a odhalil uvnitř pouze dva dráty: červený a černý vodič. Některé kabely USB budou mít čtyři vodiče: červený, černý, zelený a bílý. Zelená a bílá jsou pro přenos dat a lze je ignorovat. Izolujte pouze z červeného a černého vodiče.

Dále budete potřebovat zástrčku 3,5 mm. Použil jsem ten od Banggood. Červený vodič z kabelu USB připájejte ke střednímu jazýčku (což je špička konektoru) a černý vodič k poutku s dlouhým rukávem. Pro upřesnění viz moje fotografie.

Doporučuji vždy zapojit 3,5 mm zástrčku před USB zástrčku, protože proces připojení kabelu by mohl způsobit zkrat na kovovou zásuvku.

Krok 7: O snímači průtoku

O čidle průtoku
O čidle průtoku
O čidle průtoku
O čidle průtoku
O čidle průtoku
O čidle průtoku
O čidle průtoku
O čidle průtoku

Zvedl jsem tento snímač průtoku od Banggood za 3,87 $. Před použitím jsem se rozhodl prozkoumat, jak to funguje.

Design je překvapivě jednoduchý a důmyslný. Elektronika je zcela utěsněna před vodou. K dispozici je volně rotující vrtule, která se otáčí pomaleji nebo rychleji v závislosti na průtoku. V jednom bodě vrtule je magnet. Na vnější straně senzoru je malá přihrádka, která obsahuje malou desku plošných spojů se dvěma komponentami: odporem a snímačem s Hallovým efektem. Pokaždé, když magnet projde senzorem s Hallovým efektem, přepíná mezi vysokým a nízkým. Jinými slovy, přepíná mezi 5 V a 0 V při každém otáčení vrtule.

Pro čtení senzoru aplikujeme +5V na červený vodič, záporný na černý vodič a čteme digitální signál ze žlutého vodiče. Na fotografii mého osciloskopu můžete vidět, jak se signál mění se zapnutým tokem. Zpočátku je signál neustále nulový. Když tok začne, frekvence pulsů se rychle zvýší a dosáhne ustáleného stavu.

Podle datového listu vydává senzor 450 pulzů na litr. To bude důležité později při psaní softwaru.

Krok 8: Zapojení snímače průtoku

Zapojení snímače průtoku
Zapojení snímače průtoku
Zapojení snímače průtoku
Zapojení snímače průtoku
Zapojení snímače průtoku
Zapojení snímače průtoku
Zapojení snímače průtoku
Zapojení snímače průtoku

Průtokový senzor je dodáván s 3pólovým konektorem JST-XH. To není ideální, protože vodiče jsou příliš krátké a konektor má odkryté kontakty, které lze snadno zkratovat rozptýlenými kapičkami vody. Objednal jsem si tuto sestavu 3,5 mm audio konektoru od společnosti Digikey. Je 3 'dlouhý, což je perfektní délka, a má pocínované dráty, což usnadňuje pájení. Nedoporučuji zkoušet použít starý kabel sluchátek, protože ty mají obvykle velmi tenký smaltovaný drát, který je téměř nemožné pájet.

Průtokový senzor má plastový kryt, přidržovaný dvěma šrouby Phillips. Jednoduše odstraňte tyto šrouby a vytáhněte desku s obvody. Není drženo žádným lepidlem, je pouze drženo na místě pomocí plastového víka. Poté odškrtněte tři dráty tak, že je zahřejete páječkou a postupně je zvednete.

Dále připájejte 3,5 mm audio kabel k podložkám. Navrhuji sladit barvy tak, jak jsem to udělal. Tato konfigurace má na špičce +5V, signál na prstenu a zem na pouzdru. Toto je stejná konfigurace, jaká byla použita pro nabíjecí port, od kroku 6. Pokud omylem zapojíte nabíječku do portu senzoru nebo naopak, nedojde k žádnému poškození zařízení.

Krok 9: Instalace snímače průtoku

Instalace snímače průtoku
Instalace snímače průtoku
Instalace snímače průtoku
Instalace snímače průtoku
Instalace snímače průtoku
Instalace snímače průtoku

Až do tohoto bodu probíhala veškerá naše práce v dílně. Ale teď je čas vyrazit na záchod!

Nejprve jsem odstranil sprchovou hlavici. To odhalilo krátký kousek trubky vyčnívající ze zdi, s vnějším závitem 1/2 NPS. Náš snímač průtoku má pohodlně přesně stejnou velikost závitu! Jediným problémem je, že snímač má na obou koncích vnější závit, takže budeme potřebují spojení žena-žena.

V mém místním železářství byly 1/2 spojky z mosazi, železa a PVC. Ta PVC byla nejlevnější, takže jsem ji dostal. I když zpětně by ty mosazné nebo ocelové vypadaly hezčí.

Jakmile máte spojku, jednoduše našroubujte snímač průtoku do spojky a druhý konec spojky našroubujte na trubku. Průtokový snímač má šipku, která označuje zamýšlený směr proudění. Ujistěte se, že jej neinstalujete zpět, jinak by měření mohla být nepřesná. Nakonec našroubujte sprchovou hlavici na konec průtokového senzoru.

Samozřejmě předpokládám, že vaše sprcha používá 1/2 NPS závit, jako můj. Pokud tomu tak není, budete muset získat další adaptéry.

Pro-Tip: Před sešroubováním kusů přidejte do všech závitů teflonovou instalatérskou pásku, aby nedošlo k úniku. Neměl jsem žádné po ruce, ale plánuji to v blízké budoucnosti přidat.

Krok 10: Arduino a Perfboard

Arduino a Perfboard
Arduino a Perfboard
Arduino a Perfboard
Arduino a Perfboard
Arduino a Perfboard
Arduino a Perfboard

Vzhledem k tomu, že budeme muset hodně zapojit, je dobré si pořídit kousek prkna, aby byly věci o něco uklizenější. Vystřihl jsem obdélník z perfboardu asi 1 "o 2". Dále jsem umístil Arduino Nano doprostřed desky a označil, kudy prošly kolíky záhlaví. Poté jsem nařezal dvě délky samičích hlaviček, z nichž každá měla 15 pinů. Pájel jsem je na perfboard, kde jsem předtím označil. To nám umožní odstranit Arduino pro programování.

Pro-Tip: Označte orientaci USB portu Arduina, abyste jej vždy zapojili do perfboardu stejným způsobem.

Krok 11: Zapojení všeho

Zapojení všeho
Zapojení všeho
Zapojení všeho
Zapojení všeho
Zapojení všeho
Zapojení všeho

Nyní je čas vše pájet dohromady! Zahrnul jsem kompletní schéma zapojení, které můžete sledovat, nebo pokud dáváte přednost více vedenému přístupu, podívejte se na mé níže uvedené kroky.

Nejprve jsem nařezal pár kolíků samčích hlaviček a připájel je na perfboard na +5V a zemní lišty. Poté jsem připájel dva další kolíkové záhlaví spojené s piny A4 a A5 na Arduinu. Tyto záhlaví nám umožní připojit LCD obrazovku pomocí propojek žena-žena.

Dále jsem připájel pár vodičů z výstupu zesilovače na +5V a zemnící lišty. To zajistí napájení Arduina, LCD a snímače průtoku.

Poté jsem přestřihl dva vodiče a připojil je ke svorkám tlačítka. Jeden vodič jsem připájel k zemnicí liště a druhý k digitálnímu pinu 3.

Poslední částí k pájení je snímač průtoku. Protože jsme k senzoru již připojili 3,5 mm konektor, stačí připájet 3,5 mm zásuvku. Nejprve jsem připájel tři dráty - jeden ke každému z výstupků na konektoru. Potom jsem zvedák zasunul skrz skříň a zajistil na místě maticí. Nakonec jsem pouzdro připájel k zemi, hrot na +5V a prsten na digitální pin 2.

Rozhodl jsem se použít digitální kolíky 2 a 3 pro tlačítko a snímač průtoku, protože jsou to hardwarové přerušení. Díky tomu bude psaní kódu mnohem snazší.

Nyní jsme pájení dokončili, ale stále musíme připojit LCD. Protože jsme pájili záhlaví, potřebujeme jen čtyři propojky mezi ženami a ženami. Připojte kolík „Vcc“na +5 V, kolík „Gnd“k zemi, kolík „SCL“k A5 a kolík „SDA“k A4. Aby se obrazovka LCD vešla do skříně, musíme ohnout kolíky záhlaví dozadu. Několikanásobné ohnutí kolíků dopředu a dozadu způsobí únavu kovu a zlomení kolíků, proto doporučuji ohýbat pouze jednou a dělejte to opatrně.

Nyní je zapojení dokončeno!

Krok 12: Programování

Programování
Programování

Nyní, když je hardware připojen, můžeme naprogramovat Arduino.

Chci, aby program měl následující funkce:

  • Na prvním řádku zobrazte rychle se aktualizující počet celkových litrů
  • Na druhém řádku zobrazte celkové náklady na vodu nebo průtok
  • Když je sprcha spuštěna, tlačítko přepíná mezi zobrazením ceny nebo průtoku
  • Když sprcha neběží, tlačítko by mělo vymazat všechna data a resetovat obrazovku
  • Čidlo by mělo být čteno pomocí rutiny přerušení, aby se zabránilo metodám hrubého dotazování
  • Při aktualizaci obrazovky bychom měli aktualizovat pouze hodnoty, které se změnily, než přepisovat celou obrazovku pokaždé (to by způsobilo znatelné blikání)

Program má jednoduchou strukturu. Pomocí funkce millis () můžeme vytvořit zpoždění, která ve skutečnosti nezastaví provádění programu. V tomto tutoriálu najdete příklad blikání LED bez použití funkce delay ().

Funkce millis () vrací počet milisekund od zapnutí Arduina. Vytvořením proměnné „previousMillis“a odečtením Millis () - previousMillis () můžeme vidět uplynulý čas od aktualizace předchozíMillis.

Pokud chceme, aby se něco dělo jednou za sekundu, můžeme použít následující blok kódu:

if ((millis () - previousMillis)> = 1000) {

previousMillis = millis (); toggleLED (); }

Toto zkontroluje, zda je rozdíl mezi millis () (aktuální čas) a previousMillis (poslední čas) větší nebo rovný 1000 milisekundám. Pokud ano, první věc, kterou uděláme, je nastavit předchozí Millis na aktuální čas. Poté provedeme jakékoli další kroky, které chceme. V tomto případě přepínáme LED. Poté opustíme tento blok kódu a dokončíme zbytek funkce loop (), než se vrátíme na začátek a vše znovu zopakujeme.

Výhodou použití této metody oproti jednoduché funkci delay () je, že delay () vloží mezi instrukce časový odstup, ale nezohledňuje čas potřebný k provedení ostatních instrukcí ve funkci loop (). Pokud děláte něco, co trvá déle, než jen blikáním LED, například aktualizujete LCD obrazovku, doba, kterou zabere, není zanedbatelná a po několika cyklech se sčítá. Pokud aktualizujete obrazovku LCD na hodinách, rychle by se stala nepřesnou a zaostala.

Nyní, když chápeme celkovou strukturu programu, je čas vložit pokyny. Než vysvětlovat každý jednotlivý řádek kódu zde, navrhuji, abyste si nejprve přečetli přiložený vývojový diagram, který poskytuje přehled na vysoké úrovni o tom, co program dělá.

Jakmile uvidíte vývojový diagram, podívejte se na přiložený kód Arduino. Komentoval jsem téměř každý řádek, aby bylo jasné, co každý řádek dělá.

V kódu je několik částí, které byste mohli chtít změnit. Nejdůležitější jsou náklady na litr. V mém městě stojí voda 0,2523 ¢ za litr. Vyhledejte následující řádek a změňte tuto hodnotu tak, aby odpovídala nákladům, ve kterých žijete:

const float COST_PER_LITRE = 0,2523; // cena za litr, v centech, z webových stránek města

Pokud dáváte přednost použití galonů nad litry, změňte všechny řádky „LCD.print ()“, které odkazují na „L“nebo „L/s“na „G“nebo „G/s“. Poté odstraňte následující řádek:

const float CONVERSION = 450,0; // toto nechejte nekomentované na litry

… A odkomentujte tento řádek:

const float CONVERSION = 1703,0; // odkomentujte to a odstraňte výše uvedený řádek pro galony

V mém kódu jste si možná všimli ještě jedné zvláštnosti. Výchozí znaková sada neobsahuje znak „¢“a nechtěl jsem používat dolary, protože náklady se po většinu času zobrazují jako „0,01 USD“nebo méně. Proto jsem byl nucen vytvořit vlastní postavu. K reprezentaci tohoto symbolu se používá následující bajtové pole:

byte cent_sign = {B00100, B00100, B01111, B10100, B10100, B01111, B00100, B00100};

Po vytvoření tohoto pole musí být speciální znak „vytvořen“a uložen.

lcd.createChar (0, cent_sign);

Jakmile to bude hotové, pro tisk vlastního znaku použijeme následující řádek:

lcd.write (byte (0)); // tisk centů (¢)

LCD může mít až 8 vlastních znaků. Více informací o tom je zde. Také jsem narazil na tento užitečný online nástroj, který vám umožní nakreslit vlastní znak pomocí grafického rozhraní a automaticky vygeneruje vlastní bajtové pole.

Krok 13: Zavření víka

Zavření víka
Zavření víka
Zavření víka
Zavření víka
Zavření víka
Zavření víka

Konečně jsme téměř u konce!

Je čas nacpat veškerou elektroniku do skříně a doufat, že se víko zavře. Nejprve však musíme připevnit 30mm distanční sloupky. Balíček distančních sloupků, které jsem koupil, neobsahuje žádné tak dlouhé, ale přichází s 20 mm a 10 mm, které lze spojit dohromady. Zašrouboval jsem čtyři distanční sloupky do otvorů ve spodní části skříně čtyřmi šrouby M3 (viz obrázky 1 a 2). Určitě je utáhněte bezpečně, ale ne příliš pevně, jinak riskujete rozbití plastového krytu.

Nyní můžeme dovnitř vejít veškerou elektroniku. Nabíječku a převodník posilovače jsem připevnil k víku oboustrannou páskou, jak je vidět na třetím obrázku. Poté jsem omotal elektrickou pásku kolem odhaleného kovu na dvou 3,5mm konektorech, abych zajistil, že se kontaktem konektorů nic nezkratuje.

Arduino jsem dokázal přizpůsobit tak, že jsem jej umístil na bok, do levého dolního rohu, a jeho port USB směřoval doprava. Použil jsem více oboustrannou pásku k zajištění baterie ve spodní části krytu pod obrazovkou LCD.

Nakonec, jakmile je vše více či méně bezpečně zaseknuto v krabici, lze víko přišroubovat dalšími čtyřmi šrouby M3.

Krok 14: Testování

Testování
Testování
Testování
Testování
Testování
Testování
Testování
Testování

Nejprve zapojte 3,5 mm konektor ze snímače průtoku. Doporučuji to provést před zapnutím zařízení, protože je možné, že zástrčka při vkládání vytvoří nežádoucí připojení.

Dále zapněte hlavní vypínač. I když neteče voda, tlačítko na předním panelu by nemělo dělat nic jiného než vymazat součet a vyčistit obrazovku. Vzhledem k tomu, že součet bude ve výchozím nastavení nulový, tlačítko zatím nic nezobrazí.

Pokud zapnete sprchu, celková částka by se měla začít zvyšovat. Ve výchozím nastavení se zobrazí cena. Pokud stisknete tlačítko na předním panelu, průtok se zobrazí ve spodním řádku. Stisknutím tlačítka na předním panelu přepnete mezi zobrazením průtoku a zobrazením nákladů, pokud je sprcha spuštěna. Jakmile se sprcha zastaví, stisknutím tlačítka na předním panelu resetujete měření a vymažete obrazovku.

Montáž

Jak se rozhodnete zařízení namontovat, závisí na rozložení vaší sprchy. Některé sprchy mohou mít římsu dostatečně blízko sprchové hlavice, abyste tam jednoduše umístili zařízení. Ve své sprše mám koš připevněný přísavkami, do kterých jsem umístil zařízení. Pokud nemáte luxus římsy nebo koše, můžete zkusit držet zařízení u zdi pomocí oboustranné přísavky. To bude fungovat pouze v případě, že používáte standardní skříň s hladkým podkladem nebo vytisknete můj vlastní kryt na tiskárně se skleněnou deskou. Pokud má váš kryt hrubý podklad (jako můj), můžete zkusit použít oboustrannou pásku, ačkoli to může zanechat nějaké zbytky na stěně sprchy, pokud se pokusíte zařízení odebrat.

Odstraňování problémů

Obrazovka je zapnutá, ale podsvícení je vypnuté - ujistěte se, že je propojka nainstalována na dvou pinech na straně modulu I ² C

Obrazovka je prázdná se zapnutým podsvícením - pomocí skeneru I²C zkontrolujte, zda je adresa I ² C správná

Obrazovka je zapnutá, ale hodnoty zůstávají nulové - měřením napětí na pinu 2 zkontrolujte, zda ze snímače pochází signál. Pokud není signál, zkontrolujte, zda je snímač správně připojen.

Obrazovka je prázdná s vypnutým podsvícením - zkontrolujte, zda LED dioda napájení na Arduinu svítí, a zkontrolujte, zda je obrazovka napájena

Obrazovka se krátce zapne, pak se vše zastaví - pravděpodobně jste nastavili příliš vysoké napětí z posilovacího převodníku (součásti nezvládnou více než 5 V)

Zařízení funguje, ale hodnoty jsou špatné - ujistěte se, že snímač průtoku, který používáte, má stejný převodní faktor 450 impulzů na litr. Různé senzory mohou mít různé hodnoty.

Krok 15: Nyní začněte šetřit vodou

Vylepšení

Aktuální verze softwaru funguje dostatečně dobře, ale nakonec bych rád přidal možnost mít různé uživatele (členy rodiny, spolubydlící atd.) Zařízení by ukládalo statistiky každé osoby (celková voda a celkový počet sprch) do zobrazit průměrnou spotřebu vody pro každou osobu. To by mohlo povzbudit lidi, aby soutěžili v používání co nejmenšího množství vody.

Bylo by také skvělé mít způsob, jak exportovat data, která se mají zobrazit v tabulce, aby je bylo možné graficky znázornit. Pak jste mohli vidět, jaká roční období mají lidé častější a delší sprchy.

Všechny tyto funkce by vyžadovaly použití EEPROM-vestavěné energeticky nezávislé paměti Arduina. To by umožnilo uchování dat i po vypnutí zařízení.

Další užitečnou funkcí by byl indikátor baterie. Právě teď je jediným náznakem, že je třeba zařízení dobít, když deska pro správu baterie vypne napájení. Bylo by snadné připojit další analogový vstup pro měření napětí baterie. Dělič napětí by ani nebyl potřeba, protože napětí baterie je vždy nižší než 5V.

Některé z těchto myšlenek hraničí s dotvarováním funkcí, a proto jsem software dále nevyvíjel.

Zbytek je na tobě!

Soutěž senzorů
Soutěž senzorů
Soutěž senzorů
Soutěž senzorů

První cena v soutěži Senzory

Doporučuje: