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
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.
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.
Ich wuerde eine Handvoll Mega8 parallel laufen lassen, jeder wandelt 8 Kanaele hintereinander.
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...?
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.
Ein paar CD4051 und deren Ausgänge an die uC internen Wandler leiten, erlaubt ohne Aufwnad 64 Analogquellen.
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
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.
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.
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.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.