Ihre Browserversion ist veraltet. Wir empfehlen, Ihren Browser auf die neueste Version zu aktualisieren.

Der analoge Eingang - Temperatur messen mit dem TMP 36

Aufgabe

Die Temperatur soll gemessen werden und am seriellen Monitor ausgegeben werden.

Aufbau der Schaltung

Material

  • Arduino
  • Temperatursensor TMP36
  • Breadboard
  • Leitungen

 

Beschreibung

Der Temperatursensor hat drei Anschlüsse:

Wenn man auf die flache Seite schaut:

  • Links: +5V
  • Rechts: GND
  • Mitte: Temperatursignal

Das Temperatursignal wird auf einen Analogen Eingang, z.B. A1 gelegt

 

Als Temperatursignal gibt der Sensor Spannungen von 0V bis 2V aus, wobei 0V einer Temperatur von -50°C und 2V einer Temperatur von 150°C entspricht.

Diese Spannung muss am Analogen Eingang eingelesen werden und dann in eine Temperatur umgerechnet werden.

Zum Ausprobieren kann der Temperatursensor vom Arduino mit Strom versorgt werden.

Wesentlich genauer ist er, wenn er eine eigene Spannungsversorgung (z.B. eine 9V Batterie) hat.

Wenn der Temperatursensor falsch angeschlossen wird, wird er sofort sehr heiß und dadurch  zerstört!!

Die Spannung am TMP 36 entstehen durch folgende Temperaturen:

Zwischenwerte lassen sich mit dem Dreisatz berechnen.

Das ArduBlock-Programm

Bedeutung der einzelnen Blöcke

(Steht unter dem Block keine Erklärung, dann wurde er bereits in einem Tutorial erklärt)

Eine Variable mit dem Namen „Temperatur“ wird erstellt. Dieser Variable können Werte (Zahlen) zugeordnet werden.

 

Es wird abgefragt, welche Spannung am Analogen Eingang 1 (also PIN A1) anliegt.

  •     Liegen 0V an, dann wird sich der Arduino dafür den Wert 0 merken.
  •     Liegen 5V an, dann wird sich der Arduino den Wert 1023 merken.
  •     Liegen 2V an, dann wird sich der Arduino den Wert 410 merken.

Jetzt wird noch mal umgerechnet:

  •     Der Wert 410 (ehemals 2V) bedeutet 150°C.
  •     Der Wert 0 (ehemals 0V) bedeutet -50°C.

Der Rest wird vom Computer berechnet… Das Ergebnis wird dann unter dem Namen „Temperatur“ gespeichert.

 

Das Programm wird für 100 Millisekunden unterbrochen, bevor die nächste Messung beginnt.

 

Der Wert der Variable „Temperatur“ wird dem seriellen Monitor übergeben. Zuvor wird noch die Bildschirmausgabe „Temperatur = “ ausgedruckt.

Der Arduino-Sketch

(Steht keine Erklärung, dann wurde der Befehl bereits in einem Tutorial erklärt)

1 int _ABVAR_1_Temperatur;     

// Eine Variable mit dem Namen _ABVAR_1_Temperatur wird erstellt.

2 void setup()  
3 {                        
4      Serial.begin(9600);  
5      _ABVAR_1_Temperatur= 0; // Der Variablen _ABVAR_1_Temperatur wird der Wert 0 zugeordnet.
6 }  
7 void loop()  
8 {  
9

    

_ABVAR_1_Temperatur = map (

     analogRead(A1) , 0 , 410 , -50 ,

     150 ) ;

// Die Variable mit dem Namen _ABVAR_1_Temperatur wird neu berechnet.

Zuerst wird der Wert des Analogen Eingangs 1 gelesen.

Dann wird aufgeführt, welche Werte am Eingang erwartet werden, hier Werte zwischen 0 (0V) und 410 (2V).

Dann wird dem Wert 0 die Temperatur -50°C und dem Wert 410 die Temperatur 150°C zugeordnet.
10       delay( 100 );  
11       Serial.print( "Temperatur =  " );  
12

      Serial.print(

      _ABVAR_1_Temperatur);

// An den seriellen Monitor wird der Wert der Variablen _ABVAR_1_Temperatur gesendet

13      Serial.println("");  
14  }                                                          
 

Aufgaben

  • Ändere die Schaltung und das Programm so, dass eine LED leuchtet (Nicht vergessen: Vorwiderstand 100 - 330Ω!!!) , wenn die Temperatur über 25°C ist
  • Erweitere das Programm so, dass der Serielle Monitor folgende Anzeige bringt: “Temperatur = 25°C“

Cookie-Regelung

Diese Website verwendet Cookies, zum Speichern von Informationen auf Ihrem Computer.

Stimmen Sie dem zu?