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, Novembar
Anonim
Image
Image

Nedavno smo radili na raznim projektima koji su zahtijevali praćenje temperature i vlažnosti, a onda smo shvatili da ova dva parametra zapravo igraju ključnu ulogu u procjeni radne efikasnosti sistema. I na industrijskom nivou i na ličnim sistemima optimalna temperatura je neophodan uslov za odgovarajuće performanse sistema.

To je razlog, u ovom vodiču ćemo 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:

Sta ti treba….!!
Sta ti 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 je jedan od najefikasnijih 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 SDA (serijski podaci) i SCL (serijski sat) linija. Omogućava povezivanje više uređaja istovremeno. To je jedan od najjednostavnijih i najefikasnijih komunikacijskih protokola.

Korak 2: Šta vam treba….

Sta ti treba….!!
Sta ti treba….!!
Sta ti treba….!!
Sta ti treba….!!
Sta ti treba….!!
Sta ti treba….!!

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

1. SHT25 senzor vlažnosti i temperature

2. Malina pi

3. I2C kabel

4. I2C štit za Raspberry Pi

5. Ethernet kabel

Korak 3: Povezivanje hardvera:

Povezivanje hardvera
Povezivanje hardvera
Povezivanje hardvera
Povezivanje hardvera

Odeljak za priključivanje hardvera u osnovi objašnjava potrebne ožičenje između senzora i maline pi. Osiguravanje ispravnih veza osnovna je potreba pri radu na bilo kojem sistemu 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: Nadgledanje temperature i vlažnosti Java kod:

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 povezali senzor. Iskorištavajući ovu prednost ove ploče, ovdje demonstriramo njeno programiranje na Javi. Java kod za SHT25 može se preuzeti sa 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 pi4j biblioteku u slučaju jave, jer ova biblioteka podržava funkcije koje se koriste u kodu. Dakle, za preuzimanje biblioteke možete posjetiti sljedeću vezu:

pi4j.com/install.html

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

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; import java.io. IOException; javna klasa SHT25 {public static void main (String args ) throws Exception {// Kreiraj 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); // Pošaljite naredbu za mjerenje temprature, NO HOLD master device.write ((byte) 0xF3); Thread.sleep (500); // Čitanje 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; // Pošaljite naredbu za mjerenje vlažnosti, NO HOLD master device.write ((byte) 0xF5); Thread.sleep (500); // Očitavanje 2 bajta podataka // vlažnost msb, vlažnost lsb uređaj.čitano (podaci, 0, 2); // Pretvorimo podatke dvostruka vlažnost = (((((podaci [0] & 0xFF) * 256) + (podaci [1] & 0xFF)) * 125,0) / 65536,0) - 6; // Izlaženje podataka na ekran 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.

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

import com.pi4j.io.i2c. I2CBus;

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

Ovaj dio koda tjera senzor da radi za 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);

Thread.sleep (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);

Thread.sleep (500);

// Očitavanje 2 bajta podataka

// vlažnost msb, vlažnost lsb

device.read (podaci, 0, 2);

Korak 5: Aplikacije:

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

Preporučuje se: