Spisu treści:

Monitorowanie temperatury i wilgotności za pomocą SHT25 i Raspberry Pi: 5 kroków
Monitorowanie temperatury i wilgotności za pomocą SHT25 i Raspberry Pi: 5 kroków

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

Wideo: Monitorowanie temperatury i wilgotności za pomocą SHT25 i Raspberry Pi: 5 kroków
Wideo: Czujnik temperatury i wilgotności TUYA WiFi - monitoruj warunki w miejscu pracy i sypialni. 2024, Lipiec
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.

Dlatego w tym samouczku wyjaśnimy działanie czujnika wilgotności i temperatury SHT25 za pomocą raspberry pi. W tym konkretnym samouczku jego działanie jest zademonstrowane przy użyciu kodu java.

Sprzęt, którego będziesz potrzebować do tego celu, to:

1. SHT25

2. Raspberry Pi

3. Kabel I2C

4. Osłona I2C dla Raspberry Pi

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. Malinowy pi

3. Kabel I2C

4. Osłona I2C dla Raspberry Pi

5. Kabel Ethernet

Krok 3: Podłączenie sprzętu:

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

Sekcja dotycząca podłączania sprzętu zasadniczo wyjaśnia połączenia okablowania wymagane między czujnikiem a raspberry pi. 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: Monitorowanie temperatury i wilgotności Kod Java:

Monitorowanie temperatury i wilgotności Kod Java
Monitorowanie temperatury i wilgotności Kod Java
Monitorowanie temperatury i wilgotności Kod Java
Monitorowanie temperatury i wilgotności Kod Java

Zaletą korzystania z raspberry pi jest to, że zapewnia elastyczność języka programowania, w którym chcesz zaprogramować płytkę w celu połączenia z nią czujnika. Wykorzystując tę zaletę tej płyty, demonstrujemy tutaj jej programowanie w Javie. Kod Java dla SHT25 można pobrać z naszej społeczności github, czyli sklepu Dcube Store.

Oprócz ułatwienia użytkownikom wyjaśniamy również kod tutaj:

Jako pierwszy krok kodowania musisz pobrać bibliotekę pi4j w przypadku java, ponieważ ta biblioteka obsługuje funkcje używane w kodzie. Aby pobrać bibliotekę, możesz odwiedzić poniższy link:

pi4j.com/install.html

Możesz skopiować działający kod java dla tego czujnika również stąd:

importuj com.pi4j.io.i2c. I2CBus;

importuj com.pi4j.io.i2c. I2CDurządzenie; importuj com.pi4j.io.i2c. I2CFabryka; import java.io. IOException; public class SHT25 { public static void main(String args) throws Exception { // Utwórz magistralę I2C I2CBus Bus = I2CFactory.getInstance(I2CBus. BUS_1); // Pobierz urządzenie I2C, SHT25 Adres I2C to 0x40(64) Urządzenie I2CDevice = Bus.getDevice(0x40); // Wyślij polecenie pomiaru temperatury, NO HOLD master device.write((byte)0xF3); Wątek.sen(500); // Odczytaj 2 bajty danych // temp msb, temp lsb byte data = new byte[2]; urządzenie.odczyt(dane, 0, 2); // Konwertuj dane podwójnie cTemp = ((((data[0] & 0xFF) * 256) + (data[1] & 0xFF)) * 175.72) / 65536.0) - 46.85; podwójne fTemp = (cTemp * 1,8) + 32; // Wyślij komendę pomiaru wilgotności, NO HOLD master device.write((byte)0xF5); Wątek.sen(500); // Odczytaj 2 bajty danych // wilgotność msb, wilgotność lsb device.read(data, 0, 2); // Konwertuj dane podwójna wilgotność = (((((data[0] & 0xFF) * 256) + (data[1] & 0xFF)) * 125.0) / 65536.0) - 6; // Dane wyjściowe na ekran System.out.printf("Wilgotność względna: %.2f %% RH %n", wilgotność); System.out.printf("Temperatura w stopniach Celsjusza: %.2f C %n", cTemp); System.out.printf("Temperatura w Farhenheit: %.2f F %n", fTemp); } }

Wyjście kodu jest również pokazane na powyższym obrazku.

Biblioteka, która ułatwia komunikację i2c między czujnikiem a płytą to pi4j, jej różne pakiety I2CBus, I2CDevice i I2CFactory pomagają w nawiązaniu połączenia.

importuj com.pi4j.io.i2c. I2CBus;

importuj com.pi4j.io.i2c. I2CDurządzenie; importuj com.pi4j.io.i2c. I2CFabryka; import java.io. IOException;

Ta część kodu powoduje, że czujnik pracuje w celu pomiaru temperatury i pomiaru wilgotności poprzez wpisanie odpowiednich poleceń funkcją write(), a następnie odczytanie danych funkcją read().

urządzenie.write((bajt)0xF3);

Wątek.sen(500);

// Odczytaj 2 bajty danych

// temp msb, temp lsb

bajt dane = nowy bajt[2];

urządzenie.odczyt(dane, 0, 2);

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

urządzenie.write((bajt)0xF5);

Wątek.sen(500);

// Odczytaj 2 bajty danych

// wilgotność msb, wilgotność lsb

urządzenie.odczyt(dane, 0, 2);

Krok 5: 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: