INHOUDSOPGAWE:

Temperatuur- en humiditeitsmonitering met behulp van SHT25 en Framboos Pi: 5 stappe
Temperatuur- en humiditeitsmonitering met behulp van SHT25 en Framboos Pi: 5 stappe

Video: Temperatuur- en humiditeitsmonitering met behulp van SHT25 en Framboos Pi: 5 stappe

Video: Temperatuur- en humiditeitsmonitering met behulp van SHT25 en Framboos Pi: 5 stappe
Video: Temperatuur en hoogte 2024, Julie
Anonim
Image
Image

Ons het onlangs aan verskillende projekte gewerk wat temperatuur- en humiditeitsmonitering vereis, en toe besef ons dat hierdie twee parameters eintlik 'n deurslaggewende rol speel in die berekening van die werkdoeltreffendheid van 'n stelsel. Beide op industriële vlak en persoonlike stelsels is 'n optimale temperatuurvlak nodig om die stelsel goed te laat funksioneer.

Dit is die rede: in hierdie tutoriaal gaan ons die werking van die SHT25 -humiditeits- en temperatuursensor verduidelik met behulp van framboospi. In hierdie spesifieke tutoriaal word die werking daarvan gedemonstreer met behulp van 'n java -kode.

Die hardeware wat u vir hierdie doel benodig:

1. SHT25

2. Framboos Pi

3. I2C -kabel

4. I2C skild vir framboos pi

Stap 1: Oorsig van SHT25:

Wat jy nodig het….!!
Wat jy nodig het….!!

Eerstens moet ons begin met die basiese begrip van die sensor en die protokol waarop dit werk.

SHT25 I2C Humiditeit en Temperatuursensor ± 1.8%RH ± 0.2 ° C I2C Mini Module. Dit is 'n hoë-akkuraatheidsvochtigheid en temperatuursensor het 'n industriële standaard geword in terme van vormfaktor en intelligensie, wat geykte, lineêre sensor seine in digitale I2C-formaat bied. Hierdie sensor is geïntegreer met 'n gespesialiseerde analoog en digitale stroombaan en is een van die doeltreffendste toestelle om temperatuur en humiditeit te meet.

Die kommunikasieprotokol waarop die sensor werk, is I2C. I2C staan vir die inter-geïntegreerde stroombaan. Dit is 'n kommunikasieprotokol waarin die kommunikasie plaasvind deur middel van SDA (seriële data) en SCL (seriële klok) lyne. Dit maak dit moontlik om verskeie toestelle gelyktydig te verbind. Dit is een van die eenvoudigste en doeltreffendste kommunikasieprotokolle.

Stap 2: Wat u nodig het …

Wat jy nodig het….!!
Wat jy nodig het….!!
Wat jy nodig het….!!
Wat jy nodig het….!!
Wat jy nodig het….!!
Wat jy nodig het….!!

Die materiaal wat ons nodig het om ons doel te bereik, bevat die volgende hardeware -komponente:

1. SHT25 humiditeits- en temperatuursensor

2. Framboos pi

3. I2C -kabel

4. I2C -skild vir Framboos Pi

5. Ethernet -kabel

Stap 3: Hardeware -aansluiting:

Hardeware -aansluiting
Hardeware -aansluiting
Hardeware -aansluiting
Hardeware -aansluiting

Die hardeware -aansluitingsgedeelte verduidelik basies die bedradingverbindings wat tussen die sensor en die framboospi benodig word. Die korrekte noodsaaklikheid is om korrekte verbindings te verseker terwyl u aan 'n stelsel werk vir die gewenste uitset. Die vereiste verbindings is dus soos volg:

  • Die SHT25 werk oor I2C. Hier is die voorbeeld -bedradingsdiagram wat demonstreer hoe om elke koppelvlak van die sensor aan te sluit.
  • Uit die boks is die bord gekonfigureer vir 'n I2C-koppelvlak, daarom beveel ons aan dat u hierdie aansluiting gebruik as u anders agnosties is. Al wat u nodig het, is vier drade!
  • Slegs vier verbindings is nodig Vcc-, Gnd-, SCL- en SDA -penne en dit word met behulp van I2C -kabel verbind.

Hierdie verbindings word getoon in die foto's hierbo.

Stap 4: Temperatuur- en humiditeitsmonitering van Java -kode:

Temperatuur- en humiditeitsmonitering van Java -kode
Temperatuur- en humiditeitsmonitering van Java -kode
Temperatuur- en humiditeitsmonitering van Java -kode
Temperatuur- en humiditeitsmonitering van Java -kode

Die voordeel van die gebruik van framboos pi is dat dit u die buigsaamheid bied van die programmeertaal waarin u die bord wil programmeer om die sensor daarmee te koppel. Deur hierdie voordeel van hierdie bord te benut, demonstreer ons hier die programmering daarvan in Java. Die Java -kode vir SHT25 kan afgelaai word van ons github -gemeenskap, dit is Dcube Store.

Behalwe vir die gemak van die gebruikers, verduidelik ons die kode ook hier:

As die eerste stap van kodering moet u die pi4j -biblioteek aflaai in geval van java, want hierdie biblioteek ondersteun die funksies wat in die kode gebruik word. Om die biblioteek af te laai, kan u die volgende skakel besoek:

pi4j.com/install.html

U kan die werkende Java -kode vir hierdie sensor ook hier kopieer:

invoer com.pi4j.io.i2c. I2CBus;

voer com.pi4j.io.i2c. I2CD -toestel in; invoer com.pi4j.io.i2c. I2CFactory; invoer java.io. IOException; openbare klas SHT25 {public static void main (String args ) gooi uitsondering {// Skep I2C bus I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1); // Kry I2C -toestel, SHT25 I2C -adres is 0x40 (64) I2CDevice -toestel = Bus.getDevice (0x40); // Stuur opdrag vir temperatuurmeting, GEEN HOU -meesterapparaat nie.skryf ((byte) 0xF3); Draad.slaap (500); // Lees 2 grepe data // temp msb, temp lsb byte data = nuwe byte [2]; device.read (data, 0, 2); // Skakel die data dubbel om cTemp = ((((data [0] & 0xFF) * 256) + (data [1] & 0xFF)) * 175,72) / 65536,0) - 46,85; dubbel fTemp = (cTemp * 1.8) + 32; // Stuur opdrag vir die meting van humiditeit, GEEN HOU -meesterapparaat nie. Skryf ((byte) 0xF5); Draad.slaap (500); // Lees 2 grepe data // humiditeit msb, humiditeit lsb device.read (data, 0, 2); // Skakel die data dubbele humiditeit om (((((data [0] & 0xFF) * 256) + (data [1] & 0xFF)) * 125.0) / 65536.0) - 6; // Uitset data na die skerm System.out.printf ("Relatiewe humiditeit: %.2f %% RH %n", humiditeit); System.out.printf ("Temperatuur in Celsius: %.2f C %n", cTemp); System.out.printf ("Temperatuur in Farhenheit: %.2f F %n", fTemp); }}

Die afvoer van die kode word ook op die foto hierbo getoon.

Die biblioteek wat i2c -kommunikasie tussen die sensor en die bord vergemaklik, is pi4j, sy verskillende pakkette I2CBus, I2CDevice en I2CFactory help om die verbinding tot stand te bring.

invoer com.pi4j.io.i2c. I2CBus;

voer com.pi4j.io.i2c. I2CD -toestel in; invoer com.pi4j.io.i2c. I2CFactory; invoer java.io. IOException;

Hierdie deel van die kode laat die sensor werk vir temperatuurmeting en humiditeitsmeting deur die onderskeie opdragte te skryf met die skryf () -funksie en dan word die data gelees met behulp van die lees () -funksie.

device.write ((byte) 0xF3);

Draad.slaap (500);

// Lees 2 grepe data

// temp msb, temp lsb

byte data = nuwe byte [2];

device.read (data, 0, 2);

// Stuur opdrag vir die meting van humiditeit, GEEN HOU -meester nie

device.write ((byte) 0xF5);

Draad.slaap (500);

// Lees 2 grepe data

// humiditeit msb, humiditeit lsb

device.read (data, 0, 2);

Stap 5: Aansoeke:

SHT25 temperatuur- en relatiewe humiditeitsensor het verskillende industriële toepassings, soos temperatuurmonitering, perifere termiese beskerming van die rekenaar. Ons het hierdie sensor ook gebruik vir weerstasie -toepassings sowel as kweekhuismoniteringstelsels.

Aanbeveel: