Logo in einem Stromverteiler


Google-Suche auf MEINE-SCHALTUNG.de :





Online Rechner

Chronik

Dauerkalender


Drehgeber - Tester

(mit Arduino)


Drehgeber-Tester

So könnte ein Prototyp eines selbstgemachten Inkrementalgeber-Testers aussehen.

Mit Arduino Nano und einer 7-Segmentanzeige kann man schnell und mit wenig Aufwand einen einfachen Drehgeber-Tester konstruieren. Eine nützliche Komposition, wenn keine andere Einrichtung zum Testen eines Inkrementalgebers zur Verfügung steht. Die Schaltung soll die Inkremente entsprechend der Drehrichtung zählen und anzeigen. Auf diese Weise soll ein Drehgeber schnell überprüft werden können.

Drehgeber

Kübler Drehgeber

Kübler Encoder
Festspannungsregler 78xx
Schaltungen_mit_TM1637


Den Test führen wir mit einem Inkrementalgeber von Kübler durch. Der Geber liefert bei einer vollen Umdrehung 500 Inkremente. Die Zählung der Inkremente übernimmt Arduino Nano. An den kleinen Mikrocontroller werden beide Spuren A und B des Gebers angeschlossen. Dank dessen, dass die Signale zueinander versetzt sind, kann die aktuelle Drehrichtung des Gebers erkannt werden.

Die 24 VDC Signale des Gebers werden mithilfe zwei einfachen Spannungsteilers auf 5 VDC herabgesetzt. Die aktuelle Anzahl der gezählten Inkremente wird mithilfe einer 7-Segmentanzeige sichtbar gemacht. Hier kommt ein fertiges Anzeige-Modul mit dem TM1637 Treiber zum Einsatz. Mit einem Schalter kann man den aktuellen Zählerstand wieder auf 0 setzen. Ein Spannungsregler stellt die Versorgungsspannung von 8VDC für Arduino bereit.

Der Schaltplan

Schaltplan

Schaltplan

Das Programm

Arduino Nano

Arduino Nano

Arduino (Einführung)

// *******************************************************************
// Drehgeber - Tester
// 7-Segmentanzeige mit TM1637
// Arduino Nano IDE 1.8.13
// *******************************************************************
#include <TM1637Display.h>
#define CLK 10
#define DIO 11
TM1637Display display(CLK, DIO);
int PinA = 2;
int PinB = 3;
int Taster  = 4;
int Zaehler = 0;
String Ausgabe;

void setup() {
    display.setBrightness(10);
    display.clear();
    pinMode(PinA, INPUT);
    pinMode(PinB, INPUT);
    pinMode(Taster, INPUT_PULLUP);
    attachInterrupt(digitalPinToInterrupt(PinA), Inkremente, CHANGE);
}

void Inkremente () {
    bool WertA = digitalRead(PinA);
    bool WertB = digitalRead(PinB);
    if (WertA==true && WertB==false){
        Zaehler++;
    }
    if (WertA==false && WertB==false ){
        Zaehler--;
    }
}

void loop() {
    Ausgabe = String(Zaehler);
    display.showNumberDecEx(Ausgabe.toInt(), 0b00000000, false, 4, 4);
    if (digitalRead(Taster) == LOW) {
        Zaehler = 0;
    }
}       
// *************************************************************       


Die Testschaltung

Testschaltung

Testschaltung


Kurzvideo

Kurzvideo


Weitere Themen:


Google-Suche auf MEINE-SCHALTUNG.de :


Home Impressum Datenschutz