
Vesimittari vaihtui: Kulutuksen seurantaa kameran ja konenäön avulla
Tämä projekti on tehty yhteistyössä AHaa Elektroniikan kanssa, joka toimitti vedenkulutuksen seurannassa käytetyn ESP32-kameran.
Paikallinen vesilaitos suoritti asuinalueellamme vesimittarin vaihdon uuteen etäluettavaan malliin. Vanha laser-sensori ei enää toimisi kulutuksen seurantaan, koska uudessa mittarissa ei ole pyöriviä osoittimia. Mittarissa ei ole myöskään ole pulssilähtöä kotiautomaatiotarkoituksiin. Se lähettää tiedot vesilaitokselle langattomasti LoRaWAN -yhteydellä, mutta tätä tietoa vesilaitos ei anna lukea. Veden kulutusta pitäisi pystyä seuraamaan myös melko tiheästi, jotta sitä voisi hyödyntää mahdollisen vesivuodon havaitsemiseen.

Ratkaisuna on kameran ja tekstin tunnistuksen avulla toteutettava vesimittarin luenta. Tällainen onnistuu ESP32-alustan ja siihen liitettävän kameran avulla. Alustalle asennetaan tätä varten Ai on the Edge Device.

ESP32-CAM:ssa ei ole USB-porttia. Alustan ohjelmointi tehdään sen GPIO-pinnien kautta tai erillisen ESP32-CAM-MB -ohjelmointikortin avulla. Firmwaren flashaaminen onnistuu helppokäyttöisen web-sivun avulla, jonka jälkeen ESP32:een laitetaan MicroSD -muistikortti ja se alustetaan ohjeiden mukaisesti. Tämän jälkeen laite käynnistyy uudelleen.
Ensimmäisellä varsinaisella käynnistyskerralla laitteeseen tehdään alustavat asetukset: Kuva säädetään niin että mittarin numerot erottuvat parhaalla tavalla. Lisäksi määritellään tunnistettavien numeroiden sijainnit.

ESP32-CAM:ssa on led -kuvausvalo. Tämä aiheutti omat haasteensa vesimittarin kiiltävän pinnan heijastaessa valon takaisin kameraan ja tehden numeroiden tunnistamisesta vaikeaa. Ratkaisuna ongelmaan suunnittelin ja tulostin laitteelle pidikkeen, joka heijastaa valoa epäsuorasti. Voit ladata mallin täältä.

Kameran linssi on pidikkeessä noin 5 cm etäisyydellä vesimittarin pinnasta. Tätä varten kameran linssin tarkennusrengasta täytyy kääntää vastapäivään parhaan mahdollisen kuvan aikaansaamiseksi. Tarkennusrengas on oletuksena liimalla lukittuna paikalleen, joka täytyi ensin raaputella irti askarteluveitsen kärjellä.

Yhdistäminen Home Assistantiin tapahtui helposti laittamalla kameran asetuksista MQTT päälle ja lisäämällä MQTT-palvelimen osoite. Lisäsin Home Assistantiin vielä Utility meterit, joilla voin seurata veden kulutusta päivä-, viikko-, ja kuukausitasolla.

4 thoughts on “Vesimittari vaihtui: Kulutuksen seurantaa kameran ja konenäön avulla”
Mulla on ollut tämä kameraversio jo pidempään käytössä, mutta ei ole ollut luotettava vanhan analogisen mittarin kanssa. Tuo sinun laserversio olisi varmasti luotettavampi, mutta en ole saanut aikaiseksi värkkäillä.
Itsellä ei ole kokemusta kameran käytöstä analogisen vesimittarin kanssa. Vähäisen kokemuksen perusteella tuo kamera ja softa vaatii ainakin että mittarin valaistus ja kameran tarkennus on kohdallaan. Oletko kokeillut dialEye:ta, toimisiko se paremmin?
Tuo vanha laser-versio ajoi asiansa, mutta se ei koskaan ollut täysin tarkka vaan jätätti aina jokusen prosentin todellisuudesta. Tarkkuus antoi kuitenkin suuntaa ja riitti automaatiotarkoituksiin.
Kiitos tästäkin artikkelista!
Oma ESP32-cam odottaa asennusta työpöydällä. 😀
Teetkö artikkelin miten tuo sinun kotipalvelin on asennettu ja toimii missä home assistant pyörii?
Siitä sopiva projekti viikonlopuksi. 😀 Palvelin pyörii Asuksen Mini-PC:llä ja siinä useampi eri palvelu, mukaanlukien Home Assistant, Docker -kontissa. Lyhyen kirjoituksen siitä aikanaan tein: https://hyotynen.iki.fi/kotiautomaatio/uusi-palvelin-asus-pn50-home-assistant-dockerissa/