Inhaltsverzeichnis:

Temperatur- und Luftfeuchtigkeitsüberwachung mit SHT25 und Raspberry Pi - Gunook
Temperatur- und Luftfeuchtigkeitsüberwachung mit SHT25 und Raspberry Pi - Gunook

Video: Temperatur- und Luftfeuchtigkeitsüberwachung mit SHT25 und Raspberry Pi - Gunook

Video: Temperatur- und Luftfeuchtigkeitsüberwachung mit SHT25 und Raspberry Pi - Gunook
Video: Raspberry Pi SHT25 Humidity & Temperature Sensor Java Tutorial 2024, Dezember
Anonim
Image
Image

Wir haben in letzter Zeit an verschiedenen Projekten gearbeitet, die eine Temperatur- und Feuchtigkeitsüberwachung erforderten, und dann haben wir festgestellt, dass diese beiden Parameter tatsächlich eine entscheidende Rolle bei der Schätzung der Arbeitseffizienz eines Systems spielen. Sowohl auf industrieller Ebene als auch auf Personalsystemen ist ein optimales Temperaturniveau die Voraussetzung für die ausreichende Leistung des Systems.

Aus diesem Grund erklären wir in diesem Tutorial die Funktionsweise des SHT25-Feuchte- und Temperatursensors mit Himbeer-Pi. In diesem speziellen Tutorial wird seine Funktionsweise mit einem Java-Code demonstriert.

Hardware, die Sie für diesen Zweck benötigen, sind:

1. SHT25

2. Himbeer-Pi

3. I2C-Kabel

4. I2C-Schild für Himbeer-Pi

Schritt 1: SHT25-Übersicht:

Was du brauchst….!!
Was du brauchst….!!

Beginnen wir zunächst mit dem grundlegenden Verständnis des Sensors und des Protokolls, mit dem er arbeitet.

SHT25 I2C Feuchte- und Temperatursensor ±1,8%RH ±0,2°C I2C Mini-Modul. Dieser hochgenaue Feuchte- und Temperatursensor hat sich in Bezug auf Formfaktor und Intelligenz zu einem Industriestandard entwickelt und liefert kalibrierte, linearisierte Sensorsignale im digitalen I2C-Format. Integriert in eine spezielle analoge und digitale Schaltung ist dieser Sensor eines der effizientesten Geräte zur Messung von Temperatur und Luftfeuchtigkeit.

Das Kommunikationsprotokoll, auf dem der Sensor arbeitet, ist I2C. I2C steht für den interintegrierten Schaltkreis. Es ist ein Kommunikationsprotokoll, bei dem die Kommunikation über SDA-(serial data)- und SCL-(serial clock)-Leitungen erfolgt. Es ermöglicht den gleichzeitigen Anschluss mehrerer Geräte. Es ist eines der einfachsten und effizientesten Kommunikationsprotokolle.

Schritt 2: Was Sie brauchen …

Was du brauchst….!!
Was du brauchst….!!
Was du brauchst….!!
Was du brauchst….!!
Was du brauchst….!!
Was du brauchst….!!

Zu den Materialien, die wir zur Erreichung unseres Ziels benötigen, gehören die folgenden Hardwarekomponenten:

1. SHT25 Feuchtigkeits- und Temperatursensor

2. Himbeer-Pi

3. I2C-Kabel

4. I2C-Schild für Raspberry Pi

5. Ethernet-Kabel

Schritt 3: Hardwareanschluss:

Hardware-Anschluss
Hardware-Anschluss
Hardware-Anschluss
Hardware-Anschluss

Der Abschnitt zum Hardwareanschluss erklärt im Wesentlichen die erforderlichen Kabelverbindungen zwischen dem Sensor und dem Himbeer-Pi. Die Sicherstellung korrekter Verbindungen ist die Grundvoraussetzung bei der Arbeit an jedem System für die gewünschte Ausgabe. Die erforderlichen Verbindungen sind also wie folgt:

  • Der SHT25 funktioniert über I2C. Hier ist das Beispiel-Verdrahtungsdiagramm, das zeigt, wie jede Schnittstelle des Sensors verdrahtet wird.
  • Out-of-the-box ist das Board für eine I2C-Schnittstelle konfiguriert, daher empfehlen wir, diesen Anschluss zu verwenden, wenn Sie ansonsten agnostisch sind. Alles was Sie brauchen sind vier Drähte!
  • Es werden nur vier Anschlüsse benötigt Vcc, Gnd, SCL und SDA Pins und diese werden mit Hilfe von I2C Kabel verbunden.

Diese Verbindungen sind in den obigen Bildern dargestellt.

Schritt 4: Temperatur- und Feuchtigkeitsüberwachung Java-Code:

Java-Code zur Temperatur- und Feuchtigkeitsüberwachung
Java-Code zur Temperatur- und Feuchtigkeitsüberwachung
Java-Code zur Temperatur- und Feuchtigkeitsüberwachung
Java-Code zur Temperatur- und Feuchtigkeitsüberwachung

Der Vorteil der Verwendung von Raspberry Pi besteht darin, dass Sie die Flexibilität der Programmiersprache haben, in der Sie das Board programmieren möchten, um den Sensor damit zu verbinden. Diesen Vorteil dieses Boards nutzend, demonstrieren wir hier seine Programmierung in Java. Der Java-Code für SHT25 kann von unserer Github-Community, dem Dcube Store, heruntergeladen werden.

Neben der Benutzerfreundlichkeit erklären wir den Code auch hier:

Als ersten Schritt der Codierung müssen Sie im Falle von Java die pi4j-Bibliothek herunterladen, da diese Bibliothek die im Code verwendeten Funktionen unterstützt. Um die Bibliothek herunterzuladen, können Sie den folgenden Link besuchen:

pi4j.com/install.html

Sie können den funktionierenden Java-Code für diesen Sensor auch von hier kopieren:

com.pi4j.io.i2c. I2CBus importieren;

com.pi4j.io.i2c. I2CDevice importieren; com.pi4j.io.i2c. I2CFactory importieren; import java.io. IOException; public class SHT25 { public static void main(String args) wirft Ausnahme {// I2C-Bus erstellen I2CBus Bus = I2CFactory.getInstance(I2CBus. BUS_1); // I2C-Gerät abrufen, SHT25 I2C-Adresse ist 0x40 (64) I2CDevice-Gerät = Bus.getDevice (0x40); // Temperaturmessbefehl senden, NO HOLD master device.write ((byte) 0xF3); Thread.sleep(500); // 2 Byte Daten lesen // temp msb, temp lsb byte data = new byte[2]; device.read (Daten, 0, 2); // Konvertieren Sie die Daten double cTemp = (((((data[0] & 0xFF) * 256) + (data[1] & 0xFF)) * 175.72) / 65536.0) - 46.85; doppeltes fTemp = (cTemp * 1,8) + 32; // Feuchtemessbefehl senden, NO HOLD master device.write ((byte) 0xF5); Thread.sleep(500); // 2 Byte Daten lesen // Feuchtigkeit msb, Feuchtigkeit lsb device.read (data, 0, 2); // Konvertieren Sie die Daten doppelte Feuchtigkeit = (((((data[0] & 0xFF) * 256) + (data[1] & 0xFF)) * 125.0) / 65536.0) - 6; // Daten auf Bildschirm ausgeben System.out.printf("Relative Humidity: %.2f %% RH %n", Humidity); System.out.printf("Temperatur in Celsius: %.2f C %n", cTemp); System.out.printf("Temperatur in Fahrenheit: %.2f F %n", fTemp); } }

Die Ausgabe des Codes ist auch im obigen Bild zu sehen.

Die Bibliothek, die die i2c-Kommunikation zwischen Sensor und Board ermöglicht, ist pi4j, seine verschiedenen Pakete I2CBus, I2CDevice und I2CFactory helfen beim Verbindungsaufbau.

com.pi4j.io.i2c. I2CBus importieren;

com.pi4j.io.i2c. I2CDevice importieren; com.pi4j.io.i2c. I2CFactory importieren; import java.io. IOException;

Dieser Teil des Codes lässt den Sensor für die Temperaturmessung und Feuchtigkeitsmessung arbeiten, indem die entsprechenden Befehle mit der Funktion write() geschrieben werden und dann die Daten mit der Funktion read() gelesen werden.

device.write((Byte)0xF3);

Thread.sleep(500);

// 2 Byte Daten lesen

// temp msb, temp lsb

Byte Daten = neues Byte[2];

device.read (Daten, 0, 2);

// Feuchtemessbefehl senden, NO HOLD Master

device.write((Byte)0xF5);

Thread.sleep(500);

// 2 Byte Daten lesen

// Feuchtigkeit msb, Feuchtigkeit lsb

device.read (Daten, 0, 2);

Schritt 5: Anwendungen:

Der SHT25-Sensor für Temperatur und relative Luftfeuchtigkeit hat verschiedene industrielle Anwendungen wie Temperaturüberwachung, Wärmeschutz von Computerperipheriegeräten. Wir haben diesen Sensor auch in Wetterstationsanwendungen sowie in Gewächshausüberwachungssystemen eingesetzt.

Empfohlen: