INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 1 Bewertungen - 5 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Rotary Encoder - Anschließen
17.01.2016, 11:30 (Dieser Beitrag wurde zuletzt bearbeitet: 17.01.2016 11:32 von King2k7.)
Beitrag #1
Rotary Encoder - Anschließen
Guten Tag,
habe mir diesen (Klick mich) Rotary Encoder gekauft.
Leider bekomme ich es nicht richtig zum laufen, habe folgenden Code auf dem Arduino Nano hochgeladen und lasse mir die Counterzahlen in einer Consolenanwendung auf dem Desktop ausgeben:
Tutorial-Seite(Klick mich)
Code:
#include <Bounce.h>

// This code increments or decrements a counter based on
// the status of a rotaty encoder

#define pin1 2
#define pin2 3
//#define LED 13
int counter = 0;

// Instantiate a Bounce object with a 5 millisecond debounce time
// Only pin1 needs to be debounced. It is assumed that pin2
// will be stable when reading pin1
Bounce bouncer1 = Bounce( pin1,5 );

void setup() {
  pinMode(pin1,INPUT);
  pinMode(pin2,INPUT);
  pinMode(LED,OUTPUT);
  Serial.begin(9600);
}

void loop() {
// Update the debouncer
  bouncer1.update ( );

// Turn on or off the LED and
// increment or decrement the counter
if ( bouncer1.risingEdge()) {
   if (digitalRead(pin2)){
     //digitalWrite(LED, HIGH );
     counter++;
     Serial.println(counter);
   }else{
     counter--;
     Serial.println(counter);
   }
} else {
    //digitalWrite(LED, LOW );
}

}

Leider spielt der Counter nur verrückt und geht rauf oder runter ohen das ich am Entcoder drehe.

Ich habe 2 Kabel an an der Seite vom Entcoder wo nur 2 Pins sind angeschlossen und diese am Pin 2 und 3 am Arduino angeschlossen.

Weiß jemand woran es liegen könnte?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2016, 12:16
Beitrag #2
RE: Rotary Encoder - Anschließen
Ich verwende diesen Sketch:
http://www.arduinoforum.de/arduino-Threa...4#pid13314
der funktionier prima. Teste es mal. Du musst den nur auf deinen Encoder (Auflösung) einstellen.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2016, 12:34
Beitrag #3
RE: Rotary Encoder - Anschließen
Leider gehts auch hiermit nicht. Liegt evtl. an den Rotary Encoder?!
Welche Rotary Encoder sind denn zu empfehlen evtl. einer mit Board(Klick mich)?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2016, 12:38 (Dieser Beitrag wurde zuletzt bearbeitet: 17.01.2016 12:40 von hotsystems.)
Beitrag #4
RE: Rotary Encoder - Anschließen
Dann liegt es an der "Beschaltung".
Hast du Widerstände dran?

http://images.google.de/imgres?imgurl=ht...UQrQMIJDAB

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2016, 12:43 (Dieser Beitrag wurde zuletzt bearbeitet: 17.01.2016 12:43 von King2k7.)
Beitrag #5
RE: Rotary Encoder - Anschließen
Nein, welche brauche ich den dafür und was bewirken diese?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2016, 12:49 (Dieser Beitrag wurde zuletzt bearbeitet: 17.01.2016 12:53 von Bitklopfer.)
Beitrag #6
RE: Rotary Encoder - Anschließen
(17.01.2016 12:43)King2k7 schrieb:  Nein, welche brauche ich den dafür und was bewirken diese?

Moin,
da der Drehencoder nur gegen Masse = GND geschaltet ist benötigt der Digitale Eingang noch einen Arbeitspunkt indem man mit einem Widerstand die Leitung gegen VCC zieht. Dies kann man aber auch ganz einfach durch die aktivierung der Pullup Widerstände in der CPU machen und das geht so:
Code:
pinMode(pin1,INPUT_PULLUP);
  pinMode(pin2,INPUT_PULLUP);
...dann muß nur noch die Software dazu spielen...und hierzu soll es fertige Librarys geben.
Oder einfach mal hier im Forum suchen.
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2016, 12:51 (Dieser Beitrag wurde zuletzt bearbeitet: 17.01.2016 12:54 von hotsystems.)
Beitrag #7
RE: Rotary Encoder - Anschließen
(17.01.2016 12:43)King2ok7 schrieb:  Nein, welche brauche ich den dafür und was bewirken diese?

Link ist in meinem letzten Post.

Und mit dem obigen Code brauchst du keine Library.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.01.2016, 09:47
Beitrag #8
RE: Rotary Encoder - Anschließen
Es lag unter anderem daran das ich den Groundpin nicht angeschlossen hatte. Jetzt geht's, danke.

Was ist sinnvoller einen eigenen Widerstand zu benutzten oder INPUT_PULLUP?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  encoder clemens5555 17 393 20.10.2016 15:48
Letzter Beitrag: hotsystems
  LCD Menue mit u8glib und Encoder stefanch 1 359 04.06.2016 21:02
Letzter Beitrag: hotsystems
  Encoder auslesen Phil333 1 666 23.03.2016 21:40
Letzter Beitrag: hotsystems
  Drehgeber - Encoder - Wertebereich eingrenzen Nimes 3 474 14.03.2016 12:38
Letzter Beitrag: Nimes
  Encoder s_fr 3 498 10.01.2016 19:41
Letzter Beitrag: hotsystems
  Rotary Encoder zählt nicht Rückwerts elmo 8 2.181 20.05.2015 20:05
Letzter Beitrag: elmo
  Rotary Encoder: schneller drehen > Wert mehr verändern Foto-Ralf 7 1.430 28.02.2015 15:50
Letzter Beitrag: HaWe
  Encoder enc 01 a BenWolf 3 1.050 23.09.2014 18:16
Letzter Beitrag: Thorsten Pferdekämper
Brick Arduino LCD Menü Rotary und Settings im Untermenü setzen? Wampo 19 16.632 20.09.2014 14:42
Letzter Beitrag: klaros
  Encoder: Zahl mit einer Nachkommastelle erzeugen Cray-1 68 10.500 27.08.2014 16:33
Letzter Beitrag: Cray-1

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste