Zum Inhalt springen
Arduino Taster

Lektion 11 – Der Taster

    Du bist jetzt schon ziemlich weit gekommen. Hat es Spaß gemacht? Das ist nämlich wirklich wichtig. Lass uns weiter machen. Ich zeige dir, wie du einen Taster anschließt und programmierst.

    Was ist denn überhaupt ein Taster?

    Funktionsweise Taster

    Ein Taster schließt einen Stromkreis, wenn man ihn drückt. Lässt man ihn los, wird der Stromkreis unterbrochen. Er schaltet sich sozusagen wieder von alleine aus. Meistens ist eine kleine Feder eingebaut, die ihn wieder öffnet.

    Benötigte Bauteile

    Benötigte Bauteile

    Den ersten Teil der Schaltung kennst du bereits. Es ist eine LED mit einem Vorwiderstand. Dieses Mal werden wir aber den Plus-Pol (5V) und den Minus-Pol (GND) auf die äußeren Schienen des Breadboards legen. Das macht das Verteilen davon ausgehend viel einfacher.

    Auf dem unteren Bild kannst du sehen, wie die äußeren Löcher des Breadboards verbunden sind. Es sind Reihen. Nutze die blaue Reihe für den Minus-Pol (GND) und die rote Reihe für den Plus-Pol (5V).


    Sieh dir jetzt meinen neuen Arduino-Videokurs an: Jetzt ansehen!


    Breadboard Aufbau

    Schaltplan 1

    Arduino Taster Schaltplan 6

    Der erste Teil der Schaltung steckt. Der zweite Teil besteht aus einem Taster und einem Widerstand. Wenn du einen Taster oder einen Schalter benutzt, gehört auch immer ein Widerstand dazu. Er wird Drop-Down-Widerstand genannt und hilft dem Arduino-Board zu erkennen, ob der Taster gedrückt ist oder nicht.

    Widerstand und Taster kitzeln Arduino

    Schaltplan 2

    Arduino Taster Schaltplan 11

    Sehen wir uns das noch mal genauer an. Wir haben einen 100 kOhm Widerstand mit dem Taster verbunden. An der Verbindungsstelle zwischen den beiden haben wir ein grünes Kabel in den Pin 11 des Arduinos gesteckt. Die andere Seite des Widerstands ist mit dem Minus-Pol verbunden. Das ist das schwarze Kabel. Die andere Seite des Tasters ist mit einem roten Kabel mit dem Plus-Pol verbunden.

    Wenn der Taster nicht gedrückt ist, ist der Pin vom Arduino-Board über den 100 kOhm Widerstand mit dem Minus-Pol verbunden. Drücken wir den Taster, stellen wir eine Verbindung zum Plus-Pol her.

    Stromlaufplan Taster

    Prüfe deine Schaltung, ob alles richtig gesteckt ist. Und jetzt lass uns programmieren!

    18 Gedanken zu „Lektion 11 – Der Taster“

    1. Hallo,
      Ich habe diese Schaltung Nachgestellt allerdings reagiert dies nicht.
      Ich habe eine rote und grüne LED verwendet und nach dem drücken, soll die rote LED für 30 Sekunden an und danach wieder aus gehen. Ich drücke allerdings nicht mal den Taster und die rote LED leuchtet durchgehend. Es ist egal, ob ich den Taster drücke oder nicht. Keine Veränderung. Die grüne LED ist dabei durchgehend aus.
      Ich hoffe mir kann hier einer weiterhelfen.
      Viele Grüße
      Jonas

    2. Hallo zusammen,
      ich habe heute beim Ausprobieren noch eine andere Möglichkeit gefunden die es zulässt NUR mit dem Taster ohne Widerstand zu arbeiten.
      Der Mikrocontroller gibt die Möglichkeit, interne PullUp-Widerstände für die Eingange zu aktivieren. Das lässt sich mit folgendem Befehl tun:
      pinMode(pin, INPUT_PULLUP);
      Damit wird der Interne PullUp Widerstand für den Eingang am jeweiligen Pin aktiviert, und der Eingang wird HIGH! Um jetzt mit einem Taster zu arbeiten, muss das Prinzip umgedreht werden, der Eigang kann jetzt direkt und ohne Widerstand mit dem Taster auf GND gelegt werden. In der Schleife/Sketch muss der Pin jetzt aber auf LOW abgefragt werden. Mit der Methode spart man sich die Steckerei mit den Widerständen für den Taster.

    3. Die Led bekommt ihren Plus vom Arduino Ausgang (die Programmierung schaltet den Ausgang mit +5v an oder aus)
      Der Taster gibt +5v an den Pin, der ausgelesen wird. Laesst man den Pin offen kann jedes Signal vom Elektrosmog um uns herum den Pin stoeren, daher setzt man ihn ganz leicht an Masse (der widerstand mit minus)

    4. Hallo Adam,

      ich habe ein Problem und komme einfach nicht weiter. Ich hatte mir ein Projekt vorgenommen und stecke jetzt an einer Stelle fest an der ich nicht mehr weiß woran es liegt. Ich habe ein Arduino uno, 2 Servos, eine LED und einen Drucknopf.
      Wenn man den Kopf betätigt sollen die Servos sich um 180 Grad bewegen die LED soll kurz blinken und dann angehen. Drücke ich nochmal den Knopf soll das Licht ausgehen und die Servos gehen zurück auf den Ausgangspunkt. Ich habe es soweit alles auch ans laufen bekommen, bis auf den Knopf. Ich drücke ihn und es tut sich nichts. Nur wenn ich ein Kabel ziehe und wieder rein stecke wird der gewünschte Effekt ausgelöst.
      Hättest du einen Tipp woran das liegen könnte?

      Es wäre echt nett wenn du mir Antworten würdest.

      Vielen Dank im Voraus

      Gruß Stefan

    5. Hallo Stefan,

      ich habe ein Problem und komme einfach nicht weiter. Ich hatte mir ein Projekt vorgenommen und stecke jetzt an einer Stelle fest an der ich nicht mehr weiß woran es liegt. Ich habe ein Arduino uno, 2 Servos, eine LED und einen Drucknopf.
      Wenn man den Kopf betätigt sollen die Servos sich um 180 Grad bewegen die LED soll kurz blinken und dann angehen. Drücke ich nochmal den Knopf soll das Licht ausgehen und die Servos gehen zurück auf den Ausgangspunkt. Ich habe es soweit alles auch ans laufen bekommen, bis auf den Knopf. Ich drücke ihn und es tut sich nichts. Nur wenn ich ein Kabel ziehe und wieder rein stecke wird der gewünschte Effekt ausgelöst.
      Hättest du einen Tipp woran das liegen könnte?

      Es wäre echt nett wenn du mir Antworten würdest.

      Vielen Dank im Voraus

      Gruß Adam

    6. Mir ging es auch so, wie Jotha und Golo. Die Erklärung, dass es zwei Stromkreise sind
      (=https://starthardware.org/lektion-11-der-taster/#comment-13325) sollte oben stehen.

      Was mir bis hier fehlte: Wo kommt die Größe der jeweiligen Widerstand her?

      Auf jedem Fall, Super gemacht, Top – selten so schöne klare Erklärungen gelesen.

      1. Hallo Herbert, danke für das Feedback, nun zu Deiner Frage: Die Größe vom Widerstand bei dem Taster (also Pin als INPUT) ist relativ willkürlich. Er muss nur größer sein, als die Innenwiderstände der digitalen Pins des Mikrocontrollers. Ein 10k Widerstand würde auch funktionieren. Wenn man aber z.B. einen Vorwiderstand für eine LED will, muss der schon passen. 220 Ohm sind dann für normale LEDs gut. Nimmt man kleinere Widerstände, können die LEDs beschädigt werden, bei größeren leuchtet die LED nur schwach oder gar nicht mehr. Liebe Grüße Stefan

    7. Hallo,
      vielen Dank für das Schaltbild, welches den Stromkreis bei gedrücktem/nicht gedrücktem Schalter zeigt. Nur so kann man verstehen, statt nur nachzubauen. Ich schaue mir nun gespannt auch die anderen Kapitel an.

    8. Liebe Wissensuchenden,
      ich habe mal eine – wie ich finde – gute Beschreibung dieses Themas (Pullup- und Pulldown-Widerstände9 gefunden.
      Das stammt zwar aus dem Raspi-Umfeld, erklärt das aber toll.

      Viel Erfolg
      Hagez

    9. Mir ist der Aufbau der letzten Schaltung nicht klar.

      Ist der Taster offen, fließt Strom von Pin 11 durch den Widerstand nach GND. Wofür man den Widerstand braucht, ist mir trotz der Erklärung in der anderen Antwort noch nicht klar: Was würde passieren, wenn man ihn einfach weglässt? Würde dann “die volle Bandbreite” Strom zu schnell von Pin 11 nach GND fließen? Wäre das ein Kurzschluss? …?

      Wenn der Taster nun gedrückt wird, wieso fließt der Strom dann auf einmal von 5V in Pin 11? Wieso hat Pin 11 jetzt quasi seine “Stromrichtung” umgekehrt? Und warum fließt in dieser Konstellation der Strom nur noch in Pin 11, nicht aber mehr durch den Widerstand auch nach GND? Verhält sich Pin 11 jetzt quasi wie GND? Warum?

      1. Hallo Golo,

        das wäre kein Kurzschluss und solange der Taster gedrückt ist, wäre das auch kein Problem. Ist der Taster aber offen, kommt es zu Störungen am Pin, da das Kabel bis zum nun offenen Taster wie eine lange Antenne fungiert. Baut man den Widerstand aber in diese Leitung ein, werden diese Störungen abgeleitet.

        Liebe Grüße

        Stefan

        1. Hallo Stefan,

          ich sehe mich an den gleichen Fragen konfrontiert wie Golo auch. Könntest du das vielleicht noch einmal genau erklären? Wieso führt kein Steckkabel von der Kathode der LED zu einem Pluspol? Wie verhalten sich die Digitalen Pins? Sind das auch Plus-/ bzw. Minuspole?

          Zitat von Golo:
          “Wenn der Taster nun gedrückt wird, wieso fließt der Strom dann auf einmal von 5V in Pin 11? Wieso hat Pin 11 jetzt quasi seine „Stromrichtung“ umgekehrt? Und warum fließt in dieser Konstellation der Strom nur noch in Pin 11, nicht aber mehr durch den Widerstand auch nach GND? Verhält sich Pin 11 jetzt quasi wie GND? Warum?”

          1. Hey Jotha, hey Golo, ich versuche es nochmal:

            Wir haben hier zwei Stromkreise. Der eine geht vom Digital 9 über die LED über den Widerstand in den GND. Schalten wir den Pin auf HIGH (dann liegt hier 5V Plus an), leuchtet die LED, schalten wir ihn auf LOW (dann ist der Pin wie ein GND), leuchtet sie nicht. Der Teil ist wahrscheinlich klar. Der andere Stromkreis geht vom 5V Plus über den Taster über den Widerstand in den GND. Die Verbindung zwischen Widerstand und Taster ist dazu noch mit dem Pin 11 verbunden. Pin 11 ist als Input deklariert und hat einen sehr hohen Innenwiderstand. Ist der Taster nicht gedrückt, fließt Strom aus dem Pin in den GND. Arduino liest das als LOW, drückt man den Taster, fließt der Strom vom Plus in den Pin hinein. Das liest Arduino als HIGH. Wie das genau kommt, stelle ich mir so vor, als ob am Pin 2,5V anliegen. Verbindet man die mit GND fließt der Strom von 2,5V zum GND. Verbindet man sie mit 5V, fließt der Strom hinein, also vom 5V zum 2,5V. Ob das so exakt ist, weiß ich gar nicht, hilft aber beim Verständnis.

            Liebe Grüße

            Stefan

    10. hallo,

      wofür benötigt der arduino den 100k widerstand an pin 11 genau?
      warum reichtes nicht dass der taster geöffnet oder geschlossen ist?

      gruß

      colmans

      1. Hallo Colmans,

        wenn der Taster geöffnet ist, ohne dass der Widerstand verwendet wird, ist der Zustand am Pin nicht klar definiert. Elektromagnetisches Rauschen erzeugt unterschiedliche Spannungen am Pin. Um das zu verhindern, kommt der Widerstand dazu, der dieses Rauschen ableitet.

        Liebe Grüße

        Stefan”

    Schreibe einen Kommentar

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

     

    Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.