Area Scan sensor

I didn't knew where to post something like that so I am posting it in this forum as I am planing to use a arduino board with the kind of sensor I am looking for. Well I don't really know where to start from but what I need for one of my school projects is a sensor that detects area I don't mind if it is camera(like CMUcam) or whatever but I need something that will scan an area on a 2d dimesion plane knowing the distance of the objects around it. I don't know of what kind of keywords I should use on my google's search but I hope you know anything about this kind of sensor I am looking for.

Eh, try to understand your need, do you want to make a sort of radar to locate (measuring distance) of objects around?

sort of... if possible on a 3d axis but 2d axis wouldn't mind me too.

http://www.cs.cmu.edu/~thrun/3D/
I found a similar project of what I am trying to do and here it is.

I found a similar project of what I am trying to do and here it is.

If you look at his page carefully, you'll see that the main ranging system uses a couple of SICK LIDAR ranging units (or something similar) for mapping.

I hope your budget is large enough.

:wink:

I just saw the price and I am......... wondering wtf.. anyways... do you know any LIGHTER and cheaper way? My project has to be really light because of some limitations. I have searched a little bit more and I found a way using a laser and a webcamera. any ideas?

I just saw the price and I am......... wondering wtf..

Yeah - those prices do tend to give a hobbyist a heart attack, but when you think about what it is doing and the speed, etc - it becomes more understandable (typically the distance is measured with high-speed sensors and processing, using either time-of-flight, or more generally wave interference - lots of high-speed DSP on the back end, of course).

anyways... do you know any LIGHTER and cheaper way? My project has to be really light because of some limitations. I have searched a little bit more and I found a way using a laser and a webcamera. any ideas?

Probably the lightest and cheapest method (though not necessarily the most accurate) would be to use a narrow-beam ultrasonic device, and scan/pan it around using a servo (or a stepper with feedback). Maxbotix produces such devices:

Another option would be something like this:

http://www.acroname.com/robotics/parts/R14-SONAR1.html

Note that this device is the same as what you can find in an old Polaroid camera; these can be hacked fairly easily, and there was an article not too many months back in Servo Magazine about how to hook them up to an Arduino (the article was written by the guy who published how-to articles on hacking the Polaroid sensor for the Seattle Robotics Society - apparently his early hack wouldn't work with an Arduino, so he re-visited it and published the how-to in Servo).

These Polaroid sensors have a fairly narrow beam width (much more narrow than something like the Parallax Ping), but not as good as the Maxbotix sensors.

Along the lines of what you found for homebrew laser ranging, check out these two articles:

http://letsmakerobots.com/node/2651

http://www.seattlerobotics.org/encoder/200110/vision.htm

Granted, the second one would be much more difficult to implement on its own, but you could probably adapt the idea to a standard webcam (perhaps using OpenCV or Roborealm?)...

:slight_smile:

I would rather not use an ultrasonic rangefinder because I can't be so sure for the accuracy of the results. I found this article my self and put me into thoughts... I wouldn't like ppl to see a robot that throws a laser beam everywhere around it and finally it might get into an eye and hurt it... I would rather use infrared but again I searched over google and haven't found anything. I am thinking of putting a infrared lens in front of the camera but I don't know how it will work.... and what camera would you suggest me to use?

I would rather use infrared but again I searched over google and haven't found anything. I am thinking of putting a infrared lens in front of the camera

An infrared laser is even more dangerous than a red one, because the human eye won't see it and the blink reflex won't kick-in and save you eye.

Most solid-state cameras will see near-infrared, you just need a filter to remove visible wavelengths.

if I remove visible wavelengths than there is no possibility that it will hurt anyones vision?

if I remove visible wavelengths than there is no possibility that it will hurt anyones vision?

no on contrary, as AWOL stated (and please read carefully

An infrared laser is even more dangerous than a red one, because the human eye won't see it [InfraRed] and the blink reflex won't kick-in and save you eye.

You need to remove the **in**visible part

I have a idea
use a camera and two lasers the lasers would project Two Points such that the distance between the points would be a constant and then after taking a pic you could measurre as to how many times the image size is to the distance between the laser points and you get the distance

I've seen this system on discovery they used it to measure the length of alligators ;D

I have a idea
use a camera and two lasers the lasers would project Two Points such that the distance between the points would be a constant and then after taking a pic you could measurre as to how many times the image size is to the distance between the laser points and you get the distance

Actually, this idea isn't much different than the "simple web camera LIDAR" distance measuring device you can easily find with google; instead of using a single laser dot and determining the distance from the centerline of the view frustum of the camera, you are using two dots and measuring divergence. It might be slightly more accurate, or have some other quality, but it doesn't sound that much different.

Regarding eye safety and lasers:

Think about this: LIDAR units from SICK, among others, have been used extensively for real-time motion planning, 3D scanning, etc - when there are a bunch of people present. Their devices are considered "eye safe". How do they do it?

Whether a laser can damage a person's eye depends on a number of factors, the biggest being: laser power, distance from laser to eye, and "dwell time" of the laser on an individual's eye. With this in mind, to make something as "eye safe" as possible:

  1. Use the minimum amount of laser power for the job. Most of the time, you can get by with a red laser at 5 milliwatts or less.

  2. Try to maintain a distance gap of at least a meter or two from the laser to humans in range.

  3. Don't scan the laser slowly; this increases dwell time on targets. So you need to make you sensing and measuring system fast and accurate.

The commercial LIDAR units use all of these approaches, and then some. One thing else that they tend to do is have an automatic shutdown of the laser if, for some reason, the scanning motor stops or there is another problem with the system. You should build such a fail-safe in any solution you manage to design, if possible.

:slight_smile:

[edit]I would rather not use an ultrasonic rangefinder because I can't be so sure for the accuracy of the results. [/edit]

The accuracy is in the range of 1cm. I don't know how you can get better than that with what budget (exactly how much?) you have.

Anything that I can think of will likely be slow to map out the surrounding as well. Again if you had money, you could build a radar atenna array and quickly scan your surrounding with shifting phases among the atenna and Arduino will possibly not be able to calculate as fast, you need a real computer.

This all sounds impossible as a "school project", unless you study at that cmu.edu and your boss has an ATM in his/her lab. ;D ;D ;D

Anything else you can do instead of this project?

Sorry

"simple web camera LIDAR"

i didnt know what that meant :-X
i just put out what i knew :slight_smile:

didnt know what that meant

:slight_smile:

i have seen this site a month back i didn'd understand the abbreviated term LIDAR
i got to know it now . Thanks !

.

Not exactly arduino-compatible(ok, not even close :slight_smile: ) but if you want distance-mapping like it sounds like, I think you'll need much more processing power than the ATMega can handle.

If you're trying to create a 3D scan of an area like in the site you linked, this seems like the way to go... you just need to figure out a way to combine the RGB and the depth to get it textured correctly. Sounds tricky, but certainly possible.