mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik 400ksps Analog-Digitalwandlung für Dummies


Autor: Colt Fish (Firma: TUC) (coltfish)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Morgen!

Ich habe folgendes Szenario, bei dem ich etwas analoge Unterstützung 
benötige:

Es ist ein Eingangssignal (single-ended) +/- 5V mit 400 ksps bei 
mindestens 14- (lieber 16) Bit abzutasten. Die Messung soll immer für 
1-2 Sekunden erfolgen, anschließend werden ein paar unspektukaläre 
Berechnungen mit den gespeicherten Daten durchgeführt.

Während der digitale Part der Schaltung keine großen Fragen aufwirft (es 
wird entweder ein PIC32 oder ein schneller dsPIC mit 1-2 MB externem 
SRAM zur Anwendung kommen), wirft der Analogteil eine enorme Menge 
elementarer Fragen auf, da ich fachrichtungsbedingt erhebliche Defizite 
im Bereich der analogen Schaltungstechnik habe.

Natürlich habe ich zunächst die üblichen Verdächtigen nach passenden 
A/D-Wandlern abgesucht. Bei Analog Devices finden sich z.B. der AD7612, 
AD7650, AD7693 usw. oder auch der ADS8328 von Texas Instruments.
Da die bei 400 ksps anfallende Datenmenge noch nicht so gewaltig ist, 
würde ich eigentlich gerne einen AD-Wandler mit SPI-Interface verwenden, 
um die Schaltung kompakt zu halten.
Bei den Herstellern habe ich auch viele Referenzschaltungen und ApNotes 
durchgesehen, viele Fragen blieben aber unbeantwortet.

Ich hoffe, Ihr könnt mir bei einigen davon helfen:
1.) Welche Beschaltung VOR dem AD-Wandler ist in meinem Fall nötig? 
Nimmt man bei einem bipolaren Signal üblicherweise dann auch einen 
bipolaren AD-Wandler oder verwendet man einen Wandler mit z.B. 0-5 V 
Eingangsspannung und konvertiert per OpAmp die Pegel?
Ich habe mir schon diverse Literatur zu dem Thema (z.B. die Op Amp-Bibel 
von TI (OP Amps for Everyone: 
http://focus.ti.com/lit/an/slod006b/slod006b.pdf)) angeschaut, einen 
gescheiten Schaltungsentwurf (für beide Fälle) habe ich aber noch nicht 
zu Stande gebracht.

2.) Wie sichert man den Eingang des AD-Wandlers gegen (leichte) 
Überspannung ab? Wenn z.B. doch mal Spannungsspitzen bis +/- 10 V im 
Eingangssignal auftreten?

3.) differential vs. single ended, welche A/D-Wandlerkonfiguration ist 
hier zu bevorzugen? Ich habe viele Schaltungen gesehen, wo ein 
single-ended Signal für einen Wandler mit differenziellem Eingang 
aufbereitet wurde. Bringt das Vorteile?

So, das war schonmal der erste Schwung Fragen. Es werden wohl nicht die 
letzten gewesen sein. Ich würde mich über etwas Nachhilfe freuen!

Gruß
Daniel

Autor: Colt Fish (Firma: TUC) (coltfish)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sind die Fragen tatsächlich komplizierter als ich dachte?
Ich wäre ja bereits mit einem Link zum Selbststudium glücklich :-)

Mir wäre es erstmal wichtig einen Ausgangspunkt zu haben, um meine 
Recherchen etwas fokussieren zu können. Verwendet man nun für so eine 
Aufgabe einen bipolaren ADC? single-ended Konfiguration?

Danke.

Autor: TrippleX (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich versuche mal deine Fragen zu beantworten:

1) Am Besten nimmt man am besten einen OpAmp. Musst halt diverse
   AD-Wandler Datenblätter durchschauen und von den Referenzschaltungen

2) Ganz simpel macht man es sich indem man durch einen Widerstand
   den Strombegrenzt und dann mit 2 Dioden "Klemmdioden" in 
Sperrrichtung
   zu GND und Vcc Schaltet. Bei Überspannung fanden die Dioden an zu 
leiten
   und Begrenzen die Spannung. Die Parasitäre Kapazität der Dioden und 
der
   Vorwiderstand Bilden aber einen Tiefpass.... .
   Es gibt auch Spezielle Dioden mit extrem kleiner Kapazität die für
   genau diesen Zweck gedacht sind.

3) Wenn du ein Signal hast was einen festen Massebezug hast dann spricht
   nichts gegen einer "Single-Ended" Wandlung. Eine Differential Ended
   Wandlung bietet sich an wenn man eine Messung macht dessen 
Bezugspotenzial
   sicht verschiebt. Hängt also von den Signal ab.

   Zum Beispiel bei einen Spannungsregler welcher einen 
Strommesswiderstand
   im Massepfad hat. Wenn du nun die Spannung unter Last messenwürdest 
misst
   du etwas falsches da unter Last Spannung an den trommesswiderstand
   abfallen würde und sich somit dein Bezugspunkt je nach Strom 
verschiebt.
   Bei einer Differenziellen Messung könntest du dieses "Offset" immer
   abziehen und erhälst dadurch den richtigen Spannungsbetrag.

Autor: Kai Klaas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Daniel,

>Sind die Fragen tatsächlich komplizierter als ich dachte?

Das Gebiet ist nun mal sehr umfangreich. Was sinnvoll ist, hängt vom 
jeweils gewählten Chip ab. Das läßt sich nicht pauschal beantworten.

>1.) Welche Beschaltung VOR dem AD-Wandler ist in meinem Fall nötig?
>Nimmt man bei einem bipolaren Signal üblicherweise dann auch einen
>bipolaren AD-Wandler oder verwendet man einen Wandler mit z.B. 0-5 V
>Eingangsspannung und konvertiert per OpAmp die Pegel?

Ja, beides wird gemacht.

>2.) Wie sichert man den Eingang des AD-Wandlers gegen (leichte)
>Überspannung ab? Wenn z.B. doch mal Spannungsspitzen bis +/- 10 V im
>Eingangssignal auftreten?

Unterschiedlich. Es gibt Wandler, die Überspannungen vertragen und dies 
ausdrücklich im Datenblatt vermerken. Andere lassen einen bestimmten 
Strom über die Schutzdioden am Eingang zu, sodaß ein OPamp mit einem 
Kurzschlußstrom, der unter diesem Limit liegt, direkt angeschlossen 
werden kann. Wieder andere sind so sensibel, daß OPamp und ADC mit der 
gleichen Versorgungsspannung betrieben werden sollten, um damit 
automatisch jegliche Übersteuerung auszuschließen.

Die Problematik mit Überspannungen am Eingang eines ADC ist, daß viele 
Hersteller nicht erklären, was denn nun bei einer Übersteuerung wirklich 
passiert. Wird einfach nur der Maximalwert ausgegegebn oder hebelt man 
die interne Schaltung so aus, daß völliger Murks ausgegeben wird? 
Außerdem: Wie schnell erholt sich ein übersteuerter ADC bei Wegnahme der 
Übersteuerung? Welche Folgen hat das für benachbarte Kanäle, die nicht 
übersteuert werden? Etc. Etc.

Das sind alles relevante Fragen, die vorab geklärt werden müssen.

>3.) differential vs. single ended, welche A/D-Wandlerkonfiguration ist
>hier zu bevorzugen? Ich habe viele Schaltungen gesehen, wo ein
>single-ended Signal für einen Wandler mit differenziellem Eingang
>aufbereitet wurde. Bringt das Vorteile?

Ja klar, bringt das Vorteile. Aber das hängt wieder von der aktuellen 
Situation ab. Von der Art der Masseführung im ADC (analoge und digitale 
Masse) und außerhalb. Außerdem von der Anzahl der verwendeten getrennten 
ADCs in ein und derselben Schaltung.

Was du vergessen hast in deiner Aufzählung relevanter Themen, ist, daß 
der treibende OPamp schnell genug einschwingen muß während der 
Samplingphase, damit der Wert am Eingang des ADC am Ende der 
Samplingphase auch wirklich stimmt.

Außerdem ist Aliasing eventuell ein Problem, sodaß du entweder 
Oversampling wählen mußt oder ein passendes analoges Anti-Aliasingfilter 
benötigst.

Desweitern ist bei einer Auflösung von 16bit und Verwendung analoger und 
digitaler Schaltung auf einem Board, dem Layout besondere Beachtung zu 
schenken. Darüber alleine könnte man ein ganzes Buch schreiben.

Kai Klaas

Autor: Colt Fish (Firma: TUC) (coltfish)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo und danke für die Antworten!

@ TrippleX:
Die Geschichte mit 2 Dioden "Klemmdioden" in Sperrrichtung zu GND und 
Vcc hatte ich schon gesehen, aber ich hatte auch genau die Befürchtung, 
in wie weit diese mein Eingangssignal verhunzen.
Sind hier vielleicht so eine Art niederkapazitive ESD-Schutzdioden eine 
Möglichkeit?
Die Vorgehensweise bei einer "komplett differenziellen" Messung war mir 
schon klar, ich habe mich nur gefragt, welchen Nutzen man hat, wenn man 
ein single-ended Signal vor der AD-Wandlung in ein differenzielles 
konvertiert.

@ Kai Klaas:
> Wieder andere sind so sensibel, daß OPamp und ADC mit der
> gleichen Versorgungsspannung betrieben werden sollten, um damit
> automatisch jegliche Übersteuerung auszuschließen.
Damit könnte ich sehr gut leben. Angenommen, ich verwende für ADC und 
OpAmp die gleiche Versorgungsspannung, z.B. 5 V, dann kann ich doch eine 
Überspannung am ADC Eingang ausschließen, da der OpAmp sämtliche 
Eingangsspannungen auf maximal 5 V begrenzt. Gut, ich müsste nur 
zusehen, dass ich das Eingangssignal über einen Spannungsteiler so 
begrenze, dass der OpAmp gerade nicht übersteuert, verstehe ich das 
richtig?
Aber was sagt denn der OpAmp dazu, wenn er dann doch einmal einen Puls > 
5 V abbekommt?

> Was du vergessen hast in deiner Aufzählung relevanter Themen, ist, daß
> der treibende OPamp schnell genug einschwingen muß während der
> Samplingphase, damit der Wert am Eingang des ADC am Ende der
> Samplingphase auch wirklich stimmt.
Dass die Settling-Time des OpAmps zum ADC passen muss, das habe ich 
schon gelesen und auch soweit verstanden. Ich denke, da findet sich dann 
auch anhand der Datenblätter von OpAmp und ADC eine geeignete 
Kombination.

> Außerdem ist Aliasing eventuell ein Problem, sodaß du entweder
> Oversampling wählen mußt oder ein passendes analoges Anti-Aliasingfilter
> benötigst.
Das Nutzsignal liegt in einem Bereich zwischen 1kHz (Hochpassfilterung 
erfolgt extern) und etwa 100kHz. Meine Samplingfrequenz mit 400 Hz ist 
also hoffentlich hoch genug :-) Meinst Du, ich sollte noch einen 
zusätzlichen Tiefpass spendieren?

Grundsätzlich soll auf der Schaltung auch nur ein einzelner ADC seine 
Arbeit verrichten. Heißt das nun, dass mir eine differenzielle 
Signalverarbeitung keine Vorteile bringt?
Dass die Entwicklung einer Mixed-Signal-Schaltung, dies auch noch bei 
16-Bit nicht trivial ist, dessen bin ich mir durchaus bewusst. 
Allerdings habe ich mich genau mit diesem Thema auch schon im Vorfeld 
intensiv auseinandergesetzt und denke, dass ich - wenn denn mal die 
Komponenten festgelegt sind - eine halbwegs brauchbare Platine layouten 
kann.

Gruß
Daniel

Autor: Ulrich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie der OP auf eine zu hohe oder zu niedreige Spannugn reagiert, hängt 
vom Typ ab. Oft wird eine Spannung die etwas (0,4 V) über oder unter die 
Versorgung geht noch tolleriert, und danach wirken Dioden die als ESD 
Schutz vorhanden sind. Mit einem Widerstand am Eingang ist man dann 
einigermaßen sicher.


Die 400 kHz sind so gerade genug für 100 kHz Signalfrequenz. Man sollte 
schon noch einen extra Tiefpaß Spendieren, mit einer Grenzfrequenz unter 
etwa 200 kHz. Ganz ohne Filter kreigt man von den höheren Frequenzen 
noch einiges an Störungen und Rauschen. Die Frage ist da eher ob man mit 
2 ter oder dar 1 ter Ordnung auskommt. Teilweise ist ja auch schon in 
der Signalquelle eine Filterung drin. Auch bei der Verstärkerschaltung 
zur Anpassung der Amplitude kann man schon eine leiche (1 ter Ordnung) 
Tiefpaßfuntion integrieren.

Wenn man die Wahl hat, wäre eventuell ein AD wandler mit etwas mehr 
Geschwindigkeit und dafür ggf. weniger Auflösung besser. Das macht den 
Antialiasing Filter einfacher, denn man hat dann mehr Platz zwischen 
Signalfrequenz und 1/2 Samplingrate.

Autor: Colt Fish (Firma: TUC) (coltfish)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

@ Ulrich:
Das zu messende Signal kommt von einem Piezo-Beschleunigungsaufnehmer, 
dessen Frequenzgang über 50 kHz stark einbricht. Ich denke, die 400 kHz 
Samplingrate ist ausreichend. Das gleiche Verfahren läuft derzeit mit 
guten Ergebnissen auf National Instruments Messkarten + Labview, dort 
sogar nur mit 200 kHz Samplingrate.
Den Tiefpass erster Ordnung werde ich dann wohl auf jeden Fall vorsehen, 
ist ja schnell gemacht.
Mehr als 400 kHz Samplingrate geht nicht, die anfallende Datenmenge muss 
auch noch irgendwo gespeichert und verarbeitet werden.

--------------

Bei Analog Devices bin ich nun übrigens auch bei den Reference Circuits 
fündig geworden (siehe auch Anhang):
http://www.analog.com/en/verifiedcircuits/CN0033/vc.html
Hier wird zwar ein 18-Bit ADC (AD7984) verwendet, in meinem Fall käme 
das 16-Bit-Pendant AD7980 in Frage. Abgesehen davon sollte die Schaltung 
wohl ganz gut zu meinem Anwendungsfall passen.
Würde ich diese Schaltung so übernehmen, blieben nur noch ein paar 
wenige Fragen über:
* DC-Anteile sind für mich uninteressant, AC-Koppelkondensatoren sind 
also nötig. Wo setzt man diese ein? Zwischen OpAmp und ADC oder nur vor 
dem OpAmp?
* Welchen Aufwand muss ich bei der Versorgungsspannungserzeugung für den 
Operationsverstärker treiben? Kann ich hier z.B. für die -2V eine 
Ladungspumpe einsetzen? Und für die +7V einen Standardlinearregler wie 
z.B. 780x?
* Und noch immer meine größte Sorge: Eingangsschutzbeschaltung. Mit den 
Versorgungsspannungen -2V und +7V kann der OpAmp ja theoretisch auch 
nahezu diese Spannungen an den ADC ausgeben. Dieser verträgt aber 
maximal VREF+0.3V bzw. GND-0.3V. Also wie und wo würde ich jetzt in 
dieser konkreten Schaltung die Spannungen begrenzen?

(Zur Info, Datenblatt AD7980: 
http://www.analog.com/static/imported-files/data_s...)

Gruß
Daniel

Autor: TrippleX (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich denke das ein "normaler" Spannungsregler ausreicht da diese
eine bei vernüftiger Platine eine gute Spannung bereitstellen.
Die OpAmps als Signalverstärker haben sowieso eine große
CMRR das dieses niedrige Restbrumm oder eher Rauschen unterdrückt
wird. Eine Ferrit im Eingang und am Ausgang vom Spannungsregler gibt
dann notfalls den nötigen Rest.
Leider finde ich das PDF mit ein paar Wertvollen Infomationen zu diesen
Thema nicht mehr.

Mit den ESD Dioden könnte man ja mal sein Glück versuchen.

So recht wüsste ich nicht wie gut die Linearitäten von Differenziellen
Messungen von ADCs sind dazu müsste man die Datenblätter des Bausteins
konsoltieren. Eine Externe Lösung mit Hochwertigen OpAmps so wie
du es hier schon gepostet hast wäre auch eine Lösung mann muss nur
abwiegen ob der ganze Aufwand sich auch lohnt.


Zu den OpAmps:
Vielleicht schaffst du es auch Single Supply zu fahren somit
kannst du dir jede menge Ärger ersparen.
Leider ist mir keine Lösung bekannt um die Spannung zu begrenzen
außer abgesehen von der Klemmdioden Lösung.
Normalerweise reicht eine Strombegrenzung mit einen Widerstand aus.
Fragt sich nur wie stark das dein Signal Dämpft und ob du dir
nicht hier wieder einen ungewollten Tiefpass baust.
Wählst ja nicht Ohne Grund einen 18 Bit ADC wenn ich das richtig
verstanden habe.

Im Datenblatt ist ein Maximaler Strom bei I- oder I+ zu GND
mit +-130mA angegeben. Begrenze diesen Strom einfach und
schon wirst du kein Problem haben ( denke ich )
Ich bin mir dabei nicht ganz sicher aber vielleicht antworten
noch andere hier.

Hast dir was ordentliches Vorgenommen :)

Autor: Colt Fish (Firma: TUC) (coltfish)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> So recht wüsste ich nicht wie gut die Linearitäten von Differenziellen
> Messungen von ADCs sind dazu müsste man die Datenblätter des Bausteins
> konsoltieren. Eine Externe Lösung mit Hochwertigen OpAmps so wie
> du es hier schon gepostet hast wäre auch eine Lösung mann muss nur
> abwiegen ob der ganze Aufwand sich auch lohnt.
Verstehe nicht ganz, was Du damit meinst. Differenzielles Messen sollte 
doch gegenüber einer single-ended-Messung die Linearität nicht 
beeinflussen?
Einen externen OpAmp werde ich so oder so einsetzen. Schon deshalb, 
damit ich mir nicht direkt den teuren ADC zerschieße, wenn das 
Eingangssignal doch mal (deutlich) aus den Grenzen läuft...

> Vielleicht schaffst du es auch Single Supply zu fahren somit
> kannst du dir jede menge Ärger ersparen.
Das würde ich sehr gerne, aber selbst wenn ich einen Rail-to-Rail-OpAmp 
nehme, der das Signal bis zu den Versorgungsspannungen verstärken kann, 
habe ich mit den Nichtlinearitäten im Bereich der Rails zu kämpfen (man 
möge mich in diesem Punkt korrigieren).

> Normalerweise reicht eine Strombegrenzung mit einen Widerstand aus.
> Fragt sich nur wie stark das dein Signal Dämpft und ob du dir
> nicht hier wieder einen ungewollten Tiefpass baust.
Okay, dies könnte man vielleicht durch PSpice-Simulationen oder 
schlimmstenfalls Messungen am Prototypen testen...

> Wählst ja nicht Ohne Grund einen 18 Bit ADC wenn ich das richtig
> verstanden habe.
Nein, ich bin ja nicht größenwahnsinnig. Es sind "nur" 16-Bit.

> Im Datenblatt ist ein Maximaler Strom bei I- oder I+ zu GND
> mit +-130mA angegeben. Begrenze diesen Strom einfach und
> schon wirst du kein Problem haben ( denke ich )
> Ich bin mir dabei nicht ganz sicher aber vielleicht antworten
> noch andere hier.
Schön wärs', wenn es mit einem simplen Widerstand funktionieren würde. 
Der AD-Wandler kostet aber 25 Euro und es wäre schön, wenn der nicht 
gleich beim ersten Flohhusten (was im Prüfstandsumfeld bestimmt nichts 
ungewöhnliches ist) über den Jordan geht ;-)

> Hast dir was ordentliches Vorgenommen :)
Man wächst an seinen Aufgaben. ;-)

Gruß
Daniel

Autor: T. C. (tripplex)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit der Linearität vom ADC selber bin ich mir gar nicht mal so
sicher ( nicht nachgeschaut ) bei den ADCs in den AVRs
zum Beispiel ist es so gewesen das bei einer Differentiellen
Messung 2 Bits flöten gegangen sind, kann sein das ich mich
gerade aber ziemlich täusche.

Ich kenne mich mit der Thematik nicht so gut aus versuch aber
so viel zu den Thema zu sagen wie ich nur kann.
Ich selber plane was mit einen 12 Bit ADC aber 16 Bit spielt
in einer völlig anderen Liga.

Wird schon funktionieren mit den Strombegrenzen.
Du darfst diese Dioden nur nicht überlasten dann
ist alles gut. Schau mal im Datenblatt unter "Analog Inputs"
da steht eine menge beschrieben, inklusive Ersatzsschaltbild
der ADC Eingangsstufe.


Gute Nacht!

Autor: X- Rocka (x-rocka)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Piezo-Beschleunigungsaufnehmer? 400kSps?

das geht einfacher:

nimm einen I2S Audio ADC mit 24bit / 96k, 100k, oder 192k/200kHz.
Beschaltung davor entnimm diversen Application Notes.
Hat wohl beste Auflösung, SNR, THD, UND macht am wenigsten Aliasing 
Probleme.

gute Audio ADCs:
TI
Crystal
AKM

Überspannungsschutz:
- direkt am Sensor Eingang
- letzen OPV vorm ADC mit selber Spannung wie ADC versorgen
(=> single supply, RRIO)

Außerdem in die letzte Stufe TP 2. Ordnung und Pegelwandlung einbauen.
geht ganz einfach mit nem invertierenden OP.
mehr wird nicht verraten! :)

PS: Signalkonditionierung und ADC von Beschleunigungsaufnehmern betreibe 
ich seit 10 Jahren mit Audio ADC

PS2: äh, moment, direkt mit uC den ADC treiben? dafür habe ich immer 
CPLDs/FPGA genutzt...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.