Obsah:

Šetrite vodu a peniaze pomocou monitora sprchovej vody: 15 krokov (s obrázkami)
Šetrite vodu a peniaze pomocou monitora sprchovej vody: 15 krokov (s obrázkami)

Video: Šetrite vodu a peniaze pomocou monitora sprchovej vody: 15 krokov (s obrázkami)

Video: Šetrite vodu a peniaze pomocou monitora sprchovej vody: 15 krokov (s obrázkami)
Video: Семья из Латвии переехала в Россию на постоянное место жительсктва. 2024, Júl
Anonim
Šetrite vodu a peniaze s monitorom sprchovej vody
Šetrite vodu a peniaze s monitorom sprchovej vody
Šetrite vodu a peniaze s monitorom sprchovej vody
Šetrite vodu a peniaze s monitorom sprchovej vody
Šetrite vodu a peniaze s monitorom sprchovej vody
Šetrite vodu a peniaze s monitorom sprchovej vody
Šetrite vodu a peniaze s monitorom sprchovej vody
Šetrite vodu a peniaze s monitorom sprchovej vody

Ktorý spotrebuje viac vody - vaňa alebo sprcha?

Nedávno som premýšľal nad touto otázkou a zistil som, že vlastne neviem, koľko vody sa používa, keď sa sprchujem. Viem, že keď som v sprche, niekedy mi blúdi myseľ, premýšľam nad skvelým nápadom na nové projekty alebo sa pokúšam rozhodnúť, čo si dať na raňajky, zatiaľ čo voda steká odtokom. Bolo by oveľa jednoduchšie znížiť spotrebu vody, keby som skutočne vedel, koľko litrov spotrebujem zakaždým!

Urobil som malý prieskum a zistil som, že rôzne sprchové hlavice môžu používať kdekoľvek od 9,5 litra (2,5 galónu) za minútu do menej ako 6 litrov (1,6 galónu) za minútu, ak máte nainštalovaný obmedzovač prietoku. Veľmi stará sprcha by mohla použiť ešte viac vody.

Rozhodol som sa navrhnúť a zostrojiť zariadenie, ktoré by zobrazovalo celkový objem vody použitej na sprchu, náklady na vodu a prietok. Toto zariadenie mám nainštalované niekoľko týždňov a je skutočne užitočné mať naživo odčítané množstvo spotrebovanej vody.

V tomto návode vysvetlím, ako som to postavil. Samozrejme, nemusíte presne nasledovať moje kroky! Vždy je dobré využiť súčiastky, ktoré máte poruke. Zahrnul som odkazy na všetky diely, ktoré som použil, alebo ekvivalentnú časť, ktorá bude fungovať.

Zásoby

(Všetky ceny v USD)

  • Prietokový senzor - 3,87 dolára
  • LCD obrazovka - 2,29 dolárov
  • Arduino Nano - 1,59 dolára
  • Boost Converter - 1,88 dolára
  • Nabíjačka LiPo - 1,89 dolára
  • Vodotesný prepínač - 0,93 dolára (nie je to presne ten, ktorý som použil, ale mal by fungovať)
  • Vodotesné tlačidlo - 1,64 dolára
  • Vzpery, skrutky a matice M3 - 6,99 dolárov
  • 2 x 3,5 mm jack - 2,86 dolára
  • Samec 3,5 mm zástrčka - 1,48 USD
  • Zostava 3 mm kábla 3,5 mm - 3,57 dolárov
  • Zostava kábla USB - 1,74 dolárov
  • 1/2 "spojka NPS žena-žena-1,88 dolárov
  • 500mAh 3,7V LiPo batéria - 3,91 dolára

Nástroje a bežný materiál

  • Spájkovačka a spájkovačka
  • Drôt
  • Strihač káblov
  • Odizolovače drôtov
  • Obojstranná lepiaca páska
  • Skrutkovač Phillips
  • 3D tlačiareň (voliteľné)

Krok 1: Hydroizolácia

Vodeodolný
Vodeodolný

Najťažším aspektom tohto projektu je urobiť celú vec vodotesnou. Pretože bude bývať v sprche, musí byť schopný prežiť extrémnu vlhkosť a občasné striekanie. Túto časť riešilo asi 75% z celkového času stráveného na tomto projekte.

Ako to vidím ja, existujú dve možnosti: navrhnúť vlastnú 3D tlačenú skriňu alebo sa pokúsiť dosiahnuť, aby fungovala s bežnou skriňou. Keďže som nedávno dostal vlastnú 3D tlačiareň, rozhodol som sa ísť pre prvú možnosť.

Ak nemáte prístup k 3D tlačiarni, tu je niekoľko bežných skríň, o ktorých som zistil, že sú vodotesné a pravdepodobne budú fungovať. Upozorňujeme, že som si nekúpil ani jeden z týchto boxov, takže neručím za to, že sa všetky diely zmestia dovnútra!

Banggood - krabica 100x68x50mm s priehľadným vekom - 5,35 dolára

Digikey - škatuľka s rozmermi 130 x 80 x 70 mm a priehľadným vekom - 11,65 dolára

V tomto bode, keď hovorím o kryte, hovorím o svojom 3D tlačenom.

Krok 2: Moja vlastná 3D tlačená príloha

Moja vlastná 3D tlačená príloha!
Moja vlastná 3D tlačená príloha!
Moja vlastná 3D tlačená príloha!
Moja vlastná 3D tlačená príloha!
Moja vlastná 3D tlačená príloha!
Moja vlastná 3D tlačená príloha!

Po niekoľkohodinovej práci vo Fusion 360 som prišiel s týmto krytom. Má tri kruhové výrezy, ktoré sa hodia na dva 3,5 mm jack konektory a jeden prepínač. Veko má 16 mm otvor pre okamžité tlačidlo a obdĺžnikový výrez pre obrazovku, ako aj štyri montážne otvory, ktoré držia obrazovku na svojom mieste. Veko je samostatná časť a má okraj, ktorý zabraňuje vnikaniu vlhkosti cez šev. Štyri otvory v rohoch škatule majú držať veko s 30 mm dištanciami. Všetky otvory pre skrutky majú priemer 3 mm, ktoré zodpovedajú skrutke M3.

Súbory STL si môžete stiahnuť z mojej stránky Thingiverse. Dá sa vytlačiť bez akýchkoľvek pltí alebo podpier, ale pre istotu som použil podpery. Použil som aj 100% výplň. Keďže steny sú také tenké, zníženie percenta výplne v skutočnosti nemení celkový čas tlače ani celkový materiál, takže som ho nechal na 100%.

Aby bola obrazovka viditeľná, mohla buď vyčnievať cez výrez vo veku krytu, alebo byť umiestnená za priehľadným oknom. Pretože by obrazovka nemala byť vystavená vlhkosti, zostali sme pri druhej možnosti. 3D tlač s priehľadným vláknom je bohužiaľ stále v plienkach, takže budeme musieť byť trochu kreatívni.

Moje riešenie bolo vytvoriť vo veku obdĺžnikový výrez a prilepiť kúsok priehľadného plastu z nejakého obalu od zeleniny. Túto techniku je možné použiť aj vtedy, ak nepoužívate moju vlastnú prílohu; jednoducho vyrežte obdĺžnik pomocou noža alebo Dremel. Samozrejme, ak používate kryt s priehľadným vekom, nie je to vôbec potrebné.

Najlepším zdrojom priehľadného plastu, ktorý som našiel, je výroba obalov. Špenát alebo iná listová zelenina sa zvyčajne dodáva vo veľkých priehľadných plastových nádobách. V mojom prípade som použil obal z „papričkovej zmesi“.

Chcel som, aby previs 5 mm poskytol dostatok povrchovej plochy na lepenie, a tak som vystrihol obdĺžnik 27 x 77 mm z číreho plastu. Musel som trochu orezať rohy, aby sa skrutky zmestili. Po obvode výrezu som vystriekol riadok superlepidla a potom som položil číry plast. Potom som pridal trochu viac lepidla okolo okraja, aby som sa uistil, že je zapečatené.

Pro-Tip: Kým schne lepidlo, umiestnite diel pred malý ventilátor. Keď superglue schne, má tendenciu zanechať za sebou hnusný biely zvyšok, ktorý určite nechceme na svojom priehľadnom okne. Použil som starý 12V ventilátor z napájania počítača. Nechal som lepidlo pôsobiť 12 hodín, aby som sa uistil, že je úplne suché.

Krok 3: Montáž obrazovky LCD

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

Akonáhle je priehľadné okno suché, je možné LCD namontovať. LCD je veľmi populárny displej s rozmermi 16 x 2 znakov a „batoh“I²C predspájkovaný na zadnej strane. Vrelo odporúčam zaobstarať si túto obrazovku s rozhraním I²C. Zapojenie všetkých paralelných vedení je dosť nepríjemné a prináša väčší potenciál pre chyby - verzia I²C má iba dva vodiče pre napájanie a dva vodiče pre signál.

