Sisukord:

Temperatuuri ja niiskuse jälgimine SHT25 ja Raspberry Pi abil: 5 sammu
Temperatuuri ja niiskuse jälgimine SHT25 ja Raspberry Pi abil: 5 sammu

Video: Temperatuuri ja niiskuse jälgimine SHT25 ja Raspberry Pi abil: 5 sammu

Video: Temperatuuri ja niiskuse jälgimine SHT25 ja Raspberry Pi abil: 5 sammu
Video: Tarneahela Temperatuuri Jälgimine osa2 2024, Juuli
Anonim
Image
Image

Oleme hiljuti töötanud erinevate projektide kallal, mis vajasid temperatuuri ja niiskuse jälgimist, ja siis mõistsime, et need kaks parameetrit mängivad tegelikult keskset rolli süsteemi töö efektiivsuse hindamisel. Nii tööstustasandil kui ka isiklikel süsteemidel on süsteemi piisava toimimise jaoks vajalik optimaalne temperatuuritase.

See on põhjus, miks me selles õpetuses selgitame SHT25 niiskus- ja temperatuurianduri tööd vaarika pi abil. Selles konkreetses õpetuses demonstreeritakse selle tööd java koodi abil.

Riistvara, mida selleks vajate, on:

1. SHT25

2. Vaarika Pi

3. I2C kaabel

4. I2C kilp vaarika pi jaoks

1. samm: SHT25 ülevaade:

Mida sa vajad….!!
Mida sa vajad….!!

Kõigepealt alustame põhiteadmistest andurist ja protokollist, millel see töötab.

SHT25 I2C niiskuse ja temperatuuri andur ± 1,8%RH ± 0,2 ° C I2C minimoodul. See on ülitäpne niiskus- ja temperatuuriandur, mis on muutunud vormiteguri ja intelligentsuse poolest tööstusstandardiks, pakkudes kalibreeritud, lineariseeritud andurisignaale digitaalses I2C-vormingus. Spetsiaalse analoog- ja digitaalskeemiga integreeritud andur on üks tõhusamaid seadmeid temperatuuri ja niiskuse mõõtmiseks.

Sideprotokoll, millel andur töötab, on I2C. I2C tähistab integraallülitust. See on suhtlusprotokoll, milles side toimub SDA (jadaandmed) ja SCL (jadakell) liinide kaudu. See võimaldab ühendada mitu seadet korraga. See on üks lihtsamaid ja tõhusamaid suhtlusprotokolle.

Samm: mida vajate….

Mida sa vajad….!!
Mida sa vajad….!!
Mida sa vajad….!!
Mida sa vajad….!!
Mida sa vajad….!!
Mida sa vajad….!!

Eesmärgi saavutamiseks vajalikud materjalid sisaldavad järgmisi riistvarakomponente:

1. SHT25 niiskus- ja temperatuuriandur

2. Vaarika pi

3. I2C kaabel

4. I2C kilp Raspberry Pi jaoks

5. Etherneti kaabel

3. samm: riistvara ühendamine:

Riistvara ühendamine
Riistvara ühendamine
Riistvara ühendamine
Riistvara ühendamine

Riistvara ühendamise jaotis selgitab põhimõtteliselt anduri ja vaarika pi vahel vajalikke juhtmestiku ühendusi. Soovitud väljundi mis tahes süsteemiga töötamisel on põhivajadus õigete ühenduste tagamine. Seega on vajalikud ühendused järgmised:

  • SHT25 töötab üle I2C. Siin on näide ühendusskeemist, mis näitab, kuidas anduri iga liidest ühendada.
  • Valmis plaat on konfigureeritud I2C liidese jaoks, seega soovitame seda ühendamist kasutada, kui olete muidu agnostik. Kõik, mida vajate, on neli juhtmest!
  • Vaja on ainult nelja ühendust Vcc, Gnd, SCL ja SDA ning need ühendatakse I2C kaabli abil.

Neid seoseid on näidatud ülaltoodud piltidel.

4. samm: temperatuuri ja niiskuse jälgimine Java -kood:

Temperatuuri ja niiskuse jälgimise Java -kood
Temperatuuri ja niiskuse jälgimise Java -kood
Temperatuuri ja niiskuse jälgimise Java -kood
Temperatuuri ja niiskuse jälgimise Java -kood

Vaarika pi kasutamise eeliseks on see, et saate paindlikult programmeerimiskeelt, milles soovite plaati programmeerida, et andurit sellega liidestada. Kasutades selle plaadi eeliseid, demonstreerime siin selle programmeerimist Java -s. SHT25 Java -koodi saab alla laadida meie githubi kogukonnast, mis on Dcube Store.

Lisaks kasutajate mugavusele selgitame koodi ka siin:

Kodeerimise esimese sammuna peate java korral alla laadima raamatukogu pi4j, kuna see raamatukogu toetab koodis kasutatavaid funktsioone. Niisiis, teegi allalaadimiseks võite külastada järgmist linki:

pi4j.com/install.html

Siit saate kopeerida ka selle anduri töötava java koodi:

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; importige java.io. IOException; avalik klass SHT25 {public static void main (String args ) viskab Erand {// Loo I2C siin I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1); // Hangi I2C seade, SHT25 I2C aadress on 0x40 (64) I2CDevice device = Bus.getDevice (0x40); // Temperatuuri mõõtmise käsk, NO HOLD master device.write ((bait) 0xF3); Niit.unenägu (500); // 2 baidi andmete lugemine // temp msb, temp lsb bait andmed = uus bait [2]; device.read (andmed, 0, 2); // Teisenda andmed topelt cTemp = (((((andmed [0] & 0xFF) * 256) + (andmed [1] & 0xFF)) * 175,72) / 65536,0) - 46,85; kahekordne fTemp = (cTemp * 1,8) + 32; // Niiskuse mõõtmise käsk, NO HOLD master device.write ((bait) 0xF5); Niit.unenägu (500); // Loe 2 baiti andmeid // niiskus msb, niiskus lsb seade.luge (andmed, 0, 2); // Teisenda andmed topeltniiskus = (((((andmed [0] & 0xFF) * 256) + (andmed [1] & 0xFF)) * 125,0) / 65536,0) - 6; // Väljundandmed ekraanile System.out.printf ("Suhteline õhuniiskus: %.2f %% RH %n", niiskus); System.out.printf ("Temperatuur Celsiuse järgi: %.2f C %n", cTemp); System.out.printf ("Temperatuur Farhenheiti järgi: %.2f F %n", fTemp); }}

Koodi väljund on näidatud ka ülaltoodud pildil.

Teek, mis hõlbustab i2c suhtlust anduri ja plaadi vahel, on pi4j, selle erinevad paketid I2CBus, I2CDevice ja I2CFactory aitavad ühendust luua.

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; importige java.io. IOException;

See koodi osa paneb anduri töötama temperatuuri mõõtmiseks ja niiskuse mõõtmiseks, kirjutades vastavad käsud, kasutades funktsiooni write (), ja seejärel loetakse andmed funktsiooni read () abil.

device.write ((bait) 0xF3);

Niit.unenägu (500);

// Lugege 2 baiti andmeid

// temp msb, temp lsb

bait andmed = uus bait [2];

device.read (andmed, 0, 2);

// Niiskuse mõõtmise käsk, NO HOLD master

device.write ((bait) 0xF5);

Niit.unenägu (500);

// Lugege 2 baiti andmeid

// niiskus msb, niiskus lsb

device.read (andmed, 0, 2);

Samm: rakendused:

SHT25 temperatuuri ja suhtelise niiskuse anduril on mitmesuguseid tööstuslikke rakendusi, nagu temperatuuri jälgimine, arvuti perifeerne termokaitse. Oleme seda andurit kasutanud ka ilmajaamade rakendustes ja kasvuhoone seiresüsteemis.

Soovitan: