Inhaltsverzeichnis:
2025 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2025-01-13 06:56
Hallo alle zusammen! Wir sind Studenten der Universität Tun Hussein Onn Malaysia (UTHM), die ein Projekt durchführen, um zu demonstrieren, wie wir einen Temperatursensor, ein LCD und ein Arduino mit Tinkercad als Teil unseres Lehrplans für UQD0801 (Robocon 1) (Gruppe 7) simulieren können.
Temperatursensoren und LCD können in verschiedenen Situationen als einfacher Mechanismus dienen, z. B. bei der Überwachung der Raumtemperatur und sogar der Anlagenüberwachung oder an jedem Ort, an dem die Temperatur ein wichtiges Element ist!
Schritt 1: Liste der erforderlichen Komponenten
Dieses Projekt erfordert Komponenten, die am Markt sehr leicht zu beschaffen sind.
Liste der Komponenten:
1. Arduino Uno R3 (1)
2. Temperatursensor (TMP36) (1)
3. LCD 16x2 (1)
4. 250kΩ Potentiometer (1)
5. 220Ω Widerstand (1)
Schritt 2: Schaltungsverbindung in Tinkercad
Tinkercad bietet vorgefertigte Schaltkreise, die Benutzern helfen können, ihre Schaltkreise nicht zu verkomplizieren, indem sie von Grund auf neu bauen.
Im Circuit Desinger können wir nach lcd suchen, was zeigt, dass es eine Starterschaltung gibt, die eine vorgeschaltete Schaltung zwischen einem Arduino und einem LCD hat.
Schritt 3: TMP36 Temperatursensor
In Tinkercad ist nur ein Temperatursensor verfügbar, der TMP36.
Der TMP36 hat keinen temperaturempfindlichen Widerstand. Stattdessen nutzt dieser Sensor die Eigenschaft von Dioden; Wenn eine Diode die Temperatur ändert, ändert sich die Spannung mit einer bekannten Geschwindigkeit. Der Sensor misst das Kleingeld und gibt darauf basierend eine analoge Spannung zwischen 0 und 1,75VDC aus. Um die Temperatur zu erhalten, müssen wir die Ausgabe messen und eine Berechnung durchführen, um sie in Grad Celsius umzurechnen.
Schritt 4: Verbinden Sie den TMP36 mit dem Arduino
Der TMP36 hat 3 Pins, die leicht an der flachen Seite des Sensors zu erkennen sind.
Der erste Pin ist der +5V-Pin, der mit der Versorgung verbunden wird.
Der zweite Pin ist der Vout, der mit dem Analog In-Pin verbunden wird (könnte A0-A5) sein. Wir haben A0 für dieses Projekt verwendet.
Der dritte Pin ist der GND-Pin, der mit der Masse des Arduino verbunden wird.
Schritt 5: Lassen Sie uns etwas codieren
Zunächst wird es einen Code im Code-Editor in Tinkercad geben.
Dies liegt daran, dass wir eine Starterschaltung von Tinkercad verwendet haben, die ihren Code mit geladen hat, damit neue Benutzer die Ausgabe erkunden und simulieren können.
Wir können all das löschen und unseren Code entwerfen.
Für jeden Arduino-Code, den wir entwerfen möchten, müssen wir sicherstellen, dass die zum Projekt gehörenden Bibliotheken enthalten sind.
In diesem Fall benötigen wir zwei Bibliotheken; -Bibliothek für LCD (LiquidCrystal.h)
-Bibliothek für serielle Kommunikation (SoftwareSerial.h)
Beide Bibliotheken sind in Tinkercad vorhanden, was bedeutet, dass Sie keine Bibliothek von externen Quellen herunterladen müssen.
Deswegen; Die ersten Zeilen des Codes sind
#enthalten
#enthalten
Schritt 6: Rest des Codes
// den Bibliothekscode einfügen:#include
#enthalten
Flüssigkristall-LCD (12, 11, 5, 4, 3, 2); // die Pins rs, en, d4, d5, d6, d7 mit dem Arduino an Pin 12 verbinden 11 5 4 3 2
int Celsius; //deklariere eine Funktion Celsius als Ganzzahl
Void-Setup ()
{
Serial.begin (9600); // Setze die Baudrate auf 9600 Bits pro Sekunde
lcd.begin(16, 2); // LCD-Größe ist 16x2 // Drucken Sie eine Nachricht auf dem LCD.
lcd.print("Temp-Anzeige");
Serial.println ("Temp Display"); // die Nachricht auf dem seriellen Monitor ausgeben}
Leere Schleife ()
{
Celsius = map (((analogRead (A0) - 20) * 3.04), 0, 1023, -40, 125); // Karte, um die Temperatur mathematisch zu erhalten. Bedeutung 0 = -40 Grad und 1023 = 125 Grad
lcd.setCursor(0, 0); // Cursor auf das erste Pixel des LCD gesetzt.
lcd.print("Temp-Anzeige"); // Nachricht auf LCD drucken
lcd.setCursor (0, 1); // Cursor auf das erste Pixel der zweiten Zeile gesetzt
lcd.print (Celsius); // druckt die Celsius-Ausgabe vom analogen Lesen auf das LCD bei 0, 1
lcd.print("C"); // Alphabet "c" drucken
Serial.println (Celsius); // Ausgabe im seriellen Monitor angezeigt
Verzögerung (1000); // Lesen wird alle 1 Sekunde aktualisiert
lcd.clear(); // löscht das lcd
}