Sadržaj:

Mjerač razine ultrazvučnog spremnika: 5 koraka (sa slikama)
Mjerač razine ultrazvučnog spremnika: 5 koraka (sa slikama)

Video: Mjerač razine ultrazvučnog spremnika: 5 koraka (sa slikama)

Video: Mjerač razine ultrazvučnog spremnika: 5 koraka (sa slikama)
Video: Kako da proverite i dopunite rashladno sredstvo odnosno antifriz? 2024, Srpanj
Anonim
Ultrazvučni mjerač razine spremnika
Ultrazvučni mjerač razine spremnika
Ultrazvučni mjerač razine spremnika
Ultrazvučni mjerač razine spremnika

Trebate pratiti razinu tekućine u bušotini velikog promjera, spremniku ili otvorenoj posudi? Ovaj će vam vodič pokazati kako napraviti sonarni beskontaktni mjerač razine tekućine pomoću jeftine elektronike!

Gornja skica prikazuje pregled onoga što smo htjeli s ovim projektom. Naša ljetnikovac ima bunar velikog promjera za opskrbu pitkom vodom za korištenje u kući. Jednog smo dana moj brat i ja razgovarali o tome kako je naš djed ručno mjerio razinu vode kako bi pratio potrošnju vode i priljev tijekom cijelog ljeta kako bi izbjegao prekoračenje. Mislili smo da bismo s modernom elektronikom trebali moći oživjeti tradiciju, ali s manje ručnog rada. S nekoliko programskih trikova uspjeli smo upotrijebiti Arduino sa sonarnim modulom za mjerenje udaljenosti do vodene površine (l) s razumnom pouzdanošću i točnošću od ± nekoliko milimetara. To je značilo da bismo mogli procijeniti preostali volumen V, koristeći poznati promjer D i dubinu L, s točnošću od ± 1 litre.

Budući da se bunar nalazi oko 25 m od kuće i htjeli smo zaslon u zatvorenom prostoru, odlučili smo se za korištenje dva Arduina s podatkovnom vezom između njih. Možete jednostavno izmijeniti projekt tako da koristi samo jedan Arduino ako to nije vaš slučaj. Zašto ne biste koristili bežični prijenos podataka? Dijelom zbog jednostavnosti i robusnosti (manja je vjerojatnost da će žica biti oštećena vlagom), a dijelom zato što smo htjeli izbjeći korištenje baterija na strani senzora. Žicom bismo mogli prenijeti i prijenos podataka i napajanje kroz isti kabel.

1) Arduino modul u kući Ovo je glavni Arduino modul. Poslat će signal okidača na Arduino u bušotini, primiti izmjerenu udaljenost i prikazati izračunati preostali volumen vode na zaslonu.

2) Arduino i sonarski modul na strani izvora Svrha ovog Arduina je jednostavno primiti signal okidača iz kuće, izvršiti mjerenje i poslati udaljenost od modula sonara do razine vode. Elektronika je ugrađena u (relativno hermetički zatvorenu) kutiju, s plastičnom cijevi pričvršćenom na prijemnu stranu sonarnog modula. Svrha cijevi je smanjiti pogreške mjerenja smanjenjem vidnog polja tako da prijemnik "vidi" samo površinu vode.

Korak 1: Dijelovi, testiranje i programiranje

Dijelovi, testiranje i programiranje
Dijelovi, testiranje i programiranje
Dijelovi, testiranje i programiranje
Dijelovi, testiranje i programiranje
Dijelovi, testiranje i programiranje
Dijelovi, testiranje i programiranje

U ovom smo projektu koristili sljedeće dijelove:

  • 2 x Arduino (jedan za mjerenje razine tekućine, jedan za prikaz rezultata na zaslonu)
  • Osnovno napajanje od 12V
  • Ultrazvučni (sonarski) modul HC-SR04
  • Modul LED zaslona MAX7219
  • 25 m telefonski kabel (4 žice: napajanje, uzemljenje i 2 podatkovna signala)
  • Montažna kutija
  • Vruće ljepilo
  • Lem

Cijena dijelova: oko 70 €

Kako bismo bili sigurni da je sve radilo kako treba, prvo smo izvršili sva lemljenja, ožičenje i jednostavno testiranje na klupi. Na internetu postoji mnogo primjera programa za ultrazvučni senzor i LED modul, pa smo ih samo koristili kako bismo bili sigurni da izmjerena udaljenost ima smisla (slika 1) i da smo uspjeli uhvatiti ultrazvučni odraz od vodene površine na- web mjesto (slika 2). Također smo proveli temeljito testiranje podatkovne veze kako bismo se uvjerili da radi ikad na velike udaljenosti, što se pokazalo kao nikakav problem.

Ne podcjenjujte vrijeme provedeno na ovom koraku jer je važno znati da sustav radi prije nego što uložite napor da sve lijepo ugradite u kutije, iskopate kabele itd.

Tijekom ispitivanja smo shvatili da sonarski modul ponekad hvata refleksiju zvuka iz drugih dijelova bušotine, poput bočnih stijenki i cijevi za opskrbu vodom, a ne s površine vode. To je značilo da bi izmjerena udaljenost odjednom bila mnogo kraća od stvarne udaljenosti do razine vode. Budući da ne možemo jednostavno upotrijebiti prosjek za izravnavanje ove vrste pogreške mjerenja, odlučili smo odbaciti sve nove izmjerene udaljenosti koje su se previše razlikovale od trenutne procjene udaljenosti. To nije problematično jer očekujemo da će se razina vode ionako mijenjati prilično sporo. Nakon pokretanja, ovaj modul će izvršiti niz mjerenja i odabrati najveću primljenu vrijednost (tj. Najnižu razinu vode) kao najvjerojatniju početnu točku. Nakon toga, osim odluke "zadrži/odbaci", djelomično ažuriranje procijenjene razine koristi se za izravnavanje slučajnih pogrešaka mjerenja. Također je važno dopustiti da svi odjeci izumru prije provođenja novog mjerenja - barem u našem slučaju gdje su zidovi od betona i stoga vrlo odjeknuti.

Konačnu verziju koda koji smo koristili za dva Arduina možete pronaći ovdje:

github.com/kelindqv/arduinoUltrasonicTank

Korak 2: Građevinski radovi

Građevinski radovi
Građevinski radovi

Budući da se naš bunar nalazio na udaljenosti od kuće, morali smo stvoriti mali rov na travnjaku u koji ćemo staviti kabel.

Korak 3: Spajanje i montaža svih komponenti

Spajanje i postavljanje svih komponenti
Spajanje i postavljanje svih komponenti
Spajanje i postavljanje svih komponenti
Spajanje i postavljanje svih komponenti
Spajanje i postavljanje svih komponenti
Spajanje i postavljanje svih komponenti

Spojite sve kako je bilo tijekom testiranja i nadajte se da će i dalje uspjeti! Ne zaboravite provjeriti ide li TX pin na jednom Arduinu na RX drugog, i obrnuto. Kao što je prikazano na slici 1, koristili smo telefonski kabel za napajanje Arduina u bušotini, kako bismo izbjegli korištenje baterija.

Druga i treća slika prikazuju plastični raspored cijevi, s odašiljačem postavljenim izvan cijevi, a prijemnikom unutar (da, ovo je bio neugodan položaj za snimanje …)

Korak 4: Kalibracija

Uvjerivši se da je udaljenost od senzora do razine vode ispravno izračunata, kalibracija je bila samo pitanje mjerenja promjera bušotine i ukupne dubine kako bi se mogao izračunati volumen tekućine. Također smo prilagodili parametre algoritma (vrijeme između mjerenja, parametri djelomičnog ažuriranja, broj početnih mjerenja) kako bismo dobili robusno i točno mjerenje.

Dakle, koliko je senzor dobro pratio razinu tekućine?

Lako smo mogli vidjeti učinak ispiranja slavine na nekoliko minuta ili ispiranja WC -a, što smo i htjeli. Čak smo mogli vidjeti da se bušotina preko noći punila relativno predvidljivom brzinom - sve samo jednim pogledom na zaslon. Uspjeh!

Napomena:- Pretvorba vremenske udaljenosti trenutno ne ispravlja promjene u brzini zvuka zbog temperaturnih varijacija. Ovo bi mogao biti lijep budući dodatak, budući da će se temperature u bunaru prilično razlikovati!

Korak 5: Dugotrajna uporaba

Ažuriranje 1 godina: Senzor radi besprijekorno bez znakova korozije ili oštećenja unatoč vlažnom okruženju! Jedini problem tijekom godine bio je taj da se kondenzacija nakuplja na senzoru tijekom hladnog vremena (zimi), što očito blokira senzor. U našem slučaju to nije problem jer nam je čitanje potrebno samo ljeti, ali drugi korisnici će možda morati biti kreativni!:) Izolacija ili ventilacija vjerojatno su izvediva rješenja. Sretno s izmišljanjem!

Preporučeni: