Keyes Drehgeber
→ zurück zur Übersicht: WS 18/19: Sensortechnik (MTR)
Autor: Marcel Bröckelmann
Betreuer: Prof. Schneider
Aufgabe
In dieser Artikel werden folgenden Punkte abgearbeitet:
- Auswahl eines Sensors
- Verarbeitung der Signale
- Bewertung der Sensordaten
- Inbetriebnahme des Drehgebers aus dem Arduino Starterkit.
Einleitung
Um die Drehrichtung eines Objektes zu ermitteln, wird ein Sensor mit Codierter Lochscheibe benötigt. Hierzu wird im Folgenden der Keyes Drehgeber aus dem Arduino Starterkit verwendet. Um den Aufbau zu verstehen, werden zuvor die technischen Eigenschaften beschrieben und die Pin-Belegung des Drehgebers erläutert.
Technische Übersicht
Eigenschaft | Daten |
---|---|
Betriebsspannung | 5V (DC) |
Betriebsstrom: | < 20mA |
Schnittellen: | 5 |
Sensortyp: | Digital |
Ausgangsspannung des Signals: | 0; 4,2V |
Produktabmessung: | 26,5mm x 19mm x 30mm |
Der Drehgeber besitzt 5 Pins; die Pins "GND" und "+" dienen der Versorgung des Drehgebers. Der Pin SW wird für eine Signalübertragung genutzt, wenn der Drehknopf gedrückt wird. Bei den Pins "CLK" und "DT" handelt es sich um die digitalen Ausgänge des Sensors, welche bei geöffnetem Kreislauf zwischen ihnen und der Masse ein Signal ausgeben.
Funktionsweise
Wird der Knopf des Drehgebers gedreht, so dreht sich eine mit ihm verbundende Lochscheibe. Durch diese wird eine Verbindung zwischen den Ausgabepins und der Masse geöffnet bzw. geschlossen.Hierbei ist zu beachten, dass die Pins "CLK" und "DT" nicht synchron , sondern zeitlich versetzt ihren Zustand ändern. Bei geöffneter Verbindung zwischen Masse und Ausgabepins, liefert der jeweilige Pin ein Signal. Diese Signale können miteinander verglichen werden um eine Drehrichtung zu ermitteln.
Schaltung
Um den Drehgeber in Betrieb zu nehmen, benötigt man, wie in Abb.2 zu sehen, einen Arduino Uno und den Drehgeber, welcher über die Pins angesteuert werden kann. Hierzu wird der Anschluss "GND" und "+" mit dem Massen und Versorgungspin des Arduinos verbunden(blau und rot) und die Pins "CLK" und "DT" an digitale Ports des Arduino angeschlossen (grün und gelb). Der Pin "SW" wird in diesem Beispiel nicht angeschlossen, da dieser für die Inbetriebnahme des Drehgebers nicht erforderlich ist und lediglich einen Schalter repräsentiert. Wird nach Aufbau der Schaltung der Arduino mit Strom versorgt, wird ebenfalls der Drehgeber versorgt, welcher dadurch seine Signale an die digitalen Ports des Arduinos sendet.
Programmierung
Um die Signale des Drehgebers zu verarbeiten, werden bei der Initialisierung des Programms die Digitalen Eingänge aktiviert und zwei Variablen für die Abspeicherung der Signale erstellt. Hiervon wird eine auf 1 gesetzt, um den ersten Durchlauf der folgenden Schleife zu gewährleisten. In einer Schleife wird zu Beginn das Signal vom Pin "DT" ausgelesen. Dieser Wert wird anschließend mit der zuvor auf 1 gesetzten Variable verglichen. Sollten diese ungleich sein, wird überprüft, ob der Wert des Pins "CLK" ungleich dem Wert des Pins "DT" ist. Sollte dies der Fall sein, so wird auf dem Monitor "Drehung gegen den Uhrzeigersinn" ausgegeben. Andernfalls wird "Drehung im Uhrzeigersinn" ausgegeben. Abschließend wird die zuvor auf 1 gesetzte Variable auf den Wert der anderen Variable, welche den Wert von Pin "DT wiederspiegelt, gesetzt.
Youtube-Video
Hier geht's zum Video des realen Aufbau mit Inbetriebnahme: https://www.youtube.com/watch?v=OGvUcEk7kO8
→ zurück zur Übersicht: WS 18/19: Sensortechnik (MTR)