Innehållsförteckning:

Temperatur- och luftfuktighetsövervakning med SHT25 och Arduino Nano: 5 steg
Temperatur- och luftfuktighetsövervakning med SHT25 och Arduino Nano: 5 steg

Video: Temperatur- och luftfuktighetsövervakning med SHT25 och Arduino Nano: 5 steg

Video: Temperatur- och luftfuktighetsövervakning med SHT25 och Arduino Nano: 5 steg
Video: Контроллер температуры и влажности XH-M452 с датчиком SHT20 2024, November
Anonim
Image
Image

Vi har nyligen arbetat med olika projekt som krävde temperatur- och fuktövervakning och sedan insåg vi att dessa två parametrar faktiskt spelar en avgörande roll för att ha en uppskattning av ett systems effektivitet. Både på industrinivå och personliga system är en optimal temperaturnivå nödvändig för att systemet ska fungera korrekt.

Detta är anledningen, i denna handledning kommer vi att förklara hur SHT25 fukt- och temperaturgivare fungerar med Arduino Nano.

Steg 1: SHT25 -översikt:

Vad du behöver..!!
Vad du behöver..!!

Först och främst kan vi börja med den grundläggande förståelsen för sensorn och det protokoll som den fungerar på.

SHT25 I2C Luftfuktighets- och temperatursensor ± 1,8%RH ± 0,2 ° C I2C minimodul. Det är luftfuktighet med hög noggrannhet och temperatursensorn har blivit en industristandard när det gäller formfaktor och intelligens, vilket ger kalibrerade, lineariserade sensorsignaler i digitalt I2C-format. Denna sensor är integrerad med en specialiserad analog och digital krets och är en av de mest effektiva enheterna för att mäta temperatur och luftfuktighet.

Kommunikationsprotokollet som sensorn fungerar på är I2C. I2C står för den interintegrerade kretsen. Det är ett kommunikationsprotokoll där kommunikationen sker via SDA (seriell data) och SCL (seriell klocka) linjer. Det gör det möjligt att ansluta flera enheter samtidigt. Det är ett av de enklaste och mest effektiva kommunikationsprotokollet.

Steg 2: Vad du behöver.. !

Vad du behöver..!!
Vad du behöver..!!
Vad du behöver..!!
Vad du behöver..!!
Vad du behöver..!!
Vad du behöver..!!

Materialet vi behöver för att uppnå vårt mål inkluderar följande hårdvarukomponenter:

1. SHT25 Luftfuktighets- och temperaturgivare

2. Arduino Nano

3. I2C -kabel

4. I2C -skärm för Arduino nano

Steg 3: Hårdvaruanslutning:

Hårdvaruanslutning
Hårdvaruanslutning
Hårdvaruanslutning
Hårdvaruanslutning

Hårdvaruanslutningssektionen förklarar i princip kabelförbindelserna som krävs mellan sensorn och arduino nano. Att säkerställa korrekta anslutningar är den grundläggande nödvändigheten när du arbetar på något system för önskad utgång. Så, de nödvändiga anslutningarna är följande:

SHT25 fungerar över I2C. Här är exemplet kopplingsschema som visar hur man kopplar upp varje gränssnitt för sensorn.

Out-of-the-box är kortet konfigurerat för ett I2C-gränssnitt, därför rekommenderar vi att du använder den här anslutningen om du annars är agnostiker. Allt du behöver är fyra ledningar!

Endast fyra anslutningar krävs Vcc, Gnd, SCL och SDA -stift och dessa är anslutna med hjälp av I2C -kabel.

Dessa kopplingar visas i bilderna ovan.

Steg 4: Temperatur- och fuktövervakningskod:

Övervakningskod för temperatur och luftfuktighet
Övervakningskod för temperatur och luftfuktighet

Låt oss börja med Arduino -koden nu.

När vi använder sensormodulen med Arduino inkluderar vi Wire.h -biblioteket. "Wire" -biblioteket innehåller de funktioner som underlättar i2c -kommunikationen mellan sensorn och Arduino -kortet.

Hela Arduino -koden anges nedan för användarens bekvämlighet:

#omfatta

// SHT25 I2C -adressen är 0x40 (64)

#define Addr 0x40

void setup ()

{

// Initiera I2C -kommunikation som MASTER

Wire.begin ();

// Initiera seriell kommunikation, ange överföringshastighet = 9600

Serial.begin (9600);

fördröjning (300);

}

void loop ()

{

osignerade int -data [2];

// Starta I2C -överföring

Wire.beginTransmission (Addr);

// Skicka fuktmätningskommando, NO HOLD master

Wire.write (0xF5);

// Stoppa I2C -överföring

Wire.endTransmission ();

fördröjning (500);

// Begär 2 byte med data

Wire.requestFrom (Addr, 2);

// Läs 2 byte med data

// fuktighet msb, fuktighet lsb

om (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

// Konvertera data

flottörfuktighet = (((data [0] * 256,0 + data [1]) * 125,0) / 65536,0) - 6;

// Utdata till Serial Monitor

Serial.print ("Relativ luftfuktighet:");

Seriellt tryck (luftfuktighet);

Serial.println (" %RH");

}

// Starta I2C -överföring

Wire.beginTransmission (Addr);

// Skicka temperaturmätningskommando, NO HOLD master

Wire.write (0xF3);

// Stoppa I2C -överföring

Wire.endTransmission ();

fördröjning (500);

// Begär 2 byte med data

Wire.requestFrom (Addr, 2);

// Läs 2 byte med data

// temp msb, temp lsb

om (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

// Konvertera data

float cTemp = (((data [0] * 256,0 + data [1]) * 175,72) / 65536,0) - 46,85;

float fTemp = (cTemp * 1.8) + 32;

// Utdata till Serial Monitor

Serial.print ("Temperatur i Celsius:");

Serial.print (cTemp); Serial.println ("C");

Serial.print ("Temperatur i Fahrenheit:");

Serial.print (fTemp);

Serial.println ("F");

}

fördröjning (300);

}

Allt du behöver göra är att bränna koden i Arduino och kontrollera dina avläsningar på den seriella porten. Utmatningen visas på bilden ovan.

Steg 5: Ansökningar:

Ansökningar
Ansökningar

SHT25 temperatur- och relativfuktighetssensor har olika industriella tillämpningar som temperaturövervakning, dator perifert termiskt skydd. Vi har också använt denna sensor i väderstationsapplikationer samt växthusövervakningssystem.

Rekommenderad: