Hallo Forum, kurz und knackig: Was ist der Unterschied zwischen "bouncing" und "jitter" bei analogen Tastern in der Mikrocontrollersteuerung? Mein Vorhaben ausführlicher Form: Zunächst, ich habe keinen Elektronik-Beruf gelernt, bin aber nicht ganz unbedarft. Ich habe vor, einen Kettenabsenker (Garagenplatz mit einer ferbedienbaren Kette vor unbefugtem Befahren zu sperren) selber zu basteln. Meine Plaung ist, eine Gewindestange mit einem Schritt- oder Servomotor anzutreiben, der von einem Arduino gesteuert wird. Um mich damit einzuarbeiten habe ich mir ein Starterpaket mit einem Arduino Mega gekauft, für das "Gerät" selbst werde ich wahrscheinlich noch einen Nano kaufen, da dieser meiner Meinung nach für das Projekt ausreichend ist. Ich habe auch schon ein Funkrelais gekauft, das auf Knopfdruck der Fernbedienung einen Kontakt kurze Zeit schließt oder öffnet (je nach Anschluß an den Relais), es wird auch noch ein "echter" Taster angeschlossen, für eine manuelle Steuerung. Den Aufbau habe ich so geplant, dass oben und unten an der Geweindestange ein Endschalter ist, der Motor durch Druck auf die Fernbedienung oder den Taster, wenn die Kette oben ist nach unten gesenkt wird, um einfahren zu können, sobald unten angekommen stoppt und durch erneuten Tastendruck wieder nach oben fährt und dort am Enschalter angekommen wieder stoppt. *Warum ich eigentlich frage, in Bezug auf Taster und Mikrocontoller:* In den Übungslektionen des Adruino-Startpakets ist oft die Rede von "jitter", die per Software (delays)gelöst werden. Für die Realisierung meines Projekts habe ich auch andere Foren und ähnline Arduinoprojekte durchgelesen, da ist die Rede von "boucing" und das wird hier durch Hardwareschaltungen mit Transistoren, Kondensatoren und Dioden gelöst. Bedeutet beides das gleiche, also wie ich es bisher verstanden habe, den Millisenkunden bereich bis der Kontakt des Tasters "kraftschlüssig" verbunden wurde? Konnte bisher leider keine eindeutigen Erklärungen finden.
Robert E. schrieb: > die per Software (delays)gelöst werden Per delay() ist wohl die schlechteste Methode... Per Software, ist dagegen ok.
Hallo Arduino Fanboy, vielen Dank, aber leider kann ich mit Deiner Antowort nicht viel anfangen. Ist es nun jitter das gleiche wie bouncing oder nicht? Und vielleicht verrätst Du mir auch wie Deiner Meinung nach die beste Methode wäre? Gruß Robert
:
Bearbeitet durch User
Jitter und Prellen (bouncing) sind zwei verschiedene Effekte: https://de.wikipedia.org/wiki/Prellen https://de.wikipedia.org/wiki/Jitter Jitter ist, vereinfacht gesagt, eine zeitliche Verschiebung in einem regelmäßigen Signal (Siehe Wikipediaartikel). Prellen ist ein Effekt, den alle mechanischen Schalter besitzen. Dabei wird der Kontakt durch Federkraft und Schwingen mehrmals geöffnet und wieder geschlossen, bis die kraft der Betätigung ausreicht, um ihn dauerhaft geschlossen zu halten. Dieser Effekt kann auch beim öffnen eines Kontaktes auftreten, was aber vom mechanischen Aufbau des Kontaktes abhängt. Ein Jitter dürfte in deiner Anwendung vermutlich nicht relevant sein, aber Tasterprellen wird es auf jeden Fall werden. Wie du richtig erkannt hast, kann man das Tasterprellen entweder durch Elektronik oder durch die Programmierung unterbinden. Für den Arduino gibt es einige Libs, (suche nach debounce) die diesen Effekt unterdrücken. Robert E. schrieb: > Ich habe vor, einen Kettenabsenker (Garagenplatz mit einer > ferbedienbaren Kette vor unbefugtem Befahren zu sperren) selber zu > basteln. > > Meine Plaung ist, eine Gewindestange mit einem Schritt- oder Servomotor > anzutreiben, der von einem Arduino gesteuert wird. Ich rate dir, erst einmal mit kleineren Projekten anzufangen. Zwar ist es kein größeres Problem, einen Motor mit dem Arduino anzusteuern und ihn bei Erreichen einer Endlage abzuschalten, aber auch dafür ist ein wenig Übung nicht schlecht. Allerdings rate ich dir dringend davon ab, eine solche Bastelei im öffentlichen Raum einzusetzen, denn das WIRD auf jeden Fall schief gehen. Das wirst du spätestens dann merken, wenn ein fremdes Auto beschädigt wird oder jemand über die sich bewegende Kette stolpert und sich einen Arm bricht. Ganz davon abgesehen, daß ein wie von dir beschriebener Aufbau (Gewindestange und Stepper) nie unter allen möglichen Bedingungen (Frost, Regen, Schmutz) zuverlässig genug funktionieren wird.
Robert E. schrieb: > Ist es nun jitter das gleiche wie bouncing oder nicht? Ist deine Suchmaschine kaputt? Nein, ich bin nicht dein Duden. Und Wikipedia lese ich dir hier auch nicht vor. Robert E. schrieb: > Und vielleicht verrätst Du mir auch wie Deiner Meinung nach die beste > Methode wäre? Das kann ich dir allerdings gerne zeigen. Hier ein Beispiel: Beitrag "Re: einfache und übersichtliche Flanken erkennung" Und hier die Lib: Beitrag "Re: einfache und übersichtliche Flanken erkennung" Ob das wirklich die "beste" Methode ist, darfst du gerne selber entscheiden.
Hallo Frank, erstmal vielen Dank, das ist genau die Antwort die ich erwartet bzw. mir gewünscht habe. Nun weiß ich wovon die Rede ist und um was ich mich im Detail kümmern muss. Zu Deiner Sorge bezgl. öffentlichen Raum, das Ganze findet auf meiner privaten Garageneinfahrt statt. Mag sich jetzt etwas arrogant anhören, aber wer sich hier verletzt bzw. eine Beschädigung einfängt, den werde ich dann wegen Hausfriedensbruch anzeigen, da sich die Person in diesem Falle dann auf meinem Grundstück befunden haben muss. Eine Absperrkette ist bereits seit Jahren vorhanden, nur muss sie manuell abgelassen werden. Solche Kettenabsenker habe ich schon sehr oft gesehen, kosten aber zwischen 800 und 1200€. Wenn da einer drüberfliegt denke ich, spielt es keine Rolle ob dieser DIY oder gekauft ist. Aber dennoch Danke ich Dir für den Hinweis und werde das meinen Cousin, der Rechtsanwalt ist, fragen wie hier die Sachlage ist. Eine Laufbuchse mit Witterungsschutz habe ich schon konstruiert und auch das Problem mit der Metallkette werde ich auch wegen Vandalismusschutz (draufspringen/setzen) mit einem Expanderseil lösen. Wenn dann jemand meint es mit einem Schweizer durchschneiden zu müssen, soll er.
Arduino Fanboy D. schrieb: > Robert E. schrieb: >> Ist es nun jitter das gleiche wie bouncing oder nicht? > Ist deine Suchmaschine kaputt? > Nein, ich bin nicht dein Duden. > Und Wikipedia lese ich dir hier auch nicht vor. > Kein Grund unhöflich zu werden. Aufgrund Deiner Antwort muss ich davon ausgehen, dass Du den Unterschied selbst nicht kennst, dann bitte nichts schreiben. Denn gebe mal jitter oder bouncing bei google ein, da kommt eine ganze Menge Ergebnisse die den gleiche Begriff haben, aber mit den eigentlichen Thema gar nichts zu tun haben. Und wenn Du nicht weißt was genau man eingeben muss, dann wendet man sich an ein Forum, die einem dann die Antwort geben und entsprechende Links senden und nicht "äbäbäbä such doch selber" schreiben. Suche doch nur mal nach dem Begriff "Latenz". Meinst Du jetzt Musik, meinst Du das verzerren von PC-Soundkarten, meinst Du DAW Clock correction, meinst Du Begriffe aus der Mikroelektronik, aus dem IT und Netzwerk-Bereich? Da kann ich doch leicht sagen, schau halt bei Wikipedia. Allerdings danke ich Dir für die Links mit der Flankenerkennung. Werde mir das ansehen. Und nichts für ungut, aber solche Kommentare wie "ich bin nicht dein Duden" haben in einem Forum nichts zu suchen, entweder ich weiß die Antwort und helfe, oder ich schreibe nichts. Nehm Dir ein Beispiel an Frank B. Jetzt weiß ich Bescheid. Noch ein Wort an Frank: Bevor ich das Ganze "draußen" baue, simuliere ich natürlich die ganze Schaltung und Programmierung am Breadboard. Erst wenn hier alles so funktioniert wie gewollt, setze ich das Projekt real um.
:
Bearbeitet durch User
Robert E. schrieb: > Aufgrund Deiner Antwort muss ich davon ausgehen, dass Du den Unterschied > selbst nicht kennst, dann bitte nichts schreiben. Iss klar... Robert E. schrieb: > Allerdings danke ich Dir für die Links mit der Flankenerkennung. > Werde mir das ansehen. Schön! Wenn du das tust und auch irgendwann den Code verstanden hast, dann wirst du meine Kompetenz besser einschätzen können. (und min. 3 Jahre älter sein) Robert E. schrieb: > Nehm Dir ein Beispiel an Frank B. Jetzt weiß ich Bescheid. Iss klar...
Robert E. schrieb: > Meine Plaung ist, eine Gewindestange Ich hoffe, du meinst kein normales Gewinde, sondern wenigstens ein Trapezgewinde. Die normale Stange wird nicht lange halten!
Arduino Fanboy D. schrieb: > dann > wirst du meine Kompetenz besser einschätzen können. Das Unterhaltungsniveau ist zwar gerade Kindergarten, aber ich möchte auch dass Du mich nicht falsch verstehst. Deine Kompetenzen in manchen Dingen kann ich nicht einschätzen, da ich Dich nicht kenne und möchte sie auch nicht anzweifeln. Auch wenn Du den Arduino erfunden hättest, aber mit Antworten wie "ich bin kein Duden" kann keiner der Hilfe braucht was anfangen und das ging mir halt die Nase hoch. > (und min. 3 Jahre älter sein) Du kennst mich aber auch nicht und kannst auch nicht einschätzen welche Kompetenzen und fähigkeiten ich habe. An dem Tag als mein Startpaket kam, hatte ich um 19 Uhr Feierabend und bereits gegen 21 Uhr habe ich eine Alarmsirene mit Blaulicht zusammengebaut und programmiert und am nächsten Tag hatte ich über das LCD vorprogrammierte Texte mit der Fernbedienungs anzeigen können. Wenn ich mich reinsteigere lerne ich sehr schnell, kann mir Beispielcodes so umformen, dass sie zu meinen Zwecken passen. Ich bin 34 Jahre und bereits in der 7. Klasse habe ich BASIC-Programme mit teils bis zu 1000 Zeilen für den C64 geschrieben und dann nach MS-DOS portiert. Das ging auch nur weil mich (und einen Kumpel) unser Informatiklehrer kompetent unterstützt hat und nicht sagte "ich bin kein Duden". Und nun ist schluss mit dem Stuss. Ich danke nochmal allen, die mir informative Beiträge gesendet haben.
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.