INHOUDSOPGAWE:

Waterversamelaar-niveausensor op batterye: 7 stappe (met foto's)
Waterversamelaar-niveausensor op batterye: 7 stappe (met foto's)

Video: Waterversamelaar-niveausensor op batterye: 7 stappe (met foto's)

Video: Waterversamelaar-niveausensor op batterye: 7 stappe (met foto's)
Video: Live-Demo: Celkweekapparatuur (Dutch) 2024, November
Anonim
Waterversamelaar-vlaksensor met batterye
Waterversamelaar-vlaksensor met batterye
Waterversamelaar-vlaksensor met batterye
Waterversamelaar-vlaksensor met batterye

Ons huis het 'n watertenk wat gevoed word deur die reën wat op die dak val, en word gebruik vir die toilet, die wasmasjien en die natmaak van plante in die tuin. Die somers was die afgelope drie jaar baie droog, en daarom het ons die watervlak in die tenk dopgehou. Tot dusver het ons 'n houtstok gebruik wat ons in die tenk gesit het en die vlak gemerk het. Maar dit moet beslis moontlik wees om dit te verbeter!

Dit is waar hierdie projek inkom. Die idee is om 'n ultrasoniese afstandsensor aan die bokant van die tenk aan te heg. Hierdie sensor werk as 'n sonar wat klankgolwe uitstraal, wat dan deur die wateroppervlak gereflekteer word. Vanaf die tyd wat dit neem voordat die golwe terugkom en die klanksnelheid, kan u die afstand tot die wateroppervlak bereken en bepaal hoe vol die tenk is.

Aangesien ek nie 'n hoofaansluiting naby die tenk het nie, is dit noodsaaklik dat die volledige toestel op batterye werk. Dit beteken dat ek bewus moes wees van die kragverbruik van al die onderdele. Om die data terug te stuur, het ek besluit om die ingeboude Wifi van 'n ESP8266-mikroskyfie te gebruik. Terwyl die Wifi redelik kraghonger is, het dit 'n voordeel bo 'n ander soort radioverbinding: u kan direk aan die draadlose router van u huis koppel sonder om 'n ander toestel te bou wat as 'n aflos dien.

Om krag te bespaar, sit ek die ESP8266 meestal in diepe slaap en neem elke uur 'n meting. Vir my doel om die watervlak op te volg, is dit meer as voldoende. Die data word na ThingSpeak gestuur en kan dan op 'n slimfoon deur 'n app afgelees word.

Nog 'n detail! Die klanksnelheid, noodsaaklik vir die afstandmeting, hang af van die temperatuur en in 'n mindere mate van die humiditeit. Vir 'n akkurate buitemeting oor die seisoene gooi ons 'n BME280 -sensor in, wat temperatuur, humiditeit en druk meet. As 'n bonus maak dit van ons watervlak sensor ook 'n mini -weerstasie.

Dele:

  • 1x ESP8266 ESP-12F.
  • 1x ESP-12F adapterplaat.
  • 1x FT232RL FTDI: USB na seriële adapter.
  • 1x HC-SR04-P: ultrasoniese afstandmetingsmodule. Let daarop dat die P belangrik is, aangesien dit die weergawe is met 'n lae minimum werkspanning van 3V.
  • 1x BME280 3.3V weergawe: temperatuur-, druk- en humiditeitsensor.
  • 1x IRL2203N: n-kanaal MOSFET-transistor.
  • 1x MCP1700-3302E 3.3V weergawe: spanningsreguleerder.
  • 3x herlaaibare AA -battery, bv. 2600mAh.
  • 1x batteryhouer vir 3 batterye.
  • 1x broodbord.
  • Weerstands: 1x 470K, 1x 100K, 4x 10K.
  • Kondensators: 2x keramiek 1uF.
  • 3x skakelaar.
  • U-vorm brooddrade.
  • Springdrade.
  • Plastiek sophouer 1l.
  • Bevestigingsring vir die houer.

Ek het die kode op GitHub beskikbaar gestel.

Stap 1: Maak kennis met die ultrasoniese afstandsensor

Maak kennis met die ultrasoniese afstandsensor
Maak kennis met die ultrasoniese afstandsensor
Maak kennis met die ultrasoniese afstandsensor
Maak kennis met die ultrasoniese afstandsensor

Ons meet die afstand tot die wateroppervlak met 'n ultrasoniese sensor, die HC-SR04-P. Net soos 'n vlermuis, gebruik hierdie sensor sonar: dit stuur 'n klankpuls met 'n frekwensie wat te hoog is vir die menslike oor, dus ultrasonies, en wag totdat dit 'n voorwerp tref, weerkaats en terugkom. Die afstand kan dan bereken word uit die tyd wat dit neem om die eggo en die spoed van klank te ontvang.

Konkreet, as die Trig -pen vir ten minste 10 μs hoog getrek word, stuur die sensor 'n sarsie van 8 pulse met 'n frekwensie van 40 Hz. Die antwoord word dan op die Echo -pen verkry in die vorm van 'n pols met 'n tydsduur gelyk aan die tyd tussen die stuur en ontvangs van die ultrasoniese pols. Dan moet ons met 2 deel, aangesien die ultrasoniese pols heen en weer gaan en ons die eenrigting reistyd nodig het, en vermenigvuldig met die klanksnelheid, wat ongeveer 340 m/s is.

Maar wag 'n bietjie! Die klanksnelheid hang eintlik af van die temperatuur en in mindere mate van die humiditeit. Pluk ek of is dit relevant? Met behulp van 'n berekeningsinstrument vind ons dat ons in die winter (met -5 ° C) 328,5 m/s kan hê, en in die somer (met 25 ° C) 347,1 m/s. Gestel ons vind 'n eenrigting-reistyd van 3 ms. In die winter beteken dit 98,55 cm en in die somer 104,13 cm. Dit is nogal 'n verskil! Om genoeg akkuraatheid gedurende die seisoene en selfs dag en nag te verkry, moet ons 'n termometer by ons opstelling voeg. Ek het besluit om die BME280 in te sluit, wat temperatuur, humiditeit en druk meet. In die kode wat ek in die funksie speedOfSound gebruik het, is 'n formule wat die spoed van klank bereken in terme van al drie parameters, hoewel die temperatuur werklik die belangrikste faktor is. Die humiditeit het steeds 'n kleiner effek, maar die impak van die druk is weglaatbaar. Ons kan 'n eenvoudiger formule gebruik, slegs met inagneming van die temperatuur wat ek in speedOfSoundSimple geïmplementeer het.

Daar is nog 'n belangrike punt oor die HC-SR04. Daar is twee weergawes beskikbaar: die standaard weergawe werk by 5V, terwyl die HC-SR04-P met 'n reeks spannings van 3V tot 5V kan werk. Aangesien die 3 herlaaibare AA-batterye ongeveer 3x1.25V = 3.75V lewer, is dit belangrik om die P-weergawe te kry. Sommige verkopers kan die verkeerde een stuur. Kyk dus na die foto's as u een koop. Die twee weergawes lyk anders aan die agterkant en aan die voorkant, soos uiteengesit op hierdie bladsy. Agter op die P-weergawe is al drie die skyfies horisontaal, terwyl die standaard weergawe een vertikaal is. Aan die voorkant het die standaardweergawe 'n ekstra silwer komponent.

In die elektroniese stroombaan gebruik ons 'n transistor as 'n skakelaar om die ultraklank sensor af te skakel wanneer ons opstel diep slaap om die batterylewe te bespaar. Andersins sou dit steeds ongeveer 2mA verbruik. Die BME280 aan die ander kant verbruik slegs ongeveer 5 μ as dit onaktief is, dus dit is nie nodig om dit met die transistor af te skakel nie.

Stap 2: Keuse van die ESP8266 -raad

Keuse van die ESP8266 -raad
Keuse van die ESP8266 -raad

Om die sensor so lank as moontlik op 'n battery te gebruik, moet ons spaar op die kragverbruik. Alhoewel die Wifi van die ESP8266 'n baie maklike manier bied om ons sensor aan die wolk te koppel, is dit ook redelik kraghonger. In werking verbruik die ESP8266 ongeveer 80mA. Met batterye van 2600 mAh kan ons ons toestel dus hoogstens 32 uur lank gebruik voordat dit leeg is. In die praktyk sal dit minder wees, aangesien ons nie die volle kapasiteit van 2600 mAh kan gebruik voordat die spanning tot 'n te lae vlak daal nie.

Gelukkig het die ESP8266 ook 'n diep slaapmodus, waarin byna alles af is. Die plan is dus om die ESP8266 meestal in diepe slaap te sit en dit so gereeld wakker te maak om 'n meting te doen en die data oor die Wifi na ThingSpeak te stuur. Volgens hierdie bladsy was die maksimum tyd van diep slaap ongeveer 71 minute, maar sedert die ESP8266 Arduino-kern 2.4.1 het dit tot ongeveer 3,5 uur toegeneem. In my kode het ek 'n uur lank besluit.

Ek het eers die gerieflike NodeMCU-ontwikkelbord probeer, maar jammer, in diepe slaap het dit steeds ongeveer 9 mA verbruik, wat ons hoogstens 12 dae suiwer diep slaap gee sonder om eers die wakkerintervalle in ag te neem. 'N Belangrike skuldige is die AMS1117 spanningsreguleerder, wat krag gebruik selfs as u dit probeer omseil deur die battery direk aan die 3.3V -pen te koppel. Hierdie bladsy verduidelik hoe u die spanningsreguleerder en die USB UART kan verwyder. Ek het dit egter nooit reggekry sonder om my bord te vernietig nie. Boonop kan u na die verwydering van die USB UART nie meer aan die ESP8266 koppel om uit te vind wat fout gegaan het nie.

Die meeste ESP8266 -ontwikkelingsborde gebruik blykbaar die verkwistende AMS1117 spanningsreguleerder. Een uitsondering is die WEMOS D1 mini (foto aan die linkerkant) wat by die meer ekonomiese ME6211 kom. Ek het inderdaad gevind dat die WEMOS D1 mini ongeveer 150 μA in diepe slaap gebruik, wat meer soos dit lyk. Die meeste daarvan is waarskynlik te danke aan die USB UART. Met hierdie bord moet u egter self die koppe vir die penne soldeer.

Ons kan egter baie beter doen met 'n kaalbeenbord, soos die ESP-12F (prentjie regs), wat nie 'n USB UART of 'n spanningsreguleerder het nie. Met die 3.3V-pen het ek 'n diep slaapverbruik van slegs 22 μA gevind!

Maar om die ESP-12F aan die werk te kry, berei u voor op soldeer en 'n bietjie meer moeite om dit te programmeer! Verder moet ons ons eie spanningsreguleerder voorsien, tensy die batterye die korrekte spanning tussen 3V en 3.6V lewer. In die praktyk blyk dit moeilik te wees om 'n batterystelsel te vind wat 'n spanning in hierdie reeks oor sy volle ontlaadsiklus lewer. Onthou dat ons ook die HC-SR04-P-sensor moet voed, wat teoreties met 'n spanning van so laag as 3V kan funksioneer, maar wel meer akkuraat funksioneer as die spanning hoër is. Boonop word die HC-SR04-P in my diagram aangeskakel deur 'n transistor, wat 'n klein ekstra spanningsval veroorsaak. Ons gebruik die MCP1700-3302E spanningsreguleerder. Die maksimum ingangsspanning is 6V, sodat ons dit met tot 4 AA -batterye kan voed. Ek het besluit om 3 AA -batterye te gebruik.

Stap 3: Skep 'n ThingSpeak -kanaal

Ons sal ThingSpeak, 'n IoT -wolkdiens, gebruik om ons data te stoor. Gaan na https://thingspeak.com/ en skep 'n rekening. Sodra u ingeteken het, klik op die knoppie Nuwe kanaal om 'n kanaal te skep. Vul die naam en beskrywing in die kanaalinstellings in soos u wil. Vervolgens noem ons die kanaalvelde en aktiveer dit deur die blokkies regs te klik. As u my kode onveranderd gebruik, is die velde soos volg:

  • Veld 1: watervlak (cm)
  • Veld 2: battery vlak (V)
  • Veld 3: temperatuur (° C)
  • Veld 4: humiditeit (%)
  • Veld 5: druk (Pa)

Skryf die kanaal -ID, die lees -API -sleutel en die skryf -API -sleutel neer, wat in die spyskaart -API -sleutels gevind kan word.

U kan die ThingSpeak -data op u slimfoon lees met behulp van 'n app. Op my Android -telefoon gebruik ek die IoT ThingSpeak Monitor -widget. U moet dit opstel met die kanaal -ID en die Read API -sleutel.

Stap 4: Hoe om die ESP-12F te programmeer

Hoe om die ESP-12F te programmeer
Hoe om die ESP-12F te programmeer
Hoe om die ESP-12F te programmeer
Hoe om die ESP-12F te programmeer

Ons benodig 'n kaal beenbord om die batterylewe te bespaar, maar die nadeel is dat dit 'n bietjie moeiliker is om te programmeer as 'n ontwikkelingsbord met ingeboude USB UART.

Ons gebruik die Arduino IDE. Daar is ander instruksies wat verduidelik hoe u dit moet gebruik, so ek sal hier kort wees. Die stappe om dit gereed te maak vir die ESP8266 is:

  • Laai die Arduino IDE af.
  • Installeer ondersteuning vir die ESP8266 -bord. Voeg in die spyskaart File - Preferences - Settings die URL https://arduino.esp8266.com/stable/package_esp8266com_index.json by bykomende URL's van die bestuurder. Volgende in die spyskaart Tools - Board - Boards Manager installeer esp8266 deur esp8266 -gemeenskap.
  • Kies as bord: generiese ESP8266 -module.

Vir die hantering van die ESP-12F het ek 'n adapterplaat gebruik wat algemeen in aanlynwinkels beskikbaar is. Ek het die chip aan die bord gesoldeer en die kopstukke aan die bord gesoldeer. Toe ontdek ek dat die adapterplaat te breed is vir 'n standaard broodbord! Dit laat geen gratis penne aan die kant om u verbindings te maak nie.

Die oplossing waarvoor ek gekies het, is om U-vormige drade te gebruik en dit aan te sluit soos op die foto regs voordat u die ESP8266 met die adapterplaat op die broodbord plaas. GND en VCC is dus verbind met die relings van die broodbord en die oorblywende penne word verder langs die broodbord beskikbaar gestel. Die nadeel is dat u broodbord behoorlik stampvol drade sal wees sodra u die hele baan voltooi het. 'N Ander oplossing is om twee broodborde bymekaar te pas, soos in hierdie video getoon.

Om die ESP-12F via die USB-poort van u rekenaar te programmeer, benodig ons 'n USB-na-seriële adapter. Ek het die FT232RL FTDI programmeerder gebruik. Die programmeerder het 'n jumper om tussen 3.3V of 5V te kies. Dit moet op 3.3V vir die ESP8266 gestel word. Moenie dit vergeet nie, want 5V kan u chip braai! Die installering van die bestuurders moet outomaties plaasvind, maar as die programmering nie werk nie, kan u dit met die hand probeer installeer vanaf hierdie bladsy.

Die ESP8266 het 'n programmeermodus om nuwe firmware na die flits op te laai, en 'n flitsmodus om die huidige firmware uit die flitsgeheue uit te voer. Om tussen hierdie modusse te kies, moet sommige penne tydens opstart 'n sekere waarde aanneem:

  • Programmering: GPIO0: laag, CH-PD: hoog, GPIO2: hoog, GPIO15: laag
  • Flits: GPIO0: hoog, CH-PD: hoog, GPIO2: hoog, GPIO15: laag

Die adapterplaat sorg reeds vir die optrek van CH-PD en die aftrekking van GPIO15 met 10K-weerstande.

In ons elektroniese stroombaan moet ons dus nog steeds GPIO2 optel. Ons bied ook 'n skakelaar om die ESP8266 in programmering of in flitsmodus te plaas, en 'n skakelaar om dit terug te stel, wat gedoen word deur RST aan die grond te koppel. Maak verder seker dat u die TX-pen van die FT232RL aan die RXD-pen van die ESP8266 koppel en omgekeerd.

Die programmeringsvolgorde is soos volg:

  • Stel GPIO2 op laag deur die programmeringskakelaar te sluit.
  • Stel die ESP8266 terug deur die reset -skakelaar te sluit en dan weer oop te maak. Die ESP8266 begin nou in die programmeermodus.
  • Stel GPIO2 terug op hoog deur die programmeerskakelaar oop te maak.
  • Laai die nuwe firmware op van die Arduino IDE.
  • Herstel die ESP8266 weer deur die reset -skakelaar te sluit en weer oop te maak. Die ESP8266 begin nou in die flitsmodus en gebruik die nuwe firmware.

Nou kan u toets of die programmering werk deur die beroemde Blink -skets op te laai.

As dit alles werk, is die GND-, VCC-, GPIO2-, RST-, TXD- en RXD -penne korrek gesoldeer en verbind. Wat 'n verligting! Maar voordat ek verder gaan, beveel ek aan om die ander penne ook met u multimeter te toets. Ek het self 'n probleem gehad met een van die penne. U kan hierdie skets gebruik, wat al die penne een vir een vir 5 sekondes hoog stel en daarna die ESP8266 vir 20 sekondes diep in die slaap sit. Om die ESP8266 in staat te stel om wakker te word na diepe slaap, moet u RST aan GPIO16 koppel, wat die weksein gee.

Stap 5: Laai die skets op

Ek het die kode op GitHub beskikbaar gestel, dit is net een lêer: Level-Sensor-Deepsleep.ino. Laai dit net af en maak dit oop in die Arduino IDE. Of u kan File - New kies en die kode net kopieer/plak.

Daar is 'n paar inligting wat u aan die begin van die lêer moet invul: die naam en wagwoord van die WLAN om te gebruik, statiese IP -besonderhede en die kanaal -ID en skryf -API -sleutel van die ThingSpeak -kanaal.

Na die wenk op hierdie blog, gebruik ons statiese IP in plaas van DHCP, waar die router dinamies 'n IP toewys, waar ons self die IP -adres van die ESP8266 stel. Dit blyk baie vinniger te wees, so ons bespaar op aktiewe tyd en dus op battery -energie. Ons moet dus 'n beskikbare statiese IP -adres, sowel as die IP van die router (gateway), die subnetmasker en 'n DNS -bediener verskaf. As u nie seker is wat u moet invul nie, lees meer oor die opstel van 'n statiese IP in die handleiding van u router. Op 'n Windows-rekenaar wat via Wifi aan u router gekoppel is, begin 'n dop (Windows-knoppie-r, cmd) en voer ipconfig /all in. U vind die meeste inligting wat u benodig onder die Wi-Fi-afdeling.

As u die kode ondersoek, sien u dat die meeste van die aksies in teenstelling met ander Arduino -kode in die opstelfunksie plaasvind in plaas van die lusfunksie. Dit is omdat die ESP8266 diep slaap nadat hy die opstelfunksie voltooi het (tensy ons in die OTA -modus begin het). Nadat dit wakker geword het, is dit soos 'n nuwe herlaai en word dit weer opgestel.

Hier is die belangrikste kenmerke van die kode:

  • Na wakker word die kode switchPin (standaard GPIO15) op hoog gestel. Dit skakel die transistor aan, wat weer die HC-SR04-P-sensor aanskakel. Voordat u gaan slaap, word die pen weer laag, deur die transistor en die HC-SR04-P af te skakel en seker te maak dat dit nie meer kosbare batterykrag verbruik nie.
  • As die modePIN (standaard GPIO14) laag is, gaan die kode in die OTA -modus in plaas van die metingsmodus. Met OTA (op-die-lug-opdatering) kan ons die firmware opdateer via Wifi in plaas van die seriële poort. In ons geval is dit baie gerieflik, aangesien ons nie meer die reeks aan die USB -adapter hoef te koppel vir verdere opdaterings nie. Stel GPIO14 net op laag (met die OTA -skakelaar in die elektroniese stroombaan), stel die ESP8266 terug (met die reset -skakelaar) en dit moet in die Arduino IDE beskikbaar wees vir oplaai.
  • Op die analoog PIN (A0) meet ons die spanning van die battery. Dit stel ons in staat om ons toestel, oftewel permanente diep slaap, af te skakel as die spanning te laag word, onder min spanning, om die batterye teen oorlading te beskerm. Die analoogmeting is nie baie akkuraat nie; ons doen metings van nomMeasuresBattery (standaard 10) en neem die gemiddelde om akkuraatheid te verbeter.
  • Die afstandmeting van die HC-SR04-P sensor word uitgevoer in die funksie distanceMeting. Om die akkuraatheid te verbeter, word die meting herhaal numMeasuresDistance (standaard 3) keer.
  • Daar is 'n funksie om die speedOfSound te bereken uit die temperatuur-, humiditeits- en drukmeting deur die BME280 -sensor. Die standaard I2C -adres van die BME280 is 0x76, maar as dit nie werk nie, moet u dit moontlik verander na 0x77: bool bme280Started = bme280.begin (0x77);
  • Ons gebruik die BME280 in gedwonge modus, wat beteken dat dit een meting neem en weer gaan slaap om krag te bespaar.
  • As u kapasiteit (l), fullDistance (cm) en oppervlakte (m2) instel, bereken die kode die oorblywende volume van die watertenk vanaf die afstandmeting: dubbel resterende volume = kapasiteit+10,0*(fullDistance-distance)*area; en laai dit op na ThingSpeak. As u die standaardwaardes behou, laai die afstand na die wateroppervlak in cm op.

Stap 6: Bou die elektroniese stroombaan

Die bou van die elektroniese stroombaan
Die bou van die elektroniese stroombaan

Hierbo is die diagram van die elektroniese stroombaan. Dit is redelik groot vir een broodbord, veral met die groot adapterplaat en die truuk met die U-vormige drade. Op 'n stadium wou ek beslis dat ek die alternatief gebruik het om twee broodborde aan te sluit, maar uiteindelik het ek dit reggekry.

Hier is die belangrike kenmerke van die stroombaan:

  • Daar is twee spannings wat 'n rol speel: die ingangsspanning van die battery (ongeveer 3.75V) en die 3.3V wat die ESP8266 en die BME280 voed. Ek sit die 3.3V op die linkerrail van die breekbord en die 3.75V op die regterrail. Die spanningsreguleerder skakel die 3.75V om na 3.3V. Na aanleiding van die instruksies in die datablad, het ek 1 μF -kondensators by die ingang en uitset van die spanningsreguleerder gevoeg om die stabiliteit te verhoog.
  • GPIO15 van die ESP8266 is gekoppel aan die hek van die transistor. Dit stel die ESP8266 in staat om die transistor aan te skakel en dus die ultrasoniese sensor wanneer dit aktief is en dit uitskakel as dit diep slaap.
  • GPIO14 is gekoppel aan 'n skakelaar, die OTA -skakelaar. Deur die skakelaar te sluit, gee die sein aan die ESP8266 wat ons volgende in die OTA-modus wil begin, dit wil sê nadat ons op die RESET-skakelaar gedruk het (sluit en oopmaak) en 'n nuwe skets oor die lug oplaai.
  • Die RST- en GPIO2 -penne is verbind soos in die programmeerdiagram. Die RST -pen is nou ook gekoppel aan GPIO16 sodat die ESP8266 uit diepe slaap kan wakker word.
  • Die penne TRIG en ECHO van die ultrasoniese sensor is gekoppel aan GPIO12 en GPIO13, terwyl die penne SCL en SDA van die BME280 gekoppel is aan GPIO5 en GPIO4.
  • Laastens is die analoog pen ADC via 'n spanningsverdeler wat aan die ingangsspanning gekoppel is. Hiermee kan u die ingangsspanning meet om die lading van die batterye te kontroleer. Die ADC -pen kan spanning tussen 0V en 1V meet. Vir die spanningsverdeler het ons weerstande van 100K en 470K gekies. Dit beteken dat die spanning by die ADC -pen gegee word deur: V_ADC = 100K/(100K+470K) V_in. As ons V_ADC = 1V neem, beteken dit dat ons insetspannings kan meet tot V_in = 570/100 V_ADC = 5.7V. Wat die kragverbruik betref, lek daar ook 'n bietjie stroom deur die spanningsverdeler. Met V_in = 3.75V van die batterye vind ons I_leak = 3.75V/570K = 6.6 μA.

Selfs as die stroombaan uit die battery loop, is dit moontlik om die USB aan die seriële adapter te koppel. Maak net die VCC van die adapter los en koppel GND, RX en TX aan soos in die programmeerdiagram. Dit maak dit moontlik om die Serial Monitor in die Arduino IDE oop te maak om die ontfoutingsboodskappe te lees en seker te maak dat alles werk soos verwag.

Vir die volledige stroombaan het ek 'n stroomverbruik van 50 μA in diepe slaap gemeet wanneer ek van batterye af was. Dit sluit in die ESP8266, die BME280, die ultrasoniese sensor (afgeskakel deur die transistor) en lekkasie deur die spanningsverdeler en miskien ander lekkasies. Dit is dus nie te erg nie!

Ek het gevind dat die totale aktiewe tyd ongeveer 7 sekondes is, waarvan 4,25 sekondes om aan te sluit op die Wifi en 1,25 sekondes om die data na ThingSpeak te stuur. Met 'n aktiewe stroom van 80mA het ek 160 μAh per uur gevind vir die aktiewe tyd. Ons voeg in totaal 210 μAh per uur by tot 50 μAh per uur vir die diep slaap toestand. Dit beteken dat 2600 mAh batterye teoreties 12400 ure duur = 515 dae. Dit is die absolute maksimum as ons die volle kapasiteit van die batterye kan gebruik (wat nie die geval is nie) en daar is geen lekkasies wat ek nie met my huidige metings gevind het nie. Ek het dus nog nie gesien of dit regtig gebeur nie.

Stap 7: Voltooi die sensor

Voltooi die sensor
Voltooi die sensor
Voltooi die sensor
Voltooi die sensor
Voltooi die sensor
Voltooi die sensor

Ek sit die sensor in 'n plastiekhouer van 1 liter, wat voorheen sop bevat het. Onderaan het ek twee gate gemaak om by die "oë" van die HC-SR04-P sensor te pas. Afgesien van die gate moet die houer waterdig wees. Dit word dan aan die muur van die watertenk vasgemaak met 'n sirkelring wat normaalweg vir 'n reënwaterafvoerpyp gebruik word.

Om pret te hê met die projek!

Aanbeveel: