TSL1401 for robot vision
jaeg
Posts: 156
I'd like to use the TSL1401 line scan sensor to give my robot an idea as to where it can and can't go. Is it possible to estimate distances or at least get an idea as to where obstacles are.
1. Is this possible without lasers?
2. How far away can an object be before the camera can no longer see it?
3. Would using a Ping((( on a servo be a better option for this?
1. Is this possible without lasers?
2. How far away can an object be before the camera can no longer see it?
3. Would using a Ping((( on a servo be a better option for this?
Comments
The TSL1401 sees a light and bright pattern in a single scan line. It can see clear across a room with good light, but the trick is figuring out what to do with the information. Your program needs to know what sort of signal it is looking for in the noise. For example :
You might be able to see a moving object by comparing frames and looking for changes in brightness. A candle is
A candle would be a bright spot in a dark background. So a firefighting robot might use it to locate one.
A laser could turn the TSL1401 into a range finder or beacon locator. This is made much easier with a laser line generator.
Line following or bar code reading are both easy because of the high signal to noise present in the image.
I want to give my robot a 'feel' for the room he is in. What I mean by this is I want him to be able to look around where he is, find the direction he can go the farthest without having to change direction, and then head that direction.
-Phil
It would be nice to use this for motion detection.
I added an ultrasound sensor to my Scribbler 2 to do just this. One thing I noticed in my S2 experiments is the IR sensors of the S2 compliment the ultrasound. Ultrasound has trouble with hard flat objects that bounce the sound off at an angle so none of the echo returns to the sensor and they also have trouble with soft fabrics that can absorb the sound rather than reflect it. The IR sensors work well in both of these situations where the ultrasound fails to detect an object.
This is the robot I am hacking.
http://theoldrobots.com/heroid.html
Then I think it's safe to say no matter what you do it will look cool.
While finding the direction the robot can travel the farthest is a good starting point, it actually gets old pretty quickly since the robot ends up just driving back and forth across the room. I think some sort of wall following algorithm would be fun to watch. Or even better, some sort of mapping program that will let the robot try to find places it hasn't been before.
It would be nice to come up with a way for a robot to remember where couches and other ultrasound absorbers are located since my robot frequently ended up running into the couch. I added some memory to my robot but it was very sort term. Without some sort of memory the robot would have spent most of its time trying bumping into the couch. The stall sensors on the S2 were another very useful sensor. Every so often the only way an obstacle was detected was by the stall sensors.
I'm motorizing the arms and head (the arms are posable and the head is stationary normally) so for the most part this guy will be a large testing ground for various behaviors. One of which is implementing neural nets into his programming so via positive or negative feedback from me he will learn how to behave to certain stimuli.