Rotary Ecoder | Botshop

Rotary Ecoder

R28.73 inc VAT

7 in stock

Purchase this product now and earn 25 Bot Points!
SKU: rot-51 Category:

Description

A rotary encoder is an electromechanical device that converts the angular position or motion of a shaft or axle to an analog or digital code. Rotary encoders are usually placed at the side which is perpendicular to the shaft. Rotary encoders act as sensors for detecting angle, speed, length, position and acceleration in the automation field.

The module can count by rotation the pulses output both clockwise and counterclockwise. Different from the potentiometer, the counting is unrestricted. It can be restored to the original state by the button on the module, i.e. counting from 0.

Application

It is widely applied in fields such as steel, harbor machinery, hoisting machinery, pressure machinery, glass machinery, packaging machinery, etc

Example Sketch & Diagram

19_419_1

#define clkPin 2 #define dtPin 3 #define swPin 4 int encoderVal = 0;

void setup(){ pinMode(clkPin, INPUT); pinMode(dtPin, INPUT); pinMode(swPin, INPUT); digitalWrite(swPin, HIGH); Serial.begin(9600); }

void loop(){ int change = getEncoderTurn(); encoderVal = encoderVal + change; if(digitalRead(swPin) == LOW) { encoderVal = 0; } Serial.println(encoderVal); } int getEncoderTurn(void) { static int oldA = HIGH; static int oldB = HIGH; int result = 0; int newA = digitalRead(clkPin); int newB = digitalRead(dtPin); if (newA != oldA || newB != oldB) { if (oldA == HIGH && newA == LOW) { result = (oldB * 2 – 1); } } oldA = newA; oldB = newB; return result; }

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.