grounding motor case

Excellent! That little hummer really goes. I notice the cameraman got a little behind at the beginning, and had to peel out fast. I am kinda surprised at how fast it is going. How many sonars are in the array? And is these the only obstacle avoidance measures on the bot?
Regarding the fact it did better after the first pass, were you in any sense using the results of the previous trials, from memory store, to aid in later trials?
- dan michaels
formatting link
=======================
Reply to
dan
Loading thread data ...
Yeah, I was the witless cameraman, sitting there enjoying the view until Irealized I had run out of zoom...
This was originally supposed to be a 1/4 scale version of a vehicle with a top speed of 25 mph, so top speed of the robot should be about 6 mph, but it's running here at a "crusing speed" of 70% full speed, so about 4 mph, which is a good walking pace. And I'm kind of out of shape.
4 sonars in the array, spaced at 15 degree intervals. Here's a picture:
Yes, for now. Original plans were to use an array of 6 sonar for a total frontal coverage of about 90 degrees, but the simpler 4 sonar array with a total coverage of about 60 degrees seems to be sufficient. It even works remarkably well for wall/perimeter following. Here is the robot following part of the perimeter of a big institutional-type building here on campus at SMU (6.2M):
Well not intentionally, but it must be something like that. Perhaps the IMU Kalman filter refines it's estimate of the system error over the course of the run?
best dpa
Reply to
dpa
Hmmm. I imagine your scale-model was mainly intended to test the odometry system, but I should think the sonar array might not work very good at 26 MPH = 36 fps. You probably need a bit more lead time on making steering decisions than this system would provide. I'm just conjecturing here. OK for 4-6 MPH, though.
===============
I did notice the bot in the other movie having a little trouble recognizing tree roots and sometimes cutting very close to the tree trunks. OTOH, 6 wheels did a good job climbing over every obstacle in the field - picnic table platforms/etc.
Reply to
dan
For a scaled up model, what about laser range finding? Has anybody experimented with this on a hobbyist level?
Reply to
Mark Haase
Dan your robot is one of the great examples of hobby 'robotics' (quotes for empahsis on autonomous operation, not RC controlled devices). I am particularly interested in your mention of an IMU and Kalman filter. I know what both are, but I'd like to hear more about your implementation. Are you doing odometry for each wheel? What other inputs are you providing to the Kalman filter?
TC
Reply to
TC
It's David's = dpa.
Reply to
dan
I'm not sure at this time that the full-scale version will ever get built, so I'm concentrating on the performance of the robot as an end in itself.
This is the first real outdoor off-road robot that I've built, and there are some different definitions about what constitutes an obstacle vs. what is just, for example, a rough road.
The idea was for the platform to be able to drive over anything that the sensors don't detect, or vice versa (detect anything we can't drive over), which it can more-or-less do now. Still a few vulnerabilities, and cutting some of those corners pretty close! (Although I've seen human drivers do the same ;) With 6-wheel drive and 6-wheel independent suspension, the robot can pretty much climb over any objects lower than the sonar array.
best, dpa
Reply to
dpa
We have a SICK range finder that we are/were planning to deploy on the full-scale vehicle:
And maybe also a couple of the Vorad radar units, if the sonar turn out not to be useful.
regards, dpa
Reply to
dpa
Well thank you very much. Sorry about the name confusion.
The robot is running odometry on both wheels to track it's position, somewhat like outlined here:
In addition there is an inertial measurement unit consisting of a 3-axis gyroscope, 3-axis accelerometers, and 3-axis magnetometer all driving a Kalman filter to return orientation and accelerations.
On the videos, the robot is using the IMU value for rotations (theta) and the wheel values for distance (X and Y). Today, I ran the robot on a large grass field to a waypoint 1000 feet away and back, with an error of only about 3 feet.
thanks again for the kind comments, dpa
Reply to
dpa
dpa - the apology on the name is all mine !!!
Thanks for the reply on the IMU and Kalman filter. Really interesting. Did you roll your own filter or start from an example?
TC
Reply to
TC
I have used a laser pointer and video camera for parallax type rangefinding. It works nicely on mazes and other similar situations where the walls are typically at right angles. Set the camera high and the laser low (or vice versa) and use a cylindrical mirror or lens. This will produce a solid line of laser light. The long axis of the optics must be vertical. Aim the laser light "sheet" forward and it will stripe everything in one shot- no scanning which could introduce artifacts. Try to get a good narrow band red filter (although stacked red gels can work well also). Place this over the video camera. The camera will see almost nothing except the red lines. I say lines instead of line because parallax will split it into multiple segments, depending on the obstacles that are present. If the laser is low and the camera high, then the height of the line is a direct indicator of distance, where a low line is nearby and a high line is in the distance. A simple scale factor relating video scan line to distance can be used to determine how far away a wall is. Now, if we are smart, we can create a histogram of the line positions- treat the line as a trace on an oscilloscope for this to work well. Slice the video frame into vertical columns and in each column you will have no more than one (but perhaps zero) red dots. That is a sliver of your laser line. Make a one dimensional array in software having the same number of cells as the video image has scan lines- and each time a slice has a red dot, add it to the proper array cell. One pass at the image reveals a fascinating fact- if the robot's camera is perpendicular to the walls, the histogram will have sharply defined buckets of data- two or three cells will have all the counts, with a little noise here and there- cells with a single count or two in them. But if the robot is at an odd angle, the histogram will be all over the map- one or two counts per cell, for instance, over a broad range. This is because perpendicular lines tend to add all their red dots into very well defined array cells, whereas non-perpendicular images will spread them uniformly per segment over a wide range of histogram cells. So right away, you know whether your robot is facing the wall at right angles- a very useful fact for navigating doorways, for instance. This can help you find a true bearing without fancy compass or GPS hardware or beacons and trigonometry. If your robot is in high light environments, the red filter will tend to eliminate most of the interference, leaving only the laser data to be considered. Raise the contrast on the image mathematically to eliminate noise and large blocky images- we really need only the line of red light. Once you have tried this method, you will see that rounded obstacles in a strongly perpendicular setting will stand out easily. You can get a direct conversion of every single pixel of red line into a distance. This is a powerful tool for mapping things and getting around obstacles, and depending on your skill as a programmer, you can even tentatively identify many things. The key here is a controlled environment, as is almost always the case in robotics.
Cheers!
Sir Charles W. Shults III, K. B. B. Xenotech Research 321-206-1840
Reply to
Sir Charles W. Shults III
How about using a diffraction grating instead of the mirror/lens?
This would produce a patter of dots that would be predictable and might give more information than a line. Or might now; I haven't had time to try this yet. -- D. Jay Newman
formatting link
Reply to
D. Jay Newman
TC,
We have a commercial IMU, but have done some work with a home-brew version. Are you familiar with the sourceforge autopilot project?
and these folks:
The one we're currently using is from Microstrain:
It is a 6DOM device but at this time we are basically using it as a gyro-corrected 3D compass. The pitch and roll angles are only used to recover from unstable attitudes. Unlike the IMU in the 2-wheel robot, nbot, where the pitch angle is used for balance:
As Sir Charles correctly observes, this present robot is designed to run outdoors in unstructured environments where the ground is not level and the obstacles are not well defined. This is a challenge for the mechanical platform as well as the sensing:
My current thinking is that I will add dynamic balance, like nbot, to this robot as well, so that it can balance on the front or rear two wheels, and drive arouind that way, making the vehicle extremely difficult to tip over. I've got the data coming from the IMU anyway, and it would be pretty cool, I think.
Static + dynamic balance makes sense for an offroad vehicle; I bet Detroit will offer it someday!
best regards, dpa
Reply to
dpa
So, do you have any good sources for the cylindrical lenses? I have a couple of projects where I could use them and the laser pointers.
Catman
Sir Charles W. Shults III wrote:
Reply to
Catman
Cylindrical lenses are often referred to as "anamorphic" lenses- they are used in the Cinemascope process. I tried looking under "anamorphic lens" in Google and was astounded to find what they want for them. But there is a simple source that I remembered before I tried to come up with one myself. There is a "single line text magnifier" that is available in many drugstores; it is exactly what you want and is in the price range of from one to five dollars US. Your best bet is to either find a scrap or surplus unit if the text magnifier does not pan out, or if you have a little patience and skill, get a Plexiglas rod and cut it down and polish it yourself. This is not for the faint-hearted but the results can be very good. I gave it a shot and came up with a quite decent lens on the first try. Here is what to do. Locate some clear plastic rod. Using a bandsaw, cut off a short section, perhaps about a centimeter in length. Cut it across the axis so that you have a stubby cylinder. Clean or sand the end and then stand it on the end and cut a chord through this and you will have a piece you can polish down. Make your cuts as square and accurate as possible; you may want to make a jig. Now, using fine sandpaper, rough sand the unit until the piece is clean and will set flat. Whatever you do, refrain from flame polishing the piece as this will distort the curvature terribly- the thin ends will curl and wreck your work. This must then be polished as flat and smooth as possible, because you are going to be feeding your laser beam into the flat surface you are polishing. There are plastic polishing kits available from the plastic supply houses, and you can get very, very close by rubbing the piece over a large flat steel file with fine teeth. A few passes over 600 sandpaper on a stable, flat surface is next, followed by the polishing. I use 1 micron compound and a little water, and you can make it clear as glass. A drop of water on this surface is very useful as you can see where it is going as you are getting close. I know this sounds finicky and time consuming (and it is) but this is one skill you will not regret adding to your bag of tricks- the ability to polish plastic properly. You can then make all sorts of lenses or clear surfaces or windows for things. Even machining a Plexiglas part and leaving a perfect surface on one critical face then becomes a feasible act. But do try the drugstore first and see if you can find the text magnifier- it has to be the long thin type that magnifies on one axis only. They are cheap and pretty available.
Cheers!
Sir Charles W. Shults III, K. B. B. Xenotech Research 321-206-1840
Reply to
Sir Charles W. Shults III
Most of the animorphic lenses Chip talks about will be way too large for the average sized desktop bot. You want a modern line-generating optic, the kind they use for small scanners.
You can almost always find something decent at Meredith Instruments
formatting link
. Check out their "Line Generating Optic," for $15 (a little high, but Dennis provides good customer service). It's the perfect size, and unlike an animorphic lens, it's low-loss. Check around and you should be able to find these for $1 to $5. Try midwest-laser.com, lasersurplus.com, and the other laser surplus outfits. Also be sure to read Sam's Laser FAQ
formatting link
for other ideas.
Keep in mind that most of the cheapo penlight lasers come with different diffraction heads, and a line optic is usually included. These work by diffraction through an inexpensive film filter, and the line quality isn't always very good (it might look "hazy"). Still, it might not matter for your application.
-- Gordon
Reply to
Gordon McComb
Lot's of interesting references...thanks!
TC
Reply to
TC
Have you looked at Edmund Scietific for optical components (i.e cylindrical lenses)?
TC
Reply to
TC

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.