Sisukord:

Ultraheli paagi taseme mõõtja: 5 sammu (piltidega)
Ultraheli paagi taseme mõõtja: 5 sammu (piltidega)

Video: Ultraheli paagi taseme mõõtja: 5 sammu (piltidega)

Video: Ultraheli paagi taseme mõõtja: 5 sammu (piltidega)
Video: Летний Ламповый стрим. Отвечаем на вопросы. 2024, November
Anonim
Ultraheli paagi taseme mõõtur
Ultraheli paagi taseme mõõtur
Ultraheli paagi taseme mõõtur
Ultraheli paagi taseme mõõtur

Kas peate jälgima vedeliku taset suure läbimõõduga süvendis, paagis või avatud mahutis? See juhend näitab teile, kuidas odava elektroonika abil teha sonari kontaktivaba vedeliku taseme mõõtur!

Ülaltoodud visand näitab ülevaadet sellest, mida me selle projektiga püüdsime. Meie suvilal on suure läbimõõduga kaev majas joogivee varustamiseks. Ühel päeval rääkisime vennaga, kuidas vanaisa mõõtis veetaset käsitsi, et jälgida veetarbimist ja sissevoolu kogu suve vältel, et vältida arvelduskrediiti. Mõtlesime, et kaasaegse elektroonikaga peaksime suutma traditsiooni taaselustada, kuid vähem füüsilist tööd. Mõne programmeerimisnipiga õnnestus meil kasutada sonarimooduliga Arduinot, et mõõta kaugust veepinnani (l) mõistliku usaldusväärsuse ja täpsusega ± paar millimeetrit. See tähendas, et me võime järelejäänud mahtu V hinnata, kasutades teadaolevat läbimõõtu D ja sügavust L umbes ± 1 liitri täpsusega.

Kuna kaev asub majast umbes 25 m kaugusel ja me tahtsime ekraani siseruumides, otsustasime kasutada kahte Arduinot, mille vahel on andmeside. Kui see pole teie jaoks, saate projekti hõlpsalt muuta, et kasutada ainult ühte Arduino. Miks mitte kasutada traadita andmeedastust? Osaliselt lihtsuse ja vastupidavuse tõttu (traat on niiskuse tõttu vähem kahjustatav) ja osaliselt seetõttu, et tahtsime vältida patareide kasutamist anduri poolel. Juhtmega saaksime sama kaabli kaudu suunata nii andmeedastuse kui ka toite.

1) Arduino moodul majasSee on peamine Arduino moodul. See saadab päästikusignaali kaevu Arduinole, võtab vastu mõõdetud vahemaa ja kuvab ekraanil arvutatud järelejäänud veekoguse.

2) Kaevu külg Arduino ja sonari moodul Selle Arduino eesmärk on lihtsalt saada majalt päästikusignaal, teostada mõõtmine ja saata tagasi kaugus sonarimoodulist veetasemeni. Elektroonika on sisse ehitatud (suhteliselt õhukindlasse) karpi, kusjuures sonarimooduli vastuvõtva külje külge on kinnitatud plasttoru. Toru eesmärk on vähendada mõõtmisvigu, vähendades vaatevälja nii, et vastuvõtja "näeks" ainult veepinda.

Samm: osad, testimine ja programmeerimine

Osad, testimine ja programmeerimine
Osad, testimine ja programmeerimine
Osad, testimine ja programmeerimine
Osad, testimine ja programmeerimine
Osad, testimine ja programmeerimine
Osad, testimine ja programmeerimine

Selles projektis kasutasime järgmisi osi:

  • 2 x Arduino (üks vedeliku taseme mõõtmiseks, teine tulemuste kuvamiseks ekraanil)
  • Põhiline 12 V toiteallikas
  • Ultraheli (sonari) moodul HC-SR04
  • LED -ekraanimoodul MAX7219
  • 25 m telefonikaabel (4 juhtmest: toide, maandus ja 2 andmesignaali)
  • Paigalduskarp
  • Kuum liim
  • Jootma

Osade maksumus: umbes 70 €

Veendumaks, et kõik töötab nii nagu peab, tegime kõigepealt kõik jootmise, juhtmestiku ja lihtsa pingikatsetuse. Internetis on palju näidisprogramme ultraheli anduri ja LED-mooduli jaoks, nii et me lihtsalt kasutasime neid veendumaks, et mõõdetud kaugus on mõistlik (joonis 1) ja et meil on võimalik veepinnalt ultraheli peegeldust tabada. sait (pilt 2). Tegime ka andmeside põhjaliku testimise, et veenduda selle toimimises pika vahemaa tagant, mis ei osutunud üldse probleemiks.

Ärge alahinnake sellele sammule kuluvat aega, sest on oluline teada, et süsteem töötab, enne kui näete vaeva, et kõik ilusti kastidesse paigaldada, kaableid maha kaevata jne.

Katsetamise käigus mõistsime, et sonarimoodul võtab mõnikord heli peegelduse kaevu teistest osadest, näiteks külgseintest ja veevarustustorust, mitte veepinnalt. See tähendas, et mõõdetud vahemaa oleks äkki palju lühem kui tegelik kaugus veetasemest. Kuna me ei saa seda tüüpi mõõtmisviga siluda lihtsalt keskmistamisega, otsustasime kõik uued mõõdetud vahemaad kõrvale jätta, mis olid praegusest kaugushinnangust liiga erinevad. See ei ole problemaatiline, sest eeldame, et veetase muutub niikuinii üsna aeglaselt. Käivitamisel teeb see moodul rea mõõtmisi ja valib kõige tõenäolisemaks lähtekohaks suurima vastuvõetud väärtuse (st madalaima veetaseme). Pärast seda kasutatakse juhusliku mõõtmisvigade silumiseks lisaks otsusele "hoida/ära visata" hinnangulise taseme osalist uuendamist. Samuti on oluline lubada kõikidel kajadel enne uue mõõtmise tegemist välja suruda - vähemalt meie puhul, kui seinad on betoonist ja seetõttu väga kajavad.

Kahe Arduinose jaoks kasutatud koodi lõpliku versiooni leiate siit:

github.com/kelindqv/arduinoUltrasonicTank

2. etapp: ehitustööd

Ehitustööd
Ehitustööd

Kuna meie kaev asus majast eemal, pidime murule looma väikese kaeviku, kuhu kaabel panna.

Samm: kõigi komponentide ühendamine ja paigaldamine

Kõikide komponentide ühendamine ja paigaldamine
Kõikide komponentide ühendamine ja paigaldamine
Kõikide komponentide ühendamine ja paigaldamine
Kõikide komponentide ühendamine ja paigaldamine
Kõikide komponentide ühendamine ja paigaldamine
Kõikide komponentide ühendamine ja paigaldamine

Ühendage kõik nii, nagu see oli testimise ajal, ja loodame, et see ikka töötab! Ärge unustage kontrollida, kas ühe Arduino TX -tihvt läheb teise RX -i ja vastupidi. Nagu on näidatud pildil 1, kasutasime akude kasutamise vältimiseks telefonikaablit kaevu Arduino toiteks.

Teisel ja kolmandal pildil on plasttorude paigutus, kusjuures saatja on torust väljas ja vastuvõtja sees (jah, see oli ebamugav pildistusasend …)

4. samm: kalibreerimine

Olles veendunud, et kaugus andurist veetasemeni on õigesti arvutatud, oli kalibreerimine vaid kaevu läbimõõdu ja kogu sügavuse mõõtmine, et saaks vedeliku mahtu arvutada. Samuti kohandasime algoritmi parameetreid (mõõtmiste vaheline aeg, osalise värskendamise parameetrid, esialgsete mõõtmiste arv), et saada tugev ja täpne mõõtmine.

Niisiis, kui hästi andur jälgis vedeliku taset?

Saime hõlpsalt näha mõne minuti kraani loputamise või tualettruumi loputamise efekti. Nägime isegi, et kaev täitus üleöö suhteliselt prognoositava kiirusega - seda kõike vaid ekraanil pilguga. Edu!

Märkus:- Aja-vahemaa teisendamine ei ole praegu temperatuurimuutuste tõttu helikiiruse muutuste tõttu korrigeeritav. See võib olla tore lisand tulevikus, kuna kaevu temperatuur varieerub üsna palju!

Samm: pikaajaline kasutamine

1 -aastane uuendus: andur töötab veatult, ilma märja korrosiooni või kahjustusteta, hoolimata niiskest keskkonnast! Ainus probleem on aasta jooksul olnud see, et külma ilmaga (talvel) koguneb andurile kondensaat, mis ilmselgelt anduri blokeerib. Meie puhul pole see probleem, sest lugemist vajame ainult suvel, kuid teistel kasutajatel võib tekkida vajadus olla loov!:) Isolatsioon või ventilatsioon on ilmselt teostatavad lahendused. Head leiutamist!

Soovitan: