Hallo,
mich quält schon länger eine kleine Frage,
in welchem Atmel Controller, 16 oder auch 32 Bit, ist der bestauflösende
ADC integriert? (es geht nicht um den Messtakt) Der Mikrocontroller
sollte möglichst noch in einer "Basterfreundlichen Bauform" zur
Verfügung stehen. DAC wird nicht benötigt, Preis spielt ebenfalls keine
Rolle, auch die sonstigen Anforderungen sind nur als gering anzusehen.
Wäre schön wenn das Jemand klären könnte.
Danke
Anfänger schrieb:> Hallo,> mich quält schon länger eine kleine Frage,>> in welchem Atmel Controller, 16 oder auch 32 Bit, ist der bestauflösende> ADC integriert? (es geht nicht um den Messtakt) Der Mikrocontroller> sollte möglichst noch in einer "Basterfreundlichen Bauform" zur> Verfügung stehen. DAC wird nicht benötigt, Preis spielt ebenfalls keine> Rolle, auch die sonstigen Anforderungen sind nur als gering anzusehen.>> Wäre schön wenn das Jemand klären könnte.>> Danke
Soweit ich weiß gibts es keine 16 bit Controller von Atmel. Alle 32 bit
Controller (Avr32/ARM) gibt es nur in SMD Packages. Ob das für dich
bastelfreundlich ist oder nicht verräts du leider nicht.
Wie du einen möglichst hoch Auflösenden (wahrscheinlich meinst du eher
die Genauigkeit) ADC brauchst kommst du um einen externen nicht
drumherum. Allerdings muss man für genau Messungen dann noch eine ganze
Menge mehr beachten als die Auswahl des ADC.
Huch,
danebengegriffen, war mir nicht mehr bewusst dass die beiden Parteien
8-Bit und 32-Bit sind.
32-Bit nur in SMD, schade dann fällt das im Kern raus, SMD ist nicht das
was ich im Basteleck gerne benutzen will.
Es geht nicht um höchste absolute ADC-Genauigket, auch nicht um
zuverlässige Langzeitstabilität, es geht nur um verfügbare
Kurzzeitzuverlässigkeit (relative Genauigkeit, niederfrequente Messung),
was ich etwa mit best verfügbarer ADC-Auflösung verbunden mit guter
Wiederholgenauigkeit im Zeitfenster weniger Minuten übersetzen würde.
Deswegen denke ich dass hier der vereinfachte Ansatz, "doppelte
Auflösung = doppelt gut", im Kern herhalten wird.
Die Frage wäre damit reduziert auf,
was gibt es im 8-Bit Atmel-Contollerfeld an ADC-Auflösungen oberhalb von
1024 und in welchen Chips sind die verbaut?
Ich ahne schon leicht vor, die Antwort könnte lauten, es gibt nur 10-Bit
ADCs im 8-Bit Controllerfeld, das wäre echt schade.
Danke
Anfänger schrieb:> Die Frage wäre damit reduziert auf,> was gibt es im 8-Bit Atmel-Contollerfeld an ADC-Auflösungen oberhalb von> 1024 und in welchen Chips sind die verbaut?
Parametrische Suche des Hersteller bemühen. Gibt sogar 2 Einträge bzgl.
der ADCs in den FAQs:
"I am looking for an AVR8 with a 12-bit ADC, what are my options?"
http://support.atmel.com/bin/customer.exe?=&action=viewKbEntry&id=1441
"I'm using the ATMega but would like an ADC with more resolution..."
http://support.atmel.com/bin/customer.exe?=&action=viewKbEntry&id=1246> Ich ahne schon leicht vor, die Antwort könnte lauten, es gibt nur 10-Bit> ADCs im 8-Bit Controllerfeld, das wäre echt schade.
Warum scheust Du wie der Teufel das Weihwasser einen externen ADC? Bei
Controllern ist meistens ein brauchbarer Allround-ADC integriert, aber
wenn man eben Sonderwünsche hat, dann muß man eben ein zusätzliches IC
dranflanschen. Dier Hersteller der Controller sind ja nicht so dumm und
un bauen das Beste was machbar ist in die Controller ein, denn >95% der
Kunden bräuchten die Funktionalität gar nicht und der Chip wäre
exorbitant teuer.
Das Zeugs würde also sowiso keiner kaufen, weil wenn jemand einen
speziellen ADC braucht, dann kauft er den eben als externes Bauteil.
Also wozu integrieren wenn's eh keiner kaufen würde?
Was nicht verkauft werden kann wird auch nicht produziert.
Anfänger schrieb:> 32-Bit nur in SMD, schade dann fällt das im Kern raus, SMD ist nicht das> was ich im Basteleck gerne benutzen will.
Was immer alle gegen SMD haben. Könnt ihr euch von dem dämlichen
Löcherbohren nicht trennen?
Bastelstubenältester schrieb:> Und den einzigen uC mit einem 16-bit Sigma Delta ADC im> bastlerfreundlichem DIP Gehäuse hat TI im Programm.
Und den kann man sogar direkt aufs Launchpad stecken, vielleicht wäre
das ja was für unseren suchenden.
Wer AVRs programmieren kann wird auch an den MSP430 nicht scheitern
sondern sich eher freuen :)
Ich sags mal so, 10bit ist ein pragmatischer Ansatz. In deiner
Bastelecke hast du wahrscheinlich auch keine 0.1%-Widerstände, die
Spannungsversorgung (und wahrscheinlich deine Referenz) erledigt meist
ein 5% Linearregler. Warum also mehr als 10bit für den Hobbybereich?
Wenn du kurzzeitig höhere Auflösung willst, kannst du dein Signal etwas
verrauschen und oversamplen. Dann sind auch 12 Bit drin. Allerdings
immer mit der Hintergedanken, dass das im Endeffekt geratene 2
zusätzliche Bits sind.
> 32-Bit nur in SMD, schade dann fällt das im Kern raus, SMD ist nicht das> was ich im Basteleck gerne benutzen will.
Es gibt hier auch Adapterplättchen von TQPF auf DIP bzw. 2.54 RM ...
Damit gehts dann ganz normal auf Lochraster weiter.
Jörg Wunsch schrieb:> Hihaho schrieb:>> Damit gehts dann ganz normal auf Lochraster weiter.>> Dann braucht man auch keinen hochauflösenden ADC mehr. ;-)
Ja klar, hab mich eher auf die 32-bitter im TQPF bezogen.
Hochauflösender ADC und 5% Teile aus dem Bastelladen passen sowieso
nicht zusammen, denke das war schon erwähnt ...
Bin aber eh eher digital, Spannung ein/aus uns so, nix ADC ... ;-)
Hihaho schrieb:> Hochauflösender ADC und 5% Teile aus dem Bastelladen passen sowieso> nicht zusammen
Da kann wieder eine Auflösung und Genauigkeit nicht auseinander halten
;-)
Anfänger schrieb:> relative Genauigkeit, niederfrequente Messung
Wie niederfrequent? Im Sekundentakt kann man aus jedem AVR-ADC 16 Bits
rausholen, wenn man zusieht, dass Referenz oder Messwert passend
rauschen, und man genügend Messwerte mittelt.
http://en.wikipedia.org/wiki/Oversampling#Resolution
ansel schrieb:> Im Sekundentakt kann man aus jedem AVR-ADC 16 Bits rausholen
Dann guck dir mal an, was passiert, wenn die differentielle
Nichtlinearität des Wandler zu seiner Auflösung passt. Dann kannst du
die zusätzlich geschnitzten Bits ganz gepflegt in der Pfeife rauchen ;-)
Michael A. schrieb:> Dann guck dir mal an, was passiert, wenn die differentielle> Nichtlinearität des Wandler zu seiner Auflösung passt.
Hrm, ist das denn ein Problem, wenn das Rauschen ein oder zwei Bit
lauter ist, als das DNL des AVR? die µV-Messwerte, die ich bei
2.56V-Referenz und Mittelung von 2^18 Werten bekomme, ändern sich
jedenfalls ziemlich unverdächtig monoton und linear.
Anfänger schrieb:> Es geht nicht um höchste absolute ADC-Genauigket, auch nicht um> zuverlässige Langzeitstabilität, es geht nur um verfügbare> Kurzzeitzuverlässigkeit (relative Genauigkeit, niederfrequente Messung),> was ich etwa mit best verfügbarer ADC-Auflösung verbunden mit guter> Wiederholgenauigkeit im Zeitfenster weniger Minuten übersetzen würde.> Deswegen denke ich dass hier der vereinfachte Ansatz, "doppelte> Auflösung = doppelt gut", im Kern herhalten wird.
Wenn du mit "niederfrequenter Messung" meinst, daß dir die Dauer einer
Messung scheißegal ist und auch das zu messende Signal beliebig lange
verfügbar ist, dann kannst du natürlich die 10 Bit Auflösung der
eingebauten ADCs problemlos erhöhen.
Du addierst einfach mehrere Meßwerte. Nun ergibt zwar schon die Addition
zweier 10Bit-Werte einen 11-Bit Wert, aber leider ist das letzte Bit
nicht voll gültig. Bestenfalls, wenn du vier Werte addierst und das
Ergebnis durch zwei teilst, hast du effektiv tatsächlich etwa 11 Bit
Auflösung. Für effektiv etwa zwölf Bit mußt du schon mindestens 16 Werte
addieren und entsprechend durch vier teilen usw.
Das nennt sich "angewandte Statistik". Die Idee dahinter ist, daß der
gesuchte Wert über den Zeitraum der Messungen hinweg konstant ist (nur
dann funktioniert die Sache überhaupt), der Meßfehler (insbesondere das
unvermeidbare Quantisierungsrauschen) hingegen nach gewissen
Gesetzmäßigkeiten zufällig verteilt ist. Die o.g. Rechenoperationen
zielen nun darauf ab, die durch die tatsächliche Meßgröße erfolgte
Beeinflussung dieser Zufallsverteilung als zusätzliche Auflösung für die
Meßeinrichtung nutzbar zu machen.
Das "bestenfalls" von oben bezieht sich auf das SNR. D.h.: Wenn deine
Einzelergebnisse von vornherein schon um mehr als das letzte Digit
wackeln, brauchst du mit dem Verfahren erst garnicht anfangen, bzw. du
mußt entsprechend mehr Werte aufaddieren, um überhaupt erstmal
tatsächlich auf die bereits dargestellte Genauigkeit zu kommen.
Thomas schrieb:> Hihaho schrieb:>> Hochauflösender ADC und 5% Teile aus dem Bastelladen passen sowieso>> nicht zusammen>> Da kann wieder eine Auflösung und Genauigkeit nicht auseinander halten> ;-)
Sag ich doch ... ^^
Anfänger schrieb:> Ich ahne schon leicht vor, die Antwort könnte lauten, es gibt nur 10-Bit> ADCs im 8-Bit Controllerfeld, das wäre echt schade.
Dann gehst Du eben zu einem anderen Hersteller. Z.B. TI.
MSP430F2013: 4 ADC Channels 16 Bit ∑∆, 14 PIN PDIP.
fchk
ansel schrieb:> Hrm, ist das denn ein Problem, wenn das Rauschen ein oder zwei Bit> lauter ist, als das DNL des AVR? die µV-Messwerte, die ich bei> 2.56V-Referenz und Mittelung von 2^18 Werten bekomme, ändern sich> jedenfalls ziemlich unverdächtig monoton und linear.
Die DNL ist nichts anderes, als ein Maß für den lokalen Steigungsfehler
der Kennlinie. Bei der Mittelung werden die unterschiedlich breiten
Stufen zu unterschiedlichen Steigungen zwischen den Stufen. Bei ein Bit
gleichverteiltem Rauschen sollte der Effekt deutlich zu sehen sein. Bei
lauterem Rauschen verschwindet er wahrscheinlich in dem Maß, wie die
DNL, gemittelt über die dabei erfaßten Stufen, gegen 0 geht.
c-hater schrieb:> Das nennt sich "angewandte Statistik".
Langer Rede kurzer Sinn: Die Standardabweichung sinkt (etwa) mit der
Wurzel aus der Anzahl der Stichproben.
c-hater schrieb:> der Meßfehler (insbesondere das unvermeidbare Quantisierungsrauschen)> hingegen nach gewissen Gesetzmäßigkeiten zufällig verteilt ist.
Wenn bei rauschfreiem Signal irgendetwas nicht zufällig verteilt ist,
dann ist es das Quantisierungsrauschen, denn damit wird das Rauschen
(Abweichung zwischen Analogsignal und Digitalsignal) bezeichnet, das
sich durch die Stufigkeit der Wandlerkennlinie ergibt. Deterministischer
geht es nicht.
Als Rauschen tritt es in Erscheinung, wenn man z.B. ein analoges
Sinussignale digitalisiert. Die digitalisierten Samples vom Signal
weichen wegen der Stufigkeit der Wandlerkennlinie natürlich vom Wert des
Analogsignals ab. Diese Abweichungen sorgen im Spektrum für den als
Quantisierungsrauschen bezeichneten Beitrag.
Michael A. schrieb:> Wenn bei rauschfreiem Signal irgendetwas nicht zufällig verteilt ist,> dann ist es das Quantisierungsrauschen
Eben. Genau diese Redundanz ist es, die man nutzbar machen kann, um ein
Meßergebnis mit einer höheren Auflösung zu bekommen. Und zwar genau so,
wie ich es beschrieben habe.
Und das Lustige daran ist: das funktioniert nur deshalb, weil eben immer
auch Entropie, also echtes Rauschen im Spiel ist.
Denn wie du richtig erkannt hast, kann sich das Quantisierungsrauschen
nur manifestieren, wenn es ein zu quantisierendes Signal gibt. Genau das
liefert eben das Rauschen. Und genau die Differenz zwischen
Erwartungswert der Rauschverteilung und der tatsächlich festgestellen
stellt die gesuchte Information dar.
Anfänger schrieb:> Es geht nicht um höchste absolute ADC-Genauigket, auch nicht um> zuverlässige Langzeitstabilität, es geht nur um verfügbare> Kurzzeitzuverlässigkeit (relative Genauigkeit, niederfrequente Messung),> was ich etwa mit best verfügbarer ADC-Auflösung verbunden mit guter> Wiederholgenauigkeit im Zeitfenster weniger Minuten übersetzen würde.> Deswegen denke ich dass hier der vereinfachte Ansatz, "doppelte> Auflösung = doppelt gut", im Kern herhalten wird.
Das Problem mit >12 bis 14 Bit ist, dass es da immer schwieriger wird
den Spaß auch vernünftig zu betreiben. Klar kann man eine 24bit ADC
verbauen. Aber ohne superbe Layoutkenntnisse kann man getrost die
letzten 10 LSB wegwerfen. Bei 16bit sauber (!) gelayoutet ist 4 Lagen
absolute Pflicht. Wer solche Layouts machen kann, der hat auch kein
Problem mit SMD. Ein weiterer Grund ist die Induktivität der Pins die
bei SMD nunmal geringer ist. Ist zwar nicht in jeder Anwendung kritisch
aber schon aus diesem Grunde verbaut man sehr gerne SMD. Auf Lochraster
oder schlechten selbstgeätzten Platinen geht sowas eben garnicht.
Hallo,
danke, super was ihr alles zusammengetragen habt.
Nun weiß ich wie ich selbst bei Atmel nachschlagen kann,
TI ein Teil im Dip-Gehäuse mit 16-Bit ADC hat,
es "SMD-Adapterplättchen von TQPF auf DIP bzw. 2.54 RM ..." gibt, das
sollte die Xmega-Reihe mit 12-Bit ADC verfügbar machen,
diverse Möglichkeiten existieren zusätzliche Bits herauszukitzeln,
und vieles Andere mehr.
Da das Problem spezieller gelagert ist, sollte eine weitere noch
wirkungsvollere Möglichkeit zur Verfügumg stehen, die mit geringem
externen Aufwand die 10-Bit Auflösung auf 12-13 Bit erhöht (ohne ernste
Abstriche am Ergebnis)
Überwacht werden soll zB ein Bereich zwischen 3V und 3,3V. Dazu wird der
tote-Bereich gegen eine geeignete Spannungsreferenz (zB tl431?)
ausgekoppelt, das Differenzsignal Atmel-intern geeignet verstärkt,
möglichst auf den verfügbaren Messbereich passend, (ich meine dazu wäre
was eingebaut) und dieses angepasste Signal wird dem ADC zugeführt.
Selbst wenn die Verstärkung mit einem Schwankungsfehler von 10% arbeiten
würde wäre das kein Problem, die sichere Auflösung wäre dennoch um etwa
3-Bit (verglichen gegen den ADC am Vollbereich) erhöht.
Wegen der extrem niederfrequenten Messung sehe ich als Problem
allenfalls ein mögliches Potentialzuführungsproblem beim Messignal, das
über galvanische Trennung oder einen hin und herschaltbaren
Lademesskondensator zu lösen sein sollte, sodass extern neben Referenz
und Kondensator nichts weiter anfallen würde. Beim Einsatz eines X-Mega
wären so problemlos zuverlässige 14-Bit drin.
Hab ich was übersehen, gibts massive Argumente dagegen?
Nochmals ausdrücklichen Dank an alle Mitwirkenden!
(warum ich externe Bauteile und viele Pins scheue, der Aufwand steigt
mit dem Quadrat der aktiven verbauten Pins ...)
Michael schrieb:> Das Problem mit >12 bis 14 Bit ist, dass es da immer schwieriger wird> den Spaß auch vernünftig zu betreiben. Klar kann man eine 24bit ADC> verbauen. Aber ohne superbe Layoutkenntnisse kann man getrost die> letzten 10 LSB wegwerfen. Bei 16bit sauber (!) gelayoutet ist 4 Lagen> absolute Pflicht.
Kommt drauf an was das für ein Wandler ist (Stromaufnahme, Abtastrate,
welche Eingangs/Ausgangssignale usw. usf.), die üblichen "langsamen"
24-Bit ADCs (selbst extrem hochauflösende) kommen mit 2-Lagen sehr gut
aus.
Typische Eval-Boards...
CS5534
http://cirrus.com/en/pubs/rdDatasheet/CDB5534U_DB6.pdfADS1255http://www.ti.com/lit/ug/sbau090c/sbau090c.pdf
"Spannend" wird es erst wenn die voraussichtliche Einsatzumgebung
richtig "verseucht" ist.