Ek het my laaste sensor verknors — so ek het oorgeskakel na optiese sensors. Hier is wat gebeur het.
Laas lente het ek 'n klein oorstromingsvoorval in my kelder gehad. Niks katastrofies nie, maar genoeg om 'n boks ou vinielplate wat ek al jare lank wou digitaliseer, te ruïneer. Die skuldige? 'n Goedkoop vlotskakelaar in my sump-pomp reservoir wat vasgekeer was met 'n soort grys modder — waarskynlik 'n mengsel van mineraalafsettings en wat ook al oor die jare in daardie put beland het. Die vlotter was vas in die "af" posisie, Die pomp het nooit aangeskakel nie, en ek het wakker geword met 'n klam tapyt en daardie reuk.
Dit was die oomblik toe ek begin het om watervlakwaarneming ernstig op te neem.
Die probleem met vlotskakelaars (en waarom ons dit bly gebruik)
Look, Vlotskakelaars is goedkoop. Ek praat van $3–$5 op Amazon, En hulle is doodeenvoudig om te bedraad. Vir baie mense, Dis die einde van die gesprek. Maar hier is wat niemand vir jou sê totdat dit te laat is nie: hulle jam. Minerale bou op op die skarniermeganisme op. Alge groei op die dryfliggaam as jy dit in 'n hidroponiese tenk of enigiets met voedingstowwe gebruik. Klein puin — 'n stuk blaar, 'n Bietjie tou — vasgevang onder die vlot en hou dit vas. En jy kom eers agter wanneer die water reeds is waar dit nie moet wees nie.
Ek het drie vlotskakelaars in agt maande deurgegaan voordat ek genoeg gehad het.
Ultrasoniese sensors: Beter, Maar nie perfek nie
My volgende stap was 'n HC-SR04 ultrasoniese module — die soort wat elke Arduino-beginstel insluit. Ek het dit bo my reservoir gemonteer, Het dit na die wateroppervlak gerig, en het 'n bietjie kode geskryf om die afstand te meet. Dit het gewerk... Meeste van die tyd.
Die probleem is blinde kolle. Ultrasoniese sensors het 'n minimum waarnemingsafstand (gewoonlik ongeveer 2 cm), en as jou reservoir vlak is, Dit is 'n werklike probleem. Hulle sukkel ook met kondensasie op die transduseer-gesig, en ek het opgemerk dat lesings deurmekaar raak tydens temperatuurwisselings — die spoed van klank verander met temperatuur, En my ongekalibreerde opstelling het nie daarvoor gekompenseer nie.
Vir nie-kontak vlakwaarneming oor 'n groot tenk — sê nou, 'n 500-liter reënwaterversamelvat — ultrasonies is regtig uitstekend. Maar vir presiese puntvlakdeteksie in 'n klein sump of 'n hidroponiese reservoir? Dit het gevoel soos om 'n maatband te gebruik om te kyk of daar 'n enkele druppel water is. Oordadigheid, en nie akkuraat genoeg vir wat ek nodig gehad het nie.
Optiese oorgang: Die W150-AH-PH Sonde
Na 'n bietjie laatnag forum-duik, Ek het op die W150-AH-PH optiese vloeistofvlaksensor van 'n maatskappy genaamd Everlight beland. Dit het my sowat $8–$12 gekos, afhangend van die verkoper — ek het myne by 'n verspreider op AliExpress gekry vir $9.50 Gestuur. Nie die goedkoopste sensor daar buite nie, maar 'n groot verskil met die $40–$60 wat ek op sommige industriële verskaffers se webwerwe gesien het.
Hier is wat dit anders maak: Daar is geen bewegende dele nie. Geen. Die besigheidskant is 'n deursigtige prisma-kegel met 'n infrarooi LED en 'n fototransistor wat binne verseël is. Wanneer die punt in lug is, die IR-lig weerkaats intern van die prisma-oppervlak af en tref die ontvanger. Wanneer water die punt raak, Die brekingshoek verander — die lig lek uit in die vloeistof in plaas daarvan om terug te reflekteer — en die ontvanger gaan donker. Die uitset draai om.
Dit is in wese 'n soliede-staat skakelaar. Geen dryf om vas te steek nie, Geen skarnier om te korrodeer nie, Geen meganiese slytasie nie. Die hele ding is in waterdigte epoksie gepot. Ek het myne nou al vyf maande lank onafgebroke ondergedompel in 'n sumpput wat 'n vlotskakelaar binne weke sou kon doodmaak.
Die ander een het ek oorweeg: Seeed Studio SEN020578
Voordat jy die sneller op die W150 deurtrek, Ek het ook na die Seeed Studio Grove optiese watervlaksensor gekyk (SEN020578, ongeveer $7–$9). Dit gebruik dieselfde brekingsbeginsel, maar kom met Grove se 4-pen-konnektorstelsel, wat gerieflik is as jy reeds in die Grove-ekosisteem is. Die afweging: Die kabel is net sowat 50cm, en die behuizing is 'n bietjie lomper as die W150 se slanke probe-vormfaktor. Vir my noue putmontering, die W150 se vormfaktor het gewen. Maar vir 'n lessenaar-hidroponiese opstelling of 'n Grove-gebaseerde bou, die Seeed-module is 'n heel redelike keuse.
Bedrading dit (Dis regtig maklik)
Die W150 het drie penne: VCC, GND, en UIT. Ek het VCC aan 5V op my Arduino Nano gekoppel, GND na grond, en UIT na digitale pen 2 met die interne optrek-optrek geaktiveer. Die module trek die lyn LAAG wanneer die sonde ondergedompel is. Dis dit. Geen eksterne komponente nie, Geen weerstande nie, Geen kalibrasiepot nie. Die hele bedrading het dalk vier minute geneem.
Een ding wat ek wil noem: die module wat ek ontvang het, was die digitale variant. Sommige verkopers bied ook 'n analoogweergawe aan wat vir jou 'n spanningsreeks gee in plaas van 'n skoon hoë/laag — nuttig as jy geleidelike vlakveranderings wil opspoor eerder as 'n binêre nat/droë toestand. Vir my sump-pomp toepassing, digitaal was presies wat ek nodig gehad het.
Die Kode: Hou dit dom eenvoudig (met One Catch)
Die basiese lees is net digitalRead(SENSOR_PIN). As dit LAAG is, Jy is nat. As dit HOOG is, Jy is droog. 'n Beginner kan die kernlogika in hul slaap skryf.
Maar — en dit is belangrik — moenie net jou pomp aktiveer die oomblik wat jy 'n LAE lesing kry nie. Wateroppervlakke rimpel. Sumps-spatsel. As jy jou pomp direk aan die sensoruitset bedra., Jy gaan vinnige aan-af-siklusse kry wat jou relais en waarskynlik ook jou pompmotor gaan uitbrand.
Hier is die debounce-truuk wat ek gebruik: vereis dat die sensor vir minstens twee sekondes aanhoudend "nat" lees voordat die pomp geaktiveer word. Twee sekondes van deurlopende onderdompeling beteken dit is 'n werklike vlakverandering, Nie 'n plons nie. Aan die ander kant, Ek skakel die pomp af sodra dit droog is — geen debounce aan die droë kant nie, want ek wil nie hê die pomp moet droog loop en oorverhit nie.
Installasie: Wat ek op die harde manier geleer het
Twee dinge het my tydens installasie getref wat die datablad nie noem nie:
Sonliginterferensie. Ek het aanvanklik die sonde aan die boonste rand van my sumpput gemonteer, wat gedeeltelik blootgestel is aan 'n keldervenster. Op sonnige middae, die IR van sonlig was genoeg om die ontvanger soms te mislei om te dink die prisma is droog, selfs wanneer dit ondergedompel is. Die oplossing: Ek het 'n stuk 1-duim swart PVC-pyp in die put gerig en die sensor daarin gemonteer. Geen sonligprobleme meer nie. Totale koste van die PVC: Oor $1.50 van die hardewarewinkel.
Monteringsoriëntasie. Die eerste keer wat ek dit geïnstalleer het, Ek het die sonde effens opwaarts laat wys. Toe die watervlak gedaal het, 'n druppel sou aan die onderkant van die prisma vasklou en die sensor vir 'n paar ekstra minute "nat" hou — wat beteken die pomp sou laat afskakel. Nie 'n groot saak in my aansoek nie, Maar in 'n presisie-opstelling maak dit saak. Monteer die sonde horisontaal of met die punt na onder wys. Gravitasie sal die druppel skoonmaak.
Versekering: Spaar dit jou regtig geld?
Hier is iets wat ek nie verwag het nie: nadat ek my sensorstelsel geïnstalleer en dit vir my huiseienaarsversekering gedokumenteer het, Ek het 'n klein afslag op my premie gekry. Allstate (My verskaffer) bied 'n "beskermende toestelle"-afslag — dit is nie groot nie, Oor 5% van die gedeelte van my premie wat verband hou met waterskadedekking, wat neergekom het op ongeveer $30–$40 per jaar. Nie lewensveranderend nie, maar dit het binne die eerste jaar vir die sensor en die Arduino betaal. Jou ervaring sal per verskaffer verskil, Maar dit is die moeite werd om te vra.