Na pripevnenie obrazovky som použil štyri 10 mm stojky. Vzpery majú na každom konci vnútorný závit a na druhom vnútorný závit. Mužský závit som prevliekol cez otvory v LCD a ku každému z nich dotiahol maticu M3. Potom som štyrmi skrutkami M3 zaistil vnútorné konce stĺpikov cez veko krytu. Dostal som tento balík dištančných stĺpikov, ktoré majú 10 mm otvory na pripevnenie LCD a dlhšie držiaky veka k základni. Navyše sú tu skrutky a matice M3, takže nemusíte kupovať žiadny ďalší hardvér.

Uistite sa, že matice sú veľmi pevné, aby sa pri dotiahnutí skrutiek podložky neotočili. Dbajte tiež na to, aby ste skrutky príliš neutiahli, pretože by sa plastové viečko mohlo zdeformovať a nesprávne utesniť.

Riadok 16 kolíkov záhlavia na displeji LCD by mal byť na vrchu - dbajte na to, aby ste displej LCD nemontovali hore nohami!

Krok 4: Montáž momentálneho tlačidla

Upevnenie momentálneho tlačidla
Upevnenie momentálneho tlačidla
Upevnenie momentálneho tlačidla
Upevnenie momentálneho tlačidla
Upevnenie momentálneho tlačidla
Upevnenie momentálneho tlačidla

Toto choro vyzerajúce chrómové tlačidlo som sa rozhodol použiť na prednom paneli. Použil som ich v predchádzajúcich projektoch a veľmi sa mi páči, ako vyzerajú. Majú byť vodotesné a dodávajú sa s gumovým krúžkom, ktorý zabraňuje vnikaniu vlhkosti do krytu cez závity.

Tento krok je celkom jednoduchý. Odskrutkujte maticu, ale nechajte gumový krúžok nasadený. Vložte tlačidlo cez otvor vo veku a zo zadnej strany dotiahnite maticu. Vyhnite sa prílišnému uťahovaniu matice, inak bude gumový krúžok rozdrvený a nebude slúžiť svojmu účelu.

Krok 5: Napájací a nabíjací obvod

Napájací a nabíjací obvod
Napájací a nabíjací obvod
Napájací a nabíjací obvod
Napájací a nabíjací obvod
Napájací a nabíjací obvod
Napájací a nabíjací obvod

Teraz dáme dohromady komponenty napájania z batérie. To zahŕňa batériu, hlavný vypínač, dosku na monitorovanie/nabíjanie batérie a prevodník zosilnenia.

Batéria, ktorú som použil, je 3,7 V 1500 mAh jednobunková lítium-iónová batéria. Konkrétny, ktorý som použil, bol stiahnutý z pokazeného ovládača Playstation. Akákoľvek jednobunková batéria Li-Ion alebo LiPo bude fungovať, pokiaľ sa zmestí do vašej skrinky. Tento typ batérie býva veľmi tenký a plochý, takže by ste pravdepodobne mohli bez problémov použiť jednu dvakrát väčšiu ako moju. Bunka 18650 by fungovala, ale nezmestí sa do môjho vlastného krytu, takže si budete musieť navrhnúť svoj vlastný alebo použiť štandardnú skrinku. Pokiaľ je to možné, odporúčam použiť zachránenú batériu (ako som to urobil ja), pretože preprava batérií je často drahá!

Batéria by mala byť najskôr spájkovaná s nabíjacou doskou TP4056. Ak chcete, môžete pohodlne spájkovať konektor JST RCY s batériou a nabíjačkou (urobil som to), ale nie je to potrebné. Dbajte na správnu polaritu, ktorá je vyznačená značkami na doske nabíjačky, pretože doska nie je chránená proti opačnej polarite batérie!

Ďalej spájkujte vodič z kladného výstupu nabíjačky (umiestnený vedľa kladného vodiča batérie) na kladný vstup v zosilňovači. Potom spájkujte drôt zo záporného výstupu (umiestnený vedľa mínusového pólu batérie) na spoločný (stredový) kolík hlavného prepínača. Nakoniec pripájajte drôt z normálne otvoreného kolíka spínača k zápornému vstupu prevodníka zosilňovača. Ak k výstupu zosilňovača pripojíte multimetr a zapnete hlavný vypínač, malo by sa zobraziť napätie.

Pretože všetky naše Arduino, LCD obrazovky a prietokové senzory potrebujú 5 V, musíme výstup zosilňovacieho prevodníka nastaviť na 5 V. To sa dosiahne otáčaním gombíka na potenciometri malým skrutkovačom. Keď je hlavný vypínač zapnutý, je pripojená batéria a multimetr je zapojený do výstupu zosilňovača, pomaly otáčajte potenciometrom, kým výstup neukáže 5V. Bude ťažké dosiahnuť hodnotu presne 5 000 V, ale snažte sa dosiahnuť napätie medzi 4,9 V a 5,1 V.

Pretože môj vlastný kryt je držaný zatvorený niekoľkými skrutkami, nechceme, aby sme museli puzdro otvárať vždy, keď je potrebné ho nabiť. Na to som použil 3,5 mm konektor pre slúchadlá. Presný konektor, ktorý som použil, je tento od spoločnosti Digikey (na čo sú dimenzované výrezy v mojom kryte), ale tento od Banggood by mal tiež fungovať.

Najprv som vložil konektor do najspodnejšieho otvoru v kryte. Pretože to bude väčšinu času odpojené, a preto citlivé na vnikanie vlhkosti, je najlepšie ho namontovať na spodok, aby do neho nekvapkala voda. Po inštalácii poistnej podložky a utiahnutí matice som spájkoval dva drôty s chlopňami „hrotu“a „objímky“na konektore. Vývod konektora je zobrazený na jednom z mojich komentovaných obrázkov. Druhý koniec „objímkového“vodiča som spájkoval s mínusovým vstupom na nabíjačke vedľa portu micro USB. Nakoniec som spájal „hrotový“vodič s +5V podložkou na druhej strane portu USB. USB port na nabíjačke sa nepoužije, pretože by bolo ťažké dosiahnuť, aby USB port prenikol do krytu bez vnikania vlhkosti dovnútra.

Krok 6: Nabíjací kábel

Nabíjací kábel
Nabíjací kábel
Nabíjací kábel
Nabíjací kábel
Nabíjací kábel
Nabíjací kábel

Pretože ako nabíjací port používame 3,5 mm zvukový konektor, musíme vytvoriť kábel adaptéra, ktorý má na jednom konci zástrčku 3,5 mm a na druhom konci konektor USB A. To nám umožní použiť na nabíjanie tohto zariadenia akúkoľvek generickú nabíjačku mobilných zariadení (napríklad nabíjačku pre iPhone).

Dalo by sa kúpiť zostavu kábla USB s konektorom USB A na jednom konci a pocínovanými vodičmi na druhom konci, ale ak ste ako ja, pravdepodobne sa vám tu povaľuje tucet náhodných káblov USB, ktoré nepotrebujete. Namiesto kúpy zostavy kábla USB som dostal kábel micro USB na USB A, ktorý som nepotreboval, a odrezal som konektor micro USB.

Ďalej som odstránil biely plášť z kábla a odhalil vo vnútri iba dva vodiče: červený a čierny. Niektoré káble USB budú mať štyri vodiče: červený, čierny, zelený a biely. Zelené a biele farby slúžia na prenos údajov a je možné ich ignorovať. Izoláciu odizolujte iba z červeného a čierneho vodiča.

Ďalej budete potrebovať vidlicu 3,5 mm. Použil som tento od Banggood. Pripojte červený vodič z kábla USB k strednému výčnelku (čo je koniec konektora) a čierny vodič k úchytke s dlhým rukávom. Vysvetlenie nájdete na mojich fotografiách.

Odporúčam vždy zapojiť 3,5 mm konektor pred konektor USB, pretože proces zapojenia kábla môže spôsobiť, že sa zástrčka skratuje cez kovovú zásuvku.

Krok 7: O snímači prietoku

O snímači prietoku
O snímači prietoku
O snímači prietoku
O snímači prietoku
O snímači prietoku
O snímači prietoku
O snímači prietoku
O snímači prietoku

Tento snímač prietoku som vybral od spoločnosti Banggood za 3,87 dolára. Pred použitím som sa rozhodol preskúmať, ako funguje.

Dizajn je prekvapivo jednoduchý a dômyselný. Elektronika je úplne utesnená pred vodou. K dispozícii je voľne sa otáčajúca vrtuľa, ktorá sa otáča pomalšie alebo rýchlejšie v závislosti od prietoku. V jednom bode vrtule je magnet. Na vonkajšej strane senzora je malá priehradka, ktorá obsahuje malú dosku s dvoma komponentmi: odpor a snímač s Hallovým efektom. Zakaždým, keď magnet prejde okolo senzora s Hallovým efektom, prepne medzi vysokým a nízkym. Inými slovami, prepína medzi 5 V a 0 V vždy, keď sa vrtuľa otáča.

Na prečítanie senzora aplikujeme +5 V na červený vodič, záporný na čierny vodič a prečítame digitálny signál zo žltého vodiča. Na fotografii môjho osciloskopu môžete vidieť, ako sa signál mení, keď je tok zapnutý. Na začiatku je signál neustále nulový. Keď sa prietok spustí, frekvencia impulzov sa rýchlo zvýši a dosiahne ustálený stav.

Podľa technického listu senzor vydáva 450 impulzov na liter. To bude dôležité neskôr, keď píšeme softvér.

Krok 8: Zapojenie snímača prietoku

Zapojenie snímača prietoku
Zapojenie snímača prietoku
Zapojenie snímača prietoku
Zapojenie snímača prietoku
Zapojenie snímača prietoku
Zapojenie snímača prietoku
Zapojenie snímača prietoku
Zapojenie snímača prietoku

Prietokomer je dodávaný s 3-kolíkovým konektorom JST-XH. Nie je to ideálne, pretože drôty sú príliš krátke a konektor má odkryté kontakty, ktoré je možné ľahko skratovať rozptýlenými kvapôčkami vody. Túto zostavu 3,5 mm zvukového konektora som si objednal od spoločnosti Digikey. Je dlhý 3 palce, čo je perfektná dĺžka, a má pocínované drôty, ktoré uľahčuje spájkovanie. Neodporúčam pokúšať sa používať starý kábel od slúchadiel, pretože majú veľmi tenký smaltovaný drôt, ktorý je takmer nemožné spájkovať.

Prietokový snímač má plastový kryt, ktorý drží dve skrutky Phillips. Jednoducho odstráňte tieto skrutky a vytiahnite obvodovú dosku. Nie je držané žiadnym lepidlom, je len držané na mieste pomocou plastového veka. Potom odpojte tri drôty tak, že ich nahrejete spájkovačkou a zdvihnete jeden po druhom.

Ďalej spájajte 3,5 mm zvukový kábel s podložkami. Navrhujem zladiť farby tak, ako som to urobil. Táto konfigurácia má na špičke +5 V, signál na krúžku a uzemnenie na objímke. Je to rovnaká konfigurácia, aká sa používa pre nabíjací port, od kroku 6. Ak omylom zapojíte nabíjačku do portu pre snímač alebo naopak, zariadenie sa nepoškodí.

Krok 9: Inštalácia snímača prietoku

Inštalácia snímača prietoku
Inštalácia snímača prietoku
Inštalácia snímača prietoku
Inštalácia snímača prietoku
Inštalácia snímača prietoku
Inštalácia snímača prietoku

Až do tohto bodu všetka naša práca prebiehala v dielni. Ale teraz je čas ísť do kúpeľne!

Najprv som odstránil sprchovú hlavicu. Toto odhalilo krátky kúsok rúrky vyčnievajúci zo steny s 1/2 vnútorným závitom NPS. Náš prietokomer má pohodlne úplne rovnakú veľkosť závitu! Jediným problémom je, že snímač má na oboch koncoch vnútorný závit, takže budeme Potrebujete spojenie žena-žena.

V mojom miestnom železiarstve boli 1/2 spojky z mosadze, železa a PVC. PVC bolo najlacnejšie, takže som si ho zaobstaral. Aj keď pri spätnom pohľade by mosadzné alebo oceľové vyzerali krajšie.

Akonáhle máte spojku, jednoducho zaskrutkujte snímač prietoku do spojky a potom zaskrutkujte druhý koniec spojky na potrubie. Prietokový snímač má šípku, ktorá označuje zamýšľaný smer toku. Uistite sa, že ho neinštalujete dozadu, inak môžu byť merania nepresné. Nakoniec naskrutkujte sprchovú hlavicu na koniec snímača prietoku.

Samozrejme, predpokladám, že vaša sprcha používa 1/2 závit NPS, ako môj. Ak to tak nie je, budete potrebovať ďalšie adaptéry.

Pro-Tip: Pred zaskrutkovaním dielov spojte všetky závity teflónovou inštalatérskou páskou, aby ste predišli úniku. Nemal som žiadne po ruke, ale v blízkej budúcnosti plánujem pridať toto.

Krok 10: Arduino a perfboard

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

Keďže budeme musieť urobiť veľa elektroinštalácií, je dobré zaobstarať si kus perfboardu, aby boli veci o niečo poriadok. Vystrihol som obdĺžnik perfboardu asi 1 "x 2". Ďalej som umiestnil svoje Arduino Nano do stredu dosky a označil, kde prechádzajú kolíky záhlavia. Potom som skrátil dve dĺžky ženských hlavičiek, z ktorých každá mala 15 kolíkov. Tieto som spájkoval na perfboard, kde som predtým označil. To nám umožní odstrániť Arduino na programovanie.

Pro-Tip: Označte orientáciu USB portu Arduina, aby ste ho vždy zapojili do perfboardu rovnakým spôsobom.

Krok 11: Zapojenie všetkého

Zapojenie všetkého
Zapojenie všetkého
Zapojenie všetkého
Zapojenie všetkého
Zapojenie všetkého
Zapojenie všetkého

Teraz je čas všetko spájkovať dohromady! Zahrnul som kompletnú schému zapojenia, ktorú môžete sledovať, alebo si pozrite nižšie uvedené písomné kroky, ak dávate prednosť vedenejšiemu prístupu.

Najprv som narezal niekoľko kolíkových kolíkov a zaspájkoval ich na perfboard na +5V a uzemňovacích lištách. Potom som spájkoval ďalšie dva kolíky záhlavia prepojené s kolíkmi A4 a A5 na Arduine. Tieto záhlavia nám umožnia pripojiť LCD obrazovku pomocou prepojok žena-žena.

Ďalej som spájkoval pár drôtov z výstupu zosilňovacieho meniča na +5V a uzemňovacie koľajnice. To poskytne napájanie Arduinu, LCD a prietokovému senzoru.

Potom som prerušil dva vodiče a pripojil ich k svorkám tlačidla. Jeden vodič som spájkoval s uzemňovacou koľajnicou a druhý s digitálnym pinom 3.

Posledná časť na spájkovanie je snímač prietoku. Pretože sme k senzoru už pripojili 3,5 mm konektor, stačí spájkovať 3,5 mm zásuvku. Najprv som spájkoval tri drôty - jeden ku každému zo štítkov na konektore. Potom som zdvihákom vložil zdvihák a zaistil ho na mieste maticou. Nakoniec som rukáv spájkoval s uzemnením, hrot na +5 V a krúžok s digitálnym kolíkom 2.

Rozhodol som sa použiť digitálne piny 2 a 3 pre tlačidlo a snímač prietoku, pretože sú to kolíky na prerušenie hardvéru. Vďaka tomu bude napísanie kódu oveľa jednoduchšie.

Teraz sme skončili s spájkovaním, ale stále musíme pripojiť LCD. Keďže sme spájkovali hlavičky, potrebujeme iba štyri prepojky medzi ženami a ženami. Pripojte kolík „Vcc“na +5 V, kolík „Gnd“na uzemnenie, kolík „SCL“na A5 a kolík „SDA“na A4. Aby sa obrazovka LCD zmestila do krytu, musíme ohnúť kolíky záhlavia dozadu. Niekoľkonásobné ohnutie kolíkov dopredu a dozadu unaví kov a spôsobí zlomenie čapov, preto odporúčam ohýbať ich iba raz a robte to opatrne.

Teraz je zapojenie dokončené!

Krok 12: Programovanie

Programovanie
Programovanie

Teraz, keď je všetok hardvér prepojený, môžeme naprogramovať Arduino.

Chcem, aby program mal nasledujúce funkcie:

  • V prvom riadku zobrazte rýchlo sa aktualizujúci počet celkových litrov
  • V druhom riadku zobrazte celkové náklady na vodu alebo prietok
  • Keď je sprcha spustená, tlačidlo prepína medzi zobrazovaním nákladov alebo prietoku
  • Keď sprcha nie je spustená, tlačidlo by malo vymazať všetky údaje a resetovať obrazovku
  • Senzor by sa mal odčítať pomocou rutiny prerušenia, aby sa zabránilo metódam hrubého pollingu
  • Pri aktualizácii obrazovky by sme mali aktualizovať iba hodnoty, ktoré sa zmenili, a nie prepisovať celú obrazovku zakaždým (to by spôsobilo viditeľné blikanie)

Program má jednoduchú štruktúru. Použitím funkcie millis () môžeme vytvoriť oneskorenia, ktoré v skutočnosti nezastavia spustenie programu. V tomto návode si pozrite príklad blikania diódy LED bez použitia funkcie delay ().

Funkcia millis () vracia počet milisekúnd od zapnutia Arduina. Po vytvorení premennej „previousMillis“a odčítaní Millis () - previousMillis () uvidíme, ktorý čas uplynul od aktualizácie programu previousMillis.

Ak chceme, aby sa niečo dialo jednu za sekundu, môžeme použiť nasledujúci blok kódu:

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

previousMillis = millis (); toggleLED (); }

Skontroluje, či je rozdiel medzi millis () (aktuálny čas) a previousMillis (posledný čas) väčší alebo rovný 1000 milisekundám. Ak je, prvá vec, ktorú urobíme, je nastaviť predchádzajúci Millis na aktuálny čas. Potom vykonáme akékoľvek ďalšie kroky, ktoré chceme. V tomto prípade prepíname diódu LED. Potom opustíme tento blok kódu a dokončíme zvyšok funkcie loop (), než sa vrátime na začiatok a všetko zopakujeme znova.

