Sadržaj:

UltraSonic kontroler nivoa tečnosti: 6 koraka (sa slikama)
UltraSonic kontroler nivoa tečnosti: 6 koraka (sa slikama)

Video: UltraSonic kontroler nivoa tečnosti: 6 koraka (sa slikama)

Video: UltraSonic kontroler nivoa tečnosti: 6 koraka (sa slikama)
Video: CS50 2013 - Week 10 2024, Juli
Anonim
UltraSonic kontroler nivoa tečnosti
UltraSonic kontroler nivoa tečnosti

Uvod Kao što vjerovatno znate, Iran ima sušno vrijeme, a u mojoj zemlji nedostaje vode. Ponekad se, posebno ljeti, može vidjeti da vlada reže vodu. Tako da većina stanova ima rezervoar za vodu. U našem stanu postoji spremnik od 1500 litara koji opskrbljuje vodom. Također, u stanu se nalazi 12 stambenih jedinica. Kao rezultat toga, može se očekivati da će se spremnik vrlo brzo isprazniti. Na rezervoar je priključena pumpa za vodu koja šalje vodu u zgradu. Kad god je rezervoar prazan, pumpa radi bez vode. Ova situacija uzrokuje povećanje temperature motora, a tijekom vremena može uzrokovati kvar pumpe. Prije nekog vremena ovaj kvar pumpe dogodio nam se po drugi put, a nakon otvaranja motora vidjeli smo da su žice zavojnice izgorjele. Nakon što smo zamijenili pumpu, kako bih ponovo spriječio ovaj problem, odlučio sam napraviti regulator nivoa vode. Planirao sam napraviti krug za prekid napajanja pumpe kad god bi voda došla ispod donje granice u rezervoaru. Pumpa neće raditi sve dok voda ne poraste do visoke granice. Nakon prelaska gornje granice, krug će ponovno spojiti napajanje. U početku sam pretraživao internet da vidim mogu li pronaći odgovarajući krug. Međutim, nisam našao ništa prikladno. Bilo je nekih indikatora vode zasnovanih na Arduinu, ali moj problem nije mogao riješiti. Kao rezultat toga, odlučio sam dizajnirati svoj regulator nivoa vode. Sve u jednom paket s jednostavnim grafičkim korisničkim sučeljem za postavljanje parametara. Također sam pokušao uzeti u obzir EMC standarde kako bih bio siguran da uređaj radi valjano u različitim situacijama.

Korak 1: Princip

Princip
Princip

Vjerovatno već znate princip. Kada se ultrazvučni impulsni signal emitira prema objektu, objekt se reflektira i eho se vraća pošiljatelju. Ako izračunate vrijeme provedeno ultrazvučnim impulsom, možete pronaći udaljenost objekta. U našem slučaju, predmet je voda.

Imajte na umu da kada pronađete udaljenost do vode, izračunavate volumen praznog prostora u spremniku. Da biste dobili volumen vode, morate oduzeti izračunati volumen od ukupne zapremine spremnika.

Korak 2: Senzor, napajanje i kontroler

Senzor, napajanje i kontroler
Senzor, napajanje i kontroler
Senzor, napajanje i kontroler
Senzor, napajanje i kontroler
Senzor, napajanje i kontroler
Senzor, napajanje i kontroler
Senzor, napajanje i kontroler
Senzor, napajanje i kontroler

Hardver

Za senzor sam koristio vodootporni ultrazvučni senzor JSN-SR04T. Radna rutina je poput HC-SR04 (eho i trig pin).

Specifikacije:

  • Rastojanje: 25 cm do 450 cm
  • Radni napon: DC 3.0-5.5V
  • Radna struja: < 8mA
  • Tačnost: ± 1 cm
  • Frekvencija: 40 kHz
  • Radna temperatura: -20 ~ 70 ℃

Imajte na umu da ovaj kontroler ima neka ograničenja. na primjer: 1- JSN-SR04T ne može mjeriti udaljenost ispod 25 cm, pa morate instalirati senzor najmanje 25 cm iznad površine vode. Štaviše, maksimalno mjerenje udaljenosti je 4,5M. Dakle, ovaj senzor nije prikladan za velike spremnike. 2- tačnost je 1 cm za ovaj senzor. Kao rezultat toga, na osnovu promjera spremnika, može se mijenjati rezolucija volumena koju će uređaj prikazati. 3- brzina zvuka može varirati ovisno o temperaturi. Kao rezultat toga, na različitu regiju mogu utjecati na točnost. Međutim, ta ograničenja za mene nisu bila presudna, a točnost je bila prikladna.

Kontroler

Koristio sam STM32F030K6T6 ARM Cortex M0 iz STMicroelectronics. Specifikacije ovog mikrokontrolera možete pronaći ovdje.

Napajanje

Prvi dio je pretvaranje 220V/50Hz (iranska električna energija) u 12VDC. U tu sam svrhu upotrijebio modul napajanja HLK-PM12 u dolarima. Ovaj AC/DC pretvarač može pretvoriti 90 ~ 264 VAC u 12VDC sa izlaznom strujom 0,25A.

Kao što vjerojatno znate, induktivno opterećenje releja može uzrokovati nekoliko problema u krugu i napajanju, a poteškoće u napajanju mogu dovesti do nedosljednosti, posebno u mikrokontroleru. Rješenje je izolirati napajanje. Također, morate koristiti sklop prigušivača na kontaktima releja. Postoji nekoliko metoda za izolaciju napajanja. Na primjer, možete koristiti transformator s dva izlaza. Štoviše, postoje izolirani DC/DC pretvarači u maloj veličini koji mogu izolirati izlaz od ulaza. U tu sam svrhu koristio MINMAX MA03-12S09. To je 3W DC/DC pretvarač s izolacijom.

Korak 3: IC nadzornika

IC nadzornika
IC nadzornika

Prema napomeni TI aplikacije: Nadzor napona (poznat i kao resetirano integrirano kolo [IC]) je vrsta monitora napona koji prati napajanje sistema. Nadzor napona često se koristi s procesorima, regulatorima napona i sekvencijalima - općenito, tamo gdje je potrebno određivanje napona ili struje. Nadzornici prate naponske šine kako bi osigurali uključivanje, otkrili kvarove i komunicirali s ugrađenim procesorima kako bi osigurali zdravlje sistema. ovu bilješku o aplikaciji možete pronaći ovdje. Iako mikrokontroleri STM32 imaju ugrađene supervizore, poput monitora za napajanje, koristio sam vanjski nadzorni čip kako bih osigurao da će sve raditi kako treba. U mom slučaju, koristio sam TL7705 iz TI -a. Opis sa ove web stranice Texas Instruments za ovaj IC možete vidjeti u nastavku: Porodica TL77xxA nadzornika napajanja naponom integriranih krugova posebno je dizajnirana za upotrebu kao kontroleri za resetiranje u mikroračunarskim i mikroprocesorskim sistemima. Nadzor napona napajanja prati stanje napajanja pod naponom na ulazu SENSE. Tijekom uključivanja, RESET izlaz postaje aktivan (nizak) kada VCC dostigne vrijednost koja se približava 3,6 V. U ovom trenutku (pod pretpostavkom da je SENSE iznad VIT+), funkcija mjerača vremena odgode aktivira vremensko kašnjenje, nakon čega se emitira RESET i RESET (NE) postaju neaktivni (visoki i niski, respektivno). Kada se tijekom normalnog rada dogodi stanje pod naponom, RESET i RESET (NOT) postaju aktivni.

Korak 4: Štampana ploča (PCB)

Štampana ploča (PCB)
Štampana ploča (PCB)
Štampana ploča (PCB)
Štampana ploča (PCB)
Štampana ploča (PCB)
Štampana ploča (PCB)
Štampana ploča (PCB)
Štampana ploča (PCB)

Dizajnirao sam PCB u dva dijela. Prvi je LCD PCB koji je spojen na matičnu ploču vrpcom/ravnim kabelom. Drugi dio je PCB upravljačkog sklopa. Na ovu PCB postavio sam napajanje, mikrokontroler, ultrazvučni senzor i povezane komponente. Također i dio napajanja koji je relejni, varistorski i prigušivački krug. Kao što vjerojatno znate, mehanički releji poput releja koje sam koristio u svom krugu mogu se pokvariti ako uvijek rade. Da bih prevladao ovaj problem, koristio sam normalno bliski kontakt (NC) releja. Dakle, u normalnoj situaciji relej nije aktivan i normalno blizak kontakt može voditi napajanje pumpi. Kad god voda padne ispod donje granice, relej će se uključiti i to će prekinuti napajanje. Rekavši to, to je razlog što sam koristio sklop prigušivača na NC i COM kontaktima. S obzirom na činjenicu da je pumpa imala veliku snagu, za nju sam koristio drugi relej 220 i vozim ga sa relejem na PCB -u.

Ovdje možete preuzeti datoteke sa PCB -a, kao što su Altium PCB datoteke i Gerber datoteke s mog GitHub -a.

Korak 5: Kodirajte

Image
Image
Instalacija na rezervoaru
Instalacija na rezervoaru

Koristio sam STM32Cube IDE, koji je sve-u-jednom rješenje za razvoj koda iz STMicroelectronics. Zasnovan je na Eclipse IDE -u sa GCC ARM kompajlerom. Takođe, ima STM32CubeMX u sebi. Više informacija možete pronaći ovdje. U početku sam napisao kod koji je uključivao naše specifikacije spremnika (visina i promjer). Međutim, odlučio sam ga promijeniti u GUI za postavljanje parametara na temelju različitih specifikacija.

Korak 6: Instalacija na spremniku

Instalacija na rezervoaru
Instalacija na rezervoaru
Instalacija na rezervoaru
Instalacija na rezervoaru

Na kraju sam napravio jednostavnu kutiju za nju koja štiti PCB od vode. Takođe sam napravio rupu na vrhu rezervoara za postavljanje senzora.

Preporučuje se: