Hallo alle zusammen, ich bin gerade auf der Suche nach einem passenden AD-Wandler für mein Projekt und wollte fragen, ob sich hier jemand damit auskennt und mir ein paar Tipps geben kann, auf was ich achten sollte. Was meine Anforderungen sind: 2 Kanäle simultan, 320kSpS, Auflösung 12bit Ich habe gesehen, dass die meisten AD-Wandler ein eigenes Businterface zum Anschließen haben. Muss ich dort irgendwie bei der Samplerate aufpassen, dass die zu gewandelten Werte im Schluss mit weggeschickt sind? Oder reicht mir rein die Suche nach einem Wandler, der meine drei Anforderungen erfüllt.
Welche Antwort erwartest Du? Irgendein Interface werden die wohl haben müssen und irgendwas wirst Du dabei wohl oder übel beachten müssen. Datenblatt lesen hilft da ganz ungemein. 2x12x320.000 = 8Mbit muss das Interface packen.
Welchen Eingangs-Spannungsbereich, Betriebs-pannungsbereich, Temperatur-bereich, interne oder exteren Referenz, Bus-Interface (Parallel, seriell, i2c, SPI) hätten wir denn gerne?
Also Temperaturbereich ist eigentlich egal. Die Spannung die ich abtasten will liegt bei +-12V. Wobei mit einem invertierenden Addierer dürfte das ja auch kein Problem mehr darstellen. Und vom Interface bin ich auch sehr frei. Also die oben geschriebenen Anforderungen sind fix. Beim Rest bin ich egl sehr flexibel Danke fürs Mithelfen!
Viele der STM32-Controller (und bestimmt andere auch) haben ADCs mit diesen Anforderungen integriert. Wenn du so einen für das Projekt nimmst sparst du dir ein IC und die Bastelei mit dem Interface.
Dr. Sommer schrieb: > Viele der STM32-Controller (und bestimmt andere auch) haben ADCs mit > diesen Anforderungen integriert. Wenn du so einen für das Projekt nimmst > sparst du dir ein IC und die Bastelei mit dem Interface. Wenn Du keine galvanische Trennung benötigst, dann wäre das eine recht einfache Lösung. Benötigst Du aber eine galvanische Trennung, dann ist es meistens einfacher, digitale statt analoge Signale galvanisch zu trennen. Damit benötigst Du einen separaten ADC.
FrageÜberFrage schrieb: > Muss ich dort irgendwie bei der Samplerate aufpassen, dass die zu > gewandelten Werte im Schluss mit weggeschickt sind? Das steht im Datenblatt. > dass die zu gewandelten Werte im Schluss mit weggeschickt sind? In der Regel "schickt" der Wandler da nichts, sondern du musst es abholen. > Wobei mit einem invertierenden Addierer dürfte das ja auch kein Problem > mehr darstellen. Man kann eine negtive Spannung auch mit einem "Spannungsteiler mit Offset" in den positiven Bereich "verschieben": https://www.mikrocontroller.net/articles/Spannungsteiler > 2 Kanäle simultan, 320kSpS, Auflösung 12bit "Simultan" bedeutet hier, dass die beiden zum selben Zeitpunkt sampeln müssen? Ich würde mich da mal einfach bei den einschlägigen Herstellen umsehen: https://www.analog.com/en/parametricsearch/10994#/p193=|11|12|24&p1746=300000|5000000&p3062=|2|7 http://www.ti.com/product/ads8350 http://www.ti.com/product/ADS7853 https://para.maximintegrated.com/en/search.mvp?fam=prec_adc&hide=270&270=Simultaneous%20Sampling
:
Bearbeitet durch Moderator
Es ist ueblich, dass ADC zwischen 0 und der Betriebsspannung, zB 3.3V, oder 5V wandeln, und es daher dem Anwender ueberlassen ist, die signale dahin zu bekommen. Und 300kSample 12 bit, 2 Kanaele ist eine Menge Holz. Was soll damit geschehen ?
Vielen Dank für die konstruktiven Antworten! Würdet ihr dann eher einen Chip mit integriertem ADC wählen, oder ein externes Bauteil nehmen. Eine Anforderung an den Chip wäre, dass die Daten (ca. 80000*12bit=ca 12MByte) abgespeichert werden können und zu einem kontinuierlichen Sampling eine Weitergabe über serielle Schnittstelle (parallel) möglich ist. VG
FrageÜberFrage schrieb: > Eine Anforderung an den Chip wäre, dass die Daten (ca. 80000*12bit=ca > 12MByte) abgespeichert werden können und zu einem kontinuierlichen > Sampling eine Weitergabe über serielle Schnittstelle (parallel) möglich > ist. Hä? Kein ADC hat einen 12 MB Buffer. Die haben typischerweise einen Buffer für genau 1 Samplewert pro Kanal, und wenn du den nicht in (in diesem Fall) 3 µs abholst, hast du Pech gehabt. Der typische µC für eine Anwendung dieser Größenordnung auch nicht. Wo sollen die Daten denn im Endeffekt hin?
Hi. Also die Anforderungen sind nicht direkt an einen AD-Baustein gestellt gewesen, sondern an einen Chip (wie zum Beispiel der STM32, mit integriertem ADC). Sollte ich nur einen einfachen ADC-Baustein nehmen, würde ich einen FPGA oder einen keinen uC, der schnell genug arbeitet und die Speicherung bis zum Weitersenden macht, zwischen hängen. Die ganzen Daten gehen dann an einen Rasp.
FrageÜberFrage schrieb: > Die ganzen Daten gehen dann an einen Rasp. Wozu brauchst du dann den riesigen Zwischenspeicher? Übertrage die Daten doch schneller per USB an den R-PI. So viel Speicher geht sinnvoll nur per SDRAM, und das macht alles komplizierter, egal ob uC oder FPGA. 80000×12bit sind übrigens 120kByte, nicht 12 MByte. Falls also 120kByte reichen ginge u.a. ein STM32F407VG; der hat USB, schnelle ADC und 192kByte SRAM. Da bräuchtest du praktisch nichts mehr an externen Komponenten außer Quarz, Stützkondensatoren und USB-Buchse (und OPAMP?). Falls es doch 12 MB sind, könnte es klappen die Daten live per USB zu streamen; falls nicht braucht man noch einen USB HS (ULPI) Transceiver, damit geht es. Vermutlich immer noch einfacher als SDRAM. Vielleicht gibt es auch eine Möglichkeit so einen ADC direkt am dem PI anzubinden per QSPI oder so, die Frage wäre ob man das Echtzeit technisch mit Linux hinbekommt.
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.