Kazalo:

Nadzor temperature in vlažnosti z uporabo SHT25 in Raspberry Pi: 5 korakov
Nadzor temperature in vlažnosti z uporabo SHT25 in Raspberry Pi: 5 korakov

Video: Nadzor temperature in vlažnosti z uporabo SHT25 in Raspberry Pi: 5 korakov

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

Pred kratkim smo delali na različnih projektih, ki so zahtevali spremljanje temperature in vlažnosti, nato pa smo ugotovili, da imata ta dva parametra dejansko ključno vlogo pri oceni delovne učinkovitosti sistema. Tako na industrijski ravni kot na osebnih sistemih je optimalna temperatura potrebna za ustrezno delovanje sistema.

To je razlog, v tej vadnici bomo razložili delovanje senzorja vlažnosti in temperature SHT25 z uporabo maline pi. V tej posebni vadnici je njeno delovanje prikazano z uporabo kode java.

Strojna oprema, ki jo boste potrebovali v ta namen, je:

1. SHT25

2. Malina Pi

3. Kabel I2C

4. I2C ščit za malino pi

1. korak: Pregled SHT25:

Kaj rabiš….!!
Kaj rabiš….!!

Najprej začnimo z osnovnim razumevanjem senzorja in protokola, na katerem deluje.

Senzor vlažnosti in temperature SHT25 I2C ± 1,8%RH ± 0,2 ° C I2C mini modul. Senzor vlažnosti in temperature z visoko natančnostjo je postal industrijski standard v smislu faktorja oblike in inteligence, saj zagotavlja umerjene, linearizirane senzorske signale v digitalnem formatu I2C. Vgrajen s specializiranim analognim in digitalnim vezjem je ta senzor ena najučinkovitejših naprav za merjenje temperature in vlažnosti.

Komunikacijski protokol, na katerem deluje senzor, je I2C. I2C pomeni vmesno vezje. To je komunikacijski protokol, v katerem komunikacija poteka prek linij SDA (serijski podatki) in SCL (serijska ura). Omogoča povezovanje več naprav hkrati. Je eden najpreprostejših in najučinkovitejših komunikacijskih protokolov.

Korak: Kaj potrebujete … !

Kaj rabiš….!!
Kaj rabiš….!!
Kaj rabiš….!!
Kaj rabiš….!!
Kaj rabiš….!!
Kaj rabiš….!!

Materiali, ki jih potrebujemo za dosego našega cilja, vključujejo naslednje komponente strojne opreme:

1. Senzor vlažnosti in temperature SHT25

2. Malina pi

3. Kabel I2C

4. I2C ščit za Raspberry Pi

5. Ethernetni kabel

3. korak: Priključitev strojne opreme:

Priključitev strojne opreme
Priključitev strojne opreme
Priključitev strojne opreme
Priključitev strojne opreme

Oddelek za priključitev strojne opreme v bistvu razlaga potrebne povezave ožičenja med senzorjem in malinovim pi. Zagotavljanje pravilnih povezav je osnovna potreba pri delu na katerem koli sistemu za želeni izhod. Torej so potrebne povezave naslednje:

  • SHT25 bo deloval preko I2C. Tu je primer sheme ožičenja, ki prikazuje, kako povezati vsak vmesnik senzorja.
  • Plošča je že pripravljena za vmesnik I2C, zato priporočamo uporabo te povezave, če niste agnostični. Vse kar potrebujete so štiri žice!
  • Potrebne so le štiri povezave Vcc, Gnd, SCL in SDA, ki so povezane s kablom I2C.

Te povezave so prikazane na zgornjih slikah.

4. korak: Koda Java za spremljanje temperature in vlažnosti:

Koda Java za spremljanje temperature in vlažnosti
Koda Java za spremljanje temperature in vlažnosti
Koda Java za spremljanje temperature in vlažnosti
Koda Java za spremljanje temperature in vlažnosti

Prednost uporabe maline pi je, da vam omogoča prilagodljivost programskega jezika, v katerem želite programirati ploščo, da povežete senzor z njo. Če izkoristimo to prednost te plošče, tukaj dokazujemo njeno programiranje v Javi. Kodo Java za SHT25 lahko prenesete iz naše skupnosti github, to je Dcube Store.

Poleg lažjega uporabnika kodo razlagamo tudi tukaj:

Kot prvi korak kodiranja morate prenesti knjižnico pi4j v primeru jave, ker ta knjižnica podpira funkcije, ki se uporabljajo v kodi. Če želite prenesti knjižnico, obiščite naslednjo povezavo:

pi4j.com/install.html

Delovno kodo java za ta senzor lahko kopirate tudi tukaj:

uvoz com.pi4j.io.i2c. I2CBus;

uvoz com.pi4j.io.i2c. I2CDevice; uvoz com.pi4j.io.i2c. I2CFactory; uvoz java.io. IOException; javni razred SHT25 {public static void main (String args ) throws Exception {// Ustvari vodilo I2C I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1); // Pridobite napravo I2C, naslov I2C SHT25 je 0x40 (64) Naprava I2CDevice = Bus.getDevice (0x40); // Pošlji ukaz za merjenje temprature, NO HOLD master device.write ((byte) 0xF3); Thread.sleep (500); // branje 2 bajtov podatkov // temp msb, temp lsb byte data = nov bajt [2]; device.read (podatki, 0, 2); // Pretvorimo podatke dvojno cTemp = (((((podatki [0] & 0xFF) * 256) + (podatki [1] & 0xFF)) * 175,72) / 65536,0) - 46,85; dvojni fTemp = (cTemp * 1,8) + 32; // Pošlji ukaz za merjenje vlažnosti, NO HOLD master device.write ((byte) 0xF5); Thread.sleep (500); // Preberite 2 bajta podatkov // vlažnost msb, vlažnost lsb naprava.preberite (podatki, 0, 2); // Pretvorimo dvojno vlažnost podatkov = (((((podatki [0] & 0xFF) * 256) + (podatki [1] & 0xFF)) * 125,0) / 65536,0) - 6; // Izhodni podatki na zaslon System.out.printf ("Relativna vlažnost: %.2f %% RH %n", vlažnost); System.out.printf ("Temperatura v Celzijah: %.2f C %n", cTemp); System.out.printf ("Temperatura v Farhenheitu: %.2f F %n", fTemp); }}

Izhod kode je prikazan tudi na zgornji sliki.

Knjižnica, ki olajša komunikacijo i2c med senzorjem in ploščo, je pi4j, njeni različni paketi I2CBus, I2CDevice in I2CFactory pa pomagajo vzpostaviti povezavo.

uvoz com.pi4j.io.i2c. I2CBus;

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

Ta del kode omogoča, da senzor deluje za merjenje temperature in vlažnosti s pisanjem ustreznih ukazov s funkcijo write (), nato pa se podatki odčitajo s funkcijo read ().

device.write ((bajt) 0xF3);

Thread.sleep (500);

// Preberite 2 bajta podatkov

// temp msb, temp lsb

bajt podatki = novi bajt [2];

device.read (podatki, 0, 2);

// Pošlji ukaz za merjenje vlažnosti, NO HOLD master

device.write ((bajt) 0xF5);

Thread.sleep (500);

// Preberite 2 bajta podatkov

// vlažnost msb, vlažnost lsb

device.read (podatki, 0, 2);

5. korak: Aplikacije:

Senzor temperature in relativne vlažnosti SHT25 ima različne industrijske aplikacije, kot so nadzor temperature, zunanja toplotna zaščita računalnika. Ta senzor smo uporabili tudi v aplikacijah vremenskih postaj in v sistemu za nadzor rastlinjakov.

Priporočena: