Forum: Mikrocontroller und Digitale Elektronik Hohe Anzahl an Analogquellen wandeln


von Nils (Gast)


Lesenswert?

Hallo,

ich stehe vor dem Problem, dass ich eine recht hohe Anzahl an 
Spannungsquellen habe, die ich analog wandeln möchte, alle direkt 
nacheinander.

Im Moment suche ich nach einer Möglichkeit, ein IC mit mehreren Wandlern 
an Bord zu haben, und diese dann mittels Kaskadierung über SPI zu 
verwenden.
Leider finde ich auf Teufel komm raus keinen einzigen ADC Chip, welcher 
sich vernünftig kaskadieren lässt.

Eine andere Idee wäre einen 8 Bit parallel ADC zu verwenden und mittels 
X:1 Multiplexer (8:1 wäre wirtschaftlich) die Spannung zu erfassen und 
dann über ein Schieberegister einzuholen.

Den µC internen ADC möchte ich eigentlich ausschließen, da die 
Leitungsdistanz zu groß wäre und es sowieso zuviele Leitungen wären.

Kennt jemand einen Chip mit dem ich 30,40+ Quellen wandeln kann, mittels 
Kaskadierung.
Alle Chips mit DataIn verwenden diesen nur für die Konfiguration der 
Messung, Kaskadierung so nicht möglich.

mfg
Nils

von c-hater (Gast)


Lesenswert?

Nils schrieb:

> ich stehe vor dem Problem, dass ich eine recht hohe Anzahl an
> Spannungsquellen habe, die ich analog wandeln möchte, alle direkt
> nacheinander.
>
> Im Moment suche ich nach einer Möglichkeit, ein IC mit mehreren Wandlern
> an Bord zu haben, und diese dann mittels Kaskadierung über SPI zu
> verwenden.

Was denn nun? Sequentiell wandeln oder doch eher parallel? Wenn 
parallel, was willst du denn da noch "kaskadieren"?

> Leider finde ich auf Teufel komm raus keinen einzigen ADC Chip, welcher
> sich vernünftig kaskadieren lässt.

Wenn du einen Chip hast, mit dem du per SPI kommunizieren kannst, 
brauchst du doch auch nix zu kaskadieren. Nur eine SlaveSelect-Leitung 
pro Chip. Da du sowieso immer nur mit einem zu einer Zeit reden kannst, 
könnte man die Zahl der dafür nötigen Portpins verringern, indem man 
einen "1 aus N" Decoder verwendet. 1 aus 8, 1 aus 10 und eins aus 16 
sind Standardware. Mit 4 mal 1 aus 10 kommst du auf mit 8 Portpins auf 
40 SlaveSelect-Leitungen. Dazu noch die drei Strippen für den SPI-Bus 
und fertig ist der Kram.

> Eine andere Idee wäre einen 8 Bit parallel ADC zu verwenden und mittels
> X:1 Multiplexer (8:1 wäre wirtschaftlich) die Spannung zu erfassen und
> dann über ein Schieberegister einzuholen.

Ginge auch, wäre aber wesentlich aufwendiger. Und nicht unbedingt 
besser.

> Den µC internen ADC möchte ich eigentlich ausschließen, da die
> Leitungsdistanz zu groß wäre und es sowieso zuviele Leitungen wären.

Analoge Signale kann man sowohl verstärken als auch multiplexen. 
Übrigens: Probleme mit der Leitungslänge kann es natürlich auch bei den 
digitalen Signalen eines SPI-Bus geben.

von Nils (Gast)


Lesenswert?

c-hater schrieb:
> Wenn du einen Chip hast, mit dem du per SPI kommunizieren kannst,
> brauchst du doch auch nix zu kaskadieren. Nur eine SlaveSelect-Leitung
> pro Chip. Da du sowieso immer nur mit einem zu einer Zeit reden kannst,
> könnte man die Zahl der dafür nötigen Portpins verringern, indem man
> einen "1 aus N" Decoder verwendet. 1 aus 8, 1 aus 10 und eins aus 16
> sind Standardware. Mit 4 mal 1 aus 10 kommst du auf mit 8 Portpins auf
> 40 SlaveSelect-Leitungen. Dazu noch die drei Strippen für den SPI-Bus
> und fertig ist der Kram.

Dieses ganze "1 aus N" oder 40 CS Leitungen zu verwenden sehe ich als 
realtiv unpraktikabel an. Außerdem ist der Platz hierfür begrenzt 
(Platine darf nicht mehr als 3,4 breit sein). Ein kaskadierbarer ADC 
wäre das einfachste.

Im Moment würde ich für jeweils 8 Quellen 3 ICs verwenden. Multiplexer 
-> ADC -> Schieberegister. CS,CLK,DO,DI und 3 Steuerleitungen für den 
Multiplexer und das ganze ist beliebig kaskadierbar. Aber vielleicht 
kann ich mir ja noch das ein oder andere hier sparen durch praktischere 
Bausteine.

Und Leitungslänge sehe ich kein Problem, DO treibt sich die Kaskadierung 
gegenseitig und CS und CLK wird mit Treiber verstärkt an entsprechenden 
Stellen.

von Viktor N. (Gast)


Lesenswert?

Ich wuerde eine Handvoll Mega8 parallel laufen lassen, jeder wandelt 8 
Kanaele hintereinander.

von a2i2c (Gast)


Lesenswert?

So gut wie jeder Hersteller von A/D-Wandlern hat auch solche mit 
integriertem MUX.
z.B. MCP3208 (12bit, 8-Kanal, 100ksps, SPI)
http://ww1.microchip.com/downloads/en/DeviceDoc/21298e.pdf

Welche davon in Frage kommen hängt in erster Linie von deinen 
Anforderungen an den Wandler ab.

> Den µC internen ADC möchte ich eigentlich ausschließen, da die
> Leitungsdistanz zu groß wäre.
Wie passt diese Aussage zu einem A/D mit Analog-MUX?

Wenn schon, dann einen einzelnen Wandler direkt am Signal (SPI oder I2C 
+ CS-Leitung über 1:n Decoder am µc wie von c-hater vorgeschlagen). Ob 
das funktioniert und welche Treiber eingesetzt werden können ist in 
erster Linie von den Leitungslängen und Übertragungsraten abhängig.

> Außerdem ist der Platz hierfür begrenzt
Wenn du keinen Platz für 40+3 digitale Signale hast, wird es mit 40 
Analogen auch nicht besser aussehen.


Du solltest dein eigentliches Vorhaben genauer darlegen.
Was sind das für Signale, welche Distanzen, Auflösung, Genauigkeit, 
Potentialtrennung erforderlich...?

von Christian B. (casandro)


Lesenswert?

Also wenn die Qualität der Wandler in einem ATMega reichen, sind einige 
von denen vermutlich die günstigste Lösung. Versorge alle mit einem Takt 
und/oder verwende die USARTs zur Kommunikation.

Damit kommst Du mit einem Chip pro 8 Kanäle aus.

von Kevin K. (nemon) Benutzerseite


Lesenswert?

Kommt ein ADC im BGA-Gehäuse in Frage? -> DDC264

von MaWin (Gast)


Lesenswert?

Ein paar CD4051 und deren Ausgänge an die uC internen Wandler leiten, 
erlaubt ohne Aufwnad 64 Analogquellen.

von Clemens S. (zoggl)


Lesenswert?


von Arc N. (arc)


Lesenswert?

Nils schrieb:
> Hallo,
...
> Den µC internen ADC möchte ich eigentlich ausschließen, da die
> Leitungsdistanz zu groß wäre und es sowieso zuviele Leitungen wären.

Die wichtigsten Angaben fehlen...
Welche Abtastrate? Welche Eingangsspannungen? Welche Auflösung? Welche 
Genauigkeit? Wie langzeitstabil? Welcher Temperaturbereich? Batterie- 
oder Netzbetrieb? usw. usf.

Wenn's langsam sein darf bspw. LTC2497/2499 16 Single-Ended-Eingänge/8 
differentielle, 16-Bit bzw. 24-Bit, MUX-Ausgänge rausgeführt falls das 
Signal noch gefiltert, verstärkt, gepuffert werden soll, I²C 
(27-Adressen einstellbar), synchronisierbar, 5 mm x 7 mm

Ansonsten gäbe es bspw. die ADG725/731 Multiplexer 32 auf 1 bzw. 2x (16 
auf 1), ansteuerbar per SPI

von Nils (Gast)


Lesenswert?

Arc Net schrieb:
> Die wichtigsten Angaben fehlen...
> Welche Abtastrate? Welche Eingangsspannungen? Welche Auflösung? Welche
> Genauigkeit? Wie langzeitstabil? Welcher Temperaturbereich? Batterie-
> oder Netzbetrieb? usw. usf.
>
> Wenn's langsam sein darf bspw. LTC2497/2499 16 Single-Ended-Eingänge/8
> differentielle, 16-Bit bzw. 24-Bit, MUX-Ausgänge rausgeführt falls das
> Signal noch gefiltert, verstärkt, gepuffert werden soll, I²C
> (27-Adressen einstellbar), synchronisierbar, 5 mm x 7 mm
>
> Ansonsten gäbe es bspw. die ADG725/731 Multiplexer 32 auf 1 bzw. 2x (16
> auf 1), ansteuerbar per SPI

Die wichtigsten Angaben fehlen, weil die Auflösung beliebig sein darf, 
Geschwindigkeit reicht langsam, usw. Wald und Wiesen.

Die Lösung mit Atmega8 ist denke ich wirklich am einfachsten.

von Peter R. (pnu)


Lesenswert?

Arc Net schrieb:
> Die wichtigsten Angaben fehlen...
> Welche Abtastrate? Welche Eingangsspannungen? Welche Auflösung? Welche
> Genauigkeit? Wie langzeitstabil? Welcher Temperaturbereich? Batterie-
> oder Netzbetrieb? usw. usf.
Da platzt mir langsam der Kragen!!!

Das kann man doch nicht gleich sagen! Oh Nein.

Da wird ja der thread viel zu kurz.

Und, vor Allem, es ist anscheinend um so schöner je öfter man ein "ja, 
aber da muss auch noch, weil..." nachschieben kann.

Selbstverständlich ist es immer ein hochgeheimes Projekt.

Ja habt Ihr irgendwelche Ideen geklaut? oder macht Ihr militärische 
Entwicklungen? Oder braucht Ihr es, um Drogen herzustellen?

Am Schluss, falls doch eine brauchbare Antwort kam, fehlt dann jedes 
Danke oder gar eine Mitteilung, was zum Gelingen beitrug.

PS. Analogquellen wandeln?  Übersetze das einmal in korrekte Sprache.
Schon ab dem Punkt sollte man auf solche threads keinen Beitrag 
verschwenden.

von Spotti (Gast)


Lesenswert?

Nils schrieb:
> Die wichtigsten Angaben fehlen, weil die Auflösung beliebig sein darf,
> Geschwindigkeit reicht langsam, usw. Wald und Wiesen.

Na das macht es doch einfach.
5x 74HC165 kaskadieren und schon hat einen 40 Kanal 1 Bit Wandler.

Die Kriterien der obigen Aussage sollten auch sonst erfüllt sein.

von Wandler (Gast)


Lesenswert?

Wie wandeln?
U nach I?
+ nach -?
Beliebige Auflösung?
1..24 Bit?
Kein Anforderung, aber alle Lösungsversuche falsch.
Warum machst das als Profi nicht selbst?

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.