M5-int ADC: Unterschied zwischen den VersionenAus Attraktor Wiki
Version vom 18. Mai 2020, 16:47 UhrVon Peter (peter@attraktor.org) Bilderprefix: M5-HW-iADC-... InhaltsverzeichnisÜbersichtDem internen ADC des ESP32 geht der Ruf voraus, dass er ziemlich unbrauchbar sein soll. Im Datenblatt sind zum ADC folgende Daten zu finden:
Es ist dort auch von der großen Ungenauigkeit zwischen verschiedenen Chips von +- 6% die Rede und es wird darauf hingewiesen, dass die Esprif-IDE Methoden zur Kompensation zur Verfügung stellt. Inwieweit die Kompensationsmethoden in die Programmierung der MicroPython und Blockly Elemente eingeflossen sind ist mir nicht bekannt. Meine MotivationDa ich auf der Suche nach einer einfachen Möglichkeit war die Temperatur eines Leistungs-MOS-Fet zu überwachen, hat es mich interessiert, ob dieser ADC zusammen mit einem NTC dazu in der Lage ist. Dazu habe ich ein kleines Programm mit UIFlow-Blockly geschrieben, das den Wert des ADC ausliest daraus einen maximalen und minimalen Wert ermittelt und ggf. speichert. Weiterhin wird die Summe aller Mesungen gebildet und daraus der Mittelwert ermittelt. Schließlich wird der Mittelwert, der Max- und der Min-Wert und die Anzahl der Durchläufe auf dem Display des M5-StickC angezeigt. Damit habe ich erste Erkenntnisse gewonnen. Leider kann ich dieses Programm hier nicht veröffentlichen, weil ich es in der OnLine-Version von UIFlow entwickelt habe, der Rechner zwischen drinnen abgestürtzt ist und ich natürlich noch nichts gespeichert hatte - weil ich ja noch in der Entwicklung war. Ich weiss, ich verdiene kein Mitgefühl - ich habe ganz einfach selber schuld! Zum Glück hatte ich es schon im M5StickC gespeichert, so dass ich weiterhin damit arbeiten konnte. Die Ergebnisse der Messungen mit einem Vorteiler von 6dB:
Fazit der EinzelmessungenDer ADC des ESP32 macht seinem Schlechten Ruf alle Ehre! Die Abweichung einzelner Messungen zwischen fast 3% am oberen Ende des Messbereichs und mit bis zu 25% am unteren Ende sind schlechter als die eines alten Drehspulmessgerätes mit 1,5% am Skalenendwert. Nun gibt es aber ein Licht am Horizont, wenn man die Mittelwerte der Messungen betrachtet. Hier sind die Abweichungen erheblich geringer. Deshalb habe ich aus den Werten der ersten Tabelle eine weitere angefertigt, die die Abweichung der Mittelwerte von den tatsächlichen Spannungswerten ausgibt:
Fazit der kumulierten MessungenDiese Tabelle bestätigt die Annahme, dass mit kumulierten Messungen die Genauigkeit deutlich erhöht werden kann und extremen Schwankungen der Messwerte gemildert werden können. Bei der Spannung von 99,65 mV treten zwar noch immer Abweichungen 7,5% auf, aber alle Spannungen > 256 mV werden mit einer Genauigkeit besser 0,5% erkannt. Damit lässt sich arbeiten. Nun interessiert noch der Bereich zwischen 99,65 mV und 256 mV. Messung des Übergangsbereichs1 2 3 4 5 6
Fazit des ÜbergangsbereichsWie schnell ist der ADCZusammenfassungZuerst möchte ich betonen, dass die hier vorgestellten Messungen mit einem M5-StickC mit der Seriennummer ... gemacht wurden und deshalb auch nur für diesen stimmen. Ich weiss nicht, wie es sich bei anderen Exemplaren verhält. Da Esprif selbst im Datenblatt Exemplarstreuungen +- 6 % angibt, ist damit zurechnen, dass entsprechende Abweichungen auftreten werden.
Wie kommt die große Streuung der Messwerte zustande? |