Výhodou použitia tejto metódy oproti jednoduchej funkcii delay () je, že delay () vloží medzi inštrukcie časový odstup, ale nezohľadňuje čas, ktorý je potrebný na vykonanie ostatných inštrukcií vo funkcii loop (). Ak robíte niečo, čo trvá dlhšie než len blikanie diódy LED, ako je napríklad aktualizácia obrazovky LCD, čas, ktorý trvá, nie je zanedbateľný a po niekoľkých cykloch sa sčíta. Ak aktualizujete obrazovku LCD na hodinách, bude rýchlo nepresné a bude zaostávať.

Teraz, keď chápeme celkovú štruktúru programu, je načase vložiť pokyny. Namiesto vysvetľovania každého riadku kódu tu navrhujem, aby ste si najskôr prečítali priložený vývojový diagram, ktorý poskytuje prehľad na vysokej úrovni o tom, čo program robí.

Akonáhle uvidíte vývojový diagram, pozrite sa na priložený kód Arduino. Komentoval som takmer každý riadok, aby bolo jasné, čo jednotlivé riadky robia.

V kóde je niekoľko častí, ktoré by ste mohli chcieť zmeniť. Najdôležitejšie sú náklady na liter. V mojom meste stojí voda 0,2523 ¢ za liter. Nájdite nasledujúci riadok a zmeňte túto hodnotu tak, aby zodpovedala nákladom na mieste, kde žijete:

const float COST_PER_LITRE = 0,2523; // cena za liter v centoch z webovej stránky mesta

Ak dávate prednosť použitiu galónov nad litre, zmeňte všetky riadky „LCD.print ()“, ktoré odkazujú na „L“alebo „L/s“, na „G“alebo „G/s“. Potom odstráňte nasledujúci riadok:

const float KONVERZIA = 450,0; // toto nechaj nekomentované na litre

… a odkomentujte tento riadok:

const float KONVERZIA = 1703,0; // odkomentujte to a odstráňte vyššie uvedený riadok pre galóny

V mojom kóde ste si mohli všimnúť ešte jednu zvláštnosť. Predvolená sada znakov neobsahuje znak „¢“a ja som nechcel používať doláre, pretože cena sa po väčšinu času zobrazuje ako „0,01 USD“alebo menej. Preto som bol nútený vytvoriť si vlastnú postavu. Na znázornenie tohto symbolu sa používa nasledujúce pole bajtov:

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

Po vytvorení tohto poľa je potrebné špeciálny znak „vytvoriť“a uložiť.

lcd.createChar (0, cent_sign);

Akonáhle to urobíte, na vytlačenie vlastného znaku použijeme nasledujúci riadok:

lcd.write (byte (0)); // vytlačenie centov (¢)

LCD môže mať až 8 vlastných znakov. Viac informácií o tomto je tu. Tiež som narazil na tento užitočný online nástroj, ktorý vám umožní nakresliť vlastný znak pomocou grafického rozhrania a automaticky vygeneruje vlastné pole bajtov.

Krok 13: Zatvorenie veka

Zatváranie veka
Zatváranie veka
Zatváranie veka
Zatváranie veka
Zatváranie veka
Zatváranie veka

Konečne sme takmer hotoví!

Je čas napchať všetku elektroniku do krytu a dúfať, že sa veko zatvorí. Najprv však musíme pripevniť 30 mm stojky. Balík stojanov, ktoré som kúpil, neobsahuje žiadne také dlhé, ale dodáva sa s 20 mm a 10 mm, ktoré je možné spojiť dohromady. Do dierok v spodnej časti krytu som priskrutkoval štyri podpery štyrmi skrutkami M3 (pozri obrázky 1 a 2). Uistite sa, že ste ich utiahli bezpečne, ale nie príliš pevne, inak riskujete rozbitie plastového krytu.

Teraz môžeme dovnútra zmestiť všetku elektroniku. Nabíjačku a prevodník zosilňovača som pripevnil k veku obojstrannou páskou, ako je vidieť na treťom obrázku. Potom som omotal elektrickú pásku okolo odhaleného kovu na dvoch 3,5 mm konektoroch, aby som zaistil, že sa nič neskráti kontaktom s konektormi.

Arduino sa mi podarilo prispôsobiť tak, že som ho umiestnil na bok, do ľavého dolného rohu, a jeho port USB smeroval doprava. Na zaistenie batérie v spodnej časti krytu pod obrazovkou LCD som použil viac obojstrannú pásku.

Akonáhle je všetko viac -menej bezpečne zaseknuté v škatuli, veko je možné priskrutkovať ďalšími štyrmi skrutkami M3.

Krok 14: Testovanie

Testovanie
Testovanie
Testovanie
Testovanie
Testovanie
Testovanie
Testovanie
Testovanie

Najprv zapojte 3,5 mm konektor zo snímača prietoku. Odporúčam to urobiť pred zapnutím zariadenia, pretože je možné, že zástrčka pri vkladaní vytvára nežiaduce spojenie.

Potom zapnite hlavný vypínač. Aj keď netečie žiadna voda, tlačidlo na prednom paneli by okrem vymazania súčtu a vymazania obrazovky nemalo robiť nič iné. Pretože súčet bude v predvolenom nastavení nulový, tlačidlo zatiaľ zrejme nič neurobí.

Ak zapnete sprchu, celková suma by sa mala začať zvyšovať. V predvolenom nastavení sa zobrazuje cena. Ak stlačíte tlačidlo na prednom paneli, prietok sa zobrazí v spodnom riadku. Stlačením tlačidla na prednom paneli sa bude prepínať medzi zobrazením prietoku a cenou, pokiaľ je sprcha spustená. Keď sa sprcha zastaví, stlačením tlačidla na prednom paneli sa vynulujú merania a vymaže obrazovka.

Montáž

Spôsob, akým sa rozhodnete zariadenie namontovať, závisí od rozloženia vašej sprchy. Niektoré sprchy môžu mať rímsu dostatočne blízko sprchovej hlavice, že by ste tam zariadenie mohli jednoducho umiestniť. V sprche mám košík pripevnený prísavkami, do ktorého som zariadenie umiestnil. Ak nemáte luxus rímsy alebo koša, môžete skúsiť zariadenie držať na stene pomocou obojstrannej prísavky. Bude to fungovať iba vtedy, ak používate štandardne dodávanú skriňu s hladkým podkladom alebo vytlačíte môj vlastný kryt na tlačiarni so sklenenou doskou. Ak má váš kryt hrubú podložku (ako ja), môžete skúsiť použiť obojstrannú pásku, aj keď pri pokuse o odstránenie zariadenia to môže zanechať určité zvyšky na stene sprchy.

Riešenie problémov

Obrazovka je zapnutá, ale podsvietenie je vypnuté - uistite sa, že je prepojka nainštalovaná na dvoch kolíkoch na boku modulu I ² C

Obrazovka je prázdna, podsvietenie je zapnuté - pomocou skenera I²C skontrolujte, či je adresa I ² C správna

Obrazovka je zapnutá, ale hodnoty zostávajú nulové - skontrolujte, či zo snímača pochádza signál, odmeraním napätia na pine 2. Ak nie je žiadny signál, skontrolujte, či je snímač správne pripojený.

Obrazovka je prázdna s vypnutým podsvietením - skontrolujte, či LED dióda napájania na Arduine svieti, a skontrolujte, či je obrazovka napájaná

Obrazovka sa krátko zapne, potom sa všetko zastaví - pravdepodobne ste nastavili príliš vysoké napätie z posilňovača (komponenty nezvládajú viac ako 5 V)

Zariadenie funguje, ale hodnoty sú nesprávne - uistite sa, že prietokomer, ktorý používate, má rovnaký konverzný faktor 450 impulzov na liter. Rôzne snímače môžu mať rôzne hodnoty.

Krok 15: Teraz začnite šetriť vodou

Vylepšenia

Aktuálna verzia softvéru funguje dostatočne dobre, ale nakoniec by som rád pridal možnosť mať rôznych používateľov (rodinných príslušníkov, spolubydliacich atď.) Zariadenie by ukladalo štatistiky každej osoby (celková voda a celkový počet sprch) do zobraziť priemernú spotrebu vody pre každú osobu. To by mohlo ľudí povzbudiť, aby súťažili o to, aby používali čo najmenej vody.

Tiež by bolo skvelé mať spôsob, ako exportovať údaje, ktoré sa majú zobraziť v tabuľke, aby ich bolo možné graficky znázorniť. Potom by ste mohli vidieť, v ktorých ročných obdobiach majú ľudia častejšie a dlhšie sprchy.

Všetky tieto funkcie by vyžadovali použitie EEPROM-vstavanej pamäte Arduino. To umožní zachovanie údajov aj po vypnutí zariadenia.

Ďalšou užitočnou funkciou by bol indikátor batérie. Práve teraz je jediným náznakom, že je potrebné zariadenie dobiť, keď doska správcu batérie vypne napájanie. Bolo by ľahké pripojiť ďalší analógový vstup na meranie napätia batérie. Delič napätia by ani nebol potrebný, pretože napätie batérie je vždy nižšie ako 5V.

Niektoré z týchto myšlienok hraničia s dotvarovaním funkcií, a preto som softvér ďalej nevyvíjal.

Ostatné je na vás!

Súťaž senzorov
Súťaž senzorov
Súťaž senzorov
Súťaž senzorov

Prvá cena v súťaži senzorov

Odporúča: