Mõõtke vedeliku voolu või tarbimist mõnel juhul on see oluline ja selleks on vaja vooluhulgamõõturit. Näiteks kui järgite valemit 1, teate, et FIA sunnib meeskondi kasutama mootoris vooluhulgamõõturit, et tuvastada iga meeskonna autodes tarbitav kulu ja vältida võimalikke lõksusid, süstides suuremat vooluhulka, et saada rohkem või kuidas õli kasutatakse mootori põletamiseks ...
Kuid väljaspool F1-d võite olla huvitatud ühest neist seadmetest, et teada saada, milline on süsteemi vee või muu vedeliku tarbimine, või määrata ka paagist tõmmatava toru voolukiirus, et teha kindlaks, millal see tarbitakse, automatiseeritud aia niisutussüsteemid jne. The nende elementide rakendusi on palju, saate piiri ise seada.
Voolumõõtur või vooluhulgamõõtur
Kuidas peaksite teadma voolu on vedeliku või vedeliku kogus, mis ajaühikus ringleb läbi toru või toru. Seda mõõdetakse mahuühikutes jagatuna ajaühikuga, näiteks liitrit minutis, liitrit tunnis, kuupmeetrit tunnis, kuupmeetrit sekundis jne. (l / min, l / h, m³ / h, ...).
Mis on vooluhulgamõõtur?
El vooluhulgamõõtur või vedeliku mõõtur See on seade, mis on võimeline mõõtma toru läbivat vooluhulka. Arduinoga on hõlpsasti integreeritav mitu mudelit ja tootjat. See voolukiirus sõltub mitmest tegurist, näiteks toru sektsioonist ja toitesurvest.
Neid kahte parameetrit juhtides ja vooluhulka mõõtva voolumõõturiga saate vedelike juhtimiseks keeruka juhtimissüsteemi. Väga kasulik koduautomaatika või muude elektrooniliste ja isegi tööstusprojektide jaoks. Koduprojektide jaoks on tegijad seda teinud tuntud mudelid nagu YF-S201, FS300A, FS400AJne
Voolumõõturi tüübid
Turult leiate erinevat tüüpi vooluhulgamõõturite või voolumõõturite arv sõltuvalt selle kasutamisest ja eelarvest, mida soovite investeerida. Lisaks on mõned neist spetsiifilised vedeliku jaoks, näiteks vesi, kütus, õli, teised on suurema või väiksema täpsusega, hinnad varieeruvad mõnest eurost tuhandeni, mõnes väga arenenud tööstuslikul tasemel:
- Mehaaniline vooluhulgamõõtur: see on väga tüüpiline arvesti, mis on igaühel majas, et mõõta oma meetrites tarbitavat vett. Vool muudab turbiini, mis liigutab võlli, mis on ühendatud mehaanilise loenduriga, mis akumuleerib näiteid. Kuna see on mehaaniline, ei saa seda sel juhul Arduinoga integreerida.
- Ultraheli vooluhulgamõõtur- Laialdaselt tööstuses kasutatav, kuid kodus kasutamiseks ülimalt kallis. Vooluhulka saate mõõta aja järgi, mis kulub ultraheli läbimiseks mõõdetava vedeliku kaudu.
- Elektromagnetiline vooluhulgamõõtur: Neid kasutatakse tööstuses sageli ka kuni 40-tolliste ja kõrge rõhuga torude jaoks. Need maksavad väga kallis ja kasutavad mõõtmiseks elektromagnetilist süsteemi.
- Elektrooniline turbiini vooluhulgamõõtur: odav ja väga täpne. Need on need, mida saate hõlpsasti oma Arduinoga integreerida ja mida kasutatakse ka kodukeskkonna jaoks. Nad kasutavad labadega turbiini, mis pöörleb, kui vedeliku voog seda läbib, ja Halli efekti andur arvutab voolu pöörete järgi, milleni see pöördesse jõuab. Probleem on selles, et olles pealetükkivad, on neil suur rõhulangus ja nende osad halvenevad, nii et nad ei kesta kaua ...
Võttes arvesse, et oleme elektroonikahuvilised, jätkame nende õppimist ...
Arduino vooluhulgamõõturid ja kust osta
osa Arduinos kasutatavad elektroonilised voolumõõturidNagu YF-S201, YF-S401, FS300A ja FS400A, on ka neil plastikust korpus ja labadega rootor, nagu ma varem mainisin. Rootori külge kinnitatud magnet ja selle pöörlemine Halli efekti abil määravad voolu või tarbimise, mida see kogu aeg mõõdab. Anduri väljundiks on ruutlaine, mille sagedus on proportsionaalne seda läbiva vooluga.
Niinimetatud K teisendustegur sageduse (Hz) ja vooluhulga (l / min) vahel sõltub parameetritest, mille tootja on andurile andnud, mistõttu pole see kõigi jaoks sama. Aastal teabelehed või teave mudeli kohta ostmisel on need väärtused, et saaksite neid Arduino koodis kasutada. Samuti ei ole täpsus sama, ehkki üldiselt varieeruvad need Arduino puhul praeguse voolu suhtes tavaliselt 10% üle või alla.
osa soovitatud mudelid Heli:
- YF-S201: sellel on ühendus 1/4 "toru jaoks voolu mõõtmiseks vahemikus 0.3 kuni 6 liitrit minutis. Maksimaalne rõhk, mida ta talub, on 0.8 MPa, maksimaalse vedeliku temperatuuriga kuni 80 ºC. Selle pinge töötab vahemikus 5-18v.
- YF-S401: sel juhul on ühendus toruga 1/2 ″, ehkki saate alati muundureid kasutada. Selle mõõdetud vooluhulk on vahemikus 1 kuni 30 l / min, rõhuga kuni 1.75 MPa ja vedeliku temperatuuriga kuni 80 ° C. Selle pinge on siiski 5-18v.
- FS300A: sama pinge ja sama maksimaalne temperatuur kui eelmistel. Sel juhul 3/4 ″ torudega, maksimaalse vooluhulgaga 1–60 l / min ja rõhuga 1.2 MPa.
- Tooteid ei leitud.: see hoiab ka alternatiivide suhtes pinget ja maksimaalset temperatuuri, samuti on maksimaalne vooluhulk ja rõhk samad, mis FS300A puhul. Ainus asi, mis varieerub, on see, et toru on 1 toll.
Peate valima selle, mis teid oma projekti jaoks kõige rohkem huvitab ...
Integreerimine Arduinoga: praktiline näide
La vooluhulgamõõturi ühendamine on väga lihtne. Neil on tavaliselt 3 kaablit, üks voolu kohta andmete kogumiseks ja teine kaks voolu jaoks. Andmeid saab ühendada teile kõige paremini sobiva Arduino sisendiga ja seejärel programmeerida visandikood. Ja jõuallikad, üks 5V-le ja teine GND-le ning sellest piisaks töö alustamiseks.
Kuid selleks, et sellel oleks mingisugune funktsioon, peate kõigepealt looma kood Arduino IDE-s. Selle vooluanduri kasutamise viise on palju ja ka programmeerimise viise, ehkki siin teil on praktiline ja lihtne näide et saaksite näha, kuidas see töötab:
const int sensorPin = 2; const int measureInterval = 2500; volatile int pulseConter; // Si vas a usar el YF-S201, como en este caso, es 7.5. //Pero si vas a usar otro como el FS300A debes sustituir el valor por 5.5, o 3.5 en el FS400A, etc. const float factorK = 7.5; void ISRCountPulse() { pulseConter++; } float GetFrequency() { pulseConter = 0; interrupts(); delay(measureInterval); noInterrupts(); return (float)pulseConter * 1000 / measureInterval; } void setup() { Serial.begin(9600); attachInterrupt(digitalPinToInterrupt(sensorPin), ISRCountPulse, RISING); } void loop() { // Con esto se obtiene la frecuencia en Hz float frequency = GetFrequency(); // Y con esto se calcula el caudal en litros por minuto float flow_Lmin = frequency / factorK; Serial.print("Frecuencia obtenida: "); Serial.print(frequency, 0); Serial.print(" (Hz)\tCaudal: "); Serial.print(flow_Lmin, 3); Serial.println(" (l/min)"); }
Ja kui soovite saada tarbimist, siis võite kasutada seda teist koodi või kombineerida mõlemad, et teil oleks mõlemad ... Tarbimiseks peab saavutatud voog olema integreeritud aja suhtes:
const int sensorPin = 2; const int measureInterval = 2500; volatile int pulseConter; //Para el YF-S201 es 7.5, pero recuerda que lo debes modificar al factor k de tu modelo const float factorK = 7.5; float volume = 0; long t0 = 0; void ISRCountPulse() { pulseConter++; } float GetFrequency() { pulseConter = 0; interrupts(); delay(measureInterval); noInterrupts(); return (float)pulseConter * 1000 / measureInterval; } void SumVolume(float dV) { volume += dV / 60 * (millis() - t0) / 1000.0; t0 = millis(); } void setup() { Serial.begin(9600); attachInterrupt(digitalPinToInterrupt(sensorPin), ISRCountPulse, RISING); t0 = millis(); } void loop() { // Obtención del afrecuencia float frequency = GetFrequency(); //Calcular el caudal en litros por minuto float flow_Lmin = frequency / factorK; SumVolume(flow_Lmin); Serial.print(" El caudal es de: "); Serial.print(flow_Lmin, 3); Serial.print(" (l/min)\tConsumo:"); Serial.print(volume, 1); Serial.println(" (L)"); }
Te juba teate, et sõltuvalt sellest, mida vajate, peate seda koodi muutma, lisaks on see väga oluline ka panna K-tegur ostetud mudeli või see ei võta tegelikke mõõtmisi. Ära unusta!