Hallo, ich habe 32x 10k-potentiometer, bei denen ich GND/3.3V in reihe geschaltet habe. Wenn die diese nun lese, kommt keiner der potis auf 0. Zudem gibt es sehr viele sprünge, also noise. was wäre der beste weg, dies zu unterdrücken? LG
:
Bearbeitet durch User
Wenn ich Potis habe, die beim betätigen kratzen, knistern und rascheln, behandle ich sie mit Feinmechaniköl, das hilft meistens.
Vielleicht fehlt mir der Intellektuelle Zugang aber für mich sieht das nicht nach Reihenschaltung sondern nach Parallelschaltung aus. Mit geringerer Auflösung abtasten könnte auch schon helfen, oder einfach die unteren Bits weglassen.
General E. schrieb: > Wenn die diese nun lese, kommt keiner der potis auf 0. Zudem gibt es > sehr viele sprünge, also noise. Besorg dir eine bessere Brille ohne Sprünge und ein Paar Ohrenschützer. Mit einem richtigen Schaltplan und konkreter Beschreibung deines Problems könnte man das Problem auch von einer anderen Seite anfassen.
General E. schrieb: > was wäre der beste weg, dies zu unterdrücken? - GND und Vcc sternförmig verteilen - ein kleines C (z.B. 100nF) zwischen Schleifer und GND - niederohmige Potis verwenden (z.B. 1kOhm) - Tiefpass per Software (z.B. gleitender Mittelwert) - langsamer abtasten Soilentgreenday schrieb: > Mit geringerer Auflösung abtasten könnte auch schon helfen, oder einfach > die unteren Bits weglassen. Das reduziert zwar die Zahl der möglichen 'Sprungstellen', aber eliminiert das Problem nicht.
General E. schrieb: > Wenn die diese nun lese Womit? Und wie ist das angeschlossen? Wie sieht die Leitungsführung dorthin aus? Und mit welcher Auflösung liest du da aus? Was sind "Sprünge", und wann treten die auf? Und was siehst du, wenn du dort ein Oszilloskop oder wenigstens ein Multimeter anschließt?
:
Bearbeitet durch Moderator
Soilentgreenday schrieb: > Vielleicht fehlt mir der Intellektuelle Zugang aber für mich sieht das > nicht nach Reihenschaltung sondern nach Parallelschaltung aus. > > Mit geringerer Auflösung abtasten könnte auch schon helfen, oder einfach > die unteren Bits weglassen. das liegt daran, dass man sowas nicht mit regulären Schaltzeichen zeigt
> Mit geringerer Auflösung abtasten könnte auch schon helfen, oder einfach > die unteren Bits weglassen. hä? Das ist ja fast wie beim Staubsaugen wenn der rote Indikator "voll" anzeigt, und man dann die Luftöffnung aufschiebt, damit man weiter saugen kann. Lifehack 2018.
General E. schrieb: > Wenn die diese nun lese, kommt keiner der potis auf 0. Zudem gibt es > sehr viele sprünge, also noise. Erzähl mal näheres (Schaltung, welcher ADC, Software usw.). Auch GND-Leitungen haben einen Widerstand, worüber Spannung abfällt. Was sollen Sprünge sein (wann, wie hoch)?
Fakten: 1) Auflösung des ADCs? Rauschen/Sprünge bei welchem Bit (gezählt vom MSB)? 2) Was zeigt ein Multimeter an? An der Versorgung eines Potis, an "Daten", am ADC-Eingang? 3) Was heisst "Daten"? Wenn, dann Schaltung (inclusive Werte der Potis, ggf. Spannnungsteiler, Abtastraten etc. 4) Sprünge nur beim schieben oder auch ohne (also Rauschen oder mechanisch)? 5) Was heisst "nicht 0"? Kommt der ADC denn überhaupt auf 0, wenn Du direkt am ADC mit GND kurzschließt? Hast Du den ADC unter Kontrolle?
Abgesehen von diversen Verbesserungsmaßnahmen solltest du dich darauf einstellen, dass alle elektronischen Bauteile mehr oder weniger rauschen. Bei ADC mit mehr als 8 bit kann man keine stabilen Werte mehr erwarten, ganz egal welchen Aufwand man drumherum treibt.
Sind das Kanalfader und Balance eines Mischpults? Sind Tiefpassfilter integriert?
Das ist ja noch schlimmer als fritzing :-) Und wenn man schon kein richtiges Programm dafür hat oder bedienen kann, dann ist man mit ner Ascii-Zeichnung oder auch nem Foto einer Handskizze deutlich besser dabei als mit so einer Schrottsymbolik. Da der Sachverhalt an sich trivial und auch nicht unbedingt neu ist, hätte auch ne die sprachliche Beschreibung gereicht, 99% hier hätten das verstanden. Sprich: du hast Arbeit in einen sinnlosen Kram vertan, die wirklich wichtigen Sachen aber weggelassen. Und nun fange noch mal von vorne an, lässt sich alles lösen.
:
Bearbeitet durch User
Soilentgreenday schrieb: > Vielleicht fehlt mir der Intellektuelle Zugang aber für mich sieht > das > nicht nach Reihenschaltung sondern nach Parallelschaltung aus. > > Mit geringerer Auflösung abtasten könnte auch schon helfen, oder einfach > die unteren Bits weglassen. Hi, ich muss zugeben ich habe noobhaft einfach mal so "in Reihe" geschrieben weil es für mich so aussah. Aber wenn es Parallelschaltung heisst, dann hab ich schon was gelernt jetzt :) frühmorgens schrieb: > General E. schrieb: >> Wenn die diese nun lese, kommt keiner der potis auf 0. Zudem gibt es >> sehr viele sprünge, also noise. > > Besorg dir eine bessere Brille ohne Sprünge und ein Paar Ohrenschützer. > Mit einem richtigen Schaltplan und konkreter Beschreibung deines > Problems könnte man das Problem auch von einer anderen Seite anfassen. ja ich weiss, sorry.. ich dachte ich könnte so auf die schnelle das Problem besser erklären. Tom schrieb: > General E. schrieb: >> was wäre der beste weg, dies zu unterdrücken? > > - GND und Vcc sternförmig verteilen > - ein kleines C (z.B. 100nF) zwischen Schleifer und GND > - niederohmige Potis verwenden (z.B. 1kOhm) > - Tiefpass per Software (z.B. gleitender Mittelwert) > - langsamer abtasten > > Soilentgreenday schrieb: >> Mit geringerer Auflösung abtasten könnte auch schon helfen, oder einfach >> die unteren Bits weglassen. > Das reduziert zwar die Zahl der möglichen 'Sprungstellen', aber > eliminiert das Problem nicht. Super danke :) .. werd das gleich mal probieren. Könnte es auch an zu dünnen Kabeln liegen? Lothar M. schrieb: > General E. schrieb: >> Wenn die diese nun lese > Womit? > Und wie ist das angeschlossen? Wie sieht die Leitungsführung dorthin > aus? > Und mit welcher Auflösung liest du da aus? Was sind "Sprünge", und wann > treten die auf? > Und was siehst du, wenn du dort ein Oszilloskop oder wenigstens ein > Multimeter anschließt? Ich lese mit einem Teensy 3.6, der die Schiebepotis sind zum testen direkt an den Teensy angeschlossen. Auflösung ist standardmäßig 10bit. Oszilloskop besitze ich leider nicht, aber mit Sprünge meine ich, dass die gelesenen Werte sehr "instabil" sind.. habe ich den Poti ganz unten auf 0% sollte dieser ja 0 ausgeben, er gibt aber aus 0, 2, 0, 1, 2, 0, 0, 1, ... die Werte springen also. @ der Rest.. ich erstelle mal einen Schaltplan.. sorry, ich habe gehofft, dass es ein allgemein verbreitetes Problem ist (und ehrlich gesagt auch, dass die Lösung einfach ist :D )
General E. schrieb: > @ der Rest.. ich erstelle mal einen Schaltplan.. sorry, ich habe > gehofft, dass es ein allgemein verbreitetes Problem ist (und ehrlich > gesagt auch, dass die Lösung einfach ist :D ) brauchst du nicht machen, es haben alle verstanden. General E. schrieb: > Ich lese mit einem Teensy 3.6, der die Schiebepotis sind zum testen > direkt an den Teensy angeschlossen. Auflösung ist standardmäßig 10bit. > Oszilloskop besitze ich leider nicht, aber mit Sprünge meine ich, dass > die gelesenen Werte sehr "instabil" sind.. habe ich den Poti ganz unten > auf 0% sollte dieser ja 0 ausgeben, er gibt aber aus 0, 2, 0, 1, 2, 0, > 0, 1, ... die Werte springen also. Das ist stabil für eine reale Welt. +/-1 sind von Hause aus prinzipiell immer drin. Du musst dir mal vor Augen füheren dass du hier von wenigen mV redest. Die können allein schon durch Störungen eingekoppelt werden oder auch schon auf Wandlerseite selbst durch Schwankungen/Rauschen der Referenz entstehen. Jeder Widerstand rauscht, ein Poti durch den Schleifkontakt um Grössenordnungen mehr. Dann kann man immer noch filtern, mehr oder weniger aufwendig. Auf der analogen Seite oder besser auf der digitalen Seite. Bei Potis hat man den Vorteil, dass Filterfrequenz sehr niedrig liegen kann, das Ding kann nun mal nur mit sehr wenigen Hz vertellt werden. Selbst die primitivste Mittelwertbildung liefert 6/8, was nach Ganzzahlarithmetik 0 ist. Filtern ist das Mittel der Wahl, dafür gibts viele Verfahren.
Soilentgreenday schrieb: > Dein Gleichnis ist nicht zutreffend. Gleichwohl ist der Einwand berechtigt, weil der Vorschlag, bits wegzulassen, die Auflösung weiter verschlechtert. Dann springt gfs ein bit weiter oben. Das ist eine sehr sehr schlechte Idee.
Peter D. schrieb: > Erzähl mal näheres (Schaltung, welcher ADC, Software usw.). > Auch GND-Leitungen haben einen Widerstand, worüber Spannung abfällt. > Was sollen Sprünge sein (wann, wie hoch)? Das ist im Grunde vollkommen unerheblich, woher das Rauschen kommt. Möglicherweise ist es der Funkmast von irgendeinem verrückten Amateurfunker in der Nachbarschaft. Das Rauschen muss weg und filtern ist der einzige Weg. Das Einfachste ist sicher ein RC-Glied am Ausgang der Potentiometermittelabgriffspunkte.
> habe ich den Poti ganz unten auf 0% sollte dieser ja 0 ausgeben, > er gibt aber aus 0, 2, 0, 1, 2, 0, 0, 1, ... die Werte springen also. Das ist schon sehr gut. Wie gesagt kann man nur 8 stabile Bits erwarten. Dass bei Dir "nur" die unteren zwei Bits wackeln ist völlig normal. > Das Rauschen muss weg und filtern ist der einzige Weg. > Das Einfachste ist sicher ein RC-Glied am Ausgang > der Potentiometermittelabgriffspunkte. Das wird keine Lösung sein, denn auch RC Glieder rauschen und - was hier noch viel wesentlicher ist - der ADC und seine Referenzspannung rauscht. Die unteren zwei Bits bekommst du nicht mit analogen Mitteln weg gefiltert. Das geht nur digital in Form von Algorithmen.
Stefanus F. schrieb: > Das ist schon sehr gut. Wie gesagt kann man nur 8 stabile Bits erwarten. > Dass bei Dir "nur" die unteren zwei Bits wackeln ist völlig normal. Ein weitverbreiter Irrtum, da er eine Scheinlösung des Problems liefert. Was passiert nach deinem Weglass-Prinzip, wenn der Wandlerwert zwischen sagen wir 3 und 4 wackelt? Du kannst sogar 9bit weglassen und bist immer noch ohne immer stabiles Ergebnis (wackelt zwischen 511 und 512).
H.Joachim S. schrieb: > Stefanus F. schrieb: >> Das ist schon sehr gut. Wie gesagt kann man nur 8 stabile Bits erwarten. >> Dass bei Dir "nur" die unteren zwei Bits wackeln ist völlig normal. > > Ein weitverbreiter Irrtum, da er eine Scheinlösung des Problems liefert. > Was passiert nach deinem Weglass-Prinzip, wenn der Wandlerwert zwischen > sagen wir 3 und 4 wackelt? > Du kannst sogar 9bit weglassen und bist immer noch ohne immer stabiles > Ergebnis (wackelt zwischen 511 und 512). Vor allem ist das "Wackeln" ja nicht das einzige Problem des TO. General E. schrieb: > Wenn die diese nun lese, kommt keiner der potis auf 0.
Borsolino schrieb: > Möglicherweise ist es der Funkmast von irgendeinem verrückten > Amateurfunker in der Nachbarschaft. Das würde ich als allerletztes in Betracht ziehen. In der Regel sind es eine ungeschickte GND-Verdrahtung oder Ripple auf VCC/VREF. Viele MCs haben deshalb einen Sleepmode für die AD-Wandlung, d.h. für die Wandlung wird die CPU angehalten, um selber keinen Ripple zu verursachen.
> Ein weitverbreiter Irrtum, da er eine Scheinlösung des Problems liefert...
Ich hatte damit auch nicht gemeint, dass mann die unteren Bits einfach
weg lassen soll. Du hast schon recht, je nach Werte betrifft das wackeln
auch höhere Bits.
Was ich meinte ist, dass man bei 10 Bit schon damit rechnen muss, dass
die Werte um bis zu 3 Schritte hoch und runter zappeln (0-3 entsprechend
2 Bits).
Wenn man einen 12 Bit Wandler hätte, muss man mit Schwankungen bis +/-
15 rechnen (0-15 entsprechend 4 Bits).
Borsolino schrieb: > Das ist eine sehr sehr schlechte Idee Nein ist es nicht. Die wackeligsten Bits werden weggelassen. Um eine Änderung an einem Höherwertigen Bit herbei zu führen ist unten herum mehr Änderung nötig. Klar kann einer auf der Kippe stehen, aber bis zur nächsten Änderung ist es deutlich weiter. Es ist doch wohl offensichtlich, daß eine höhere Auflösung auch mehr Rauschen abbildet. Es ist tatsächlich nur eine Reduktion der Auflösung. Im Zweifelsfall hilft hier einfach mal Ausprobieren.
um das Ganze zu beruhigen kannst du auch digital filtern. Einfach den Mittelwert von 100 Werten bilden. Dann sollte es sich ebenfalls beruhigen.
Auch sollte sich der TO seine Schaltung nochmals genau anschauen, Eingangsmultiplexer haben z.B. eine gewisse Umschaltzeit und der ggf. interne S/H Kondensator will auch entsprechend ge-/entladen werden, die man abwarten sollte. Ebenso ist der Irrglaube weit verbreitet das R/R Technik bei einfacher Spannungsversorgung real die Werte 0 und Vcc abgebildet werden können. Hier ist meistens ein unterer und oberer Offset zu berücksichtigen. Das Datenblatt schafft Klarheit.
Hugo E. schrieb: > H.Joachim S. schrieb: > Vor allem ist das "Wackeln" ja nicht das einzige Problem des TO. > > General E. schrieb: >> Wenn die diese nun lese, kommt keiner der potis auf 0. ja das ist grade mein hauptproblem... keiner der potis kommt auf 0.. bleiben alle bei ~100 stehen wenn ich den poti auf 0% drehe. Peter D. schrieb: > Borsolino schrieb: >> Möglicherweise ist es der Funkmast von irgendeinem verrückten >> Amateurfunker in der Nachbarschaft. > > Das würde ich als allerletztes in Betracht ziehen. > In der Regel sind es eine ungeschickte GND-Verdrahtung oder Ripple auf > VCC/VREF. > Viele MCs haben deshalb einen Sleepmode für die AD-Wandlung, d.h. für > die Wandlung wird die CPU angehalten, um selber keinen Ripple zu > verursachen. ja das kam mir auch in den Sinn, ich habe diese gängigen (sehr dünnen) litzen verwendet.. sollte ich für GND und 3.3V dickere kabel, evtl mit verzinntem kern nehmen? was bedeutet "Ripple auf VCC/VREF" ?
General E. schrieb: > ja das ist grade mein hauptproblem... keiner der potis kommt auf 0.. > bleiben alle bei ~100 stehen wenn ich den poti auf 0% drehe. Ich sehe da überhaupt kein Problem. So ein µC kann doch rechnen, ziehste einfach 100 ab.
General E. schrieb: > er gibt aber aus 0, 2, 0, 1, 2, 0, 0, 1, ... die Werte springen also. Die "springen" nicht. Das ist normales Rauschen, das daher kommt, dass du vermutlich deinen Aufbau und vor allem die Leitungsführung nicht optimal ausgelegt hast. Deshalb meine Anregung mit dem Foto vom tasächlichen Aufbau. General E. schrieb: > gehofft, dass es ein allgemein verbreitetes Problem ist Ist es auch. Das nennt sich EMV, Einkoppeln von Störungen, usw... > (und ehrlich gesagt auch, dass die Lösung einfach ist :D ) Das ist sie auch: 1. du musst das Ganze EMV-tauglich aufbauen 2. du darfst nicht erwarten, dass da gar nichts zappelt Was willst du denn mit dem Wert machen? Wie genau und stabil muss der denn sein? General E. schrieb: > ja das ist grade mein hauptproblem... keiner der potis kommt auf 0.. > bleiben alle bei ~100 stehen wenn ich den poti auf 0% drehe. Und was passiert, wenn du den Schleifer herunter schiebst und mit einer Drahtbrücke nach GND verbindest?
:
Bearbeitet durch Moderator
Soilengreenday schrieb: > Nein ist es nicht. Die wackeligsten Bits werden weggelassen. Um eine > Änderung an einem Höherwertigen Bit herbei zu führen ist unten herum > mehr Änderung nötig. Klar kann einer auf der Kippe stehen, Das ist aber keine gute Lösung. Das Spektrum des Rauschens wird damit tieffrequenter, weil es seltener kippt und zugleich absolut größer. Das sollte man anders lösen (s.u) General E. schrieb: > Wenn die diese nun lese, kommt keiner der potis auf 0. Man kann die Potis mit Widerständen und negativen Spannungen trimmen, damit sie exakte Spannungen abgeben. Bei hochwertigen Analogpulten macht man das mit OPV-Schaltungen, die gleich filtern und die Verstärkung einstellen. Bei ditialer Verarbeitung kann man sich das schenken: Du brauchst nur eine Skalierung, eine Offsetverschiebung und einen beidseitigen Limiter, um die digitalen Werte abzubilden und dann einen adaptiven Rauschfilter. All das macht man in SW. Das Rauschen auf den Leitungen sollte Dir helfen, die Auflösung des Potentiometers um 4 Bit hochzuschrauben, dass du gut Skalieren kannst. Der Offset des Potis oder des Wandlers werden einfach unterdrückt. Üblicherweise schneidet man die unteren digit weg und schiebt alles offsetmäßig auf Null. D.h. dein Potentiometer gibt schon auf den letzten Millimetern oben und unten das Maximum und die Null aus. Damit korrigiert man man eigentlich alles, wenn man will, sogar auch die Einbaulage, wenn sie nicht genau 270 Grad haben und gfs. auch Lichtlinearität. http://www.96khz.org/htm/midicontroller16.htm Ich verwende bei mir z.B. eine Abtastrate von knapp 1kHz für die Potis in meinem Controller, filtere sie mit einem RC-Filter individuell und schiebe sie über Analog-MUX in den ADC. Von da aus in ein IIR-Filter. Da kommen dann aus einem LTC-ADC mit 12/14 Bits effektiv 16Bits raus, die man fein genug auf 12 Bit skalieren kann. In Deinem Fall sollte es mit 10+4 gehen. Wenn Du dann nach der ersten Filterung und Skalierung Werte von z.B. 10 bis 1050 fertig hast, kommt dann noch eine Hysterese drauf, z.B. gibt man eine Änderung erst weiter, wenn sie mindestens 2 oder 3 finale digit waren. Dann wird der Offset abgezogen und auf 0 / 1000 limitiert. Das Limiten und Skalieren kann man auch dynamisch machen, wenn man die Potis zu Beginn eintrainiert. Habe mal ein Bild eingefügt: Blau ist der Winkel des Potis von theoretisch -135 Grad ... 135 Grad, das 10fach überzeichnete Rauschen des Wandlerwertes und die prozessierte Kurve (ebenfalls mit 10fach erhöhten Schritten).
:
Bearbeitet durch User
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.