|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||
|
|||
|
Re: Grid-based autonomous
This is likely something along the lines of what M Krass meant by heading information, and keep in mind that I've not implemented this type of system before, but...
If you consider a set of waypoints a1, a2, a3, ..., aN. Consider encoding in each waypoint information about the 2nd waypoint out (e.g. any waypoint aN has information about waypoints aN+1 and aN+2). Currently it sounds as if your waypoint system only has information (location) about the next waypoint (aN+1). What I would attempt is encoding in each waypoint not only the next waypoint's location, but also the angle the wheels/robot need to be facing when arriving at that waypoint. Possibly even encode waypoint aN+2's location in waypoint aN. This will allow you to heavily penalize selection of potential paths that the autonomous program might develop that bring you into your next waypoint on the wrong heading. Identify common "problem paths" and incorporate path-error handling subroutines (a set of general cases for which a small set of bad-case solutions will suffice). Alternatively, plotting optimal paths for every subpath of 3(or whatever size subpath you choose) waypoints in the correct overall field direction would allow you to do some simple error correcting as you suggested. I know alot of the above is kind of vague, but as I said, I've not implemented this type of system for a FIRST robot before. However, I've done a bunch of graph theory/programming, and really this is just a graph traversal problem with constraints of a physical system and game rules thrown in. I might be more useful if I knew how you were implementing the current system, but hopefully you'll find some useful nugget in my post. Feel free to PM or IM me with questions or if you want further input. I think the biggest question is the method by which you are generating paths. Is it on the fly, does it plan and then execute a path, is the optimal path something you give it and then allow it to modify dynamically, etc...? A little more information on the methods you are using at the base of your waypoint navigation system would be very helpful. //Dillon Last edited by Dillon Compton : 23-03-2008 at 01:45. |
|
#2
|
||||
|
||||
|
Re: Grid-based autonomous
I suppose you could say we use something like this...
However, we use robot-centric relative coordinates in a script. The highest (supervisory) level of our autonomous nav system looks at these goals, and has the ability to blend them into a continuous velocity profile (while controlling acceleration and position as well). Hey it won the GM design award... </boast> -q p.s. No, we don't use a gumstix. A 40MHz 8-bit microcontroller (robot controller) is plenty... as long as you know your binary/integer math tricks to steer clear of floating point... ![]() |
|
#3
|
||||
|
||||
|
Re: Grid-based autonomous
One comment - from your diagram it should not be "impossible" to get to the next waypoint if you come into that one wrong.
Your PID loop for steering should be adjusted such that above a certain angle, or when there is an obstacle ahead of you (a single sensor will easily tell you this) then the PID loop will increase the turning amount so that the robot tank steers to head directly to the next target. This is the way we have ours set up. We ended up dispensing with the waypoint system. This year's game doesn't lend itself to it as much as previous years. We have a constantly updating position working off the walls and correlating with the encoders. The sole directive in the program is to continue moving forward when possible. |
|
#4
|
||||
|
||||
|
Re: Grid-based autonomous
Quote:
looking at your plot of the robot, it looks like your heading is being compromised by an x-coordinate that is off. If you add a correction in for your x-position, it should work just fine. ...and looking at wildstang's video we are doing something similar, except using encoders as our sole positioning sensor Last edited by Uberbots : 23-03-2008 at 20:13. |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| small objects, BIG GRID? | Kevin Thorp | 3D Animation and Competition | 4 | 20-01-2008 14:15 |
| Grid computing software | [527]phil | General Forum | 7 | 05-09-2005 18:59 |
| Inventor:Disappearing grid and drawing | JoeXIII'007 | Inventor | 7 | 11-06-2005 18:28 |
| Grid on CMU Cam Java GUI | Leav | Programming | 0 | 14-02-2005 17:06 |
| Referral based games... | Brandon Martus | Announcements | 2 | 09-04-2003 09:45 |