- Mi a zavarosság a folyadékban?
- Hogyan mérhető a zavarosság az Arduino segítségével?
- A zavarosságmérő elkészítéséhez szükséges alkatrészek
- A zavarosság érzékelő áttekintése
- A zavarosság modul főbb jellemzői
- A zavarosság-érzékelő összekapcsolása az Arduino-val - áramköri ábra
- Az Arduino programozása a víz zavarosságának mérésére
A folyadékok esetében a zavarosság fontos kifejezés. Mivel fontos szerepet játszik a folyadék dinamikájában, és a víz minőségének mérésére is használják. Tehát ebben az oktatóanyagban vitassuk meg, hogy mi a zavarosság, hogyan mérjük meg a folyadék zavarosságát az Arduino segítségével. Ha tovább akarja vinni ezt a projektet, akkor fontolóra veheti a pH-mérő összekapcsolását az Arduino-val, és olvassa el a víz pH-értékét is, hogy jobban felmérje a víz minőségét. Korábban egy IoT alapú vízminőség-ellenőrző eszközt is építettünk az ESP8266 segítségével, ezt is megnézheti, ha érdekli. Ennek ellenére kezdjük
Mi a zavarosság a folyadékban?
A zavarosság a folyadék felhősségének vagy homályosságának mértéke vagy szintje. Ez a fehér füsthöz hasonló láthatatlan részecskék (szabad szemmel) jelenléte miatt történik a levegőben. Amikor a fény áthalad folyadékokon, a fényhullámok szétszóródnak ezen apró részecskék jelenléte miatt. A folyadék zavarossága egyenesen arányos a szabad szuszpendált részecskékkel, vagyis ha a részecskék száma növekszik, a zavarosság is növekszik.
Hogyan mérhető a zavarosság az Arduino segítségével?
Mint korábban említettem, a zavarosság a fényhullámok szóródása miatt következik be, a zavarosság mérése érdekében meg kell mérnünk a fény szóródását. A zavarosságot általában a nehelometrikus zavarosság mértékegységeiben (NTU) vagy a Jackson zavarosság egységeiben (JTLJ) mérik, a mérés módjától függően. A két egység nagyjából egyenlő.
Most nézzük meg, hogyan működik a zavarosság érzékelő, két részből áll, az adóból és a vevőből. Az adó egy fényforrásból áll, általában egy led és egy meghajtó áramkörből. A vevő végén van egy fényérzékelő, mint egy fotodióda vagy egy LDR. Az oldatot az adó és a vevő közé helyezzük.
Az adó egyszerűen továbbítja a fényt, hogy a fényhullámok áthaladnak az oldaton, és a vevő megkapja a fényt. Normális esetben (megoldás jelenléte nélkül) az átvitt fény teljesen a vevő oldalán fogad. De zavaros oldat jelenlétében az áteresztett fény mennyisége nagyon alacsony. Ez a vevő oldalán van, csak alacsony intenzitású fényt kapunk, és ez az intenzitás fordítottan arányos a zavarossággal. Tehát meg tudjuk mérni a zavarosságot a fényintenzitás mérésével, ha a fényintenzitás magas, az oldat kevésbé zavaros, és ha a fényintenzitás nagyon alacsony, ez azt jelenti, hogy az oldat zavarosabb.
A zavarosságmérő elkészítéséhez szükséges alkatrészek
- Zavarosság modul
- Arduino
- 16 * 2 I2C LCD
- Közös katód RGB LED
- Kenyérlemez
- Jumper huzalok
A zavarosság érzékelő áttekintése
Az ebben a projektben használt zavarosság-érzékelő az alábbiakban látható.
Mint látható, ez a zavarosságérzékelő modul 3 részből áll. Vízálló vezeték, meghajtó áramkör és összekötő vezeték. A tesztelő szonda mind az adóból, mind a vevőből áll.
A fenti képen látható, hogy ez a típusú modul egy IR diódát használ fényforrásként, és egy IR vevőt detektorként. De a működési elv ugyanaz, mint korábban. A meghajtó rész (az alábbiakban látható) egy op-erősítőből és néhány alkatrészből áll, amelyek felerősítik az észlelt fényjelet.
A tényleges érzékelő ehhez a modulhoz csatlakoztatható egy JST XH csatlakozóval. Három csap van, VCC, föld és kimenet. A Vcc csatlakozik az 5v-hoz és a földtől a földhöz. Ennek a modulnak a kimenete analóg érték, vagyis a fényintenzitástól függően változik.
A zavarosság modul főbb jellemzői
- Üzemi feszültség: 5VDC.
- Áram: 30mA (MAX).
- Működési hőmérséklet: -30 ° C és 80 ° C között
- Kompatibilis az Arduino, a Raspberry Pi, az AVR, a PIC stb.
A zavarosság-érzékelő összekapcsolása az Arduino-val - áramköri ábra
Az alábbiakban bemutatjuk a zavarosság érzékelő és az Arduino összekapcsolásának teljes vázlatát. Az áramkört az EasyEDA segítségével tervezték.
Ez egy nagyon egyszerű kapcsolási rajz. A zavarosság-érzékelő kimenete analóg, így az Arduino A0-érintkezőjéhez, az I2C LCD-hez csatlakozik az Arduino I2C-csapjaihoz, azaz SCL-től A5-ig és SDA-tól A4-ig. Ezután az RGB LED a D2, D3 és D4 digitális érintkezőkhöz csatlakozik. Miután a kapcsolatok elkészültek, a hardver beállításom az alábbiak szerint néz ki.
Csatlakoztassa az érzékelő VCC-jét az Arduino 5v-hez, majd csatlakoztassa a földet a földhöz. Az érzékelő kimeneti csapja az Arduino 0 analógjához. Ezután csatlakoztassa a VCC-t és az LCD modul földelését az 5v-hoz és az Arduino földeléséhez. Ezután SDA-tól A4-ig és SCL-től A5-ig, ez a két csap az Arduino I2C csapja. végül összeköti az RGB LED földjét az Arduino földjével, és a zöldet a D3-hoz, a kéket a D4-hez és a pirosat a D5-hez.
Az Arduino programozása a víz zavarosságának mérésére
A tervek szerint a zavarosság értékeit 0 és 100 között kell megjeleníteni. Ez azt jelenti, hogy a mérőnek tiszta folyadék esetén 0-t, erősen zavaros esetén 100-at kell mutatnia. Ez az Arduino kód szintén nagyon egyszerű, és a teljes kód az oldal alján található.
Először az I2C folyadékkristály-könyvtárat vettem fel, mert I2C LCD-t használunk a kapcsolatok minimalizálására.
# tartalmazza
Ezután egész számot állítok be az érzékelő bemenetére.
int érzékelőPin = A0;
A beállítás részben meghatároztam a csapokat.
pinMode (3, OUTPUT); pinMode (4, OUTPUT); pinMode (5, OUTPUT);
A hurok szakaszban, amint azt korábban említettem, az érzékelő kimenete analóg érték. Tehát el kell olvasnunk ezeket az értékeket. Az Arduino AnalogRead függvény segítségével kiolvashatjuk a kimeneti értékeket a hurok szakaszban.
int sensorValue = analogRead (sensorPin);
Először meg kell értenünk az érzékelőnk viselkedését, ami azt jelenti, hogy le kell olvasnunk a zavarosság-érzékelő minimális és maximális értékét. a soros monitoron leolvashatjuk ezt az értéket a serial.println függvény segítségével.
Ezeknek az értékeknek a megszerzéséhez először szabadon olvassa el az érzékelőt, megoldás nélkül. 640 körül kaptam egy értéket, és utána tegyünk egy fekete anyagot az adó és a vevő közé, és kapunk egy olyan értéket, amely a legkisebb érték, általában ez az érték nulla. Tehát 640-et kaptunk maximálisan és nulla minimumot. Most ezeket az értékeket 0-100-ra kell konvertálnunk
Az, hogy én használtam a térkép funkció Arduino.
int zavarosság = térkép (sensorValue, 0,640, 100, 0);
Aztán megjelenítettem ezeket az értékeket az LCD kijelzőn.
lcd.setCursor (0, 0); lcd.print ("zavarosság:"); lcd.print (""); lcd.setCursor (10, 0); lcd.print (zavarosság);
Ezt követően az if feltételek segítségével más feltételeket adtam meg.
if (zavarosság <20) { digitalWrite (2, HIGH); digitalWrite (3, LOW); digitalWrite (4, LOW); lcd.setCursor (0, 1); lcd.print ("annak CLEAR"); }
Ez aktiválja a zöld LED-et és kijelzi a "tiszta" értéket az LCD-n, ha a zavarosság értéke 20 alatt van.
if ((zavarosság> 20) && (zavarosság <50)) { digitalWrite (2, LOW); digitalWrite (3, HIGH); digitalWrite (4, LOW); lcd.setCursor (0, 1); lcd.print ("annak FELTÉTELE"); }
Ez aktiválja a kék LED-et és "felhős" kijelzést jelenít meg az LCD-n, ha a zavarosság értéke 20 és 50 között van.
if ((zavarosság> 50) { digitalWrite (2, LOW); digitalWrite (3, HIGH); digitalWrite (4, LOW); lcd.setCursor (0, 1); lcd.print ("annak DIRTY"); }
Ez bekapcsolja a piros LED-et, és "piszkos" jelenik meg az LCD-n, ha a zavarosság értéke nagyobb, mint 50, amint az alább látható.
Csak kövesse az áramkört és töltse fel a kódot, ha minden rendben megy, akkor képesnek kell lennie a víz zavarosságának mérésére, és az LCD-nek a víz minőségét kell mutatnia a fentiek szerint.
Ne feledje, hogy ez a zavarosságmérő megjeleníti a zavarosság százalékát, és lehet, hogy nem pontos ipari érték, de mégis használható két víz vízminőségének összehasonlítására. A projekt teljes működése az alábbi videóban található. Remélem, hogy tetszett az oktatóanyag, és ha bármilyen kérdése van, tanulhat valami hasznosat, hagyhatja őket az alábbi megjegyzés szakaszban, vagy használhatja a CircuitDigest fórumokat technikai kérdéseinek közzétételéhez, vagy indíthat releváns vitát.