Inhaltsverzeichnis:

Arduino-basiertes digitales Thermometer - Gunook
Arduino-basiertes digitales Thermometer - Gunook

Video: Arduino-basiertes digitales Thermometer - Gunook

Video: Arduino-basiertes digitales Thermometer - Gunook
Video: Arduino Based Digital Thermometer 2024, Juli
Anonim
Arduino-basiertes digitales Thermometer
Arduino-basiertes digitales Thermometer

In diesem Projekt wird ein Arduino-basiertes Digitalthermometer entwickelt, mit dem die Raumtemperatur analysiert werden kann.

Das Thermometer wird im Allgemeinen als Temperaturmessgerät verwendet. Es gibt verschiedene Prinzipien, mit denen die Temperatur gemessen werden kann, wie die Wärmeausdehnung von Feststoffen oder Flüssigkeiten, der Druck des Gases, die Messung von Infrarotenergie usw.

Es wird ein Arduino-basiertes digitales Thermometer beschrieben, mit dem die Temperatur des Raums analysiert werden kann. LM35 LM35 ist ein Temperatursensor. Die Ausgangsspannung dieses Sensors ist direkt proportional zur Temperatur in Celsius. LM35 kann im Bereich von -550 °C bis +150 °C mit einer Genauigkeit von +/- 0,750 °C verwendet werden.

Lieferungen

Arduino Uno

LM35 Temperatursensor

16x2 LCD-Anzeige

Schritt 1: Schaltungsdesign des digitalen Thermometers

Schaltungsdesign des digitalen Thermometers
Schaltungsdesign des digitalen Thermometers

Der in diesem Projekt verwendete Temperatursensor ist LM35. Der Ausgang eines Temperatursensors ist direkt proportional zur Temperatur, jedoch in analoger Form. Daher bedeutet der Ausgang von LM35, dass Pin 2 mit dem analogen Eingang A0 von Arduino verbunden ist.

Da es sich um ein digitales Thermometer handelt, müssen wir die analogen Temperaturwerte in digitale umwandeln und das Ergebnis auf einem Display wie LCD usw. anzeigen. Es wird ein 16X2-LCD verwendet. Pin Nr. 1 und 2 des LCD sind mit Masse bzw. Versorgung verbunden. Um den Kontrast des Displays zu kontrollieren, ist Pin 3 des LCD mit dem Wischer eines 10 KΩ POT verbunden.

Die restlichen Anschlüsse von POT sind mit Versorgung und Masse verbunden. Die Pins 15 und 16 des LCD werden verwendet, um die Hintergrundbeleuchtung des LCD zu drehen, die jeweils mit Versorgung und Masse verbunden ist. Um die Informationen auf dem LCD anzuzeigen, benötigen wir 4 Datenpins des LCD. Die Pins 11 – 14 (D4 – D7) sind mit den Pins 5 – 2 von Arduino verbunden. Die Pins 4, 5 und 6 (RS, RW und E) des LCD sind Steuerpins. Pins 4 (RS) des LCD ist mit Pin 7 von Arduino verbunden. Pin 5 (RW) ist mit Masse verbunden. Pin 6 (E) ist mit Pin 6 von Arduino verbunden.

Schritt 2: Arbeiten des digitalen Thermometers

Funktion des digitalen Thermometers
Funktion des digitalen Thermometers

In diesem Projekt wird ein hochpräzises Digitalthermometer beschrieben. Die Funktionsweise der Schaltung ist wie unten erläutert.

Der Temperatursensor z. B. LM35 analysiert ständig die Raumtemperatur und liefert eine analoge identische Spannung, die direkt proportional zur Temperatur ist.

Diese Daten werden über A0 an Arduino übergeben. Gemäß dem geschriebenen Code wandelt das Arduino diesen analogen Spannungswert in digitale Temperaturmesswerte um.

Dieser Wert wird auf dem LCD angezeigt. Die auf dem LCD angezeigte Ausgabe ist eine genaue Ablesung der Raumtemperatur in Grad Celsius.

hIOTrons Internet of Things Course Training entwickelte verschiedene IoT-Lösungen für eine solche Anwendung, um die Benutzererfahrung zu verbessern.

Schritt 3: Führen Sie ein Programm aus

#enthalten

Flüssigkristall-LCD (7, 6, 5, 4, 3, 2);

const int Sensor = A0;

Byte-Grad-Symbol[8] =

{

0b00111, 0b00101, 0b00111, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000

};

Void-Setup ()

{

pinMode (Sensor, EINGANG);

lcd.begin(16, 2);

lcd.createChar(1, Gradsymbol);

lcd.setCursor(0, 0);

lcd.print("Digital");

lcd.setCursor(0, 1);

lcd.print("Thermometer");

Verzögerung (4000);

lcd.clear();

}

Leere Schleife ()

{

float temp_reading=analogRead(Sensor);

Float-Temperatur=temp_reading*(5.0/1023.0)*100;

Verzögerung(10);

lcd.clear();

lcd.setCursor(0, 0);

lcd.print("Temperatur in C");

lcd.setCursor(4, 1);

lcd.print (Temperatur);

lcd.write(1);

lcd.print("C");

Verzögerung (1000);

}

Empfohlen: