Forum: Mikrocontroller und Digitale Elektronik Raspberry Pi Pico und ADC unbrauchbar?


von Matze T. (gruetzwurschd)


Lesenswert?

Hallo Zusammen,

aktuell arbeite ich an einem Hobbyprojekt wo es darum geht über ein 
Fusspedal einen Servomotor an anzusteuern.

Ich bin einfach davon angetan die Geschichte mittels micropython 
anzusteuern (ist mal ne nette Abwechslung sich mal nicht um jedes 
Register kümmern zu müssen).

Wie dem auch sei: schon zu Anfang des Projekts ist mir aufgefallen, dass 
der ADC ziemlich springt / rauscht. Habe mich aber erstmal nicht weiter 
darum gekümmert, da ich alles irgendwie freiliegend an einem 
Schaltbetzteil vorbei hab rumliegen lassen.

Mittlerweile bin ich aber weiter und es ist zum Teil so extrem, dass wir 
hier von 1-3% oder mehr reden. Das hat zur Folge, dass besagter Motor 
von selbst los läuft, oder die Drehzahl massiv eiert.

Ich hab mal den Schaltplan angesehen und dort steht, für eine bessere 
Genauigkeit soll man eine Shuntdiode an ADC_Ref hängen. Nach weiterer 
Recherche hab ich gelesen, dass der ganze RP2040 Microcontroller einfach 
Müll ist, was den ADC angeht, und dieser immer ungenau ist.

Kennt jemand das Problem oder hat einen Tip was man relativ einfach und 
kostengünstig tun könnte um hier besser zu werden?
Ich habe überlegt ob ich einfach einen externen i2c ADC verwenden soll. 
Aber das ist mir dann doch zu teuer und aufwändig.

Ansonsten wäre noch die Möglichkeit auf einen Esp32 auszuweichen.

Vielleicht hat ja jemand nen guten Tip..

von N. M. (mani)


Lesenswert?

Hast du das normale Raspi Pico Board oder dem nackten Chip?
Scheinbar spuckt beim Board der Schaltregler ziemlich rum. ADC Ref wird 
nur sehr rudimentär gefiltert. Also entweder besser filtern oder eine 
vernünftige Referenzspannungsquelle verwenden.

Matze T. schrieb:
> Ansonsten wäre noch die Möglichkeit auf einen Esp32 auszuweichen.

Von dem brauchst du auch nichts erwarten. Der ist auch ziemlich 
schlecht.

von Gerd E. (robberknight)


Lesenswert?

Wie sieht denn Deine Schaltung vor dem ADC aus? Also konkret was für 
eine Impedanz hat Deine Quelle?

Jeder ADC hat etwas Leckstrom und wenn Deine Quelle im Vergleich eine 
hohe Impedanz hat, misst der ADC nur noch Mist. Es gibt verschiedene 
Lösungsmöglichkeiten dafür, z.B. ein Opamp als Puffer oder ein 
Kondensator. Letzterer hat aber den Effekt eines Tiefpass-Filters.

von Matze T. (gruetzwurschd)


Lesenswert?

N. M. schrieb:
> Hast du das normale Raspi Pico Board oder dem nackten Chip?
> Scheinbar spuckt beim Board der Schaltregler ziemlich rum. ADC Ref wird
> nur sehr rudimentär gefiltert. Also entweder besser filtern oder eine
> vernünftige Referenzspannungsquelle verwenden.
Hab das Pico-Board. Hätte vielleicht irgendwo nen 3,3v Spannungsregler 
rumliegen. Aber das kann doch nicht im Sinne des Erfinders sein, dass 
man da noch nen Spannungsregler drauf basteln muss.


> Matze T. schrieb:
>
>> Ansonsten wäre noch die Möglichkeit auf einen Esp32 auszuweichen.
>
> Von dem brauchst du auch nichts erwarten. Der ist auch ziemlich
> schlecht.
Meine Ansprüche sind aber auch nicht wirklich hoch.

von MaWin (Gast)


Lesenswert?

Matze T. schrieb:
> Ansonsten wäre noch die Möglichkeit auf einen Esp32 auszuweichen.

Der ADC des Esp32 hat eine stark nichtlineare Kennlinie und diese 
unterscheidet sich auch noch von Exemplar zu Exemplar.

Matze T. schrieb:
> dass der ADC ziemlich springt / rauscht

Bist du dir sicher, dass deine Masseanbindungen korrekt sind?
Wie sieht es mit der Versorgungsspannung aus, wenn der Motor loslegt?
Rauscht der ADC auch, wenn du alle Peripherie (insbesondere den Motor) 
abklemmst?

von Matze T. (gruetzwurschd)


Lesenswert?

Gerd E. schrieb:
> Wie sieht denn Deine Schaltung vor dem ADC aus? Also konkret was
> für eine Impedanz hat Deine Quelle?
> Jeder ADC hat etwas Leckstrom und wenn Deine Quelle im Vergleich eine
> hohe Impedanz hat, misst der ADC nur noch Mist. Es gibt verschiedene
> Lösungsmöglichkeiten dafür, z.B. ein Opamp als Puffer oder ein
> Kondensator. Letzterer hat aber den Effekt eines Tiefpass-Filters.

Da hängt besagtes Pedal dran. Da sind 2 Potis in Reihe drin. Waren glaub 
10k. Liegt auf Masse und die 3,3V vom Board. Der Abgriff hängt am ADC.

von Matze T. (gruetzwurschd)


Lesenswert?

MaWin schrieb:
> Matze T. schrieb:
>
>> Ansonsten wäre noch die Möglichkeit auf einen Esp32 auszuweichen.
>
> Der ADC des Esp32 hat eine stark nichtlineare Kennlinie und diese
> unterscheidet sich auch noch von Exemplar zu Exemplar.

Wäre zwar auch kacke aber weniger dramatisch in meinem Fall.

> Matze T. schrieb:
>
>> dass der ADC ziemlich springt / rauscht
>
> Bist du dir sicher, dass deine Masseanbindungen korrekt sind?
> Wie sieht es mit der Versorgungsspannung aus, wenn der Motor loslegt?
> Rauscht der ADC auch, wenn du alle Peripherie (insbesondere den Motor)
> abklemmst?

Das Teil rauscht immer, auf wenn der Motor abgeklemmt ist.

von MaWin (Gast)


Lesenswert?

Matze T. schrieb:
> Wäre zwar auch kacke aber weniger dramatisch in meinem Fall.

naja dann probier es doch einfach mal aus. So ein ESP32 kostet nur 
Kleingeld.

von Thomas H. (thomash2)


Lesenswert?

Denke ich habe vor einiger Zeit irgendwo die Information aufgefasst wo 
die Spannungsversorgung für den ADC / die Referenzspannung am 
Schaltregler hängt die auch noch ziemlich gestört sein soll.
Um ein besseres Ergebnis beim ADC zu bekommen sollte man dort wohl einen 
anderen Spannungsregler (nen linearen Spannungsregler) verwenden.
Ich selber verwende den Pico zur Zeit nicht.

von Low impedance source (Gast)


Lesenswert?

1. Potis und v ref mit linear regler versorgen.
2. Potis Ausgang mit nem rail to rail opv buffer.
3. Tüchtig Mitteln.

von Matze T. (gruetzwurschd)


Lesenswert?

Nur nochmal ne dumme Frage:
Einfach nen dickeren Kondensator zwischen Gnd und 3v3 hängen würde 
nichts bringen?

von PICklig (Gast)


Lesenswert?

Matze T. schrieb:
> Ich bin einfach davon angetan die Geschichte mittels micropython
> anzusteuern (ist mal ne nette Abwechslung sich mal nicht um jedes
> Register kümmern zu müssen).
>
> Wie dem auch sei: schon zu Anfang des Projekts ist mir aufgefallen, dass
> der ADC ziemlich springt / rauscht. Habe mich aber erstmal nicht weiter
> darum gekümmert, da ich alles irgendwie freiliegend an einem
> Schaltbetzteil vorbei hab rumliegen lassen.
>
> Mittlerweile bin ich aber weiter und es ist zum Teil so extrem, dass wir
> hier von 1-3% oder mehr reden. Das hat zur Folge, dass besagter Motor
> von selbst los läuft, oder die Drehzahl massiv eiert.
>
> Ich hab mal den Schaltplan angesehen und dort steht, für eine bessere
> Genauigkeit soll man eine Shuntdiode an ADC_Ref hängen. Nach weiterer
> Recherche hab ich gelesen, dass der ganze RP2040 Microcontroller einfach
> Müll ist, was den ADC angeht, und dieser immer ungenau ist.
>
> Kennt jemand das Problem oder hat einen Tip was man relativ einfach und
> kostengünstig tun könnte um hier besser zu werden?
> Ich habe überlegt ob ich einfach einen externen i2c ADC verwenden soll.
> Aber das ist mir dann doch zu teuer und aufwändig.
>
> Ansonsten wäre noch die Möglichkeit auf einen Esp32 auszuweichen.
>
> Vielleicht hat ja jemand nen guten Tip..

Nimm einfach einen uralten billigen 8 bit PIC mit einem
10 bit ADC.
Da rauscht nicht mal das letzte Bit.
Selbst wenn er in einem Breadboard steckt.
Toll nicht?

> sich mal nicht um jedes Register kümmern zu müssen
Hochmut kommt vor dem Fall.

Der ADC vom ESP32 ist übrigens auch nicht besser.

Schiess diesen Mikropythonmüll in die Sonne.
So leistet er wenigstens einen Beitrag zur Kernfusion.

von Stefan P. (form)


Lesenswert?

Matze T. schrieb:
> Kennt jemand das Problem oder hat einen Tip was man relativ einfach und
> kostengünstig tun könnte um hier besser zu werden?

https://forums.raspberrypi.com/viewtopic.php?t=330208

von m.n. (Gast)


Lesenswert?

Matze T. schrieb:
> Mittlerweile bin ich aber weiter und es ist zum Teil so extrem, dass wir
> hier von 1-3% oder mehr reden.

Nicht wir sondern Du redest von diesen Prozentpunkten.
Du kannst davon ausgehen, daß die entdeckten "Fehler" voll von Deiner 
unbekannten Schaltung kommen.
Am Pico-Pi, dessen Aufbau und dessen Beschaltung liegt es definitiv 
nicht, wobei unsachgemäßer Gebrauch nie ausgeschlossen werden kann.

von P.S. (Gast)


Lesenswert?

Matze T. schrieb:
> N. M. schrieb:
>> Hast du das normale Raspi Pico Board oder dem nackten Chip?
>> Scheinbar spuckt beim Board der Schaltregler ziemlich rum. ADC Ref wird
>> nur sehr rudimentär gefiltert. Also entweder besser filtern oder eine
>> vernünftige Referenzspannungsquelle verwenden.
> Hab das Pico-Board. Hätte vielleicht irgendwo nen 3,3v Spannungsregler
> rumliegen. Aber das kann doch nicht im Sinne des Erfinders sein, dass
> man da noch nen Spannungsregler drauf basteln muss.

Der Schaltregler RT6150 auf dem Pico hat einen "PS"-Pin, der mit GPIO23 
des RP2040 verbunden ist. Standardmäßig befindet sich der RT6150 im 
"Power Save Mode". Zieht man den GPIO23 hoch, wird der Regler im 
PWM-Mode betrieben, was den Ripple verkleinert.

Demo hier:
https://www.youtube.com/watch?v=aW_Nh6QaNS0
3:34 und 6:35

von Matze T. (gruetzwurschd)


Lesenswert?

P.S. schrieb:
> Matze T. schrieb:
>
>> N. M. schrieb:
>>> Hast du das normale Raspi Pico Board oder dem nackten Chip?
>>> Scheinbar spuckt beim Board der Schaltregler ziemlich rum. ADC Ref wird
>>> nur sehr rudimentär gefiltert. Also entweder besser filtern oder eine
>>> vernünftige Referenzspannungsquelle verwenden.
>>
>> Hab das Pico-Board. Hätte vielleicht irgendwo nen 3,3v Spannungsregler
>> rumliegen. Aber das kann doch nicht im Sinne des Erfinders sein, dass
>> man da noch nen Spannungsregler drauf basteln muss.
>
> Der Schaltregler RT6150 auf dem Pico hat einen "PS"-Pin, der mit GPIO23
> des RP2040 verbunden ist. Standardmäßig befindet sich der RT6150 im
> "Power Save Mode". Zieht man den GPIO23 hoch, wird der Regler im
> PWM-Mode betrieben, was den Ripple verkleinert.
> Demo hier:
> https://www.youtube.com/watch?v=aW_Nh6QaNS0
> 3:34 und 6:35

Hatte ich gestern schon probiert und keine Besserung festgestellt.
Hab aber das Thema weiter angesehen. Es gibt sogar Messungen im Netz die 
besagen wenn man den Pico im PWM Mode betreibt alles genauer wird, bis 
auf die ADC Genauigkeit

von Stefan F. (Gast)


Lesenswert?

Matze T. schrieb:
> Ansonsten wäre noch die Möglichkeit auf einen Esp32 auszuweichen.

Dessen ADC hat auch keinen guten Ruf.

von Stefan F. (Gast)


Lesenswert?

PICklig schrieb:
> Nimm einfach einen uralten billigen 8 bit PIC mit einem 10 bit ADC.
> Da rauscht nicht mal das letzte Bit.
> Selbst wenn er in einem Breadboard steckt. Toll nicht?

> Der ADC vom ESP32 ist übrigens auch nicht besser.

Keine Ahnung warum du dafür nur "-" Bewertungen bekommen hast. Es stimmt 
doch!

von Jack V. (jackv)


Lesenswert?

Stefan ⛄ F. schrieb:
> Keine Ahnung warum du dafür nur "-" Bewertungen bekommen hast.

Die hat er dafür bekommen, dass er unreflektiert Sachen, die er nicht 
kennt, als Müll bezeichnet. Hätte er nämlich drüber nachgedacht, hätte 
ihm die Erkenntnis kommen können, dass die Frage, ob Micropython drauf 
laufen kann oder nicht, als Kriterium zur Beurteilung des ADC völlig 
ungeeignet ist …

Mal abgesehen davon: woran’s Rauschen des ADC beim Pico liegt, und wie 
man dem entgegenwirken kann, ist doch nun gezeigt worden? Beim Problem 
des TE würde ich daher weiterhin von einem Problem im Aufbau oder/und 
des Konzepts ausgehen. Wird schon seinen Grund haben, warum er dazu 
nichts Genaues schreibt.

: Bearbeitet durch User
von c-hater (Gast)


Lesenswert?

Jack V. schrieb:

> Die hat er dafür bekommen, dass er unreflektiert Sachen, die er nicht
> kennt, als Müll bezeichnet. Hätte er nämlich drüber nachgedacht, hätte
> ihm die Erkenntnis kommen können, dass die Frage, ob Micropython drauf
> laufen kann oder nicht, als Kriterium zur Beurteilung des ADC völlig
> ungeeignet ist …

Hat er wirklich einen kausalen Zusammenhang zwischen der Fähigkeit, 
Mikropython laufen zu lassen und der Qualität des ADC behauptet?

Ich sehe das nirgendwo.

Allenfalls kann ich eine Argumentation in der Richtung erkennen, dass 
typische Mikropython-Benutzer nicht in der Lage sind, IRGENDEINE 
gegebene Hardware optimal zu nutzen.

Und das ist natürlich aus ganz sachlich-objektiven Gründen tatsächlich 
so.

von Jack V. (jackv)


Lesenswert?

c-hater schrieb:
> Ich sehe das nirgendwo.

ich quote es für dich:

PICklig schrieb:
> Schiess diesen Mikropythonmüll in die Sonne.

Da der Kontext des Threads ja der ADC ist, kann’s sich auf nichts 
Anderes beziehen.

c-hater schrieb:
> Allenfalls kann ich eine Argumentation in der Richtung erkennen, dass
> typische Mikropython-Benutzer nicht in der Lage sind, IRGENDEINE
> gegebene Hardware optimal zu nutzen.
>
> Und das ist natürlich aus ganz sachlich-objektiven Gründen tatsächlich
> so.

Ah, ja – Argumente sind also schon wieder aus, so dass man stumpf Leute 
aufgrund der Software, die sie nutzen, beleidigen muss, ja? Du tust mir 
wirklich leid :(

plonk

: Bearbeitet durch User
von Olaf (Gast)


Lesenswert?

> Mal abgesehen davon: woran’s Rauschen des ADC beim Pico liegt, und wie
> man dem entgegenwirken kann, ist doch nun gezeigt worden?

Ganz so einfach ist das nicht. Es ist generell schwierig gute ADC
in MCUs einzubauen. Das ist der Grund wieso man auch externe kaufen 
kann.
Und es ist sicher auch so das Pico und ESP zu den schlimmeren gehoeren.

Aber sehr viel liegt auch am Aufbau und dem Umgang damit. Da ist es 
natuerlich fuer viele einfach zu sagen "Argh, der ADC ist so schlecht" 
anstatt mal in den Spiegel zu schauen. Und wenn man schon wegen sowas im 
Internet um Hilfe sucht, nachdem man das Datenblatt gelesen hat, dann 
sollte man doch wohl auch mal Schaltplan und ein Bild vom Aufbau zur 
verfuegung stellen. Wenn einem das nicht klar ist, dann weiss ich wo ein 
grosser Teil der Probleme sitzt.

Olaf

Beitrag #7144298 wurde von einem Moderator gelöscht.
von N. M. (mani)


Lesenswert?

Die Raspi Foundation schreibt ja selbst
1
12 bit (8.7 ENOB)
Da darf man halt nicht so viel erwarten.

Und das ist mit Sicherheit der Marketing Wert den sie da angeben.

von m.n. (Gast)


Lesenswert?

N. M. schrieb:
> Da darf man halt nicht so viel erwarten.

Aber deutlich mehr als der TO hier meint.
Eine log-Datei (aus der Codesammlung) zeigt die ADC und zugehörigen 
Temperaturwerte eines PT1000. Bis auf die gewollte Temperaturänderung 
wackelt und rauscht da nichts.
https://www.mikrocontroller.net/attachment/551294/PT1000_heiss_und_kalt.txt

von Bauform B. (bauformb)


Lesenswert?

Matze T. schrieb:
> Fusspedal

Potis rauschen auch, von Füßen garnicht zu reden. Das Pedal müsste schon 
mechanisch gut gedämpft sein, damit das nicht stört. OK, ist es 
vielleicht, aber man hat Pferde vor der Apotheke gesehen...

von Gerd E. (robberknight)


Lesenswert?

Matze T. schrieb:
> Gerd E. schrieb:
>> Wie sieht denn Deine Schaltung vor dem ADC aus? Also konkret was
>> für eine Impedanz hat Deine Quelle?
>
> Da hängt besagtes Pedal dran. Da sind 2 Potis in Reihe drin. Waren glaub
> 10k. Liegt auf Masse und die 3,3V vom Board. Der Abgriff hängt am ADC.

Das ist ganz ohne Kondensator schon etwas viel Impedanz. Häng doch mal 
z.B. einen 10µF Kondensator gegen GND mit an den ADC-Eingang. Wie sieht 
es dann mit dem Rauschen aus?

Was Du auch probieren kannst ist zusätzlich von ADC_VREF zu GND noch 
einen größeren Kondensator zu hängen. 2.2µF sind schon auf dem Board, um 
einen deutlichen Effekt zu sehen sollte der also mindestens eine 
Größenordnung größer sein.

von N. M. (mani)


Lesenswert?

m.n. schrieb:
> Aber deutlich mehr als der TO hier meint.

Ich wollte damit sagen dass sich die Fehler halt summieren. Die Gründe 
haben wir hier ja schon gesagt:
1) Schaltnetzteil spuckt von Haus aus in den ADC bzw dessen Ref.
2) Sein Motor und sein Aufbau wird auch noch dazu beitragen. Bilder hat 
er noch keine reingestellt. Wahrscheinlich sieht es wie immer 
katastrophal aus.
3) evtl bringt sein Netzteil mit dem er versorgt auch einfach nur eine 
schlechter Spannung, wer weiß.
4) Und eben, dass man von dem ADC nicht so viel erwarten sollte.

m.n. schrieb:
> Eine log-Datei (aus der Codesammlung) zeigt die ADC und zugehörigen
> Temperaturwerte eines PT1000. Bis auf die gewollte Temperaturänderung
> wackelt und rauscht da nichts.

Der macht in seinem Programm alle 200ms Mal eine Messung und rechnet das 
in eine Temperatur ohne Nachkommastellen um. Das sagt wohl nicht so viel 
über eine Qualität eines ADCs aus.
Der TO sampelt hier vielleicht mit dem vollen 500kHz!? Keiner weiß es.
Außerdem misst er radiometrisch. Der TO hier absolut.

Hat man ihm ja aber auch schon gesagt dass das besser wäre.

von Matze T. (gruetzwurschd)



Lesenswert?

Jack V. schrieb:
> Stefan ⛄ F. schrieb:
>
>> Keine Ahnung warum du dafür nur "-" Bewertungen bekommen hast.
>
> Die hat er dafür bekommen, dass er unreflektiert Sachen, die er nicht
> kennt, als Müll bezeichnet. Hätte er nämlich drüber nachgedacht, hätte
> ihm die Erkenntnis kommen können, dass die Frage, ob Micropython drauf
> laufen kann oder nicht, als Kriterium zur Beurteilung des ADC völlig
> ungeeignet ist …
> Mal abgesehen davon: woran’s Rauschen des ADC beim Pico liegt, und wie
> man dem entgegenwirken kann, ist doch nun gezeigt worden? Beim Problem
> des TE würde ich daher weiterhin von einem Problem im Aufbau oder/und
> des Konzepts ausgehen. Wird schon seinen Grund haben, warum er dazu
> nichts Genaues schreibt.

Welche Info fehlt dir denn?
Hab doch beschrieben was am ADC hängt. Hab halt grad keinen Schaltplan 
zum Teilen.

c-hater schrieb:
> Jack V. schrieb:
>
>> Die hat er dafür bekommen, dass er unreflektiert Sachen, die er nicht
>> kennt, als Müll bezeichnet. Hätte er nämlich drüber nachgedacht, hätte
>> ihm die Erkenntnis kommen können, dass die Frage, ob Micropython drauf
>> laufen kann oder nicht, als Kriterium zur Beurteilung des ADC völlig
>> ungeeignet ist …
>
> Hat er wirklich einen kausalen Zusammenhang zwischen der Fähigkeit,
> Mikropython laufen zu lassen und der Qualität des ADC behauptet?
> Ich sehe das nirgendwo.
> Allenfalls kann ich eine Argumentation in der Richtung erkennen, dass
> typische Mikropython-Benutzer nicht in der Lage sind, IRGENDEINE
> gegebene Hardware optimal zu nutzen.
> Und das ist natürlich aus ganz sachlich-objektiven Gründen tatsächlich
> so.

Oder man hat vielleicht keine Lust bei jedem kleinen Furzprojekt jedes 
Bit selbst erfinden zu müssen. Nach 12 Jahren Erfahrung in der Embedded 
Entwicklung kann man mit Sicherheit. Die Frage ist ob man das immer 
will. Schade dass manche Leute sich immer für elitär halten müssen, weil 
sie sonst nichts sind als Pic16f Assembler Spezialisten.

Die eigentliche Frage war:
1. kennt jemand das Problem
2. hat jemand eine Lösung, wie ich den ADC Vref Pin beschalten kann, 
damit ich das Problem mit dem Schaltregler umgehen kann.
3. oder sonst eine Idee wie man eine einigermaßen brauchbare ADC Messung 
hinbekommt.(ja es kann sein dass meine  Beschaltung absoluter Müll ist. 
Aber der ADC zeigt schon wenn er hart auf Masse liegt ungefähr den Wert 
400 an und zappelt da dann nochmal im 200.

Gerd E. schrieb:
> Matze T. schrieb:
>
>> Gerd E. schrieb:
>>
>>> Wie sieht denn Deine Schaltung vor dem ADC aus? Also konkret was
>>> für eine Impedanz hat Deine Quelle?
>>
>> Da hängt besagtes Pedal dran. Da sind 2 Potis in Reihe drin. Waren glaub
>> 10k. Liegt auf Masse und die 3,3V vom Board. Der Abgriff hängt am ADC.
>
> Das ist ganz ohne Kondensator schon etwas viel Impedanz. Häng doch mal
> z.B. einen 10µF Kondensator gegen GND mit an den ADC-Eingang. Wie sieht
> es dann mit dem Rauschen aus?
> Was Du auch probieren kannst ist zusätzlich von ADC_VREF zu GND noch
> einen größeren Kondensator zu hängen. 2.2µF sind schon auf dem Board, um
> einen deutlichen Effekt zu sehen sollte der also mindestens eine
> Größenordnung größer sein.

Danke. Bin übers Wochenende weg. Morgen Abend schau ich nochmal.

von m.n. (Gast)


Lesenswert?

N. M. schrieb:
> Der macht in seinem Programm alle 200ms Mal eine Messung und rechnet das
> in eine Temperatur ohne Nachkommastellen um.

Nachkommastellen beim einem 12 Bit ADC und einer Temperaturspanne von 
ca. 440 K wären ja auch vermessen, in beiderlei Hinsicht.

> Das sagt wohl nicht so viel über eine Qualität eines ADCs aus.

Die Rohwerte des ADC sind doch auch zu sehen. Und die wackeln nicht 
obwohl sie vermutlich auch mit 500 ksps gewandelt werden.

Von den vom TO genannten 1 - 3 % ist das meilenweit entfernt!

von Jack V. (jackv)


Lesenswert?

Matze T. schrieb:
> Die eigentliche Frage war:
> 1. kennt jemand das Problem

Ich kenne ähnliche Probleme, die von einem fliegenden Aufbau mit 
längeren Kabeln in Nähe eines Motors und so, so ähnlich wie auf deinen 
Bildern, erzeugt worden sind. Da nur beim ADC des μC zu schauen, war in 
dem Fall nicht zielführend. Ein Oszi hat das lange Rumgerätsel aber 
glücklicherweise gar nicht erst entstehen lassen – daher die Frage: hast 
du ein solches Gerät zur Verfügung, oder könntest dir ohne zu großen 
Aufwand eines beschaffen?

Auch mag es sein, dass dein Pico defekt ist (kommt ja vor) – da könnte 
man mit statischen Spannungen (Batterie oder so) direkt an den Eingängen 
prüfen, ob ein grundlegendes Problem damit vorliegt. Wie schon 
geschrieben wurde: der ADC ist keine Spitzenklasse (sollte auch keiner 
bei einem Mikrocontroller für einen Euro ernsthaft erwarten) – aber 
Besseres als das, was du im Eingangsbeitrag beschreibst, sollte damit 
schon hinzubekommen sein. In dem Kontext: könntest du mal eine CSV-Datei 
mit einem Datensatz posten? Dann könnte man mal drüberschauen, ob man da 
nicht vielleicht typische externe Störungen (SNT, etc.) erkennen kann.

von Matze T. (gruetzwurschd)


Lesenswert?

Jack V. schrieb:
> Matze T. schrieb:
>
>> Die eigentliche Frage war:
>>
>> kennt jemand das Problem
>
> Ich kenne ähnliche Probleme, die von einem fliegenden Aufbau mit
> längeren Kabeln in Nähe eines Motors und so, so ähnlich wie auf deinen
> Bildern, erzeugt worden sind. Da nur beim ADC des μC zu schauen, war in
> dem Fall nicht zielführend. Ein Oszi hat das lange Rumgerätsel aber
> glücklicherweise gar nicht erst entstehen lassen – daher die Frage: hast
> du ein solches Gerät zur Verfügung, oder könntest dir ohne zu großen
> Aufwand eines beschaffen?
> Auch mag es sein, dass dein Pico defekt ist (kommt ja vor) – da könnte
> man mit statischen Spannungen (Batterie oder so) direkt an den Eingängen
> prüfen, ob ein grundlegendes Problem damit vorliegt. Wie schon
> geschrieben wurde: der ADC ist keine Spitzenklasse (sollte auch keiner
> bei einem Mikrocontroller für einen Euro ernsthaft erwarten) – aber
> Besseres als das, was du im Eingangsbeitrag beschreibst, sollte damit
> schon hinzubekommen sein. In dem Kontext: könntest du mal eine CSV-Datei
> mit einem Datensatz posten? Dann könnte man mal drüberschauen, ob man da
> nicht vielleicht typische externe Störungen (SNT, etc.) erkennen kann.

Ja hab ein Oszi. Leider nur mit den 0815 Masseklemmen.
Bin grad nicht daheim. Ich schau mir das morgen mal genauer an.
Hab mich mit mehreren Picos eingedeckt. War bei 2 Stück das gleiche.

von Manfred (Gast)


Lesenswert?

Matze T. schrieb:
> Ja hab ein Oszi.

Und vor allem hast Du ein Display an Deinem Controllerboard.

Also Motor etc. weg, A/D-Wert ins Display holen und gucken, ob der 
stabil aussieht, wenn das Pedal getreten wird.

von Paul (Gast)


Lesenswert?

False noch nicht selbst gefunden: https://youtu.be/F0o1C7nEgw0 ab 06:55.

von Matze T. (gruetzwurschd)


Lesenswert?

Paul schrieb:
> False noch nicht selbst gefunden: https://youtu.be/F0o1C7nEgw0 ab 06:55.

Das Video hatte ich schon gesehen. Gibt an mehreren Stellen im Netz 
berichte dazu.

Also ich hab mir das nochmal angeschaut. Hab beim nackten Board den ADC0 
komplett auf Masse gezogen. Entgegen dem was ich oben geschrieben habe 
eiert die Spannung zwischen 0,003-0,007V rum.

Das Geeiere kommt vom Pedal. Das muss ich mir die Tage nochmal etwas 
genauer anschauen. Ich habe Steckverbinder bestellt. Da wird das dann 
einfach etwas besser verkabelt. So wie es aussieht kommt da irgendwo 
eine 50Hz Frequenz her. In meinem nächsten Post häng ich die Bilder an. 
Wenn ich da irgendwie meine Hand auf den Steckverbinder lege ist es mal 
weg. Kommt aber irgendwie wieder. Keine Ahnung ob das vom Netz kommt, 
von mir oder irgendeine mechanische Vibration die da auf das Poti 
einwirkt.

von Matze T. (gruetzwurschd)


Angehängte Dateien:

Lesenswert?

Ps: wenn das Pedal dran hängt Eiert es um die 20mV und mehr.

von Matze T. (gruetzwurschd)


Angehängte Dateien:

Lesenswert?

Matze T. schrieb:
> Ps: wenn das Pedal dran hängt Eiert es um die 20mV und mehr.

von MaWin (Gast)


Lesenswert?

50 Hertz.
Das kommt eindeutig nicht vom ADC.

von Stefan F. (Gast)


Lesenswert?

Da es ein Pedal ist, kannst du das Signal einfach durch einen Tiefpass 
schicken, um es zu glätten.
1
        22kΩ
2
in o---[===]---+-----------o ADC
3
               |
4
              === 10µF
5
               |
6
              GND

von Matze T. (gruetzwurschd)


Lesenswert?

Hallo Zusammen,

für den Fall, dass es jemanden Interessiert. Mittlerweile sind die 
Steckverbinder gekommen. Hab das jetzt alles sauber verlötet.

Ich kann nichtmehr zu 100% alles reproduzieren. Aber um es kurz zu 
machen: das Problem kam vom Breadboard. Das (oder wahrscheinlich die 
meisten) scheint einfach der allerletzte Müll zu sein.

Mittlerweile hab ich immer noch leichtes Gezappel am ADC, aber ne 
Größenordnung kleiner.

von c-hater (Gast)


Lesenswert?

Matze T. schrieb:

> Aber um es kurz zu
> machen: das Problem kam vom Breadboard. Das (oder wahrscheinlich die
> meisten) scheint einfach der allerletzte Müll zu sein.

Warum, zum Teufel, überrascht mich das jetzt kein bissel...

Nö, hat schon seinen Grund, dass ich schon vor 40 Jahren den Breadboards 
den Rücken gekehrt habe und seitdem alle Versuchsaufbauten entweder auf 
Streifen- oder Punktraster mache.

Naja, soweit möglich. Irgendwo gibt es eine Komplexitätsgrenze, wo dann 
auch schon für Versuche ein richtiges PCB unumgänglich wird.

von Cartman (Gast)


Lesenswert?

> 12 Jahren Erfahrung in der Embedded Entwicklung kann man mit Sicherheit
wohl auch in Zweifel ziehen.

Wenn man seine Brotbretter ordentlich behandelt, kann man
damit auch tatsaechlich funktionierende(!) Schaltungen aufbauen.
Vermutluch hat der TO zu viele der quadratischen Stiftleisten
in die Kontakte gerummsst.

Das Problem haette man also auch mit wenigen Messungen einkreisen
und beheben koennen.

> Punktraster
ist natuerlich schon immer eine gute Idee.

von Stefan F. (Gast)


Lesenswert?

Die aktuellen Bretter von Aliexpress kann man auch nicht mit denen 
vergleichen, die ich vor 30 Jahren bei Conrad kaufte. Dazwischen liegen 
Welten, sowohl qualitativ als auch finanziell.

Meine teures altes Board von Conrad ist ausnahmsweise mal sein Geld 
wert. Denn es ist immer noch komplett in Ordnung - ohne Wackelkontakte.

von Matze T. (gruetzwurschd)


Lesenswert?

Cartman schrieb:
>> 12 Jahren Erfahrung in der Embedded Entwicklung kann man mit Sicherheit
> wohl auch in Zweifel ziehen.
>
> Das Problem haette man also auch mit wenigen Messungen einkreisen
> und beheben koennen.
>

1. du kannst bezweifeln was du möchtest. Zu mehr als zum Forumstroll 
hat’s bei dir wohl auch nicht gereicht.

2. Wenn du die Beiträge gelesen hättest wüsstest du, dass ich zu wenig 
gemessen und nicht alle Teile hatte bevor ich den ADC (der keinen guten 
Ruf hat) verteufelt habe. Das kann man mir vorwerfen.

von Keks F. (keksliebhaber)


Lesenswert?

Hmm, schade, habe das Thema erst jetzt gesehen.
Meine Meinung wäre, spätestens nach den Bildern, mit meiner eigenen 
Erfahrung bei dem Anwendungsfall gewesen:

-Board wird über USB betrieben: Das rauscht extrem stark

-Breadboard: Die Dinger sind absoluter Mist. Ich habe mich damals 
extremst geärgert, nicht reproduzierbare Ergebnisse/Messfehler zu 
bekommen mit dem ADC. Es ist ein Graus. Die Kontakte sind, egal wie gut 
es denn stecken soll (was es so gut wie nie tut, und die Steckplätze 
nutzen sich sehr schnell ab), nie gut genug. Der Vergleich zu einer 
verlöteten Verbindung/vernünftiger Platine ist immens. Es ist halt 
schwierig, das selber herauszufinden, wenn man wenig Grundlagen und noch 
weniger Equipment hat.

Es freut mich allerdings, dass du das Problem doch finden konntest.

Beitrag #7153452 wurde von einem Moderator gelöscht.
Beitrag #7153486 wurde von einem Moderator gelöscht.
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.