Forum: Analoge Elektronik und Schaltungstechnik LM35 an AD-Wandler von AVR-328 anpassen


von Rainer V. (a_zip)


Lesenswert?

Hallo, ich möchte meine "alten" LM35 zur Raumtemperaturmessung/Anzeige 
nutzen. Habe Arduino/AVR328. Der LM hat eine Ausgabe von 10mV/°C. Ich 
kann also etwa 15°C als unteren Wert annehmen, 30C° als oberen... 
entspricht 100mV - 300mV. Nun kann man am 328 nur die Ref-Spannung von 
1,1V einstellen. Wie könnte man die Ref-Spannung noch besser an die 
erwartete Temperatur anpassen?
Danke und GRuß Rainer

von MaWin (Gast)


Lesenswert?

Rainer V. schrieb:
> Wie könnte man die Ref-Spannung noch besser an die
> erwartete Temperatur anpassen?

Gar nicht. Muss man auch nicht. Der Sensor ist eh ungenauer als der 
A/D-Wandler. Du musst nur die Referenzspannung mal messen und als 
Kalibrierwert nennen, denn die kann +/-10% schwanken.

Um 0.1V bis 0.3V in 0V bis 1.1V umzuwandlen braucht man einen OpAmp, und 
wenn der keine schlimmere Ungenauigkeit einbringen soll als ohne OpAmp 
dann darf er höchstens eine Offsetspannung von 150uV haben, also LT1013 
oder genauer, und den mit Widerständen ausstatten, die 0.1% oder besser 
sind.

Sprich: Mit den meisten Schaltungen und Bauteilen "LM358" ruinierst du 
dir die Genauigkeit mehr, als wenn du die gleich weglässt.

von Manfred (Gast)


Lesenswert?

Rainer V. schrieb:
> Nun kann man am 328 nur die Ref-Spannung von
> 1,1V einstellen.

Na und, mal rechnen?

Der AT328 löst 1024 Schritte auf, also rund 1 Millivolt.
Du hast 10mV/°C, also eine Schrittweite von gerundet 0,11°C - das wird 
ja wohl genügen.

Schlimmer finde ich, dass man Aufwand treiben muß, wenn man unter 0°C 
messen möchte.

Wenn es mit Gewalt sein soll: Der AT328 kann mit einer externen 
Referenzspannung versorgt werden. Du kannst also probieren, Dir externe 
300mV zu erzeugen und an ARef anzuklemmen. Wie gut das geht, wo der 
AT328 seine Grenzen haben wird, weiß ich nicht.

MaWin schrieb:
> und den mit Widerständen ausstatten, die 0.1% oder besser
> sind.

Die Anforderung 0,1% Widerstandstoleranz sehe ich nicht, da man den Kram 
sowieso einjustieren muß. Wichtiger ist, dass die Widerstandswerte 
stabil sind.

von Rainer V. (a_zip)


Lesenswert?

Ja, ich dachte , das bei erwarteten 150mV und 300mV der AD bzw. seine 
Referenz doch  etwas beisteuern könnte. Denke ich da falsch? Die 
Referenzspannung des AD auf einen anderen Wert zu stellen, wäre doch für 
mich ok!? Aber es scheint bei den 328 eben nicht zu gehen.
Gruß Rainer

von dirk (Gast)


Lesenswert?

Gruss zum Morgen

Beim Arduino gibt es die Funktion
analogReference() mit auswählbaren Parametern zur Referenz Spannung. Das 
ist auch entspechend dem Datenblatt des Atmegas. Versorgungsspannung, 
und SW delay bei der Initialisierung beachten.

Dirk St

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Manfred schrieb:
> Wie gut das geht, wo der
> AT328 seine Grenzen haben wird, weiß ich nicht.

Im Datenblatt steht
Min. AREF = 1,0V
Max. AREF = AVcc

von Ingo E. (ogni42)


Lesenswert?

Die interne 1.1V Referenz ist einigermaßen nutzlos, wenn Du die nicht 
für Dein Exemplar ausmessen kannst, da die, wie MaWin bereits schrieb, 
um +/- 100mV abweichen kann.

Sofern Du aber Deinen Arduino über den Spannungsregler versorgst 
(LM1117-5.0) schwanken die 5V laut DaBla um weniger als 10mv über den 
Spannungsbereich. Du könntest die mit 0,1% Widerständen auf 1V 
runterteilen und das als ARef benutzen (weniger geht als VRef nicht).

Leider hält sich Arduino nicht an die Vorgaben von Atmel und schließt 
AVcc direkt an VCC an, aber da Vcc mit Elko und Kerko gepuffert sind, 
könnte das immer noch genau genug sein. ARef solltest Du auch mit einem 
100nF Kerko puffern (dicht am Pin des Arduino).

von Rainer V. (a_zip)


Lesenswert?

Danke. Meine Frage habe ich vor allem deshalb gestellt, weil ich 
unterschiedliche Beschreibungen des AREF-Pins gefunden habe. Manchmal 
wird der als "nur" Ausgang beschrieben, manchmal auch als Eingang. Habe 
mir aber das Datenblatt jetzt noch mal genau angesehen und sehe, dass 
sich die interne Referenz abschalten läßt und an AREF eine externe 
Ref-Spannung angelegt werden kann. Dort also 1V angelegt und ich habe 
ausreichend Auflösung des AD-Wandlers für den LM. Hier einen 
Präzisions-OP vorzuschalten, wäre wohl "Perlen für die Säue".
Und ja, für Temperaturen unter 0°C muß eine negative Hilfsspannung 
her...steht alles im DaBla...ist natürlich bei Raumtemperatur nicht 
nötig. Der LM-Sensor wäre auch heute nicht die erste Wahl, wenn man mit 
einem Controller Temperaturen messen will. Er ist aber sehr genau und 
ist streng linear mit der Temperatur. Ich werde es also ausprobieren.
Gruß Rainer

von Karl M. (Gast)


Lesenswert?

Kinder und Erwachsene,

könntet Ihr mir bitte erklären was ein "AVR328" sein soll?

von Manfred (Gast)


Lesenswert?

Ingo E. schrieb:
> Die interne 1.1V Referenz ist einigermaßen nutzlos, wenn Du die nicht
> für Dein Exemplar ausmessen kannst, da die, wie MaWin bereits schrieb,
> um +/- 100mV abweichen kann.

Atmel hatte versehentlich etwas zuviel Silizium gekauft und, damit es 
nicht schlecht wird, ein paar nutzlose Referenzquellen gebaut?

Quatschkopf!

Und ja, die Dinger haben eine Serienstreuung. Deren Beherrschung ist 
nicht schwieriger als die der Versorgungsspannung, auch AZ1117-5 
streuen. Stabiler ist die interne Referenz des AT328 allemal.

Karl M. schrieb:
> Kinder und Erwachsene

Du hast im Sandkasten Internet? Erwachsene können AVR328 interpretieren.

von Rainer V. (a_zip)


Lesenswert?

Karl M. schrieb:
> Kinder und Erwachsene,
>
> könntet Ihr mir bitte erklären was ein "AVR328" sein soll?

Na, lass doch...ist auch so schon ein völlig sinnfreier Beitrag!
Gruß Rainer

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.