Forum: Mikrocontroller und Digitale Elektronik Schaltplan PWM Spannungsmessung Temperaturmessung


von Thomas D. (tommi)


Angehängte Dateien:

Lesenswert?

Hallo,

habe meine ersten Versuche mit Eagle gemacht. Der angehängte Schaltplan 
soll eine PWM für eine Griffheizung fürs Motorrad werden 
(Beitrag "Anfänger Frage zu AVR Quarz PWM Frequenz MOSFET")

Zusätzlich möchte ich über den Spannungsteiler am ADC die 
Batteriespannung überwachen. Um z.B bei zu niedriger Spannung die 
Heizung herunterzufahren oder ganz abzuschalten.

Es soll die Interne Referenzspannung des Atmega8 verwendet werden passt 
das so? Sollte ich für den Spannungsteiler Präzisions-Widerstände (0,1%) 
verwenden? Eine Auflösung von 0,1 V sollte für die Batterieüberwachung 
ja ausreichend sein. Ich habe keine Ausgabe der Messwerte vorgesehen wie 
kann ich die Messung kalibrieren? Oder muss ich doch alle verbliebenen 
freien Ports für eine LED Bargraph Anzeige verwenden. Die könnte dann 
Batteriespannung oder PWM Stufe anzeigen.


Ich überlege auch einen Temperatursensor für die Außentemperatur 
vorzusehen. Dann könnte ich z.B. bei unterschreiten einer bestimmten 
Temperatur z.B. 10°C die Griffheizung automatisch einschalten. Den 
Artikel http://www.mikrocontroller.net/articles/Temperatursensor habe 
ich gelesen, bin mir aber nicht sicher welcher Temperatursensor dafür am 
besten geeignet ist. Eine Auflösung von 0.5°C sollte okay sein. Wie 
verhalten sich die LMx35 bei Störungen über das Bordnetz (Zündung usw.). 
Oder doch DS18B20, ist aber für mich programmiertechnisch eine 
Herausforderung.


Gruß
Thomas

von Weinbauer (Gast)


Lesenswert?

schaut doch schlüssig aus, jedoch die Versorgungsspannung zu erzeugen 
wird knifflig. Für Temperaturmessung nehm ich heute NTCs 10k und 
Spannungsteiler, Steinhart-Hart-Gleichung und fertig ist die Laube, 
zumal es ja eh nicht so superpräzise sein muss.

von DomeG (Gast)


Lesenswert?

Weinbauer schrieb:
> schaut doch schlüssig aus, jedoch die Versorgungsspannung zu
> erzeugen wird knifflig.

Das stimmt, du musst die Schaltung vor den Störungen aus dem Bordnetz 
schützen, schau dir dazu mal andere Schaltungen für Kfz-Betrieb an.


Weinbauer schrieb:
> Für Temperaturmessung nehm ich heute NTCs 10k und
> Spannungsteiler, Steinhart-Hart-Gleichung und fertig ist die Laube,
> zumal es ja eh nicht so superpräzise sein muss.

Der gleichen Meinung bin ich auch!


Thomas D. schrieb:
> Ich habe keine Ausgabe der Messwerte vorgesehen wie
> kann ich die Messung kalibrieren? Oder muss ich doch alle verbliebenen
> freien Ports für eine LED Bargraph Anzeige verwenden.

Warum klemmst du nicht die zwei Schalter auf INT0 / INT1 und verwendest 
zum Debuggen/Kalibrieren die UART-Schnittstelle?

Gruß

von Thomas D. (tommi)


Lesenswert?

Hi,

> Weinbauer schrieb:
>> schaut doch schlüssig aus, jedoch die Versorgungsspannung zu
>> erzeugen wird knifflig.
>
> Das stimmt, du musst die Schaltung vor den Störungen aus dem Bordnetz
> schützen, schau dir dazu mal andere Schaltungen für Kfz-Betrieb an.
>
Ok hatte ich vergessen das hatte ich schon hier 
Beitrag "Kfz Spannungswandler Modul 5V"

> Weinbauer schrieb:
>> Für Temperaturmessung nehm ich heute NTCs 10k und
>> Spannungsteiler, Steinhart-Hart-Gleichung und fertig ist die Laube,
>> zumal es ja eh nicht so superpräzise sein muss.
>
> Der gleichen Meinung bin ich auch!
Dann muss ich mir mal die Steinhart-Hart-Gleichung ansehen.


> Warum klemmst du nicht die zwei Schalter auf INT0 / INT1 und verwendest
> zum Debuggen/Kalibrieren die UART-Schnittstelle?
Auf die Idee bin ich mangels Erfahrung nicht gekommen.
Leider hat mein Pollin Bord nur einen seriellen Anschluß und ich habe 
NOCH keinen USB zu seriell Adapter. Oder bin ich jetzt auf dem Holzweg?

Gruß
Thomas

von thomas s (Gast)


Lesenswert?

Am Eingang AD0 kann man wunderbar 5,1 V messen - sonst passiert dort 
aber nix.

von Karl H. (kbuchegg)


Lesenswert?

Thomas D. schrieb:

>> Warum klemmst du nicht die zwei Schalter auf INT0 / INT1 und verwendest
>> zum Debuggen/Kalibrieren die UART-Schnittstelle?
> Auf die Idee bin ich mangels Erfahrung nicht gekommen.

Machs aber nicht zu kompliziert.
Leg anstelle der 12V die Spannung an, bei der sich deine Schaltung 
deaktivieren soll, drücke einen Taster und der µC soll dann einfach eine 
Messung machen und sich den so ermittelten 'Grenzwert' im EEprom 
speichern. Genau den verwendest du dann in weiterer Folge als 
Abschaltkriterium. Liegt der dann laufend gemessene Wert vom ADC über 
diesem Grenzwert, dann ist auch die Spannung am 12V Pin höher als die 
von dir im Vorfeld festgelegte Grenze. Ist der Messwert darunter, dann 
ist auch die Spannung unter der Grenze. Der µC muss sich dazu die 
tatsächliche Spannung überhaupt nicht ausrechnen. Ein simpler Vergleich 
mit dem Messwert, den du durch einmaliges Anlegen der Abschaltspannung 
erhalten hast, reicht völlig aus.

(Anstelle des verbauten Tasters kann man auch ganz einfach mit einer 
temporären Drahtbrücke an einem bisher noch unbenutzen Pin nach Masse 
einen zusätzlichen 'Jetzt kalibrieren' Taster auf der Werkbank 
improvisieren).

von Karl H. (kbuchegg)


Lesenswert?

thomas s schrieb:
> Am Eingang AD0 kann man wunderbar 5,1 V messen - sonst passiert dort
> aber nix.

Wie kommst du auf die Idee?

von Karl H. (kbuchegg)


Lesenswert?

Welchen Zweck soll eigentlich R1 erfüllen? (47 Ohm an Avcc nach Masse)

von Karl H. (kbuchegg)


Lesenswert?

Karl Heinz schrieb:

> Ein simpler Vergleich
> mit dem Messwert, den du durch einmaliges Anlegen der Abschaltspannung
> erhalten hast, reicht völlig aus.
>

Selbiges übrigens für den Aussentemperatur Sensor.
Wenn du lediglich bei 10° (bzw. darunter) einschalten willst, musst du 
dir dazu die tatsächliche Temperatur überhaupt nicht ausrechnen. Ein 
simpler Vergleich mit dem bei tatsächlich vorhandenen 10° gemessenen 
Messwert reicht völlig aus zur Entscheidung "ein/aus".

Willst du anzeigen, sieht das anders aus. Aber solange es nur um eine 
Entscheidungsfindung geht, wäre das Ausrechnen der Temperatur (bzw. 
Versorgungsspannung) lediglich eine unnötige Fleissaufgabe für den µC, 
die für die eigentliche Funktion nichts bringt.

: Bearbeitet durch User
von Thomas D. (tommi)


Lesenswert?

Hallo,

Karl Heinz schrieb:
> Welchen Zweck soll eigentlich R1 erfüllen? (47 Ohm an Avcc nach Masse)

Diese "Weisheit" hatte ich aus 
http://www.mikrocontroller.net/articles/AVR-Tutorial:_ADC "Die 
10µH-Spule L1 kann man meist auch durch einen 47Ω-Widerstand ersetzen."

Beim nochmaligen Lesen ist mir aufgefallen das die Induktivität nur bei 
einer Externen Referenzspannung nötig ist.

Kann ich mir den Widerstand also sparen?

Gruß
Thomas

von Thomas D. (tommi)


Lesenswert?

Hi,
>
> Selbiges übrigens für den Aussentemperatur Sensor.
> Wenn du lediglich bei 10° (bzw. darunter) einschalten willst, musst du
> dir dazu die tatsächliche Temperatur überhaupt nicht ausrechnen. Ein
> simpler Vergleich mit dem bei tatsächlich vorhandenen 10° gemessenen
> Messwert reicht völlig aus zur Entscheidung "ein/aus".
>

Jein, ich habe mir überlegt ab der Schaltschwelle die PWM z.B mit 25% zu 
Schalten und bei fallenden Temperaturen weiter hoch zu fahren.

Dazu müsste aber erst mal alles eingebaut sein. Ich schätze das dass 
tatsächliche Temperaturempfinden doch von Messwerten abweicht.

Gruß
Thomas

von Thomas D. (tommi)


Lesenswert?

Hallo,

> Machs aber nicht zu kompliziert.
> Leg anstelle der 12V die Spannung an, bei der sich deine Schaltung
> deaktivieren soll, drücke einen Taster und der µC soll dann einfach eine
> Messung machen und sich den so ermittelten 'Grenzwert' im EEprom
> speichern. Genau den verwendest du dann in weiterer Folge als
> Abschaltkriterium. Liegt der dann laufend gemessene Wert vom ADC über
> diesem Grenzwert, dann ist auch die Spannung am 12V Pin höher als die
> von dir im Vorfeld festgelegte Grenze. Ist der Messwert darunter, dann
> ist auch die Spannung unter der Grenze. Der µC muss sich dazu die
> tatsächliche Spannung überhaupt nicht ausrechnen. Ein simpler Vergleich
> mit dem Messwert, den du durch einmaliges Anlegen der Abschaltspannung
> erhalten hast, reicht völlig aus.

Sehr gute Idee, so kann man sogar unterschiedliche Werte speichern.

Gruß
Thomas

von Karl H. (kbuchegg)


Lesenswert?

Thomas D. schrieb:

> Dazu müsste aber erst mal alles eingebaut sein. Ich schätze das dass
> tatsächliche Temperaturempfinden doch von Messwerten abweicht.

Dazu kann ich wenig sagen, da ich kein Motorradfahrer bin.
Ich könnte mir auch vorstellen, dass du durch die Handschuhe einen 
Wärmestau im Griff erzeugst. D.h. gefühlsmässig würde ich den 
Temperatursensor mit in den Griff verbauen, weil mir diese Temperatur 
als die wichtigere erscheint. Aber wie gesagt: da drifte ich jetzt zur 
Spekulation ab.

: Bearbeitet durch User
von Karl H. (kbuchegg)


Lesenswert?

Thomas D. schrieb:

> Diese "Weisheit" hatte ich aus
> http://www.mikrocontroller.net/articles/AVR-Tutorial:_ADC "Die
> 10µH-Spule L1 kann man meist auch durch einen 47Ω-Widerstand ersetzen."

Ah, ok.

> Beim nochmaligen Lesen ist mir aufgefallen das die Induktivität nur bei
> einer Externen Referenzspannung nötig ist.
>
> Kann ich mir den Widerstand also sparen?

Ich würd ihn mir wahrscheinlich sparen.
Die Versorgungsspannung musst du sowieso behandeln.

von Wissender (Gast)


Lesenswert?

Hallo,

Karl Heinz schrieb:

> Welchen Zweck soll eigentlich R1 erfüllen? (47 Ohm an Avcc nach Masse)

Nach dem oben geposteten Schaltplan: gar keinen; er ist durch eine 
Leitung direkt darüber gebrückt. (Diese Verbindung löschen!)
BTW: R1 liegt an AVcc und Vcc, nicht an Masse.

von thomas s (Gast)


Lesenswert?

Wenn D1 eine Z-Diode ist, passiert nicht allzu viel.

von Karl H. (kbuchegg)


Lesenswert?

Wissender schrieb:
> Hallo,
>
> Karl Heinz schrieb:
>
>> Welchen Zweck soll eigentlich R1 erfüllen? (47 Ohm an Avcc nach Masse)
>
> Nach dem oben geposteten Schaltplan: gar keinen; er ist durch eine
> Leitung direkt darüber gebrückt. (Diese Verbindung löschen!)

Prinzipiell passt das schon.
a) ich hab mich veschaut, der WIderstand geht nicht nach Masse sondern 
nach Vcc
b) das ist so in Ordnung

Im Original von Atmel wird hier eine Spule eingesetzt, die kleine 
Störungen auf Vcc von Avcc fern halten soll.
Ist aber nur notwendig, wenn man wirklich das aller aller letzte aus dem 
ADC raus holen will. Und ich sage mal, aufs letzte Zehntel Millivolt 
kommt es hier ganz sicher nicht an. Zumal man bei Vcc in einem Kfz 
sowieso schon einiges an Aufwand treiben muss.

von Thomas D. (tommi)


Lesenswert?

Hi,

erstmal vielen Dank für die konstruktiven Anregungen.

> Die Versorgungsspannung musst du sowieso behandeln.
Bin jetzt etwas verunsichert, evtl. hast du den Hinweis auf diesen 
Beitrag überlesen Beitrag "Kfz Spannungswandler Modul 5V".
Ist einen weitere Beschaltung nach dem DC/DC Wandler notwendig?

Gruß
Thomas

von Karl H. (kbuchegg)


Lesenswert?

Thomas D. schrieb:

> Ist einen weitere Beschaltung nach dem DC/DC Wandler notwendig?

Ich denke nicht.
Von einem extra für Kfz gebauten Modul erwarte ich eigentlich schon, 
dass es mit allen möglichen üblicherweise vorkommenden Schweinereien im 
Bordnetz klar kommt.

von Thomas D. (tommi)


Lesenswert?

thomas s schrieb:
> Wenn D1 eine Z-Diode ist, passiert nicht allzu viel.

Ja das ist eine Z-Diode als Schutz für ADC eingang. Soll bei 5.1 V 
leitend werden. Da über R3 aber nur etwa 2,5 V abfallen, sollte das doch 
funktionieren.

Gruß
Thomas

von Thomas D. (tommi)


Lesenswert?

Hi,

> Von einem extra für Kfz gebauten Modul erwarte ich eigentlich schon,
> dass es mit allen möglichen üblicherweise vorkommenden Schweinereien im
> Bordnetz klar kommt.

Ich hoffe das der Chinese das auch so sieht ;-)

Gruß
Thomas

von Thomas D. (tommi)


Lesenswert?

Hallo,

> Nach dem oben geposteten Schaltplan: gar keinen; er ist durch eine
> Leitung direkt darüber gebrückt. (Diese Verbindung löschen!)
> BTW: R1 liegt an AVcc und Vcc, nicht an Masse.

Stimmt, ist gelöscht.

Danke
Thomas

von Thomas D. (tommi)


Angehängte Dateien:

Lesenswert?

Hallo,

habe die Schaltung nochmal angepasst. Jetzt sollte auch eine 
Temperaturmessung möglich sein. Ich hoffe ich habe mich bei den 
Spannungsteilern nicht verrechnet.

Auch die Anschlüsse RXD TXD sind jetzt für die UART frei.

Über hilfreiche Kommentare würde ich mich freuen.

Gruß
Thomas

von Karl H. (kbuchegg)


Lesenswert?

Die Zener Diode D2 brauchst du nicht wirklich.

Dieser Spannungsteiler ist ja an 5V angeschlossen. Da können nie Werte 
größer als 5V entstehen. Wo soll da eine höhere Spannung herkommen? Wenn 
da jemals was größeres als 5V entsteht dann muss auch die 
Versorgungsspannung schon wesentlich über den 5V gewesen sein. In dem 
Fall hast du dir aber den µC schon längst gebrutzelt.

Beim anderen Spannungsteiler ist das was anderes. Der hängt ja am 12V 
Bordnetz. Und vom dem wissen wir, dass da schon auch mal kurzzeitig 
wesentlich mehr als 12V auftreten kann.

: Bearbeitet durch User
von thomas s (Gast)


Lesenswert?

Die Z-Diode ist keine gute Idee, die fängt weit vor 5,1 V an zu leiten, 
speziell bei höheren Temperaturenn und versaut einem die ohnehin 
bescheidene Messqualität unnötig. Besser wäre es, mindestens die 
Versorgungsspannung für den Fühler und Vorwiderstand zu stabilisieren, 
z. B. mit einer Spannungsreferenz.

von Karl H. (kbuchegg)


Lesenswert?

thomas s schrieb:
> Die Z-Diode ist keine gute Idee, die fängt weit vor 5,1 V an zu leiten,

Kannst du da einen Volt-Zahlenwert nennen?

Seine Spannungsteiler hat er auf die interne Referenzspannung 
eingestellt. Also ca. 2.5V.

Jetzt weiss ich aber nicht auswendig, ob die Z-Dioden bei 2.5V (bzw. 
kleiner) schon nennenswert "eingreifen". Ich weiss, dass der Zener-Knick 
in der Kennlinie nicht so ausgeprägt ist, wie man ihn gerne hätte. Aber 
eigentlich ist er ja mit seiner Messpannung noch relativ weit von dieser 
'kurve in der Kennlinie' entfernt.

: Bearbeitet durch User
von Thomas D. (tommi)


Lesenswert?

Hi,

> Dieser Spannungsteiler ist ja an 5V angeschlossen. Da können nie Werte
> größer als 5V entstehen. Wo soll da eine höhere Spannung herkommen? Wenn
> da jemals was größeres als 5V entsteht dann muss auch die
> Versorgungsspannung schon wesentlich über den 5V gewesen sein. In dem
> Fall hast du dir aber den µC schon längst gebrutzelt.
>
Ok, hast recht kann ich mir sparen.

Gruß
Thomas

von Thomas D. (tommi)


Lesenswert?

Hallo nochmal,

bin jetzt etwas verunsichert wegen der Z-Diode im 12V Pfad. Der Pin 
dürfte bis 30V noch nicht in Gefahr sein. Kann ich die Diode wirklich 
weglassen?
Sollte ich evtl. eine Überspannungsschutzdiode z.B. 1,5KE 22A über die 
12V legen?

Gruß
Thomas

von thomas s (Gast)


Lesenswert?

@Karl-Heinz: Aber gerne doch: Es ist immer nur die Frage, wie genau man 
hinguckt. Oder "Wo ein Volt ist, ist das Ampere nicht weit weg", und 
wenn es ein nA ist.

Jedenfalls gehört die unnötige Diode weg und vor die ganze Schaltung 
eine KfZ-taugliche Schutzbeschaltung.

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.