Sadržaj:

Nadzor temperature i vlažnosti pomoću SHT25 i Raspberry Pi: 5 koraka
Nadzor temperature i vlažnosti pomoću SHT25 i Raspberry Pi: 5 koraka

Video: Nadzor temperature i vlažnosti pomoću SHT25 i Raspberry Pi: 5 koraka

Video: Nadzor temperature i vlažnosti pomoću SHT25 i Raspberry Pi: 5 koraka
Video: Часть 5 - Аудиокнига Уолдена Генри Дэвида Торо (глы 12–15) 2024, Srpanj
Anonim
Image
Image

Nedavno smo radili na raznim projektima koji su zahtijevali praćenje temperature i vlažnosti, a zatim smo shvatili da ta dva parametra zapravo igraju ključnu ulogu u procjeni radne učinkovitosti sustava. I na industrijskoj razini i na osobnim sustavima optimalna razina temperature preduvjet je za odgovarajuće performanse sustava.

To je razlog, u ovom ćemo vodiču objasniti rad senzora vlažnosti i temperature SHT25 pomoću maline pi. U ovom posebnom vodiču njegov rad se demonstrira pomoću java koda.

Hardver koji će vam trebati u tu svrhu je:

1. SHT25

2. Malina Pi

3. I2C kabel

4. I2C štit za malinu pi

Korak 1: Pregled SHT25:

Što trebaš….!!
Što trebaš….!!

Prije svega, počnimo s osnovnim razumijevanjem senzora i protokola na kojem on radi.

SHT25 I2C Senzor vlažnosti i temperature ± 1,8%RH ± 0,2 ° C I2C mini modul. Senzor vlažnosti i temperature visoke preciznosti postao je industrijski standard u pogledu oblika i inteligencije, pružajući kalibrirane, linearizirane signale senzora u digitalnom, I2C formatu. Integriran sa specijaliziranim analognim i digitalnim krugom, ovaj senzor jedan je od najučinkovitijih uređaja za mjerenje temperature i vlažnosti.

Komunikacijski protokol na kojem senzor radi je I2C. I2C označava međuintegrirano kolo. To je komunikacijski protokol u kojem se komunikacija odvija putem linija SDA (serijski podaci) i SCL (serijski sat). Omogućuje povezivanje više uređaja istovremeno. To je jedan od najjednostavnijih i najučinkovitijih komunikacijskih protokola.

Korak 2: Što vam treba …

Što trebaš….!!
Što trebaš….!!
Što trebaš….!!
Što trebaš….!!
Što trebaš….!!
Što trebaš….!!

Materijali koji su nam potrebni za postizanje našeg cilja uključuju sljedeće hardverske komponente:

1. Senzor vlage i temperature SHT25

2. Malina pi

3. I2C kabel

4. I2C štit za Raspberry Pi

5. Ethernet kabel

Korak 3: Povezivanje hardvera:

Spajanje hardvera
Spajanje hardvera
Spajanje hardvera
Spajanje hardvera

Odjeljak hardverskog spajanja u osnovi objašnjava potrebne ožičenje potrebne veze između senzora i maline pi. Osiguravanje ispravnih veza osnovna je potreba tijekom rada na bilo kojem sustavu za željeni izlaz. Dakle, potrebne veze su sljedeće:

  • SHT25 će raditi preko I2C. Evo primjera dijagrama ožičenja koji pokazuje kako spojiti svako sučelje senzora.
  • Out-of-box, ploča je konfigurirana za I2C sučelje, pa kao takvu preporučujemo korištenje ove veze ako ste inače agnostični. Sve što trebate su četiri žice!
  • Potrebna su samo četiri priključka Vcc, Gnd, SCL i SDA pinovi koji se povezuju pomoću I2C kabela.

Ove veze su prikazane na gornjim slikama.

Korak 4: Java kod za praćenje temperature i vlažnosti:

Java kod za praćenje temperature i vlažnosti
Java kod za praćenje temperature i vlažnosti
Java kod za praćenje temperature i vlažnosti
Java kod za praćenje temperature i vlažnosti

