Spisu treści:

Monitorowanie temperatury i wilgotności za pomocą SHT25 i Arduino Nano: 5 kroków
Monitorowanie temperatury i wilgotności za pomocą SHT25 i Arduino Nano: 5 kroków

Wideo: Monitorowanie temperatury i wilgotności za pomocą SHT25 i Arduino Nano: 5 kroków

Wideo: Monitorowanie temperatury i wilgotności za pomocą SHT25 i Arduino Nano: 5 kroków
Wideo: Czujnik temperatury i wilgotności TUYA WiFi - monitoruj warunki w miejscu pracy i sypialni. 2024, Listopad
Anonim
Image
Image

Ostatnio pracowaliśmy nad różnymi projektami, które wymagały monitorowania temperatury i wilgotności, a potem zdaliśmy sobie sprawę, że te dwa parametry faktycznie odgrywają kluczową rolę w oszacowaniu wydajności pracy systemu. Zarówno na poziomie przemysłowym, jak i systemach osobistych, optymalny poziom temperatury jest warunkiem odpowiedniej wydajności systemu.

Z tego powodu w tym samouczku wyjaśnimy działanie czujnika wilgotności i temperatury SHT25 z Arduino Nano.

Krok 1: Przegląd SHT25:

Czego potrzebujesz..!!
Czego potrzebujesz..!!

Przede wszystkim zacznijmy od podstawowego zrozumienia czujnika i protokołu, na którym działa.

Czujnik wilgotności i temperatury SHT25 I2C ±1,8%RH ±0,2°C Moduł mini I2C. Jest to czujnik wilgotności i temperatury o wysokiej dokładności, który stał się standardem przemysłowym pod względem współczynnika kształtu i inteligencji, dostarczając skalibrowane, linearyzowane sygnały czujnika w formacie cyfrowym I2C. Zintegrowany ze specjalistycznym układem analogowym i cyfrowym czujnik ten jest jednym z najwydajniejszych urządzeń do pomiaru temperatury i wilgotności.

Protokół komunikacyjny na którym pracuje czujnik to I2C. I2C oznacza układ scalony. Jest to protokół komunikacyjny, w którym komunikacja odbywa się za pośrednictwem linii SDA (dane szeregowe) i SCL (zegar szeregowy). Umożliwia podłączenie wielu urządzeń jednocześnie. Jest to jeden z najprostszych i najbardziej wydajnych protokołów komunikacyjnych.

Krok 2: Czego potrzebujesz…

Czego potrzebujesz..!!
Czego potrzebujesz..!!
Czego potrzebujesz..!!
Czego potrzebujesz..!!
Czego potrzebujesz..!!
Czego potrzebujesz..!!

Materiały, których potrzebujemy do realizacji naszego celu, obejmują następujące komponenty sprzętowe:

1. Czujnik wilgotności i temperatury SHT25

2. Arduino Nano

3. Kabel I2C

4. Osłona I2C dla Arduino nano

Krok 3: Podłączenie sprzętu:

Podłączenie sprzętu
Podłączenie sprzętu
Podłączenie sprzętu
Podłączenie sprzętu

Sekcja podłączania sprzętu zasadniczo wyjaśnia połączenia okablowania wymagane między czujnikiem a arduino nano. Zapewnienie prawidłowych połączeń jest podstawową koniecznością podczas pracy na dowolnym systemie o pożądanej mocy. Tak więc wymagane połączenia są następujące:

SHT25 będzie działał przez I2C. Oto przykładowy schemat okablowania, pokazujący, jak okablować każdy interfejs czujnika.

Po wyjęciu z pudełka, płyta jest skonfigurowana do interfejsu I2C, dlatego zalecamy korzystanie z tego podłączenia, jeśli jesteś agnostykiem. Wszystko czego potrzebujesz to cztery przewody!

Wymagane są tylko cztery połączenia Vcc, Gnd, SCL i SDA, które są połączone za pomocą kabla I2C.

Połączenia te są pokazane na powyższych zdjęciach.

Krok 4: Kod monitorowania temperatury i wilgotności:

Kod monitorowania temperatury i wilgotności
Kod monitorowania temperatury i wilgotności

Zacznijmy teraz od kodu Arduino.

Korzystając z modułu czujnika z Arduino, dołączamy bibliotekę Wire.h. Biblioteka "Wire" zawiera funkcje ułatwiające komunikację i2c pomiędzy czujnikiem a płytką Arduino.

Cały kod Arduino podano poniżej dla wygody użytkownika:

#włączać

// adres SHT25 I2C to 0x40(64)

#define Addr 0x40

pusta konfiguracja()

{

// Zainicjuj komunikację I2C jako MASTER

Wire.początek();

// Zainicjuj komunikację szeregową, ustaw szybkość transmisji = 9600

Serial.początek(9600);

opóźnienie(300);

}

pusta pętla()

{

dane int bez znaku[2];

// Rozpocznij transmisję I2C

Wire.beginTransmisja(Addr);

// Wyślij polecenie pomiaru wilgotności, NO HOLD master

Wire.write(0xF5);

// Zatrzymaj transmisję I2C

Wire.endTransmission();

opóźnienie (500);

// Poproś o 2 bajty danych

Wire.requestFrom(Addr, 2);

// Odczytaj 2 bajty danych

// wilgotność msb, wilgotność lsb

if(Przewód.dostępny() == 2)

{

dane[0] = Przewód.odczyt();

dane[1] = Drut.odczyt();

// Konwertuj dane

wilgotność pływakowa = (((dane[0] * 256,0 + dane[1]) * 125,0) / 65536.0) - 6;

// Dane wyjściowe do monitora szeregowego

Serial.print("Wilgotność względna:");

Serial.print(wilgotność);

Serial.println("%RH");

}

// Rozpocznij transmisję I2C

Wire.beginTransmisja(Addr);

// Wyślij polecenie pomiaru temperatury, NO HOLD master

Wire.write(0xF3);

// Zatrzymaj transmisję I2C

Wire.endTransmission();

opóźnienie (500);

// Poproś o 2 bajty danych

Wire.requestFrom(Addr, 2);

// Odczytaj 2 bajty danych

// temp msb, temp lsb

if(Przewód.dostępny() == 2)

{

dane[0] = Przewód.odczyt();

dane[1] = Drut.odczyt();

// Konwertuj dane

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

pływak fTemp = (cTemp * 1,8) + 32;

// Dane wyjściowe do monitora szeregowego

Serial.print("Temperatura w stopniach Celsjusza:");

druk.seryjny(cTemp); Serial.println("C");

Serial.print("Temperatura w stopniach Fahrenheita:");

Serial.print(fTemp);

Serial.println(" F");

}

opóźnienie(300);

}

Wystarczy wypalić kod w Arduino i sprawdzić odczyty na porcie szeregowym. Wyjście pokazano na powyższym obrazku.

Krok 5: Aplikacje:

Aplikacje
Aplikacje

Czujnik temperatury i wilgotności względnej SHT25 ma różne zastosowania przemysłowe, takie jak monitorowanie temperatury, ochrona termiczna urządzeń peryferyjnych komputera. Zastosowaliśmy ten czujnik również w aplikacjach stacji pogodowej, a także w systemie monitorowania szklarni.

Zalecana: