Vodomeri optička metoda očitavanja. Vodomjeri sa daljinskim očitavanjem

Svi znaju da je lijenost motor napretka. To se desilo iu mom slučaju.

Stan ima 6 razvoda vode (3 hladne i 3 tople). Svaka tačka ima brojač.
Svaka 2 šaltera su skrivena iza otvora skrivena instalacija, jedan od otvora se nalazi iza ogledala koje je potrebno ukloniti da bi se došlo do njega.

Jednom mjesečno, od 20. do 25., potrebno je uzeti očitanja sa svih brojila i poslati podatke Društvu za upravljanje na obrascu određenog uzorka.

U jednom trenutku sam se umorio od otvaranja otvora, skidanja ogledala i odlučeno je automatizirati očitavanje.

Evo, na primjer, par otvora (otvorenih i zatvorenih):


Prvo sam pretražio internet za postojeće uređaje za automatizaciju. Našao sam samo jedan prikladan za mene - Pulsarski brojač "Pulsar" 6-kanalni. Moram reći da košta skoro 6000 rubalja! Zapravo, nisam ga nigdje vidio u maloprodaji, jer je previše specifičan proizvod i pretpostavlja se da će ih HOA kupiti za sve stanove u kući. Pokušao sam naručiti preko interneta. različitim mjestima, ali svaki put, čim je stigla isporuka, prodavac je nestao. Koliko sam shvatio, oni ne vole da rade sa "fizičarima", ili nisu bili previše uporni.
Pa, ne, ne, uradićemo to sami, i još jeftinije.

Tu je dobro došao Arduino Mega 2580 sa Ethernet modulom, koji je nekada kupljen za razne eksperimente.

Kada su radili popravke u stanu, od svake tačke na kojoj ima metara do oklopa na stepeništu, položeni su kablovi tipa UTP kat 5e. Ovo je bio jedan od zahtjeva kontrolne organizacije kako bi se sva očitavanja u budućnosti centralizirala. Budućnost još uvijek ne dolazi, a žice su dobro došle.

Osim toga, položeno je dosta upredenih parova od niskostrujne centrale stana do razvodne table u stepeništu (za nekoliko internet kanala, telefon, interfon, rezervu itd.), a pronađeno je samo nekoliko besplatnih da dovede signale sa brojila nazad u stan, a odatle u ormar sa opremom za kućno umrežavanje.

Kao rezultat, ono što imamo:

  • Vodomjeri
  • Arduino Mega 2580
  • Arduino Ethernet 3.0
  • Kutija za Arduino
  • Napajanje
  • Kabl za povlačenje od niskostrujnog štita do Arduino ormarića.
  • Debian kućni server sa Lighttpd i Mysql
Sami brojači su:


Eksperimentalno je utvrđeno da brojači rade ne jednostavno, već vrlo jednostavno. Kada posljednja cifra promijeni svoju vrijednost sa 9 na 0, zatvarač u unutrašnjosti brojila se zatvara i to znači da je iscurilo još 10 litara vode. Ostaje u ovom stanju sve dok vrijednost posljednje cifre ne postane jednaka 3. To jest, u stvari, treba da fiksiramo trenutak prelaska iz "otvorenog" u "zatvoreno" stanje. Naglasiću da fiksiramo SAMO činjenicu prelaska iz jednog stanja u drugo, jer sistem može biti bez napona, i zaista, nikad se ne zna kakvi su koliziji.

U trenutku kada se reed prekidač zatvori, Arduino poziva jednostavnu perl skriptu putem HTTP-a na serveru na kojem radi lighttpd. Skripta upisuje ovaj trenutak u bazu podataka. Druga skripta vam omogućava da vidite trenutno stanje brojača.

Arduino skica sa komentarima:
#include #include #include // Preuzmite ovu biblioteku ovdje: https://github.com/thomasfredericks/Bounce-Arduino-Wiring byte mac = (0x90,0xA2,0xDA,0x0E,0xF1,0x92); // MAC adresa našeg uređaja (napisana na naljepnici Ethernet štita) IPAddress ip(192,168,1,11); // IP adresa, ako je iznenada ne uspete da dobijete preko DHCP //IPAddress server(192,168,1,10); // ip-adresa udaljenog servera (koristi se dok nije postojalo ime) char server = "smarthome.mydomain.ru"; // Ime udaljenog servera char zahtjev; // Varijabla za formiranje linkova int CounterPin = (22,23,24,25,26,27); // Deklarišite niz pinova na kojima vise brojači char *CounterName = ("0300181","0293594","0300125","0295451","0301008","0293848"); // Deklarišemo niz imena brojača koje ćemo proslijediti Bounce serveru CounterBouncer = (); // Generiraj EthernetClient objekte za brojače odbijanja rclient; // Objekt za povezivanje na server void setup() ( //Serial.begin(9600); for (int i=0; i<6; i++) { pinMode(CounterPin[i], INPUT); // Инициализируем пин digitalWrite(CounterPin[i], HIGH); // Включаем подтягивающий резистор CounterBouncer[i].attach(CounterPin[i]); // Настраиваем Bouncer CounterBouncer[i].interval(10); // и прописываем ему интервал дребезга } // Инициализируем сеть if (Ethernet.begin(mac) == 0) { Ethernet.begin(mac, ip); // Если не получилось подключиться по DHCP, пробуем еще раз с явно указанным IP адресом } delay(1000); // даем время для инициализации Ethernet shield } void loop() { delay(1000); // Задержка в 1 сек, пусть будет. Мы уверены, что два раза в секунду счетчик не может сработать ни при каких обстоятельствах, потому что одно срабатывание - 10 литров. // Проверяем состояние всех счетчиков for (int i=0; i<6; i++) { boolean changed = CounterBouncer[i].update(); if (changed) { int value = CounterBouncer[i].read(); // Если значение датчика стало ЗАМКНУТО if (value == LOW) { //Serial.println(CounterPin[i]); sprintf(request, "GET /input.pl?object=%s HTTP/1.0", CounterName[i]); // Формируем ссылку запроса, куда вставляем имя счетчика sendHTTPRequest(); // Отправляем HTTP запрос } } } } // Функция отправки HTTP-запроса на сервер void sendHTTPRequest() { if (rclient.connect(server,80)) { rclient.println(request); rclient.print("Host: "); rclient.println(server); rclient.println("Authorization: Basic UmI9dlPnaJI2S0f="); // Base64 строка, полученная со значения "user:password" rclient.println("User-Agent: Arduino Sketch/1.0"); rclient.println(); rclient.stop(); } }

Vrti se na serveru: Debian, Lighttpd, Mysql. Zauzvrat, ima dvije perl skripte: jednu za pisanje stanja brojača u bazu podataka, drugu za prikaz trenutnih očitanja.

input.pl
#!/usr/bin/perl -w koristiti strict; koristite CGI::Fast; koristiti DBI; while(moj $q = CGI::Fast->new) ( main($q); ) sub main (moj $q = shift; moj $dbh = DBI->connect("dbi:mysql:database=smart_home;mysql_client_found_rows =1;mysql_enable_utf8=1;mysql_socket=/var/run/mysqld/mysqld.sock", "dbname", "password", ( RaiseError => 1, AutoCommit => 1, mysql_multi_statements => 1, mysql_> q SET NAMES "utf8";SET KARAKTERA "utf8") )) ili die "Ne mogu se povezati"; $dbh->(mysql_auto_reconnect) = 1; print "Content-Type: text/html; charset=UTF-8\n\ n"; print "OK\n"; moj $object = $q->param("object"); if ($object) ( $dbh->do(q(INSERT INTO water_count (object) VRIJEDNOSTI(?)) ,undef,$object) ili umri $dbh->errstr; ) )

result.pl
#!/usr/bin/perl -w koristiti strict; koristite CGI::Fast; koristiti DBI; # niz početnih brojača moj $start = ( "0300125" => 102,53, "0301008" => 75,31, "0300181" => 65,92, "0293594" => 54,51, "=04>4548" => 54,51, "=04>4548" => 75,31. 87.43); while(moj $q = CGI::Fast->new) ( main($q); ) sub main (moj $dbh = DBI->connect("dbi:mysql:database=smart_home;mysql_client_found_rows=1;mysql_enable_utf8=1 ;mysql_socket=/var/run/mysqld/mysqld.sock", "dbname", "password", ( RaiseError => 1, AutoCommit => 1, mysql_multi_statements => 1, mysql_init_command => q(SET" NAMES "utf8 SET CHARACTER SET "utf8") )) ili die "Ne mogu se povezati"; $dbh->(mysql_auto_reconnect) = 1; ispisati "Content-Type: text/html; charset=UTF-8\n\n"; ispisati "Current podaci brojila:
"; moj $sql = "SELECT count(*) as c,object FROM water_count group by object"; moj $sth = $dbh->prepare($sql); $sth->execute; while (moj ($count, $object) = $sth->fetchrow_array()) ( $start->($object) = sprintf("%.2f",$start->($object)+$count/100); ) $sth-> završi; foreach moj $objek (ključevi $start) (moj ($intcurrent,$fine) = split(/\./,$start->($object)); ispiši "$object $intcurrent.$fine
\n"; ) )

Mysql baza podataka sa jednom tabelom:
CREATE TABLE `water_count` (`object` varchar(20) NOT NULL DEFAULT "", `datetime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP) ENGINE=InnoDB DEFAULT CHARSET=utf8

Tabela ima samo dva polja. Prvi je naziv objekta (u našem slučaju, ovo je broj brojača). Drugi je datum i vrijeme u formatu TIMESTAMP, koji se automatski popunjavaju kada se red ubaci.

To je, u stvari, sve. Sada, u bilo koje vrijeme, mogu saznati koju vrijednost imaju svi brojači jednostavnim odlaskom na kućni server pomoću pretraživača.

Šta je sledeće?
Onda želim mjesečni automatski ispis na popunjenom obrascu.
Također želim spojiti brojilo električne energije s prijenosom podataka u Mosenergosbyt, a zatim s njihovim plaćanjem.
Statistika, grafikoni i druge radosti rada sa podacima.

Naš svakodnevni život sve sigurnije uključuje širok izbor brojača potrošenih resursa, ponekad pomaže da se malo uštedi na računima za komunalne usluge. Prvi od njih (nakon električnih brojila, naravno) su obično vodomjeri. Sve bi bilo super kada bi većina kuća (posebno starih zgrada) bila predviđena za njih odgovarajućem mestu! Recimo, u mom slučaju vodomjeri su završili u najmračnijem kutku kupatila, pa se mjesečno očitavanje pretvorilo u uzbudljivo puzanje ispod toaleta uz baterijsku lampu :).

Čini se da ostaje samo da se pomirimo s ovakvim stanjem stvari, ali čak iu procesu ugradnje vodomjera primijetio sam da iz njih izlaze neke žice (slika 1):

„Ovo je za povezivanje centralizovani sistem uzimajući očitavanja”, rekao je majstor. - "ali nemojte očekivati ​​da će uskoro biti instaliran u vašoj kući." Za mene, kao ljubitelja svih vrsta sistema, ovo je dalo dobru hranu za dalje razmišljanje. Njihov rezultat želim da vam skrenem pažnju.

S obzirom da sam želeo da vidim litre koji su u toku ne samo u toaletu, već apsolutno nisam želeo da vučem žice tamo, razvijen je sistem koji se sastoji od dva bloka: čitača-predajnika na baterije instaliranog u kupatilu i prijemnik-indikator napravljen u obliku stonog sata sa dodatnim karakteristikama.

Čitač-predajnik

Proučavanje pasoša za vodomjer donijelo je malo jasnoće za šta je pogodna signalna linija koja izlazi iz njega. Ispostavilo se da se unutar brojila nalazi trskasta sklopka koja aktivira i otpušta kontakte nakon prolaska kroz svakih 10 litara vode. U dokumentu je također navedeno da je izlazni signal usklađen sa nekim NAMUR standardom. Došlo je do površnog pretraživanja interneta sljedeću šemu priključak reed prekidača prema ovom standardu (slika 2):

Kao što vidimo, pored samog reed prekidača, u kolu su još dva dodatna otpornika R1 i R2, od kojih je jedan spojen paralelno, a drugi serijski sa kontaktima reed prekidača. Odmah se mora reći da oni ne donose nikakvu korist poslovanju vodnog knjigovodstva, već su potrebni samo za kontrolu lomljenja i kratkog spoja žica na području od brojila do kontrolni uređaj. Otpor petlje mjerača, respektivno, uzima vrijednost R2 ili R1 + R2 sa zatvorenim i otvorenim kontaktima reed prekidača, respektivno.

Kao princip rada sistema odlučeno je da se izabere prenos brojača impulsa preko radio kanala i njihovo brojanje u prijemnom uređaju opremljenom displejom. Ovakav pristup je omogućio da se jedinica za očitavanje učini izuzetno jednostavnom, a samim tim i minimalno zahtjevnom u smislu potrošnje energije. Odašiljač je bio baziran na jednom od brojnih daljinskih upravljača od radio-kontrolisanih automobila koje je pokvario moj sinčić;) .

Pokazalo se da je krug daljinskog upravljača, odabran kao osnova za jedinicu za čitanje, baziran na čipu PT8A977B kompanije Pericom Technologies. Tipična shema Uključivanje ovog mikrokola je prikazano na Sl. 3. Mikrokolo omogućava obradu pritiska do 5 tastera sa mogućnošću kontrole snage predajnog stepena. Vlastita potrošnja mikrokola nije veća od 5 μA u stanju pripravnosti i ne veća od 100 μA kada se pritisnu tipke.

Na prvi pogled se činilo da je moguće uopće bez izmjena originalnog kola, jednostavnim povezivanjem izlaza brojača umjesto dugmadi na daljinskom upravljaču. U stvarnosti, sve se pokazalo složenijim: prvo, zbog prisustva NAMUR kola, a drugo, zbog mogućeg dugog zadržavanja brojača kontakata u zatvorenom stanju. Stoga je bio potreban “posrednik” između vodomjera i radio predajnika, pretvarajući NAMUR standardni signal u jednostavne logičke nivoe “0/1” i ograničavajući trajanje odaslanih impulsa. Vjerovatno bi se sva ova funkcionalnost mogla implementirati na analognim mikro krugovima, ali mi se ispostavilo da je lakše koristiti jedan mikrokontroler tipa ATTiny13V (slika 4):


Kolo je spojeno na tačke sa odgovarajućim brojevima označenim crvenom bojom na sl. 4. U osnovi, mikrokontroler je u stanju mirovanja i čeka da stignu prekidi od kontakata brojača. Kada stignu, „probudi se“ i generiše impulse normalizovanog trajanja od 250 ms na izlazima VRUĆEG i HLADNOG signala. Da bi se povećala otpornost na buku i pogodnija obrada impulsa na prijemnoj strani, oni su praćeni stroboskopskim impulsom istog trajanja na STROBE izlazu. Spoljašnji izgled jedinice za očitavanje montirane u kućištu kontrolne ploče prikazan je na sl. 5, 6:


Prijemnik-indikator

Budući da brojač impulsa koji slijedi nije vremenski ograničen i nasumičan, očigledan zahtjev za prijemnu i pokaznu jedinicu je njen 24-satni rad i spremnost da primi ove impulse. Budući da nije bilo želje za proizvodnjom dodatnih uređaja koji, osim toga, troše električnu energiju 24 sata dnevno, odlučeno je da se obični desktop satovi opremiju ovom funkcijom. U originalnoj (fabričkoj) verziji to su bili obični kineski budilniki sa LED indikatorom koji su kod mene radili oko 6 godina (slika 7):


Njihov glavni nedostatak je bio tajming bez upotrebe kvarcnog rezonatora, zbog sinhronizacije sa frekvencijom mreže. Kada je greška ovog sata počela dostizati ±20 minuta dnevno (!), odlučeno je da se isključi i ukloni do boljih vremena. I evo vrlo dobrog razloga za njihovu promjenu.

Kao rezultat površnog upoznavanja s izvornim "punjenjem" sata, postalo je jasno da se iz njega može koristiti samo mrežni transformator. Kako smo željeli da novi sat učinimo što informativnijim i raznovrsnijim, odlučeno je da se kao ekran koristi dvolinijski indikator s tekućim kristalima 16x2 sa pozadinskim osvjetljenjem, koji po veličini dobro odgovara „prozoru“ u kućištu. Šema nove verzije sata prikazana je na sl. osam:


Precizno mjerenje vremena i neprekidan rad sata u slučaju nestanka struje vrši se pomoću mikrokola DD3 tipa DS1307. Measurement sobnoj temperaturi proizvodi se jednom u minuti koristeći DD1 čip tipa DS18B20. Uređaj je baziran na DD2 mikrokontroleru tipa ATMega8515, koji obrađuje pritiskanja tastera, čita podatke o satu i termometru, prima i broji radio impulse sa vodomera, šalje informacije indikatoru i snabdeva zvučni signali na zvučnik BA1. Mikrokontroler radi sa taktom od ugrađenog RC rezonatora, što je omogućilo dodatno smanjenje dimenzija ploče (slika 9):


Konektor X1 na ploči sa satom dizajniran je za povezivanje prijemnog radio modula, "posuđenog" iz pokvarene igračke. Dijagram ove ploče (sa označenim tačkama povezivanja sa satom) i njegovim izgled nakon uklanjanja nepotrebnih detalja prikazani su na sl. 10.11.


Izgled rezultirajućeg sklopa uređaja prikazan je na Sl. 12:


Rad sa sistemom

Čitač-predajnik našeg sistema se zapravo pokazao kao neodržavan (sa izuzetkom zamene baterija), tako da se sav posao obavlja samo sa prijemnikom-indikatorom (sat). U skladu sa potrebama autora, sat ima minimalnu potrebnu funkcionalnost. Upravljanje se vrši pomoću četiri dugmeta MODE, SET, NEXT (+), BACK (-). Odmah nakon uključivanja, na displeju se prikazuje glavni ekran (Sl. 13), koji sadrži sledeće informacije: trenutno vreme, dan u nedelji i datum, temperatura vazduha. Dodatno, na ekranu se može prikazati simbol aktiviranog budilnika i indikator aktivnosti radio kanala (lijevo i desno od sata, respektivno):


Pritiskom na tipku MODE mijenjaju se načini prikaza, odnosno ekrani uređaja. Drugi ekran sadrži akumulirana očitanja vodomjera od posljednjeg resetiranja:


Očitavanja se prikazuju sa tačnošću od 0,1 m 3 i direktno su pogodna za prenos do centara naselja. Da ih resetujete (na primjer, nakon mjesečnog očitavanja), samo pritisnite tipku BACK(-). Sledeći pritisak na dugme MODE otvara ekran sa informacijama o verziji firmvera i autoru, a drugi pritisak nas vraća na glavni ekran (slika 13). Uređaj može prikazati svaki ekran neograničeno; ovo se može koristiti, na primjer, za praćenje potrošnje vode u realnom vremenu.

Za konfiguraciju uređaja koristite tipku SET, koja uređaj stavlja u mod za podešavanje parametara. Ako se ovo dugme pritisne dok je prikazan glavni ekran, pojavljuje se ekran za podešavanje vremena (slika 15):


Uređeni parametar je podvučen sa dvije crtice u donjem redu, njegovo povećanje i smanjenje se vrši tipkama NEXT (+) i BACK (-), a prijelaz na sljedeći parametar se vrši tipkom SET. Imajte na umu da umjesto podešavanja sekundi, oba tastera NEXT(+) i BACK(-) ih vraćaju na nulu, što je korisno za fino podešavanje sata na osnovu signala tačnog vremena. Kada se sati, minute i sekunde završe, ponovnim pritiskom na dugme SET otvara se ekran za podešavanje datuma (slika 16):


Uređivanje parametara na ovom ekranu se vrši na isti način. Imajte na umu da se trenutni datum automatski prilagođava nakon unosa tekućeg mjeseca, što vas sprečava da greškom postavite pogrešan datum, kao što je 31. april ili 30. februar. Godina u postavkama se može odabrati unutar (20)13-(20)25. Dan u sedmici se izračunava automatski. Sljedećim pritiskom na tipku SET otvara se ekran za podešavanje alarma (slika 17):


Ovdje se, kao i obično, redom postavljaju sati i minute alarma, kao i način njegovog rada (posljednji parametar). Režim se ciklički bira između sljedećeg:

pon-ned- aktivira se određenog dana u sedmici

$$ - rade samo radnim danima

** - dnevni rad

-- - alarm je isključen

Ako se pritisne tipka SET dok su očitanja vodomjera prikazana, poziva se ekran za podešavanje očitavanja vodomjera (sl. 18). Ovo može biti korisno ako se, iz nekog razloga (na primjer, zbog nestanka struje), očitanja sistema razlikuju od stvarnih očitanja brojila.


Pomoću dugmadi NEXT(+) i BACK(-) možete podesiti akumulirana očitanja u intervalu od 0,1 m 3 . Izbor parametra za uređivanje vrši se, kao i obično, pomoću dugmeta SET. Da biste se u bilo kom trenutku vratili na glavni ekran sa ekrana za podešavanje, jednostavno pritisnite dugme MODE.

Bilješke o montaži i postavljanju

Zbog činjenice da su se sheme oba bloka pokazale izuzetno jednostavne, štampane ploče nije dizajniran za njih. Iskreno govoreći, autoru bi trebalo nekoliko puta više vremena da napravi takvu ploču nego da sastavlja i debuguje gotove uređaje na matičnim pločama zajedno. Oba uređaja zahtijevaju minimalno podešavanje, što je u osnovi odabir ispravne dužine prijemne i odašiljačke antene.

Obične antene iz radio-kontrolirane igračke (teleskopska antena dužine 30 cm na daljinskom upravljaču i komad žice dužine 10 cm na prijemniku) pružaju samo minimalni komunikacijski domet: oko 5-6 metara unutar vidnog polja. Uzimajući u obzir stvarne udaljenosti unutar stana, kao i raspoloživost, po pravilu, armirano betonski zidovi između kupatila i ostatka stana, to očigledno nije dovoljno. Stoga su obje antene zamijenjene komadima fleksibilne žice, a odabir njene dužine je izvršen eksperimentalno. Praksa je pokazala da se sa dužinom odašiljačke antene od oko 0,6 m, a prijemnom antenom od 1 m, radio signal savršeno prima u cijelom stanu (razmak između predajnika i prijemnika je oko 25 m, uzimajući u obzir dvije betonske particije). U isto vrijeme, očito je da takav domet nije granica, a stabilan rad radio kanala može se postići čak iu dvo-trokatnoj kući.

Zaključak

U zaključku, dotaknimo se pitanja stabilnosti i otpornosti sistema na buku koja do sada nisu bila dotaknuta. Na prvi pogled može se činiti da ga nije teško "pobrkati" s bilo kojom radio-kontroliranom igračkom istog dometa. U stvari, to nije slučaj, jer nije uzalud da se data gating koristi u kolu pomoću TURBO signala PT8A977B čipa! Autor još nije naišao ni na jedan radio daljinski upravljač u koji bi bio uključen ovaj signal, što znači da čak i ako vaš najbliži susjed iznenada odluči pasti u djetinjstvo i upravljati automobilom, ništa ne ugrožava stabilnost sistema. Da ne spominjemo činjenicu da signal susjedovog daljinskog upravljača sa standardnom antenom, najvjerovatnije, jednostavno "neće doći" do našeg prijemnika.

U slučaju kratkotrajnog nestanka mrežnog napajanja, u našem prijemnom uređaju se koristi neisparljivi čip sata, a sve važni parametri(uključujući očitanja brojila) se pohranjuju u EEPROM mikrokontrolera. Kada se struja isključi, odbrojavanje impulsa od 10 litara je naravno obustavljeno, ali se akumulirana vrijednost ne gubi i može se naknadno ručno ispraviti.

Unatoč činjenici da se zbog korištenja jednostavnih razdjelnika u čitaču ispostavilo da je njegova statička potrošnja struje relativno velika (od 250 do 400 μA), iskustvo sa sistemom je pokazalo da je jedan set od dvije AA alkalne baterije pouzdano dovoljan za 4-5 mjeseci neprekidan rad predajnik. Ovaj rezultat može se smatrati sasvim prihvatljivim.

Uređaj se pokazao toliko jednostavnim i korisnim da jednostavno ne želite stati na tome. Prvo, neće mu biti teško dodati funkcije prikaza u budućnosti i drugim brojilima, kao što su struja ili plin. Drugo, budući da se radio signal prima bilo gdje u kući, u kući može postojati nekoliko takvih uređaja, tj. Ova funkcija se može lako opremiti drugim satovima ili drugim gadžetima. I treće, informacije primljene putem radija očigledno su vredne više od jednostavnog prikazivanja na ekranu desktop sata. Na primjer, možete napraviti modul koji prolazi prihvaćeno svjedočenje brojača na intranet lokaciju ili server pametna kuća, a tu se već implementiraju programi za obračun dnevne potrošnje, indikatori prekomjerne potrošnje itd. Također vrijedi zapamtiti da su neke menadžerske kompanije u mogućnosti da očitaju brojila automatski, koristeći telefonsku liniju i DTMF signale... pa, ovo su potpuno ružičasti snovi :). Međutim, ko zna, možda će jednog dana i postati stvarnost?



Kako vam se sviđa ovaj članak?

  • Vrste vodomjera
  • Princip rada impulsnih izlaza na brojilima
  • Metode za automatsko dobijanje očitavanja potrošnje vode sa brojila
  • Uređaj za očitavanje pomoću 1 žice
  • Čuvanje očitanja u bazi podataka i grafički prikaz podataka o potrošnji vode
  • Prenos očitavanja na društvo za upravljanje(teorija)

Uvod

Trenutno se široko koriste univerzalni stambeni vodomjeri. Ako skrenemo s teme kućna automatizacija, mislim da je ovo jako dobar trend - ipak je dovoljno voditi evidenciju o potrošnji vode (i ne samo vode) efektivna mera doprinosi očuvanju resursa. Naravno, u modernoj ruskoj stvarnosti ( jeftino voda, struja, naš mentalitet) zvuči jako čudno, ali negdje u srcu sam uvjerena da već danas trebamo početi paziti na štednju resursa. A ako mislite ne tako globalno, onda vam današnji šalteri barem omogućavaju da uštedite na računima javna komunalna preduzeća. Nesto sto sam skrenula...

Vrste vodomjera za domaćinstvo

Moderni vodomjeri, prema čijim očitanjima onda plaćamo račun za komunalije, uglavnom su dvije vrste (u smislu kućne automatizacije):

  • Nema izlaza
  • With impulsni izlaz
  • RS 485 digitalni izlaz (nije pokriven u ovom članku)
  • Sa radio izlazom (nije obuhvaćeno u ovom članku)

Sa prvima je sve jasno: pogledao sam, zapisao, poslao društvu za upravljanje. Nema automatizacije. Iako tamo zanatlije koji uspiju da očitaju sa ovakvih brojača pomoću web kamera („slikaju” i zatim koriste posebne algoritme za prepoznavanje brojeva - primjer implementacije) ili instaliraju posebne optičke čitače za brzinu rotacije češlja na brojaču (najčešće ovo je isto „sjajno crveno svjetlo“ sa starih optičkih kompjuterskih miševa - da, da, ovo je kamera sa vrlo niskom rezolucijom) s naknadnom obradom i konverzijom u specifične brojke potrošnje vode. Ako imate mjerač bez utičnica i ne želite trošiti novac na ugradnju novih brojila, onda možete proguglati slična rješenja - ima ih puno i gotovo sve se može učiniti "svojim rukama". Ali, po mom mišljenju, takav pristup je više istraživačke prirode nego stabilno jednostavno rješenje korištenjem impulsnih izlaza posebno dizajniranih za ovu svrhu u vodomjerima.

Pogledajmo bliže brojače sa impulsnim izlazom. Opšti princip rad je vrlo jednostavan: senzor daje jedan puni impuls kada prođe određena količina tekućine (ovisno o karakteristikama određenog mjerača).

Pulsni izlaz zasnovan na ekspoziciji magnetsko polje permanentni magnet na reed prekidaču, u kojem dolazi do naizmjeničnog zatvaranja i otvaranja kontakata reed prekidača. Reed prekidač generiše pasivni izlazni signal ("suhi kontakt"), koji se može očitati bilo kojim brojačem impulsa.

Zadatak se svodi na prebrojavanje impulsa u jedinici vremena i njihovo množenje sa "cijenom" jednog impulsa. U pravilu, 1 puls = 10 litara, u nekim brojačima ova vrijednost je 1 litar. Koja je cijena pulsa vašeg brojila možete pronaći u tehničkom listu. Takve informacije se ponekad nalaze na samom mjeraču.

Oprema za očitavanje impulsa sa vodomjera

U mojoj implementaciji Pametne kuće, gotovo svi senzori su povezani na 1-žičnu sabirnicu, a pulsni brojači za obračun potrošnje vode nisu izuzetak. koristio sam gotov uređaj iz radioseti prodavnice - "Modul brojača sa bafer memorijom 2 kanala". Kao što naziv govori, uređaj će vam omogućiti da očitate očitanja sa dva brojača. Uređaj je baziran na Maxim DS2423 čipu, a ako imate određene vještine, neće biti teško sami zalemiti takav uređaj.

U ugrađenoj memoriji uređaja postoje dvije cjelobrojne varijable Counters.A i Counters.B, koji pohranjuju broj "prebrojanih" impulsa na svakom ulazu (topla i hladna voda). Svakoj varijabli dodijeljeno je 32 bajta - to je dovoljno s velikom maržom dugi niz godina, čak i uz impulsnu cijenu od 1 litre.

Ugrađena interna baterija omogućava pohranjivanje rezultata rada bez obzira na vanjsko napajanje, a uređaj će također brojati impulse i pohranjivati ​​informacije u internu memoriju, čak i ako je isključen iz 1-wire mreže i napajanja. Po mom mišljenju ovu odluku savršeno za naše potrebe.

Naš uređaj je spojen na uobičajenu 1-žičnu sabirnicu na standardni način preko RG-11 (6p4c) konektora: DATA, GND, +12V (u kolo senzora ugrađen je stabilizator napona sa 12V).

Brojila su također povezana prilično jednostavno, ali pričvršćivanje je već "ispod vijka" (savjetujem vam da nabavite set dobrih malih odvijača kako ne biste oštetili konektor uređaja). Jedan konektor je zajednički (GND), na njega je potrebno spojiti kontakte sa oba brojača. I dva ulaza za svaki od brojača posebno.

Stabilnost, propušteni impulsi i lažno pozitivni rezultati

Uređaj je iznenađujuće stabilan. Za više od pola godine rada, neslaganje između "pročitanih" stvarnih očitanja iznosilo je oko 20 litara za vruće i 40 litara za hladnom vodom na manju stranu. Uz prosječnu mjesečnu potrošnju vode od 4 i 6 kubnih metara, to je samo oko 0,1% - ne mnogo. Svakih nekoliko godina možete ručno "ispraviti" vrijednosti u memoriji uređaja.

Na stabilnost rada mogu uticati sljedeći faktori:

  • Kvalitet samih vodomjera (u mom slučaju imao sam sreće sa Valtec mjeračima)
  • Prisutnost izvora jakih magnetnih polja u blizini (ožičenje napajanja, različiti izvori elektromagnetnih smetnji)
  • Pouzdanost fiksiranja izlaza brojača u konektoru uređaja
  • Kvaliteta ugrađene baterije (i potrebno je pratiti njen napon)

Analoge uređaja iz Radioseti možete pronaći na Internetu (na primjer, od HobbyBoards za 30 dolara isključujući dostavu iz SAD-a) ili sami zalemiti, ali, da budemo iskreni, u smislu omjera cijene i kvalitete najbolji uredjaj Nisam još vidio.

Pohranjivanje očitanja brojila u bazu podataka

Na Smart Home serveru (koristim Raspberry Pi sa Raspbian OS-om i 1-wire USB master mreže DS9490R), prema rasporedu, svakih N minuta (opciono) se pokreće skripta koja, koristeći OWFS biblioteku, čita očitanja sa 1-žičnog brojača impulsa i pohranjuje ih u DBMS.

Opšti dijagram povezivanja je prikazan u nastavku:


Poseban članak će biti posvećen čitanju vrijednosti s 1-wire uređaja i detaljnijem upravljanju njima pomoću biblioteke OWFS.

U Linux konzoli, očitavanje izgleda otprilike ovako:


A grafikoni dobijeni na osnovu podataka sa 1-žičnog brojača impulsa izgledaju otprilike ovako:

Dan u životu: očitavanja dnevne potrošnje vode.
Biblioteka Highcharts se koristi za pravljenje grafikona.

Automatski prijenos očitanja sa vodomjera na kompaniju za upravljanje

Ukoliko baza podataka sadrži ažurne podatke o potrošnji vode, moguće je izračunati njenu mjesečnu potrošnju i prenijeti je društvu za upravljanje.

Do danas (barem u Moskvi) mnogi KZ-i svjedoče koristeći:

  • SMS poruke (izvodljivo)
  • E-mail (izvedivo i vrlo jednostavno)
  • Putem web stranice Krivičnog zakonika (izvodljivo, ali morat ćete shvatiti kako njihova web stranica funkcionira i naučiti kako oponašati "ručni" prijenos čitanja pomoću skripte)
  • API za stambeno-komunalne usluge (još nije implementiran, ali smatram da će se uskoro pojaviti)

Ali ovo je tema budućih članaka.

nalazi

Uz rješenja koja su danas dostupna (i hardverska i softverska), vrlo je lako očitati očitanja sa vodomjera, pohraniti ih u bazu podataka, a zatim vizualizirati, koristiti za statističke proračune, prenijeti u kompaniju za upravljanje - čak i ako to ne činite. znate koristiti lemilicu i zar niste guru programiranja. Potrebno je samo malo strpljenja, želje i ne plašiti se novog 🙂

Mjerači vode/hladne i tople vode

Većina stanova u Moskvi već ima vodomjere. Kako pravilno uzeti očitanja, prenijeti ih, šta će se dogoditi ako se očitanja ne prenesu na vrijeme? Portal mos.ru razvio je malo uputstvo o ovom pitanju.

Kako uzeti očitanja mjerača hladne i tople vode?

Očitavanja se uzimaju na isti način za oba brojača.

Zapremina vode se smatra litrama i kubnim metrima. Kubni metar je kocka dimenzija 100 x 100 x 100 cm 1 kubni metar = 1000 litara. 1 litar = 0,001 kubni metar.

Ispred vas na tezgi je 8 ćelija sa brojevima - pet crnih i tri crvene. Crni označavaju broj utrošenih cijelih kubnih metara vode, a crveni broj litara. 744 litara je 0,744 kubnih metara. To jest, 00017744 je 17.774 litara vode ili 17.774 kubnih metara.

Morate prenijeti brojeve iz crnih ćelija, a zaokružiti crvene na cjelobrojnu vrijednost. Ako je broj na šalteru 00017744, zaokružujemo ga na 00018 i u ovaj obrazac upisujemo u papirnatu ili elektronsku formu: 00018.

Za mjesec dana, brojevi na šalteru će biti, na primjer, 00022010.

Kako prenijeti očitanja vodomjera u Moskvi?

Očitanja brojila mogu se prenijeti što je brže moguće putem osobnog računa na web stranici mos.ru. Sačuvaj u Lični račun podatke o stanu jednom, a naknadno ih ne morate unositi ručno. Ostaje samo da se blagovremeno unesu brojevi sa šaltera u vidu prenosa dokaza.

Procedura je sljedeća:

  1. Idemo na lični račun na my.mos.ru, odaberite odjeljak "Moji podaci" i karticu "Plaćanje komunalnih usluga"
  2. Popunjavamo predložene kolone:
    • Smišljamo naziv stana za koji ćemo platiti - na primjer, "naša kuća". Važno: U LC-u možete podesiti prijenos očitanja sa brojila iz drugih stanova, koji se mogu nazvati, na primjer, "Mamin stan", "Baka" ili "Ujka Petja".
    • broj stana,
    • 10-cifreni kod uplatitelja (nalazi se sa desne strane gornji ugao EPD),
  3. Mi čuvamo podatke. Sada možete prenositi podatke vodomjera i ne gubite vrijeme na popunjavanje istih podataka svaki put kada prenosite očitanja.

Na istom mjestu, u Ličnom računu, možete konfigurirati prijem obavještenja. Uz njih nećete propustiti rokove za prijenos podataka - podsjetnici da je došlo vrijeme za očitavanje brojila bit će poslani na vašu poštu.

Da li je prijenos podataka obavezan? Idemo u. mos.ru u odjeljku "Usluge" odaberite "Stanovanje, stambeno-komunalne usluge, dvorište", zatim "Prijem očitanja vodomjera", kliknite "Nabavite uslugu". U obrascu za prijavu biramo stan, unosimo očitanja vodomjera i kliknemo "Pošalji".

Ako ste propustili rok za slanje očitanja vodomjera...

Ako niste imali vremena da unesete očitanja vodomjera za tekući mjesec, tada će vam biti pripisana prosječna mjesečna vrijednost za posljednjih 6 mjeseci. Razlika između prosječne vrijednosti i stvarnog očitanja vodomjera će se uzeti u obzir sljedećeg mjeseca nakon što unesete stvarno očitanje.

Ako ne unesete indikatore 3 uzastopna mjeseca ili više, usluga prijenosa podataka preko ličnog računa se obustavlja. Da biste ga vratili, donesite trenutna očitanja brojila u Društvo za upravljanje. Sljedećeg mjeseca ćete moći ponovo da prenosite očitanja putem interneta, a biće izvršen i ponovni obračun.

Gotovo svi brojači koje koriste naši sunarodnici su mehanički, zbog čega ne koštaju toliko, ali očitanja se moraju uzeti i poslati na komunalne usluge na svoju ruku. U razvijenijim zemljama odavno su prešli na specijalna brojila koja imaju sistem daljinskog očitavanja. Zbog činjenice da je to praktičnije, ljudi u Rusiji počinju shvaćati potrebu za kupovinom upravo takvih uređaja.

  • Kako biti?

    Čini se da je sve obaveze za očitavanje mnogo lakše naplatiti uslužnim organizacijama, ali to je samo na prvi pogled. Zamislite samo da ste upravo takav zaposlenik i da za jedan dan trebate obići gotovo cijeli prostor. Ovo uzima u obzir činjenicu da je većina stanovništva možda samo na poslu tokom vaših obilazaka. Ili vas jednostavno ne puste u stan, na šta, zapravo, stanari imaju pravo.


    U čemu je problem, kažete, samo treba pomeriti brojila na podest, kao i uređaje za očitavanje struje! A ovdje nije. Ovo je prilično skup i dugotrajan poduhvat, jer će biti potrebno napraviti potpuno drugačiji raspored cjevovoda i promijeniti tehnologiju izgradnje.


    Općenito, takvo svjedočanstvo je nezgodno ne samo za pretplatnike, već i za same centre za naselja i informacije, jer svakog mjeseca broj instalirana brojila raste, što znači da je potrebno obraditi sve više podataka.

    Postoji rješenje! Automatski brojači

    Nećemo ulaziti u detalje, a dovoljno ukratko ćemo objasniti princip rada mjerača iverice. Uz pomoć posebnog sistema ovog uređaja, koji se zasniva na malom magnetu i reed prekidaču, uz njihovu pomoć će se kreirati signal višestruki od litara koji su svoje kretanje izvršili direktno kroz brojilo. Zahvaljujući tome, apsolutno je moguće instalirati uređaj za dupliranje na vaš sletanje, iz koje je kasnije lakše uzimati očitanja.


    Pa, druga faza dispečerstva biće prenošenje indikacija o broju potrošenih kocki komunalcima. Za to, brojilo od iverice ima poseban koncentrator koji će očitavanja vodomjera prenositi u kontrolnu sobu putem interneta.

    Prednosti vodomjera sa daljinskim očitavanjem

    Koje su prednosti takvih brojila i zašto ih treba kupiti za rad? Saznajmo!

    Najnepovoljniji aspekt u radu brojila je isporuka njegovih očitanja komunalnim uslugama. I sami ste mnogo puta radili ovaj turobni ritual: prvo morate uzeti očitanja, zapisati ih na račun, a zatim ih lično odnijeti u centar naselja ili, u najbolji slucaj, ispuniti poseban obrazac na online resursu koji održava provajder usluga.


    Ručna isporuka očitavanja vodomjera je vrlo, vrlo problematična operacija. Prvo, što je još gore za komunalno preduzeće, nesavjesni građani mogu na računu naznačiti drugačiji iznos, mnogo manji. I drugo, nemaju svi vremena da na vrijeme dostave informacije kompaniji za upravljanje, jer osoba može biti veoma zauzeta na poslu i rijetko biti kod kuće.

    A evo i liste profesionalaca:

    1. Jedna od glavnih prednosti, možete zaboraviti na trčanje s računima za institucije i urede.
    2. Upravitelj kuće će u svakom trenutku imati pristup podacima o očitanju vodomjera.
    3. Stanari će odahnuti, jer niko drugi neće „napasti“ njihov stan zbog očitavanja brojila.
    4. Podatke će biti lako provjeriti.
    5. Očitavanja će stići u klirinšku kuću istog dana, tako da više neće biti zabune oko vremena.

    Zahvaljujući ovakvim brojačima možete lako automatizovati proces uzimanja očitavanja, a uvek ćete biti sigurni da će ona biti tačno i na vreme poslata vašoj kompaniji za upravljanje. Stoga razmislite o zamjeni manje pouzdanog vodomjera na potpuno automatizirani.