Rengaskaivojen kapasiteetin logitus

Tarvetta saada parin talousvesi rengaskaivon (talo ja navetta) vesikapasiteettia laskettua ja lisäksi toiveissa olisi saada sakokaivosta tietoa sen täyttymisasteesta.

Lähdin toteuttaan tuota nyt HC-SRO4 ultraäänianturilla jolla mitataan ylhäältäpäin pinnan korkeuteen matka. Lasketaan siitä sitten tiedossa olevan pohjakorkeuden perusteella tilavuus kaivossa olevalle nesteelle. Lämpökompensaation vuoksi liitetty DS18B20 onewire anturi josta saadaan toki myös hälytys jos kaivossa uhkaa lämpötila menemään lähelle nollaa.

Alustana Arduino, nyt mega kun sillä helppo testata, mutta varmaan Nanolla tai Pro Minillä sen toteutan loppupeleissä. Täysin aloittelija olen Arduinon suhteen, pari päivää nyt vähän kokeillut.

Datan talteen ottoon WLAN yhteys. Nyt piti testata toteuttaa tuota ESP8266 mokkulalla mikä mulla on, mutta ei se ollut breadboard yhteensopiva eikä ole nyt reikälevyä että voisi sovitteen rakentaa eikä sopivia kaapeleita että voisi suoraan kytkeä. Olkoot, myöhemmin sitten.

Sakokaivossa anturin eliniän suhteen olen skeptinen. Toisaalta taloudellinen tappio ei ole kummoinen.

Sain nyt toteutettua kohtuu hyvin mittauksen etäisyydelle, lämpötilalle ja laskettua sen perusteella korjauksen. Esimerkkikuvassa ensin etäisyys 0c lämpötilassa, sitten lämpötila ja viimeiseksi korjattu etäisyys. Kohtuu suuri merkitys lämpötilalla on. Mietin että vois kait tuohon ihan harrastuksen vuoksi vielä pistää kosteusanturin ja tehdä silläkin kompensaation. Sen vaikutus on vaan aika pieni (ja ilmanpaine aika vakio). Mutta kun tuota kosteuttakin pitää oppia mittaan niin tuossa olisi hyvä harjoitus.

Seuraavaksi sitten varmaan tilavuuden laskentaa. Ja etäisyyden laskentaan pitäisi tehdä vielä joku että ottaa useampia mittoja jollain aikasyklillä hyläten epäonnistuneet ja sitten onnistuneista mediaani arvo. Useinhan tuolta ei tarvitse dataa saada, vaikka kerta tuntiin. Joku hyvä virransäästö toteutus olisi poikkaa. Varmaan jonkun patterin varassa tämä on niin saisi olla pitkäikäinen. Ehkä hälytys patterin kapasiteetista, aurinkokennoa…

No nyt laskee myös vesimäärän kun syöttää syvyyden anturista pohjaan ja kaivon säteen.

Nää halvimmat HC-SR04 anturit tuntuvat jäävän jumitilaan jos kaikua ei tule (yleisin syy taitaa olla se että este liian lähellä tai liian kaukana) ja Echo pin jää 1 tilaan enemmän tai vähemmän äärettömäksi ajaksi. Resetoituu kyllä jos esim sormia napsauttaa anturin edessä.

No tää kikka tuntui auttavan

if (distanceMm <= 0){
pinMode(ECHO_PIN, OUTPUT);
digitalWrite(ECHO_PIN, LOW);
delay(150);
pinMode(ECHO_PIN, INPUT);
}

Ellikkä käytännössä puutetaan Echon pinni outputiksi ja vedetään se alas. Annetaan aikaa varauksen purkautua ja sitten muutetaan takas inputiksi.

Moni käyttää näitä antureita monissa eri tarpeissa ja suosittelen kokeileen jos ongelmaa tuon kanssa. Ei tääkään mikään pomminvarma tunnu olevan ja hidas keino. Mutta ainakin itselläni helpotti tuota.

Ei ole newping-kirjaston kanssa ollut ongelmaa random kiina-antureilla (muuta kuin se että ne tapansa mukaan antaa meluisia tuloksia) https://github.com/HelsinkiHacklab/urpobotti/blob/master/arduino/ultrasounder/ultrasounder.ino

ASEKOlta saa vähän hankalampiin olosuhteisiin tarkoitettuja antureita, hinnasta en sano mitään… http://www.aseko.fi/fi/tuotteet/592/pinnankorkeusanturit

Pitää kokeilla tuota newpingiä myös. Mutta nyt nuo on aika luotettavasti tuntuneet toimivan, ainakin tässä harvassa mittauksessa mikä on riittänyt. Tosin näissäkin vissiin aikatavalla ollut laatueroja, jotkut ovat saaneet malleja jotka ei jää jumiin, joillain jää. Ja vissiin tuo HC-SR05 ei kärsi ongelmasta.

Tein toisenkinlaisen version itselle jonka aattelin pistää farmisäiliöön. Eli mittaa jäljellä olevaa polttoainemäärää vaakasuuntaisestai sylinteristä. Meinasi mennä sormi suuhun trigonometristen laskujen kanssa kielellä jota ei oikein osaa. Mutta kyllä se tunnin päänraapimisen jälkeen onnistu. Vielä kun oppis siistiin koodeja vähän järkevämpään ja tehokkaampaan muotoon.