Inhaltsverzeichnis:
2025 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2025-01-13 06:56
TMP100 Hochgenauer, stromsparender, digitaler Temperatursensor I2C MINI-Modul. Der TMP100 ist ideal für die erweiterte Temperaturmessung. Dieses Gerät bietet eine Genauigkeit von ±1 °C, ohne dass eine Kalibrierung oder externe Signalaufbereitung von Komponenten erforderlich ist. Hier ist die Demonstration mit einem Java-Code mit Raspberry Pi.
Schritt 1: Was Sie brauchen.
1. Himbeer-Pi
2. TMP100
3. I²C-Kabel
4. I²C-Shield für Raspberry Pi
5. Ethernet-Kabel
Schritt 2: Verbindung:
Nehmen Sie ein I2C-Schild für Himbeer-Pi und schieben Sie es vorsichtig über die gpio-Pins von Himbeer-Pi.
Verbinden Sie dann das eine Ende des I2C-Kabels mit dem TMP100-Sensor und das andere Ende mit der I2C-Abschirmung.
Verbinden Sie auch das Ethernet-Kabel mit dem Pi oder verwenden Sie ein WiFi-Modul.
Die Anschlüsse sind im Bild oben dargestellt.
Schritt 3: Code:
Der Java-Code für TMP100 kann von unserem GitHub-Repository – Dcube Store – heruntergeladen werden.
Hier der Link dazu:
github.com/DcubeTechVentures/TMP100…
Wir haben die pi4j-Bibliothek für Java-Code verwendet, die Schritte zur Installation von pi4j auf Raspberry Pi sind hier beschrieben:
pi4j.com/install.html
Sie können den Code auch von hier kopieren, er wird wie folgt angegeben:
// Wird mit einer frei wählbaren Lizenz vertrieben.
// Verwenden Sie es, wie Sie wollen, gewinnbringend oder kostenlos, sofern es in die Lizenzen der zugehörigen Werke passt.
// TMP100
// Dieser Code wurde entwickelt, um mit dem TMP100_I2CS I2C Mini-Modul zu arbeiten, das im Dcube Store erhältlich ist.
com.pi4j.io.i2c. I2CBus importieren;
com.pi4j.io.i2c. I2CDevice importieren;
com.pi4j.io.i2c. I2CFactory importieren;
import java.io. IOException;
öffentliche Klasse TMP100
{
public static void main(String args) löst Ausnahme aus
{
// I2C-Bus erstellen
I2CBus-Bus = I2CFactory.getInstance(I2CBus. BUS_1);
// I2C-Gerät abrufen, TMP100 I2C-Adresse ist 0x4F(79)
I2CDevice-Gerät = Bus.getDevice(0x4F);
// Konfigurationsregister auswählen
// Kontinuierliche Konvertierung, Komparatormodus, 12-Bit-Auflösung
device.write(0x01, (Byte)0x60);
Thread.sleep(500);
// 2 Byte Daten lesen
// temp msb, temp lsb
Byte Daten = neues Byte[2];
device.read (0x00, Daten, 0, 2);
// Konvertieren Sie die Daten in 12-Bit
int temp = ((data[0] & 0xFF) * 256 + (data[1] & 0xF0)) / 16;
wenn (temp > 2047)
{
Temperatur -= 4096;
}
doppeltes cTemp = temp * 0,0625;
doppeltes fTemp = cTemp * 1,8 + 32;
// Daten auf Bildschirm ausgeben
System.out.printf("Temperatur in Celsius: %.2f C %n", cTemp);
System.out.printf("Temperatur in Fahrenheit: %.2f F %n", fTemp);
}
}
Schritt 4: Anwendungen:
Zu den verschiedenen Anwendungen, die den digitalen Temperatursensor TMP100 mit geringem Stromverbrauch und hoher Genauigkeit verwenden, gehören die Überwachung der Stromversorgungstemperatur, der Wärmeschutz der Computerperipherie, das Batteriemanagement sowie Büromaschinen.