Wheel Encoders for DFRobot 3PA and 4WD Rovers (SKU:SEN0038)

From Robot Wiki
Wheel Encoders for DFRobot 3PA and 4WD Rovers SKU:SEN0038

Introduction

This encoders are designed for DFRobot 3PA and AWD Rovers. It can give you the rotation degree of the wheels. Encoder uses non-contact method to convert the angular displacement signals. Best fit with Micro DC Geared Motor.
It includes encoders, plastic tube, paper-mediated gasket etc.

Specification

Voltage:+5V
Current:<20mA
Resolution:20 PPR
Weight:20g

Sample Code

// # 
// # Editor     : Lauren from DFRobot
// # Date       : 17.01.2012

// # Product name: Wheel Encoders for DFRobot 3PA and 4WD Rovers
// # Product SKU : SEN0038

// # Description:
// # The sketch for using the encoder on the DFRobot Mobile platform

// # Connection for Uno or other 328-based:
// #        left wheel encoder  -> Digital pin 2
// #        right wheel encoder -> Digital pin 3
// # Note: If your controller is not 328-based, please check https://www.arduino.cc/en/Reference/AttachInterrupt for proper digital pins.


#define LEFT 0
#define RIGHT 1

long coder[2] = {
  0,0};
int lastSpeed[2] = {
  0,0};  


void setup(){
  
  Serial.begin(9600);                            //init the Serial port to print the data
  attachInterrupt(LEFT, LwheelSpeed, CHANGE);    //init the interrupt mode for the digital pin 2
  attachInterrupt(RIGHT, RwheelSpeed, CHANGE);   //init the interrupt mode for the digital pin 3
  
}

void loop(){
  
  static unsigned long timer = 0;                //print manager timer
  
  if(millis() - timer > 100){                   
    Serial.print("Coder value: ");
    Serial.print(coder[LEFT]);
    Serial.print("[Left Wheel] ");
    Serial.print(coder[RIGHT]);
    Serial.println("[Right Wheel]");
    
    lastSpeed[LEFT] = coder[LEFT];   //record the latest speed value
    lastSpeed[RIGHT] = coder[RIGHT];
    coder[LEFT] = 0;                 //clear the data buffer
    coder[RIGHT] = 0;
    timer = millis();
  }
  
}


void LwheelSpeed()
{
  coder[LEFT] ++;  //count the left wheel encoder interrupts
}


void RwheelSpeed()
{
  coder[RIGHT] ++; //count the right wheel encoder interrupts
}

Assembly Guide

FIT0029 AS 01.jpg

Step1:


FIT0029 AS 02.jpg

Step2:


FIT0029 AS 03.jpg

Step3:


FIT0029 AS 04.jpg



FAQ

Serial monitor

Q. The feedback value is full that the Serial monitor is always printing value around 25903 and 25344, no matter of the motor running or not.

A. The first parameter in the interrupt function ' attachInterrupt ' means the interrupt number that is just number 0 and 1, not the interrupt pin number.read more

Encoder Schematics

Encoder Schematics


Nextredirectltr.pngGo Shopping Wheel Encoders for DFRobot 3PA and 4WD Rovers (SKU:SEN0038)

Category: DFRobot > Sensors & Modules  >  Sensors > Motion Sensors