Infrared Speed Motor Sensor

R48.37 inc VAT

Ideal for sensing the speed of your robot. Our robot chassis comes with 2 encoder disks (plastic disks with holes in them) fitted to the robot motors.  This module fits over the encoder disk counting the holes in the disk, the amount of holes per second detected by this module determine the speed of your motors.

Encoder disks can also be bought separately.

Out of stock - Join the waitlist to be emailed when this product becomes available

SKU: inf-52 Category:


Small sensor for measuring motor speed or other objects that can pass through the detectors slots. Each time an object blocks the light from passing from one side of the slot to the other, a pulse is produced at the output. The output signal is pre-conditioned using a comparator to provide a clean low or high signal.

* Reader opening: 10(h) x 12.5(w) mm
* Supply voltage: 3.3 – 5V
* Output: Low or High
* Dimensions: 23 x 20mm
* Mounting holes ø3.2mm, c-c 14mm

Example Sketch & Diagram



Connection for Uno or other 328-based platforms:
  left wheel encoder (DO)  -> Digital pin 2
  right wheel encoder (DO) -> Digital pin 3
#define LEFT 0
#define RIGHT 1

long coder[2] = {0,0};
int lastSpeed[2] = {0,0};
void setup(){
attachInterrupt(LEFT, LwheelSpeed, CHANGE);
attachInterrupt(RIGHT, RwheelSpeed, CHANGE);

void loop(){
static unsigned long timer = 0;
if(millis() - timer > 100){
Serial.print("Coder value: ");
Serial.print("[Left Wheel] ");
Serial.println("[Right Wheel]");

lastSpeed[LEFT] = coder[LEFT];
lastSpeed[RIGHT] = coder[RIGHT];
coder[LEFT] = 0;
coder[RIGHT] = 0;
timer = millis();

void LwheelSpeed(){
coder[LEFT] ++;

void RwheelSpeed(){
coder[RIGHT] ++;





There are no reviews yet.

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

You may also like…