Author Topic: need advice on navigation, wheel configuration, motor types, etc.  (Read 9467 times)

0 Members and 1 Guest are viewing this topic.

Offline thomasaconwayTopic starter

  • Beginner
  • *
  • Posts: 4
  • Helpful? 0
Hello all,

I am trying to build a programmable bot that will move in straight lines, turn at specified angles, move in an arc for a specific distance, basically move so that it is able to paint a specific shaped field, for my example, a soccer field.

I know that it would be difficult and expensive to actually make one off the bat that would be able to actually paint a full sized field (this is a two semester project for school), so part of my project is working according to certain assumptions:

1) i will paint a 1/6th scale field
2) the field will actually be a flat auditorium floor (not turf)
3) there will be no obstacles on the "field"

I have never built a robot before, or programmed one, though I have been reading a lot of tutrials from this site.

My question is, I need this bot to perform the motions that I described in the beginning.  I am on a tight budget ($500).  What method is there that would be the most simple to allow this type of robot motion and control?  I have read the tutorial on encoding and think that is useable - but is it accurate enough?  I would obviously like to keep it simple as possible so i don't kill myself with the programming end of it.  I also have no idea what type of controller i should use. 

I also need the robot to stop on a dime - i'm assuming i need this to make sure my odometry measure is accurate.  My current design is to have the robot motored by two front wheels sharing an axle and steering done by a third wheel (like a backward tricycle).  Please, ANY suggestions will be greatly appreciated.

Offline Gopher

  • Full Member
  • ***
  • Posts: 82
  • Helpful? 0
Re: need advice on navigation, wheel configuration, motor types, etc.
« Reply #1 on: October 07, 2006, 03:32:21 PM »
Well, I'm hardly an expert myself, but I'll share my thoughts for what they're worth.
First, since this is going to have to be a fairly precice mover to begin with, I don't know if stopping on a dime will be much of a problem; precision movers tend to be fairly slow to begin with, so just check out the tutorial on motor breaking (under intermediate somewhere, I forget where offhand) and it should go ok.

Second, I'm not sure what the requirements are exactly, but it might be easier to get accuracy using a couple of fixed IR beacons and a digital compass, rather than by tracking wheel spin. From those two bits of info, your bot could figure out where it is and where it's going reasonably accurately. If you're not sure how to interpret the direction and range information to determine relative position, you can talk to a math or computer science teacher at your school and they can help; it's a fairly simple geometry problem, really.

Hope this helps... maybe someone with more experience with using IR beacons can clarify this a bit?

Offline thomasaconwayTopic starter

  • Beginner
  • *
  • Posts: 4
  • Helpful? 0
Re: need advice on navigation, wheel configuration, motor types, etc.
« Reply #2 on: October 07, 2006, 04:04:13 PM »
thanks for the quick reply - i haven't read up on anything about IR beacons - can you point me to a good site?  if i used that in concert with a digital compass, how would i use both info together?

Offline thomasaconwayTopic starter

  • Beginner
  • *
  • Posts: 4
  • Helpful? 0
Re: need advice on navigation, wheel configuration, motor types, etc.
« Reply #3 on: October 07, 2006, 04:07:13 PM »
btw - what kind of range do these IR beacons have?  a regulation soccer field is 120 yards long and my scale version is going to be 20 yards . . . will the IR beacon have the range and accuracy I can use?

Offline Gopher

  • Full Member
  • ***
  • Posts: 82
  • Helpful? 0
Re: need advice on navigation, wheel configuration, motor types, etc.
« Reply #4 on: October 08, 2006, 12:30:36 AM »
Well, haven't worked with the much myself; did a quick google search for "robot IR beacon" and read some specs on a couple of IR beacon/reciever kits; the stated ranges were far less than what you need, unfortunately. If you look around, some might have higher frequency, I don't know for sure. I've just heard that accurate measurement of movement based on wheel spin is practically impossible; you could probably make it work easily enough for a scale model on a flat, artificial surface, but hundreds of meters on grass is an entirely different matter. Without at least a digital compass to correct your orientation, you would probably have a hard time getting a bot to go in a straight line for 100 meters on grass, let alone all the turns involved in painting the lines for a soccer field (I assume you're painting the full regulation set of lines, not just the outer boundaries).

I don't know what the maximum range of available IR beacons is; most probably have the range for your scaled down soccer field test, but I'm not sure if any have the range for a real full-sized soccer field. In both cases, accurate orientation on the beacon might  be a problem too.  I wasn't trying to answer your problem, because it's outside my area of expertise, I just thought I'd point you in a direction that might be helpful. It is your project, after all, and it sounds acheivable to me given the timeframe even if you are a complete novice at present.

If you've got two semesters, I recomend doing some experimentation. If budget is a concern, only buy components you know you'll need in the final bot - motors, wheels, microcontroller, etc - then you can do some tests to see how good it is at moving in a straight line, how much it deviates over 10m, 50m, 100m, etc. And bear in mind, if this is a school project, it is possible to completely fail and still get an 'A', as long as your work demonstrates real effort. So don't stall for time, dive in as quickly as you can. You'll understand the difficulties better, and be more able to ask more specific questions. A specific, descrete question will usually get a relatively quick response. Right now you're still asking big, vague questions, which are a lot harder to answer. Start small, remember that you don't have to solve every problem before you start building your bot.

Try to get the programmible bot moving around by the end of the first semester, and then you can spend the second fiddling with the software and changing/extending the bot to make it acheive the desired goal.

Offline thomasaconwayTopic starter

  • Beginner
  • *
  • Posts: 4
  • Helpful? 0
Re: need advice on navigation, wheel configuration, motor types, etc.
« Reply #5 on: October 08, 2006, 11:39:02 AM »
That was very good advice.  I'll try and jump in and see what specific questions pop up.  I do not understand though how i can or should "correct" deviations using a digital compass.  Is there a tutorial somewhere on how to do that?

Offline Gopher

  • Full Member
  • ***
  • Posts: 82
  • Helpful? 0
Re: need advice on navigation, wheel configuration, motor types, etc.
« Reply #6 on: October 08, 2006, 12:02:21 PM »
well, there's a short article here about it (linky), though it doesn't talk about the use in particular. An important point, I didn't realise how expensive accurate digital compasses are ($30-$100, according to the article). It doesn't always help, but when ordering any parts, be sure to mention that you're a high-school student working on a school project; you might be able to get some free samples or education discounts.

As for how to use it, that's simple enough. Your MicroController knows what direction it wants to go (in your test case, you could probably arbitrarily orient the field north-south or east-west; in the real field, you'd have to program in the real orientation of the field into the bot.) Based on the difference in angle reported by the compass and the intended angle, you adjust power to the left/right motors so that your bot will turn towards the intended direction. So if you're trying to go due north and the compass reports you are facing 5 degrees east of north, you reduce the speed of the left motors, which will cause your bot to turn left. The adjustment should be proportional to the offset - the further off-course you are, the faster you should make the bot turn.

Offline Admin

  • Administrator
  • Supreme Robot
  • *****
  • Posts: 11,703
  • Helpful? 173
    • Society of Robots
Re: need advice on navigation, wheel configuration, motor types, etc.
« Reply #7 on: October 09, 2006, 05:10:23 PM »
Firstly, this is a really hard problem.

There are three ways I can think of doing it.

The first is a method called dead reckoning, where you have as many possible different sensors on your robot - encoders, gps, compass, IMU, gyros, IR beacons, etc. As your robot travels the sensors will all build up error. Some sensors build up more error than others, so they have what is called a higher confidence level. Knowing the confidence of each (a process that requires extensive error testing of each sensor alone), an equation can do a weighted average of where each sensor claims the robot to be at. It wont be perfect, but might be good enough.

The second, a much more reliable method, is to have an overhead camera with a wide field lens overlooking the field giving orders to the robot.

The third method will work on feilds that have already been painted in the past. I have painted a few feilds in my day, and all I do is just trace over the faded paint already there. If you can mount a cam on the bot that detects this faded paint, it can just run a simple white line following algorithm.

And I found this interesting link, which is only slightly relevent to what you want to do . . . Its a bike mounted spray paint can dot matrix printer . . .
http://www.wired.com/news/culture/0,1284,64419,00.html
Check out the video
There was also a truck version I remember seeing a few years ago but I cant seem to find it . . .

 


data_list