Go Down

Topic: noob with roomba and arduino. optical sensor question (Read 1 time) previous topic - next topic

voices

i'm sure this is a basic question but i just got my arduino.  i'm intrested in ultimately building a balancing line following robot.  i also have an old roomba i just tore apart for parts.  i see it uses a number of optical sensors.  my question is which led is which and how do if configure them with the arduino?  i understand one led is a emitter and one is a receiver and together they sense a change in reflectivity of a surface but how do i know which is which and how do i wire them to work with the arduino?

Thank You
Voices

brs0906

Can you upload a picture of the sensor, or at least count the wires coming from it? I'm not familiar with the inside of a roomba.

RobotMan_24

I believe what you migth be looking at are the "cliff sensors".  They will detect if the floor from underneath the roomba vanishes - and thus it will stop to avoid driving down some stairs or over a big dropoff.

I don't know if you could utilize these sensors to follow  a line unless it was driving over a very "controlled" surface.  You probably would have the best chance at utilizing the sensors to do this by using alumium tape for the best reflectivity, and driving the roomba on a rug (very un-reflective).

The roomba itlsef is not very smart however, so you'd have to feed the sensor feedback into arduino, and maybe power the emitters with a lower voltage level.  I assume that since the leds are so close - they might be "saturating" the reciever no matter if the surface is dull / diffuse.

If you look at teh setup of the sensors, they are set at a specific angle - so really the sensors are more setup to work to complete a "light circuit" just based on geometry.  When there is no floor for the light to reflect on - the reciever will no longer pick up the reflected light - and detect the cliff.

Check this out / this will probably give you some info on it:
http://www.robotreviews.com/chat/viewtopic.php?p=96901

Hope this helps, and if you have any further questions about this, programming or electronics, ask away!

Go Up