Hallo Leute, ich weiß das es diverse Beiträge mit genauerer Spannungsmessung via ADC am AVR gibt. Allerdings habe ich mich gefragt ob man den ADC, nicht auf eine Art "eichen" kann. Die Vorstellung: Der ADC soll mir im Bereich von 8V - 15V die Spannung mit einem Fehler von <0,5V Darstellen können. Durch einen 4:1 Spannungsteiler wollte ich die Spannung messen. Die Widerstände sind auf 800k zu 200k festgelegt. Im Anhang ist ein Bild des kompletten Aufbaus zu sehen. Es wird hier die Eingangsspannung vor dem 7805 gemessen. Für eure Hilfe bedanke ich mich jetzt schonmal
Schaltplan wäre etwas übersichtlicher als das Board selbst. Wäre gut, wenn du den vielleicht posten könntest, dann liese sich eine Aussage leichter treffen.
Wo ist denn das Problem, bei einer Diff. von 7V die Genauigkeit auf 0,5V zu bekommen. Das kannste mit einem 4bit ADC machen, der 16 Stufen unterscheiden kann. 14 brauchste nur.
Wie kommen die Bauteile unter den ATMega? Er misst eine Spannung von 2...3,75V , also könnte er maximale Auflösung erreichen, indem er die Analog-Referenz möglichst nahe an das maximum annähert, machen wir mal 4 Volt daraus. Wenn man von den 10 Bit Auflösung aber auch nur 8 benutzt kann man trotzdem noch auf 15,6 mV genau auflösen. Nur, mir scheint als ob du das Ding ins Auto einbauen willst, da wirst du gut daran tun einen Überspannungsschutz dranzubauen.
Ja, die Auflösung ist kein Problem. Wenn möglich, solltest du den Spannungsteiler allerdings etwas niederohmiger dimensionieren. Sonst läuft die Messung langsamer, weil der Eingangskondensator im AVR nicht schnell genug umgeladen werden kann.
Anbei nochmals der Schaltplan. Ich habe hier ein Testaufbau gemacht und auch direkt mit nem Voltmeter gemessen. Das Problem war halt die recht große Differenz. Mein Problem ist ich weiß nicht wie das genauer hinzubekommen ist. Die Platine ist noch nicht hergestellt. Was wäre denn ein Typischer Wert für solch einen Spannungsteiler? Wie am Dateinamen auch schon richtig erkannt soll das ganze später im Auto verbaut werden. Überspannungsschutz mittels Drosselspule und Sicherung sollte kein Problem darstellen. Das Display wird aufgesteckt, und darunter ist recht viel Platz für den µC und den ganzen Rest. (Entsprechende Aufbauten hab ich schon gemacht) lg
Dominik schrieb: > Durch einen 4:1 Spannungsteiler wollte ich die Spannung messen. > Die Widerstände sind auf 800k zu 200k festgelegt. Schau mal ins Datenblatt welchen Quellwiderstand der ADC maximal verträgt damit er innerhalb der sampling time aufs LSB einschwingen kann. Außerdem solltest Du einen Kondensator parallel zum ADC-Eingang (zwischen ADC-Eingang und Analog-Gnd) als Tiefpaß (bzw. anti-Aliasing Filter schalten). Nur so mal als Tipp: Wenn du 22K und 10K verwendest hast Du einen Meßbereich von 16V bei 5V Referenzspannung. Gruß Anja
Anja schrieb >Außerdem solltest Du einen Kondensator parallel zum ADC-Eingang >(zwischen ADC-Eingang und Analog-Gnd) als Tiefpaß (bzw. anti-Aliasing >Filter schalten). Danke wird behoben. Im Datenblatt steht, das die Signalquelle eine Impedanz von 10kohm nicht überschreiten sollte. Also demnach wirklich zu stark dimensioniert. Aber was sagt mir das nun über meine Genauigkeit aus?
Der ADC löst auf 10bit auf, sprich du hast 1024 Werte, die auf meinetwegen 16 Volt aufgeteilt werden. -> minimal messbarer Unterschied sind etwa 16 mV. Allerding solltest du dich noch über Schutzschaltungen fürs Auto schlau machen, sonst lebt deine Platine am Boardnetz nicht lang.
>Allerding solltest du dich noch über Schutzschaltungen fürs Auto schlau >machen, sonst lebt deine Platine am Boardnetz nicht lang. Wird noch gemacht. Alles klar. Danke nochmals für eure Hilfe. Schönen Abend wünsche ich.
Die Hintergrundbeleuchtung wird über den Portpin wohl nur schwach leuchten (210mA laut Datenblatt). Kannste also knicken. Und D0-D3 am LCD lass mal besser unbeschaltet.
Hallo, wo ist die Filterbeschaltung für den AVcc-Pin? Dieser sollte wie im Datenblatt beschrieben vorgesehen werden, insbesondere bei Verwendung der voller 10bit-Auflösung des ADC. Wenn die Hintergrund-Beleuchtung des Displays wirklich ca. 200mA benötigt, solltest du dir Gedanken über die Verlustleistung am 7805-Regler machen. (8V Spannungsabfall bei laufendem Automotor und 200mA Strom macht immerhin schon 1,6W; ohne Kühlkörper bzw. Kühlkupfer wird das wohl nichts ...)
>Die Hintergrundbeleuchtung wird über den Portpin wohl nur schwach >leuchten (210mA laut Datenblatt). Kannste also knicken. Laut Datenblatt liegt die LCD Hintergrundbeleuchtug bei max.25mA http://docs-europe.origin.electrocomponents.com/webdocs/06dd/0900766b806dda1c.pdf Siehe S.3 Die Beleuchtung soll später via PWM angesteuert werden, damit sie in der Nacht nicht zu stark blendet und tagsüber auch lesbar bleibt. >Und D0-D3am LCD lass mal besser unbeschaltet. Soweit ich weiß stand mal im Tut das ungenutzte PINs auf Masse zu schalten sind. So sollen auch Störungen vermieden werden. Auf dem EasyAVR5A der Firma MikroE ist es auch so gemacht. Wegen der Beschaltung am Avcc werde ich mich kümmern.
150K zu 10K als Eingangsspannungsteiler macht 1zu16. lässt sich perfekt rechnen! Genauigkeit sollte reichen, oder? Axelr.
vielleicht liegt deine abweichung auch im spannungsteiler: 800k und 200k ergeben 5:1 und nicht 4:1 !!!
mawieit schrieb: > vielleicht liegt deine abweichung auch im spannungsteiler: > 800k und 200k ergeben 5:1 und nicht 4:1 !!! eben ;))
...und die üblichen Widerstände haben auch relativ große Toleranzen... MfG, Heiko
Bei Verwendung der internen Referenz legt der AVR eben genau diese Spannung auf den ARef Pin, damit man dort noch ein Filter anschließen kann. Wenn Du eine externe Referenzsspannung anlegst, sollte diese ebenfalls gut enkoppelt werden: Ferrit zwischen Vcc und AVcc, Vorwiderstand zwischen AVcc und Referenzspannungsquelle, an diesem Punkt ARef abgreifen. Bei einem LM4040Dxx haben sich 2k2 bewährt. Die AVcc mit 10nF und 100nF und die ARef mit 1nF und 100nF jeweils so dicht wie möglich am AVR GNDA entkoppeln. Ich kenne den MCP1541 nicht, aber bezweifle, dass er einen internen Vorwiderstand hat. Die Massefläche für die analogen Signale nur an einem zentralen Punkt mit der Massefläche der restlichen Schaltung verbinden. Für Deine Messanforderungen ist das zwar etwas zu oversized, aber die Bauteile kosten nichts und nachträglich weglassen ist einfacher und billiger als ein neues Layout. Alle analogen Leitungen Richtung Fahrzeug über Ferrite filtern, schnelle Varistoren oder/ und schnelle TAZe verwenden. Das gilt auch für Sensoren, deren Kabel lediglich eine längere Strecke neben einem vorhandenen Kabelbaum geführt werden, auch wenn sie nicht direkt mit diesem Verbunden sind. Für digitale Eingänge immer einen Serienwiderstand von 10..22R vorsehen, auch hier einen schnellen Varistor oder eine TAZ vorsehen. Statt eines Längsreglers würde ich einen kleinen DC/DC Wandler verwenden, am besten einen, der deutlich mehr als 24V am Eingang verträgt. Allerdings ist das Design eines solchen nicht immer einfach. LCD Beleuchtung kann man über PWM dimmen, die PWM wird aber auch schön ins Bordnetz gesendet. Daher dort besser noch einen kleinen Elko und 100nF parallel hinzufügen. Die Benennung der Stecker deutet möglicherweise darauf hin, dass hier Kontakte der Hebel an der Steuersäule angelegt werden sollen. Diese Eingäng unbedingt gegen potentielle 12V sichern. Also höherer Serienwiderstand TAZ und Z-Diode von 5V zwischen Serienwiderstand und CPU Pin. Richtung Steuersäule auf jeden Fall mit den Signalen aufpassen, dort liegen auch die Leitungen für die Airbag-Auslösung. Zitat aus einem DC/DC Wandler Datenblatt von Analog Devices: "Remeber, if you connect to a car power supply, you connect to a power supply from hell..." Gruß, Ulrich
Hallo Uli, erstmal vielen für deine ausführliche Beschreibung und Hilfestellung. Zum einen TAZs kenne ich jetzt so gar nicht, wobei ich mit Varistoren doch schon mehrfach gearbeitet habe. An sich hatte ich vor zur Beschaltung an sich von 5V auf 12V den IRF540 zu nehmen. Dieser kann direkt mittels TTL-Pegel angsteuert werden und bedarf somit keinen Vorwiderstand. >Die Benennung der Stecker deutet möglicherweise darauf hin, dass hier >Kontakte der Hebel an der Steuersäule angelegt werden sollen. Das siehst du richtig. An sich soll der µC z.b. beim Antippen des Blinkers z.b. mehrfach nachblinken. Die Innenraumbeleuchtung soll ausgedimmt werden, sobald die Zündung eingeschaltet wurde, die Lampe aber sonst bis zu 2min brennen. Die Fensterheber sollen so lange funktionstüchtig bleiben, bis die Fahrertür geöffnet wird. Dafür hatte ich vor den Türkontakt abzugreifen. Das Fahrlicht soll anstelle des Akustischen Warnsignals mit dem öffnen der Tür abgeschaltet werden, wobei ich mir hier noch nicht sicher bin ob ein RElais dafür die richtige Wahl ist. Die Temperatur soll mittels dem DS1820 an 3 Stellen abgefragt werden. Innenraum, Umgebung, Endstufe So viel zu meinem Vorhaben. Die Drosselspulen werde ich noch einsetzen. Allerdings stehen gerade noch andere Dinge vor der Tür :(
Ich sehe keine Schutzbeschaltung für den 7805.... Lies mal hier.: http://www.dse-faq.elektronik-kompendium.de/dse-faq.htm#F.23 Ohne Schutzbeschaltung würde ich dem nicht sooo lange geben. Grüße
Jean Player schrieb: >den KURZSCHLUSS am AREF Pin erklärst du uns bitte mal. >Gruß Das ist kein Kurzschluss. Ich hatte nur nicht die richtige LIB für den MCP da. Aber das Gehäuse ist das gleiche ;) Ist aber aus dem Layout im ersten Post ersichtlich
Ok, ok... Also zuerst für interessierte Mitleser die obligatorische Rechtsbelehrung: Veränderungen an der äußeren Beleuchtungsanlage eines KFZ führen in der Regel zur Erlöschung der Betriebserlaubnuis es sei den es werden zugelassene Resatz- oder Zubehörteile verwendet. Veränderungen an der Fahzeugtechnik selbst, auch Innen, führen in der Regel zur Erlöschung der Garantie. Damit aber genug zu diesem Thema. TAZe sind Transienten Absorber Dioden. Diese schützen ein Signal vor Einflüssen durch schnelle Transienten, also extrem schnell ansteigende Störimpulse. Diese Bauteile sind sehr schnell, können aber nicht so hohe Energien vernichten. Ein Varistor ist dafür zu langsam, kann aber länger durchhalten. Man bekommt diese Bauteile auch in mehreren in einem Gehäuse um z.B. einen USB Bus zu schützen. Allerdings ist die übliche Bauform SMD SOT23-5 oder SOT23-6 Gehäuse. Gruß, Ulrich
Natürlich ist es mir bewusst, zumal ich an der äußeren Anlage nichts verändere, sondern lediglich deren Beschaltung im Falle des vergessens ;) Ausßerdem glaube ich kaum das die Garantie von dem Fahrzeug noch eine Rolle spielt, da dieser Bj. 98 ist. Ich werde mich mal umschauen, allerdings hatte ich nicht vor SMD Teile zu verwenden. Danke euch erstmal für die viele Hilfe. lg
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.