Salut, für ein kleines Projekt brauche ich einen ADC. Die einfache Methode aus der Atmel Application Note AVR400 gefällt mir eigentlich ganz gut. Angenehm simpel im Gegensatz zur AVR401 (da schreckt mich schonmal der Code ab - multiply hier, divide da...). Nun frage ich mich, ob die 6 bit nicht auf 8 bit erhöht werden könnten, indem ich einfach die Zeitkonstante erhöhe. Den Code würde ich allerdings interruptfrei gestalten, da die Routine im 100Hz-Takt je vor oder nach der (interruptgetriggerten) Zündung eines Triac laufen soll. Die Messung kann also ruhig 1 bis 2ms dauern. Wenn's dadurch präziser wird, warum nicht. Schreibt mal, was dagegen oder dafür spricht. Wie gesagt, an irgendwelchen Timer-Überläufen soll's nicht liegen. Der 8-bit Timer (Target ist ein 2313) ist schon vergeben, also kann ich auch mit 16 bit zählen und prescalen oder nachher ein paar bits wegshiften. Hab mich mit dieser Art ADC bisher noch nicht praktisch auseinandersetzen können und würde mich freuen, wenn Ihr mir dabei helft. Danke! Mark H. -- http://markh.de/avr/
Salut, mag sein, daß mein Problem sehr trivial ist. Werde immer vorsichtiger mit blöden Fragen, wenn ich mir so die Hell-Master- u.ä. Threads durchlese... ;) Aber auch auf die Gefahr hin, möchte ich nochmal ganz kurz auf obiges Problem zu sprechen kommen... wie gesagt, Zielplattform ist ein AT90S2313 mit Analog-Komparator. Spricht was dagegen, die Werte des R und C so anzupassen, daß die maximale Meßdauer (bis 2/5 Vcc) vervierfacht wird und ich somit zwei Bits an Genauigkeit gewinne? Wenn das allerdings problemlos möglich ist, verstehe ich nicht, warum die Entwickler der AppNote nur 6 bit verwenden. Das ist auch schon der tiefere Grund meiner Frage. :) Würde mich sehr freuen, wenn mir jemand einen Tip geben kann. Vielen Dank im Voraus! Mark H. -- http://markh.de
Das Ganze wird daran scheitern dass die Ladekurve nur annähernd linear ist (siehe Diagramm in der Appnote), und an der Genauigkeit des Kondensators.
Salut, aber an der Linearität (bzw. Nichtlinearität) der Ladekurve ändert sich doch durch Vergrößern der Zeitkonstante RC nichts. Der C wird ja nachwievor nur bis 2V geladen. Oder hab ich da in E-Technik wieder geschlafen? ;) Der Nichtlinearität an sich bin ich mir schon bewußt. Die bereitet mir aber keine großen Sorgen, weil der ADC nur in einem Up-/Down-Regler eine Helligkeit konstant halten soll. Da verschiebt sich also nichts, was einer Linearität bedürfte. Und ne Lookup-Table wäre im schlimmsten Fall auch noch drin. Eine Frage noch: In welchem Rahmen sollte sich die Varianz des C bewegen? 10% ist zu kühn, oder? Ganz blöde Frage: Die Varianz ist doch fest pro Exemplar, oder? Läßt die sich nicht per Eichung wegrechnen? Danke für Deine (ermutigende, wie ich finde) Antwort! :) Mark H. -- http://markh.de
Ich würde einen guten C nehmen (Leckstromarm) und einfach mal probieren.. Gruß Mike
Wenn du keine Absolutwerte brauchst und einen guten Kondensator nimmst (Styroflex?) könnte es schon klappen.
Salut, danke für Eure Hilfe! Weiß gar nicht, warum ich mich so spät in diesem genialen Forum eingefunden habe. :) Ganz kurz nochmal eine Nachfrage... wie ist das nun mit der Varianz? Bezeichnet die Abweichungen von Exemplar zu Exemplar oder Abweichungen während des Betriebes (durch thermische Einwirkung)? Wenn ich an Widerstände denke, würde ich auf ersteres tippen... zumal man in Prozent keine Angabe über das Verhalten innerhalb eines undeklarierten Temperaturbereichs machen kann. Sich heute mal etwas blöd anstellend, :) Mark H. -- http://markh.de
Hallo, Varianz aus dem Lat. heist Streuung: Mathematik das Quadrat der Standardabweichung σ. Die (statistische) Streuung ist ein Maß für die Größe der Abweichung der Einzelwerte einer Zufallsgröße von deren Mittelwert μ. Die Streuung einer diskreten Zufallsgröße erhält man, indem man das Quadrat jeder Abweichung vom Mittelwert mit der entsprechenden Wahrscheinlichkeit pi multipliziert und alle so gewonnenen Produkte addiert. (aus wissen.de) Das heist mehrere Kondis, ist für dich unwichtig, bei dir ist es nur einer. Also ein guter und fertig. Gruß Mike www.mike-tronik.de
Was spricht gegen einen ATTiny13 für 1,60 EUR von reichelt mit fertigem 10bit ADC, den man nur starten und auslesen muß? Mit dem Schalten des Multiplexers dazu, kommst du da gerade mal auf drei Zeile Code. cu joern
Ein sehr interessantes Thema! Die nichtlinearität der Ladekurve des C könnte man durch eine Konstantstromquelle kompensieren. D.h. Wird ein C durch einen konstanten Strom geladen, dann steigt seine Spannung linear an. Entscheidend für die Genauigkeit der Messung ist: - die Linearität und Konstantheit der Konstantstromquelle - die Eigenschaften des C (.z.B. Leckstrom) - die Eigenschaften der Komparatorschaltung Ich denke das Hauptproblem wird beim Komparator liegen, er muss zielsicher die Eingangsspannung und die Spannung am C auswerten können. Bernhard
@Jörn, hast Du mal das Datum der Frage gesehen ? Vor vier Jahren gab es den tiny13 glaube ich noch nicht :-)
Ups ;-) das passiert wenn man eifrig in der Suche rumwühlt - dann verliert man Zeit und Raum... joern
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.