Wie würde ich ein analoges Signal messen, das sowohl positive als auch negative Spannungen an einem analogen Arduino-Pin mit einer hohen Abtastrate hat?

Ich habe ein Signal, das zwischen -70 mV und 50 mV schwankt. Wie würde ich das Arduino Mega dazu bringen, dies auf einem analogen Pin mit einer hohen Abtastrate zu lesen? Letztendlich versuche ich, die Daten in Echtzeit grafisch darzustellen, damit es so aussieht.

Geben Sie hier die Bildbeschreibung ein

Ich habe mir die zuvor auf EESE gepostete Frage zum Lesen positiver / negativer Spannungen angesehen und sie enthält Informationen zu einem sich langsam bewegenden Signal im Bereich von -55 V bis 55 V. Ich bezweifle jedoch, dass diese Lösung auf meine Situation zutreffen würde (Signal mit zwei Widerständen dämpfen und dann den Bereich durch Verwendung einer Summierschaltung für Operationsverstärker ausgleichen).

Versuchen Sie es mit einem Instrumentenverstärker wie dem INA282 (er ist als Strommessverstärker konzipiert, aber alles, was er wirklich tut, ist, das Signal um einen festen Betrag zu verstärken und es schließlich so zu pegeln, dass es um eine Eingangsspannung zentriert ist).
Sie würden die Erfassung puffern und in Pseudo-Echtzeit plotten
Nur neugierig. Dein Text sagt mV . Ihr Diagramm zeigt μ v . Das sind nur drei Größenordnungen Unterschied. Welches ist es?

Antworten (1)

  1. Bei Verwendung von Standard-Arduino-Bibliotheken werden Sie Probleme mit der Abtastung von über 10000 Abtastungen pro Sekunde haben.

  2. Wenn Sie es schaffen, schnell genug zu proben, brauchen Sie einen Ort, an dem Sie die erfassten Daten ablegen können. Speicher ist bei Arduinos notorisch knapp, und die andere eingebaute Option ist die serielle Schnittstelle, um ihn auf einen PC zu übertragen. Sie können auch versuchen, es auf eine SD-Karte zu schreiben. Ich weiß nicht, wie die Bibliotheken dafür aussehen oder ob es einen leicht verfügbaren SD-Kartenadapter für Arduinos gibt.

  3. Die Arduinos haben einen 10-Bit-Analog-Digital-Wandler. Unter der Annahme einer 5-V-Referenz sprechen Sie von 5-mV-Schritten. Für den von Ihnen beschriebenen Bereich (120 mV) würden Sie nur 24 von 1023 Schritten vom ADC verwenden. Sie benötigen einen Verstärker, der mit etwa 30 multipliziert und dem Ergebnis 2,5 V hinzufügt.

Wenn "weniger als 10 kHz" Ihrer Definition von "hoher Abtastrate" entspricht und Sie eine kleine Platine für den Verstärker bauen können, können Sie möglicherweise etwas Nützliches tun.

Das Problem mit Standard-Arduino-Bibliotheken für ADC ist eine inkonsistente Abtastfrequenz. Wenn Sie Interrupts und den kontinuierlichen ADC-Modus einbeziehen, können Sie schneller arbeiten. Für mein Projekt musste ich Daten an den PC senden und konnte auf eine Abtastrate von etwa 50 kHz gehen, die durch die maximale Baudrate für den integrierten RS232-zu-uart-Chip begrenzt war.