- Reikalingi komponentai
- Kas yra pH vertė?
- Kaip veikia gravitacijos analogas pH jutiklis?
- „Arduino“ pH matuoklio grandinės schema
- PH matuoklio programavimas „Arduino“
- PH elektrodo kalibravimas
- „Arduino“ pH testerio testavimas
pH skalė naudojama skysčio rūgštingumui ir šarmingumui matuoti. Jo rodmenys gali svyruoti nuo 1 iki 14, kur 1 rodo rūgščiausią, o 14 - pagrindinį. 7 pH yra neutralioms medžiagoms, kurios nėra nei rūgščios, nei bazinės. Dabar pH vaidina labai svarbų vaidmenį mūsų gyvenime ir yra naudojamas įvairiose srityse. Pavyzdžiui, jis gali būti naudojamas baseine vandens kokybei patikrinti. Panašiai pH matavimas naudojamas įvairiose srityse, tokiose kaip žemės ūkis, nuotekų valymas, pramonė, aplinkos stebėjimas ir kt.
Šiame projekte mes ketiname pagaminti „ Arduino“ pH matuoklį ir sužinoti, kaip išmatuoti skysto tirpalo pH naudojant gravitacinį pH jutiklį ir „Arduino“. 16x2 skystųjų kristalų ekranas naudojamas pH vertei rodyti ekrane. Taip pat sužinosime, kaip kalibruoti pH jutiklį, norint nustatyti jutiklio tikslumą. Taigi pradėkime!
Reikalingi komponentai
- Arduino Uno
- 16 * 2 raidinis skaitmeninis LCD ekranas
- I2C LCD ekranas
- Gravitacinis analoginis pH jutiklis
- Jungiamieji laidai
- Bandomoji Lenta
Kas yra pH vertė?
Vienetas, kurį naudojame medžiagos rūgštingumui matuoti, vadinamas pH . Terminas „H“ apibrėžiamas kaip neigiamas vandenilio jonų koncentracijos logaritmas. PH diapazono vertės gali būti nuo 0 iki 14. pH vertė 7 yra neutrali, nes gryno vandens pH vertė yra tiksliai 7. Mažesnės nei 7 vertės yra rūgštinės, o didesnės nei 7 - bazinės arba šarminės.
Kaip veikia gravitacijos analogas pH jutiklis?
Analoginis pH jutiklis skirtas matuoti tirpalo pH vertę ir parodyti medžiagos rūgštingumą ar šarmingumą. Jis paprastai naudojamas įvairiose srityse, tokiose kaip žemės ūkis, nuotekų valymas, pramonė, aplinkos stebėjimas ir kt. Modulis turi įmontuotą įtampos reguliatoriaus mikroschemą, palaikančią platų įtampos tiekimą 3,3–5,5 V DC, suderinamą su 5 V ir 3,3 V bet kokios valdymo plokštės, tokios kaip „Arduino“. Išvesties signalą filtruoja mažas aparatinės įrangos vibravimas.
Techninės savybės:
Signalo konversijos modulis:
- Maitinimo įtampa: 3,3 ~ 5,5 V
- BNC zondo jungtis
- Didelis tikslumas: ± 0,1 @ 25 ° C
- Aptikimo diapazonas: 0 ~ 14
PH elektrodas:
- Darbinės temperatūros diapazonas: 5 ~ 60 ° C
- Nulis (neutralus) taškas: 7 ± 0,5
- Lengvas kalibravimas
- Vidinė varža: <250MΩ
pH signalo keitimo lenta:
Smeigtuko aprašymas:
V +: 5 V nuolatinės srovės įvestis
G: žemės kaištis
Po: pH analoginis išėjimas
Atlikite: 3,3 V nuolatinės srovės išėjimą
Kam: temperatūros išvestis
pH elektrodo konstrukcija:
PH jutiklio konstrukcija parodyta aukščiau. PH jutiklis atrodo kaip strypo paprastai yra pagaminti iš stiklo medžiagos, turinčios galiuką, vadinamą "Stiklo membrana". Ši membrana užpildoma buferiniu tirpalu, kurio pH yra žinomas (paprastai pH = 7). Šis elektrodo dizainas užtikrina aplinką, kurioje stiklo membranos viduje yra nuolatinis H + jonų surišimas. Kai zondas panardinamas į tiriamą tirpalą, bandomojo tirpalo vandenilio jonai pradeda keistis su kitais teigiamai įkrautais stiklo membranos jonais, o tai sukuria elektrocheminį potencialą per membraną, kuris tiekiamas į elektroninį stiprintuvo modulį, kuris matuoja potencialą tarp abiejų elektrodų ir paverčia jį pH vienetais. Šių potencialų skirtumas nustato pH vertę pagal Nernsto lygtį.
Nernsto lygtis:
Nernsto lygtis pateikia ryšį tarp elektrocheminio elemento ląstelės potencialo, temperatūros, reakcijos koeficiento ir standartinio ląstelės potencialo. Nestandartinėmis sąlygomis Nernsto lygtis naudojama ląstelių potencialams elektrocheminėje ląstelėje apskaičiuoti. Nernsto lygtį taip pat galima naudoti apskaičiuojant visą elektrocheminę jėgą (EMF) visam elektrocheminiam elementui. Ši lygtis naudojama apskaičiuoti ir sprendimo PH vertę. Stiklo elektrodo atsaką reguliuoja Nernsto lygtis, kuri gali būti pateikta kaip:
E = E0 - 2,3 (RT / nF) ln Q Kur Q = reakcijos koeficientas E = mV išėjimas iš elektrodo E0 = nulio poslinkis elektrodui R = ideali dujų konstanta = 8,314 J / mol-K T = temperatūra ºK F = Faradėjaus konstanta = 95 484,56 C / mol N = jonų krūvis
„Arduino“ pH matuoklio grandinės schema
Šio „ Arduino“ pH matuoklio projekto schema pateikta žemiau:
PH signalo keitimo plokštės sujungimas su „Arduino“:
Ryšys tarp „Arduino“ ir PH signalo keitimo plokštės parodytas toliau pateiktoje lentelėje.
Arduino |
PH jutiklio plokštė |
5V |
V + |
BND |
G |
A0 |
Po |
PH matuoklio programavimas „Arduino“
Po sėkmingų aparatūros ryšių atėjo laikas programuoti „Arduino“. Pilnas šio pH matuoklio kodas su „Arduino “ pateiktas šios pamokos apačioje. Toliau pateikiamas laipsniškas projekto paaiškinimas.
Pirmiausia į programą reikia įtraukti visas reikalingas bibliotekas. Čia mano atveju įtraukiau biblioteką „ LiquidCrystal_I2C.h“, skirtą naudoti LCD ekrano I2C sąsają, ir „ Wire.h “, kad „Arduino “ naudotų „I2C“ funkcionalumą.
# įtraukti
Tada nustatoma kalibravimo vertė, kurią galima pakeisti, kad gautų tikslią tirpalų pH vertę. (Tai paaiškinta vėliau straipsnyje)
plūdės kalibravimo_ vertė = 21,34;
Sąrankos viduje () yra parašytos LCD komandos sveikinimo pranešimui rodyti LCD.
lcd.init (); lcd.begin (16, 2); lcd.backlight (); lcd.setCursor (0, 0); lcd.print („Sveiki atvykę į“); lcd.setCursor (0, 1); lcd.print („Grandinės santrauka“); vėlavimas (2000); lcd.clear ();
Viduje kilpa () perskaitykite 10 pavyzdinių analoginių verčių ir išsaugokite jas masyve. Tai reikalinga norint išlyginti išvesties vertę.
už (int i = 0; i <10; i ++) {buferis_arr = analogasRead (A0); vėlavimas (30); }
Tada surūšiuokite gautas analogines vertes didėjimo tvarka. Tai reikalinga, nes vėlesniame etape turime apskaičiuoti mėginių einamąjį vidurkį.
už (int i = 0; i <9; i ++) {už (int j = i + 1; j <10; j ++) {if (buferis_arr> buferis_arr) {temp = buferis_arr; buffer_arr = buferis_arr; buferis_arr = temp; }}}
Galiausiai apskaičiuokite 6 centrinių mėginių analogų verčių vidurkį. Tada ši vidutinė vertė paverčiama faktine pH verte ir atspausdinama LCD ekrane.
už (int i = 2; i <8; i ++) avgval + = buferio_arr; plūdės voltas = (plūduriuojantis) vidurkis * 5,0 / 1024/6; plūduriuojantis ph_act = -5,70 * voltas + kalibravimo_vertė; lcd.setCursor (0, 0); lcd.print ("pH Val:"); lcd.setCursor (8, 0); lcd.print (ph_act); vėlavimas (1000); }
PH elektrodo kalibravimas
Šiame projekte labai svarbus PH elektrodo kalibravimas. Tam turime turėti sprendimą, kurio vertė mums žinoma. Tai gali būti laikoma etaloniniu jutiklio kalibravimo tirpalu.
Tarkime, mes turime sprendimą, kurio PH vertė yra 7 (distiliuotas vanduo). Dabar, kai elektrodas panardinamas į etaloninį tirpalą, o LCD rodoma PH vertė yra 6,5. Tada, norėdami jį sukalibruoti , į kodo kalibravimo kintamąjį „ calibration_value“ tiesiog pridėkite 7-6,5 = 0,5 . ty reikšmę 21,34 + 0,5 = 21,84 . Atlikę šiuos pakeitimus, dar kartą įkelkite kodą į „Arduino“ ir dar kartą patikrinkite pH panardindami elektrodą į etaloninį tirpalą. Dabar skystųjų kristalų ekrane turėtų būti rodoma teisinga pH vertė, ty 7 (nedaug variantų) . Panašiai sureguliuokite šį kintamąjį, kad sukalibruotumėte jutiklį. Tada patikrinkite visus kitus sprendimus, kad gautumėte tikslią produkciją.
„Arduino“ pH testerio testavimas
Išbandėme šį „Arduino“ pH matuoklį panardinę į gryną ir citrininį vandenį, rezultatą galite pamatyti žemiau.
Tyras vanduo:
Citrinų vanduo:
Štai kaip mes galime sukurti pH jutiklį naudodami „Arduino“ ir juo galime patikrinti įvairių skysčių pH lygį.
Visas kodas ir parodomasis vaizdo įrašas pateikiami žemiau.