LM35 Temperatursensor auslesen
Nach 3 defekten bzw. gefälschten LM35 Temperatursensoren aus Fernost habe ich nun ein Exemplar in Deutschland bestellt und siehe da: es ist ein Original und funktioniert, wie es sein sollte.Nun komme ich endlich dazu, diesen berühmt-berüchtigten Sensor ein wenig genauer unter die Lupe zu nehmen. Auch das echte Exemplar ziert das Logo von National Semiconducator, die 2011 in Texas Instruments aufgegangen sind. Allerdings ist die Laserung in einer ganz anderen Qualität, doch dazu später mehr.
Das Multi Function Shield, das ich ja bereits vorgestellt habe, hat sogar einen Aufdruck, wo ein LM35 einzusetzen ist. Da ist es natürlich prädestiniert für den Einsatz und die Anzeige der Temperatur auf der 7Segment-Anzeige.
Doch Vorsicht! Beim LM35 ist auf die Polung zu achten. Wird er verkehrt eingesetzt - und die Beschriftung auf dem Multi Function Shield ist da nicht so eindeutig - dann wird er schnell heiß und geht schließlich kaputt! Darum darauf achten, dass der LM 35 mit der flachen Beschriftungsseite nach hinten (zur 7Segment-Anzeige) zeigt.
Die Polung ist (Beschriftung vorne, von links nach rechts) +5V, OUT, GND und damit anders als beim Dallas 18B20 Temperatur-Sensor, der übrigens ebenfalls in der Bauform TO-92 daher kommt und damit ebenfalls aussieht wie ein Transistor.
Aufgrund des Aussehens sind diese beiden Sensoren auch oft Opfer von Fälscherbanden, die von billigen Transistoren mit einem Wert von 1-2 Cent abschleifen und dann neu beschriften und den Schrott dann teuer für das zigfache als Temperatursensor verkaufen.
Die Features des LM35 sind:
- Ausgabe der kalibrierten Temperatur in 10 mV / °C
- 0.5 °C Genauigkeit bei 25°C
- Versorgungsspannung von 4 ... 30 V
- Messbereich von -55 ... 150 °C
- Stromverbrauch von 60 µA
- Selbsterwärmung nur 0.08° (windstill)
- Die max. Spannung ist 5000 mV, das entspricht dann 500 °C, bei 150°C ist aber durch den Sensor Schluss
- Die min. Spannung ist 0 mV, denn negative Spanungen kann man mit dem Analog-Eingang nicht messen, ergibt 0 °C
- Effektiver Temperaturbereich am Arduino sind also 0 ... 150°
Als Außenthermometer ist der LM35 also nicht ohne weiteres zu gebrauchen. Evtl. würde eine kleine Schaltung helfen, die die vom LM35 ausgegebene Spannung ständig um 1000 mV anhebt. Dann würden am Arduino gemessene 0 mV -1000 mV = -100°C bedeuten, 0°C hätte dann einen Messwert von 1000 mV und Schluss wäre dann bei +150°C (=2500 mV).
Man kann den LM35 aber auch mit einem ganz einfachen Aufbau benutzen: mit einer 9V Batterie und einem Voltmeter. Hier muss man den Wert des Voltmeters in mV einfach nur durch 10 teilen und hat damit schon die Temperatur.
Dies ermöglicht sehr viel einfachere Aufbauten als mit einem Dallas 18B20, der über ein eigenes digitales Übertragungsprotokoll angesprochen werden muss. Auf der anderen Seite ist die Übertragung von Minusgraden mit dem Dallas wiederum kein Problem.
Source-Code
Die Software zur Anzeige der Temperatur ist wegen der Einfachheit der Abfrage des LM35, zumindestens für Plusgrade, in ein paar Zeilen erledigt:////////////////////////////////////////////////////////
// (C) 2019 by Oliver Kuhlemann //
// Bei Verwendung freue ich mich über Namensnennung, //
// Quellenangabe und Verlinkung //
// Quelle: http://cool-web.de/arduino/ //
////////////////////////////////////////////////////////
#include <TimerOne.h> // für Timings und Interrupts
#include <MultiFuncShield.h> // API für das Multi Function Shield
#define PinIn A4
void setup() {
Timer1.initialize();
MFS.initialize(&Timer1); // initialize multi-function shield library
}
void loop() {
MFS.beep(1, 5, 2); // bereit
while (1) {
int wert = analogRead(PinIn);
float mV = wert * 4935. / 1024.; // MFS liefert gemessene 4,935 V an +5V
float temp = mV / 10.; // OUTPUT = 0 mV + 10.0 mV/°C
MFS.write (temp);
delay(1000);
}
}
Wir lesen einfach den Wert an A4 aus, der zwischen 0 für 0 Volt und 1023 für 5 Volt liegt. Um es ein wenig genauer zu haben, habe ich die genau anliegende Spannung mit einem Multimeter gemessen und kam auf 4,935 Volt, mit dem der LM35 gespeist wird.Damit werden die Millivolt ausgerechnet. Und diese müssen dann nur noch durch 10 geteilt werden und schon haben wir unsere Temperatur, die wir auf dem 7Segment-Display ausgeben können.
Da wir 1023 Einheiten für 500 (5000 mV / 10) Grad haben, können wir mit einer Auflösung von grob 0.5 °C messen. Ein besserer Analog Digital Wandler, etwa mit 16 Bit wurde hier eine größe Auflösung bieten, aber das würde nicht viel bringen, denn schon bei 0.5 Grad springt die Messung gerne mal zwischen zwei Gradzahlen hin und her.
Abschließend noch ein kleines Video, in dem das Programm vorgeführt wird:
Original vs. Fake
Links das Original, rechts die Fälschung. Die Oberfläche des Originals ist glatt, die Kanten abgerundet, die Laserung tief, klar und gut abzulesen.
Bei der Fälschung hingegen ist die Aufschrift schlecht lesbar und nicht so tief gelasert. Die Schriftart ist eine andere, dennoch: das Nationl Semiconductor Logo gleicht dem Original wie ein Ei dem anderen. Es fällt auf, dass die Oberfläche nicht glatt ist. Wahrscheinlich wurde sie mit einem feinen Schleifpapier abgeschliffen, um Platz für die gefälschte Laser-Beschriftung zu machen. Daher rühren auch die scharfen Kanten, denn hier wurde Material abgetragen. Die Fälschung muss man schon im richtigen Winkel ins Licht halten, um die Aufschrift überhaupt entziffern zu können.
Ein weiteres Bild, hier links das Original, in der Mitte und rechts die Fakes. Hier fällt das Licht nicht optimal auf die Fälschungen und die Beschriftungen sind nicht zu entziffern.
Bei beiden Fälschungen fallen wieder die abgeschliffenen Oberflächen und die scharfen Kanten auf. Es handelt sich bei ihnen meinem Testgerät zufolge um billige NPN-Transistoren.
Bei jedem Bauteil, das abgeschliffen aussieht oder dessen Beschriftung nicht klar lesbar ist, sollte man stutzig werden. Das Gehäuse um die Mikroelektonik wird im Spritzguss hergestellt. Es gibt keine Grund, hier irgendetwas abzuschleifen. Außerdem ist es wichtig, dass ein Bauteil leicht zu identifizieren ist. Hier wird auch kein Hersteller schlampen und schon gar nicht bei seinem Logo, der seinen guten Ruf repräsentiert.
Heutzutage sind Bauteile mit dem Laser beschriftet, die Beschriftung wirkt dann wie eingraviert und lässt sich nicht mehr entfernen. Das ist so gewollt, denn es macht die Beschriftung gegen Kratzer unempfindlich und das Bauteil immer identifizierbar. Mittels Siebdruck bedruckte Teile sollte es heute eigentlich nicht mehr geben - sowas kann eigentlich nur bei jahrzehntealten oder sehr günstigen Bauteilen wie Widerständen oder Kondensatoren vorkommen.