Mikrocontroller/ Digitale und analoge Signale

Aus Wikibooks
Zur Navigation springen Zur Suche springen

Digitale und analoge Signale[Bearbeiten]

Im Folgenden wollen wir analoge und digitale Signale mit dem Arduino-Board verarbeiten. Was unterscheidet analoge und digitale Signale? Ein digitales Signal hat nur zwei mögliche Werte: 0 oder 1, LOW oder HIGH, an oder aus. Typisches Beispiel für einen Sensor, der ein digitales Signal liefert, ist ein einfacher Schalter.

Ein analoges Signal hingegen kann beliebige Werte in einem vorgegebenen Bereich (bei uns zwischen 0 V und 5 V) liefern. Lesen wir mit dem Arduino-Board ein analoges Signal ein, so wird die Spannung zwischen 0 V und 5 V in eine Zahl zwischen 0 und 1023 umgewandelt und kann anschließend weiterverarbeitet werden. Ein Sensor, der eine kontinuierliche Spannung ausgibt, die z.B. in Zusammenhang mit der Temperatur steht, ist ein analoger Sensor.

Erzeugung digitaler Signale: Pull–Up/Down Widerstand[Bearbeiten]

High-Low Switch.svg

Wie kann man mittels eines einfachen Schalters ein digitales Signal erzeugen? Betrachten wir die abgebildeten Schaltungen. Schaltung (1) soll bei geschlossenem Schalter den digitalen Eingang D auf HIGH d.h. +5 V ziehen. Schaltung (2) dagegen bei geschlossenem Schalter D mit LOW, d.h. 0 V, also GND verbinden.

Bei geschlossenem Schalter würde alles wie gewünscht funktionieren, was aber passiert bei geöffnetem Schalter? Der Eingang D hängt in der Luft, er hat kein definiertes Potential. Wir können nicht vorhersagen, wie sich unser digitaler Eingang D bei geöffnetem Schalter verhält, da er weder mit HIGH noch mit LOW verbunden ist.

Abhilfe schafft ein sog. Pull–Down bzw. Pull–Up Widerstand, der im Falle des geöffneten Schalters für ein definiertes Potential an D sorgt und D auf LOW bzw. HIGH „zieht“.

Pull–Down und Pull–Up Schaltung zur Erzeugung eines stets eindeutig definierten digitalen Signals mit einem einfachen Schalter.

Wie in der Abbildung gezeigt, fügen wir in die Schaltungen einen hochohmigen Widerstand ein. (Der Widerstand sollte so groß wie möglich, aber deutlich kleiner als der Innenwiderstand des digitalen Eingangs gewählt werden. Man beachte auch, dass unser Mikrocontroller programmierbare Pull–Up/–Down Widerstände eingebaut hat, die wir anstatt der externen Widerstände verwenden könnten).

Betrachten wir die Schaltung (3) mit Pull–Down Widerstand: Ist der Schalter geschlossen, so ist D mit HIGH verbunden, der hochohmige Widerstand spielt keine Rolle. Öffnet man jedoch den Schalter, so wird D durch den Widerstand R auf LOW „gezogen“. Umgekehrt bei Schaltung (4) mit Pull–Up Widerstand: Bei geschlossenem Schalter liegt D auf LOW. Öffnet man den Taster, so wird D durch den Pull–Up Widerstand auf HIGH „gezogen“. In beiden Fällen hat man unabhängig von der Schalterstellung ein klar definiertes Potential am digitalen Eingang D.

Die Pull–Up/Down Schaltung ist ein Spezialfall des Spannungsteilers aus dem vorangegangenen Abschnitt, wobei ein Widerstand durch den Taster ersetzt wird. Der geschlossene Taster hat den Widerstand , geöffnet haben wir einen unendlich großen Widerstand.

Erzeugung eines analogen Signals: Potentiometer[Bearbeiten]

Funktionsweise eines Potentiometers als kontinuierlicher Spannungsteiler: Abhängig von der Stellung des Potentiometers kann eine Spannung zwischen 0 V und +5 V abgegriffen werden.

Nachdem wir nun in der Lage sind, ein digitales Signal zu erzeugen, wenden wir uns analogen Signalen zu. Wir möchten eine beliebige Spannung zwischen 0 V und 5 V erzeugen. Dies ist mittels eines Potentiometers, das unsere Versorgungsspannung „aufteilt“, auf einfache Weise möglich. Vergleiche dazu den Abschnitt über Spannungsteiler.


Aufgaben[Bearbeiten]

  1. Finde genaueres über analoge und digitale Signale heraus und erläutere die Unterschiede. Worin liegen Vor– und Nachteile?
  2. Warum ist bei der Erzeugung eines digitalen Signals mit einem einfachen Schalter ein Pull–Up bzw. Pull–Down Widerstand nötig?
  3. Was haben Pull–Up und Pull–Down Schaltung mit einem Spannungsteiler zu tun? Zeichne das Schaltbild der Pull–Up und Pull–Down Schaltung als Spannungsteiler mit jeweils zwei Widerständen und gib die Werte dieser Widerstände für beide Schalterpositionen an.
  4. Wie wird ein analoges Signal vom Arduino–Board intern weiterverarbeitet?
  5. Erkläre wie ein Potentiometer als verstellbarer Spannungsteiler funktioniert.