- Vaaditut komponentit
- Mikä on pH-arvo?
- Kuinka painovoiman analoginen pH-anturi toimii?
- Arduino-pH-mittarin piirikaavio
- Arduinon ohjelmointi pH-mittarille
- PH-elektrodin kalibrointi
- Arduino-pH-testerin testaus
pH-asteikolla mitataan nesteen happamuus ja emäksisyys. Sen lukemat voivat vaihdella välillä 1-14, missä 1 osoittaa happaminta nestettä ja 14 näyttää emäksisintä nestettä. 7 pH on neutraaleille aineille, jotka eivät ole happamia eivätkä emäksisiä. PH: lla on nyt erittäin tärkeä rooli elämässämme, ja sitä käytetään monissa sovelluksissa. Esimerkiksi sitä voidaan käyttää uima-altaassa veden laadun tarkistamiseen. Vastaavasti pH-mittausta käytetään monissa sovelluksissa, kuten maataloudessa, jätevedenpuhdistuksessa, teollisuudessa, ympäristön seurannassa jne.
Tässä projektissa aiomme tehdä Arduino-pH-mittarin ja oppia mittaamaan nestemäisen liuoksen pH-arvon painovoiman pH-anturin ja Arduinon avulla. 16x2-nestekidenäyttöä käytetään pH-arvon näyttämiseen näytöllä. Opimme myös pH-anturin kalibroinnin anturin tarkkuuden määrittämiseksi. Joten aloitetaan!
Vaaditut komponentit
- Arduino Uno
- 16 * 2 aakkosnumeerinen LCD-näyttö
- I2C-moduuli LCD-näytölle
- Gravity Analoginen pH-anturi
- Johtojen liittäminen
- Leipälauta
Mikä on pH-arvo?
Yksikköä, jota käytämme aineen happamuuden mittaamiseen, kutsutaan pH: ksi . Termi "H" määritellään vetyionipitoisuuden negatiiviseksi log-logiksi. PH-alueella voi olla arvot 0-14. PH-arvo 7 on neutraali, koska puhtaan veden pH-arvo on täsmälleen 7. Alle 7 olevat arvot ovat happamia ja arvot yli 7 ovat emäksisiä tai emäksisiä.
Kuinka painovoiman analoginen pH-anturi toimii?
Analoginen pH-anturi on suunniteltu mittaamaan liuoksen pH-arvo ja osoittamaan aineen happamuus tai emäksisyys. Sitä käytetään yleisesti erilaisissa sovelluksissa, kuten maataloudessa, jätevedenpuhdistuksessa, teollisuudessa, ympäristön seurannassa jne. Moduulissa on sisäänrakennettu jännitteen säätimen siru, joka tukee laajaa 3,3-5,5 V DC: n jännitesyöttöä, joka on yhteensopiva 5 V: n ja 3,3 V jokaisesta ohjauskortista, kuten Arduino. Lähtösignaalia suodatetaan laitteiston matalalla värinällä.
Tekniset ominaisuudet:
Signaalinmuunnosmoduuli:
- Syöttöjännite: 3,3 ~ 5,5 V
- BNC-anturin liitin
- Suuri tarkkuus: ± 0,1 @ 25 ° C
- Tunnistusalue: 0 ~ 14
PH-elektrodi:
- Käyttölämpötila-alue: 5 ~ 60 ° C
- Nolla (neutraali) piste: 7 ± 0,5
- Helppo kalibrointi
- Sisäinen vastus: <250MΩ
pH-signaalin muunnoslevy:
Tapin kuvaus:
V +: 5 V DC-tulo
G: Maadoitettu tappi
Po: pH-analogilähtö
Tee: 3,3 V DC-lähtö
Vastaanottaja: Lämpötilalähtö
pH-elektrodin rakenne:
PH-anturin rakenne on esitetty yllä. PH-anturi näyttää tanko yleensä valmistettu lasista materiaalia, jossa on kärki nimeltään ”Glass kalvo”. Tämä kalvo on täytetty puskuriliuoksella, jonka pH on tunnettu (tyypillisesti pH = 7). Tämä elektrodirakenne varmistaa ympäristön, jossa H + -ionit sitoutuvat jatkuvasti lasikalvon sisäpuolelle. Kun koetin kastetaan testattavaan liuokseen, testiliuoksen vetyionit alkavat vaihtua muiden lasikalvolla olevien positiivisesti varautuneiden ionien kanssa, mikä luo kalvon läpi sähkökemiallisen potentiaalin, joka syötetään potentiaalia mittaavaan elektroniseen vahvistinmoduuliin. elektrodien välillä ja muuntaa sen pH-yksiköiksi. Näiden potentiaalien välinen ero määrittää pH-arvon Nernst-yhtälön perusteella.
Nernstin yhtälö:
Nernst-yhtälö antaa yhteyden sähkökemiallisen kennon solupotentiaalin, lämpötilan, reaktiosuhteen ja standardikennopotentiaalin välillä. Epätyypillisissä olosuhteissa Nernst-yhtälöä käytetään solupotentiaalien laskemiseen sähkökemiallisessa kennossa. Nernst-yhtälöä voidaan käyttää myös koko sähkökemiallisen kennon sähkömoottorin kokonaisvoiman (EMF) laskemiseen. Tätä yhtälöä käytetään myös ratkaisun PH-arvon laskemiseen. Lasielektrodivastetta ohjaa Nernst-yhtälö, joka voidaan antaa seuraavasti:
E = E0 - 2,3 (RT / nF) ln Q jossa Q = reaktiokerroin E = mV lähtö elektrodista E0 = elektrodin nollapoikkeama R = ihanteellinen kaasuvakio = 8,314 J / mol-K T = lämpötila ºK F = Faraday-vakio = 95 484,56 C / mol N = ionivaraus
Arduino-pH-mittarin piirikaavio
Tämän Arduino-pH-mittariprojektin kytkentäkaavio on annettu alla:
PH-signaalimuunnoslevyn liittäminen Arduinoon:
Arduinon ja PH-signaalimuunnoslevyn välinen yhteys on esitetty alla olevassa taulukossa.
Arduino |
PH-anturikortti |
5 V |
V + |
GND |
G |
A0 |
Po |
Arduinon ohjelmointi pH-mittarille
Onnistuneiden laitteistoyhteyksien jälkeen on nyt aika ohjelmoida Arduino. Tämän pH-mittarin täydellinen koodi Arduinolla on tämän opetusohjelman alaosassa. Hankkeen vaiheittainen selitys on annettu alla.
Ensimmäinen tehtävä ohjelmassa on sisällyttää kaikki vaaditut kirjastot. Tässä tapauksessani olen sisällyttänyt ” LiquidCrystal_I2C.h” -kirjaston LCD-näytön I2C-liitännän käyttämiseen ja “ Wire.h ” I2C-toiminnon käyttämiseen Arduinossa .
#sisältää
Seuraavaksi määritetään kalibrointiarvo, jota voidaan muuttaa tarpeen mukaan tarkan liuoksen pH-arvon saamiseksi. (Tämä selitetään myöhemmin artikkelissa)
uimurin kalibrointiarvo = 21,34;
Asennuksen sisällä () LCD-komennot kirjoitetaan tervetuloviestin näyttämiseksi LCD-näytöllä.
lcd.init (); lcd.begin (16, 2); lcd.taustavalo (); lcd.setCursor (0, 0); lcd.print ("Tervetuloa"); lcd.setCursor (0, 1); lcd.print ("Piirin yhteenveto"); viive (2000); lcd.clear ();
Inside loop (), lue 10 analogista näytearvoa ja tallenna ne ryhmään. Tätä tarvitaan lähtöarvon tasoittamiseksi.
for (int i = 0; i <10; i ++) {puskuri_arr = analoginen luku (A0); viive (30); }
Lajittele sitten vastaanotetut analogiset arvot nousevassa järjestyksessä. Tätä vaaditaan, koska meidän on laskettava näytteiden juokseva keskiarvo myöhemmässä vaiheessa.
for (int i = 0; i <9; i ++) {for (int j = i + 1; j <10; j ++) {if (puskuri_arr> puskuri_arr) {temp = puskuri_arr; puskurin_arr = puskurin_arr; puskurin_arr = lämpötila; }}}
Lopuksi lasketaan 6 keskinäytteen keskiarvo Analogiset arvot. Sitten tämä keskiarvo muunnetaan todelliseksi pH-arvoksi ja tulostetaan LCD-näytölle.
for (int i = 2; i <8; i ++) avgval + = puskuri_arr; uimajännite = (kelluva) keskiarvo * 5,0 / 1024/6; float ph_act = -5,70 * voltti + kalibrointiarvo; lcd.setCursor (0, 0); lcd.print ("pH Val:"); lcd.setCursor (8, 0); lcd.print (ph_act); viive (1000); }
PH-elektrodin kalibrointi
PH-elektrodin kalibrointi on erittäin tärkeää tässä projektissa. Tätä varten meillä on oltava ratkaisu, jonka arvo on meille tiedossa. Tätä voidaan pitää vertailuratkaisuna anturin kalibroinnissa.
Oletetaan, että meillä on ratkaisu, jonka PH-arvo on 7 (tislattu vesi). Nyt kun elektrodi kastetaan vertailuliuokseen ja nestekidenäytössä näkyvä PH-arvo on 6,5. Sitten kalibroi se lisäämällä vain 7-6,5 = 0,5 koodin kalibrointimuuttujaan " calibration_value" . eli tee arvo 21,34 + 0,5 = 21,84 . Kun olet tehnyt nämä muutokset, lataa koodi uudelleen Arduinoon ja tarkista pH upottamalla elektrodi vertailuliuokseen. Nyt LCD: n pitäisi näyttää oikea pH-arvo eli 7 (Pienet vaihtelut ovat huomattavia) . Säädä vastaavasti tätä muuttujaa anturin kalibroimiseksi. Tarkista sitten kaikki muut ratkaisut saadaksesi tarkan tuotoksen.
Arduino-pH-testerin testaus
Olemme kokeilleet tätä Arduino-pH-mittaria upottamalla sen puhtaaseen veteen ja sitruunaveteen, näet tuloksen alla.
Puhdas vesi:
Sitruunavesi:
Näin voimme rakentaa pH-anturin Arduinon avulla ja tarkistaa sen avulla eri nesteiden pH-tason.
Täydellinen koodi ja esittelyvideo ovat alla.