- 3D-Druck Einstieg und Tipps         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 19 von 19

Thema: Tasten mit ADC einlesen und mit RC-Tiefpass entprellen

  1. #11
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    Anzeige

    Powerstation Test
    Nach meiner Erfahrung mit inzwischen 3 ADC-Tastaturen (bis 16 Taster) an C-Control und einem M32 ist das völlig unkritisch! Man braucht nur 3 bis 4 Werte zu mitteln und bekommt die Taste zuverlässig. Natürlich ist auch der Wertebereich relevant, den man für jede Taste zuläßt. Ich lege die Grenze genau zwischen die jeweiligen exakten ADC-Werte, dann klappt das gut.

    Gruß Dirk

  2. #12
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.11.2006
    Ort
    olargues
    Beiträge
    776
    hi,

    ich hab so ne adc tastatur zwar noch nicht probiert, denke aber spontan an einen kleinen tiefpass am adc-eingang.

    und statt mittelwert könnte man ja besser an "median" bzw. "zentralzahl" denken.

    gruss klaus

  3. #13
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.07.2004
    Ort
    Südhessen
    Beiträge
    1.312
    Zitat Zitat von Besserwessi
    @thewulf: Der Mittelwert von 64 Werten gibt schon relativ viel oversampling, hilft aber nicht dagegen das sich der Wert gerade ändert und man so einen mittelwert kriegt, der nicht zu der gerade gedrückten oder losgelassennen Taste passen muss. Das mittel von 64 Werten könnte gut gegen 50 Hz Störungen helfen, aber nicht gegen Prellen.

    Um sicherzustelln , das man nicht gerade eine sich ändernde Spannung hat muß man wenigstens 2 Spannungswerte vergleichen. Nur wenn man mehrmals hintereinander etwa die gleiche Spannung mißt, kann man sicher sein, dass das es ein gültiger wert ist. Die Messungen sollten auchnicht zu schnell erfolgen, ein paar ms sollten schon dazwischen sein, um Prellen zu erkennen.
    Ja, im Prinzip hast Du recht. Für diesen Anwendungsfall ist Dein Ansatz der bessere. Über längere Zeit (ein paar ms) ein paar Werte aufzunehmen und zu vergleichen, klingt auch für mich logischer.


    Die Sache mit den 64 Werten hatte ich bei meiner "Einparkhilfe" eingebaut. Der IR-Abstandssensor hatte dadurch absolut kein prellen oder schwanken mehr.

  4. #14
    Erfahrener Benutzer Begeisterter Techniker Avatar von PCMan
    Registriert seit
    05.08.2006
    Ort
    Munich
    Beiträge
    311
    Hi,
    das ist ja eine anregender Diskussion geworden. Laut Besserwisseri wäre es dann so, dass man in gleichmäßigem Intervall Werte nimmt und diese dann auf Differenz untersucht. Wenn die differenz "klein" ist, kann man von einen stabilen Wert ausgehen. Okay. Da ich aber kein Bock auf Netzbrummen habe wollte ich so oder so einen Tiefpass davorschalten (vor den ADC-in). Da spricht doch prinzipiell nix dagegen oder?
    Dann noch ne Frage zu den Interrupts: es gibt da die Timer-Interrupts, mit denen habe ich schon gearbeitet. Oben habe ich aber noch von einen AD-ready Interrupt gelesen; was ist damit gemeint?
    Grüße Simon

  5. #15
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Gegen Netzbrummen ist ein Tiefpassfilter eher weniger geeignet, denn da müßte die Grenzfrequenz schon ziehmlich tief ( << 50 Hz) sein und dann fängt es an das man recht lange (z.B. 0,1-1 s) auf einen stabilen Wert warten muß bis man dem AD wert trauen kann. Normalerweise sollten die 50 Hz Störungen nicht so groß sein das sie stören. Wenn man da wirklich Probleme hat, die man nicht durch einen elektrischen Abschirmung lösen kann, hilft es am besten die AD-werte über eine Periode (oder mehrere) zu mitteln. So wird das z.B. in den Voltmetern gemacht.

    Bei AVR Controllern (und vermutlich auch bei vielen anderen) kann der ACD einen Interrupt auslösen, wenn die Wandlung fertig ist. Wenn man den ADC im kontinuierlichen Betrieb betreibt, kann man alle 13 Zyklen des ADC-Taktes einen Interrupt kriegen, um den nächsten Wert zu verarbeiten (oder auch zu ignorieren). Eingstellt wird der Interrupt im Register ADCSRA bei den AVR Controllern.

  6. #16
    Erfahrener Benutzer Begeisterter Techniker Avatar von PCMan
    Registriert seit
    05.08.2006
    Ort
    Munich
    Beiträge
    311
    Hi Besserwessi,
    naja ich hatte schonmal den ADC im Labor in Betrieb und da ist alles voller Neonröhren und das hat meine Werte auch nach brutaler Mittelung nicht sonderlich verbessert. Am besten wäre natürlich einen filter-kernel zu programmieren aber das wird mir dann doch zu aufwendig. Ich hätte halt einen Tiefpass bei <<50Hz gewählt und einen Kondensator mit niedriger Kapazität eingesetzt (somit dürfte es nicht allzuuuuu lange dauern bis der Wert auf sein Niveau kommt). Dabei bin ich leider zwar mit meinen Widerständen eingeschränkt aber das lässt sich sicher noch austüfteln, denke ich.
    Grüße Simon

  7. #17
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Die Wartezeit hängt direkt mit der Grenzfrequenz des analogen Tiefpasses zusammen. Da ist egal ob man einen großen Kondensator oder einen großen Widerstand nimmt. Mit einem Tiefpass hoherer Ordnung könnte man eventuell eine kleine wenig besser wegkommen, aber auch nur in Grenzen.

    Wenn man genau über eine Periode mittelt, bekommt man theoretisch eine perfekte Unterdrückung der 50 Hz und auch gleich aller Oberwellen dazu. Durch eine passende Länge des Intervalls ist durch Mittlen so eine Unterdrückung der 50 Hz um über 60 dB drin. Ein einfacher Tiefpass müßte dafür schon eine Grenzfrequenz von unter 0,05 Hz haben, was ziehmlich unpraktikabel ist.

  8. #18
    Erfahrener Benutzer Begeisterter Techniker Avatar von PCMan
    Registriert seit
    05.08.2006
    Ort
    Munich
    Beiträge
    311
    Hi Besserwessi,
    was meinst du mit Periode? Ich nehme an du sprichst jetzt von der Zeit über die die Daten aus dem ADC eingelesen und gemittelt werden. Gibt's da ein Schema mit dessen Hilfe ich die passende Länge des Intervalls festlegen kann?
    Grüßle,
    Simon

  9. #19
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Mit Periode ist eine Periode der Störfrquenz gemeint, bei 50 Hz also 20 ms. Das einfache mitteln der Werte ist halt ein digitaler Tiefpass, der anders als die normalen analogen einige Frequenzen (hier 50Hz, 100 Hz, 150 Hz,...) perfekt unterdrückt und dazu auch noch recht schnell eingeschwungen ist.

Seite 2 von 2 ErsteErste 12

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress