Test the External Encoders

Only for External Encoders!
If you are using Feedback 360° servos, go to Feedback 360° Servo Test instead.

This short test program makes sure each encoder sensor can see the spokes in the wheel right next to it.  If the encoder is working properly, a built-in LED on the board will light up each time it detects a spoke, and go off when the hole between the spokes passes by.  

  • Browse to Documents\SimpleIDE\Learn\Examples\Robots\ActivityBot
  • In SimpleIDE, open Test Encoder Connections.side
  • Turn the robot's PWR switch to Position 2.
  • In SimpleIDE, click Load EEPROM & Run.
  • With your hand, gently twist the ActivityBot's left wheel. This should make the P26 LED turn on and off as you rotate the wheel.
  • Repeat for the right wheel.  Turning the right wheel should make the P27 LED turn on and off.

 

/*
  Test Encoder Connections 
*/

#include "simpletools.h"

int main()                    
{
  low(26);
  low(27);
  while(1)
  {
    set_output(26, input(14));
    set_output(27, input(15));
  }
}

 

If It Doesn't Work...

Here are some symptoms and causes:

P26 Light stays off while turning the left wheel.

  • The left encoder cable may be plugged into the P14 servo port backwards.
  • 20 k resistor (red-black-orange) may not be making contact at either the P14 or 3.3 V socket.
  • The left encoder may be mounted with the sensor facing the chassis instead of facing the wheel spokes.

P27 Light stays off while turning the left wheel.

  • The right encoder cable may be plugged into the P15 servo port backwards.
  • 20 k resistor (red-black-orange) may not be making contact at either the P15 or 3.3 V socket.
  • The right encoder may be mounted with the sensor facing the chassis instead of facing the wheel spokes.

P27 light instead of P26 light blinks while wheel turning the left wheel (or vice versa).

  • The encoder cables are swapped! Switch the encoder cables plugged into P14 and P15.

P26 or P27 light stays on while turning wheel.

  • Resistor connecting P14 or P15 socket to 3.3 V socket is too small. It should be 20 k-ohm (red-black-orange-gold). This resistor came in the bag with the encoder parts, not with the rest of the resistors in the kit.

The encoder's light stays on all of the time, or most of the time but occasionally flickers off.

  • The encoder might be mounted so the sensor faces inward toward the chassis instead of outward toward the wheel spokes. Un-mount and swap them so they face outward.
  • You may need to adjust the servo/encoder bracket position. Make sure your servo is fairly centered in its hole, there should be a small gap above and below the servo body. Its position is easily corrected by loosening the servo screws slightly, repositioning the servo, and then re-tightening the screws.

Both P26 and P27 stay on at all times during the test

  • The jumper for P14 & P15 may be faulty, or not making proper connection. Make sure it is pressed all the way on to the pins, and that it is not cracked, loose, or otherwise damaged. If any of your jumpers are damaged, contact technical support (support@parallax.com) and do not apply power to the affected headers!

 

If Both Encoders Work

Congratulations! It is time to calibrate your ActivityBot.