Prednost korištenja maline pi je ta što vam daje fleksibilnost programskog jezika u kojem želite programirati ploču kako biste s njom spojili senzor. Iskorištavajući ovu prednost ove ploče, ovdje demonstriramo njezino programiranje na Javi. Java kod za SHT25 može se preuzeti s naše github zajednice koja je Dcube Store.

Osim radi lakšeg korištenja, kôd objašnjavamo i ovdje:

Kao prvi korak kodiranja morate preuzeti knjižnicu pi4j u slučaju jave, jer ova knjižnica podržava funkcije korištene u kodu. Dakle, za preuzimanje knjižnice možete posjetiti sljedeću vezu:

pi4j.com/install.html

Ovdje možete kopirati radni java kôd za ovaj senzor:

uvoz com.pi4j.io.i2c. I2CBus;

uvoz com.pi4j.io.i2c. I2CDevice; uvoz com.pi4j.io.i2c. I2CFactory; import java.io. IOException; javna klasa SHT25 {public static void main (String args ) throws Exception {// Stvori I2C sabirnicu I2CBus sabirnicu = I2CFactory.getInstance (I2CBus. BUS_1); // Nabavite I2C uređaj, SHT25 I2C adresa je 0x40 (64) I2CDevice uređaj = Bus.getDevice (0x40); // Slanje naredbe za mjerenje temprature, NO HOLD master device.write ((byte) 0xF3); Navoj.spavanje (500); // Očitavanje 2 bajta podataka // temp msb, temp lsb byte data = novi bajt [2]; device.read (podaci, 0, 2); // Pretvorimo podatke dvostruko cTemp = (((((podaci [0] & 0xFF) * 256) + (podaci [1] & 0xFF)) * 175,72) / 65536,0) - 46,85; dvostruki fTemp = (cTemp * 1,8) + 32; // Slanje naredbe za mjerenje vlažnosti, NO HOLD master device.write ((byte) 0xF5); Navoj.spavanje (500); // Očitavanje 2 bajta podataka // vlažnost msb, vlažnost lsb uređaj.čitaj (podaci, 0, 2); // Pretvorimo podatke dvostruka vlažnost = (((((podaci [0] & 0xFF) * 256) + (podaci [1] & 0xFF)) * 125,0) / 65536,0) - 6; // Izlaženje podataka na zaslon System.out.printf ("Relativna vlažnost: %.2f %% RH %n", vlažnost); System.out.printf ("Temperatura u Celzijusima: %.2f C %n", cTemp); System.out.printf ("Temperatura u Farhenheitu: %.2f F %n", fTemp); }}

Izlaz koda je također prikazan na gornjoj slici.

Knjižnica koja olakšava i2c komunikaciju između senzora i ploče je pi4j, a njezini različiti paketi I2CBus, I2CDevice i I2CFactory pomažu u uspostavljanju veze.

uvoz com.pi4j.io.i2c. I2CBus;

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

Ovaj dio koda tjera senzor na mjerenje temperature i mjerenje vlažnosti ispisujući odgovarajuće naredbe pomoću funkcije write (), a zatim se podaci čitaju pomoću funkcije read ().

device.write ((bajt) 0xF3);

Navoj.spavanje (500);

// Očitavanje 2 bajta podataka

// temp msb, temp lsb

bajt podatak = novi bajt [2];

device.read (podaci, 0, 2);

// Pošaljite naredbu za mjerenje vlažnosti, NO HOLD master

device.write ((bajt) 0xF5);

Navoj.spavanje (500);

// Očitavanje 2 bajta podataka

// vlažnost msb, vlažnost lsb

device.read (podaci, 0, 2);

5. korak: Prijave:

Senzor temperature i relativne vlažnosti zraka SHT25 ima različite industrijske primjene poput nadzora temperature, periferne toplinske zaštite računala. Ovaj smo senzor također upotrijebili u aplikacijama meteoroloških stanica, kao i u sustavu nadzora staklenika.

Preporučeni: