Shop OBEX P1 Docs P2 Docs Learn Events
Mapping concept, any comments? — Parallax Forums

Mapping concept, any comments?

DgswanerDgswaner Posts: 795
edited 2010-06-27 02:07 in General Discussion
I may totally be reinventing the wheel here but I've been thinking about how to set up a map for use with bots in my house, here is a concept I've been thinking about.

rather than a bot having to remap a room as it goes or every time it restarts, I had a thought to take an area, a room an entire floor or any place a robot would be traveling. and apply an x,y grid. 1,1 1,2 etc. for every square foot in the area. This data could be held in 2 variables or an array what ever works best, each square would then be given a number value based on how "safe" that square is for travel. take a look the image attached. I've indicated different areas by color for visual reference, but each color would translate to a different number. So areas like the top of stairs on the right would be a 9 meaning avoid at all costs. yellow would be a 8. etc. so in the perfect world a bot could navigate an area with no sensors other than those required to keep track of the x,y coordinate. compensating for the real world the bot would have a host of sensors that could override parts of the map. but not ignore it.

If the bot headed toward an object like the large box in the image. (a toy, a person, new furniture) it would use it's on board sensors to move around the object. at the same time it would map the newly found object. However this object would not be stored permanently.
The first time the bot detected an object in a square, that location would be given a value of 1 every time the bot detected something in that same location it would increase the number in that square. Like wise every time the bot didn't detect anything in that square it would decrement the value in that square.

0-5 would be bot assigned values 5-9 would be Mapped constants, values that the bot couldn't override. My thought was to have 0 mean that nothing is detected in the square and is totally safe for travel. at about 3-4 the bot would steer around areas even before it got into sensor range. if the bot traveled close to that area again it would either detect the object and avoid it or reduce that square to a now safe area of level 0.

I didn't want to get too complex on a positioning system, and was planning on a PING for detecting at a distance IRPD as backup for the ping and detecting at 12" and closer, a compass for direction, wheel encoders for tracking distance. as far as position calculations it's been 15 years since I took a math class so I forget what it's called but given a know start position the angel of travel and a distance that would be enough to get the new location. crude I know but I think it would sufficient for "typical" robot navigation. however to help maintain accuracy, every time the bot neared a know wall it could verify it's position in an axis (seeing if the wall it's next to is the same as what the map shows) and correcting the position accordingly.

the initial mapping would have upfront work, but it would be easier to say? go to the kitchen if the bot had a map on where the kitchen was, the same for a docking station, or what ever. If more than one bot were tied into the same map one bot could record object and the other bots would know that an area was now a dead end or what ever.

some down sides would be that there would be a lot of data to crunch, if you rearrange your furniture or move you would have to redo the map.

before I put a whole lot of time into this I would like to know your opinions. anyone ever tried something like this? do you think it would work?
anyone have recommendations on which Micro processor to use... or not use. my bot is about 1' in diameter and I have the option of an onboard PC, which could be use for the map or communication back to a PC sharing ti among bots.

ok back to the grind for now!

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster
600 x 385 - 242K
«134

Comments

  • bennettdanbennettdan Posts: 614
    edited 2007-06-19 05:51
    What are you planning to use to detect what x,y position the Bot is located?
  • Skywalker49Skywalker49 Posts: 172
    edited 2007-06-19 13:19
    D.

    we had some communication about this topic before: http://forums.parallax.com/forums/default.aspx?f=10&m=184961
    I like the idea of working from a map or building a map as the robot moves around.
    There are multiple challenges :<))) to overcome. There is the capabilities to do accurate calculations and there is the
    storage capacity to hold the results. You resolved that by having an onboard PC.

    Then the most important challenge: determination of your position. I'm not aware of sensors (Ping, compass, IR etc. etc.)
    which are accurate enough to avoid huge cumulative errors as you go from one position to the other.

    I like your idea of re-calibration say once you hit a wall. But hitting the wall gives you only partial information.
    So I'm very much puzzled how to handle this "challenge" but it was and still is on my radar screen to be worked.

    Let's keep in touch.
    Ed
  • DgswanerDgswaner Posts: 795
    edited 2007-06-19 15:07
    bennettdan
    My thought was to use wheel encoders to determine distance and the Hitachi compass module for bearing. The bot would have to start at a known location... a charging station or a corner of the room then use a simple right triangle calculation to determine the new coordinate. I know it's not that precise, but I don't think my house is big enough for the error to be critical.

    Skywalker49

    Well I guess to put it simple I want to try fusing both methods, have the bot map as it goes and use a static Map for avoiding problem areas. my main goal is to get past the point of only building "IR wall bouncers", and be able to add a little more functionality to my bots. Right now I have no way of saying go the the kitchen and then come back. (no not to fetch a beer) so even if the Bot's position was off say 3' and I tell it to go to the kitchen I don't see that being that big of a problem. If the error sends the bot heading right for a wall it's sensors will make it either correct it's position on the map and/or use it's onboard sensors to avoid the wall. but rather than heading in a random direction when it avoids the wall it would know which direction to turn to best get to the destination. also for returning to a recharging station even with a huge error in position I would use some sort of local "beacon" to get the bot to pull in to the right spot to connect.

    I'm definitely going to give it a shot, but I'm waiting for the funds to replenish.

    edited: grammar

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster

    Post Edited (Dgswaner) : 6/19/2007 3:13:33 PM GMT
  • bennettdanbennettdan Posts: 614
    edited 2007-06-19 18:32
    Dgswaner,
    Check this sight out I have looked into this before and their vision software can map out a room its kind of nice and they only use a web cam.
    https://www.evolution.com/products/northstar/
  • DgswanerDgswaner Posts: 795
    edited 2007-06-19 19:01
    I've seen that product before and it's pretty cool. interesting robots too. I about died when I saw the price tho. $1700.00 wow! that's spendy. I Don't think I could slide that one through the budget with out my wife noticing. I'll have to wait for the $100 version from Parallax.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster
  • Sparks-R-FunSparks-R-Fun Posts: 388
    edited 2007-06-19 20:03
    I think this is a sound idea though possibly more complex to implement than it may seem. I expect that you will want a PC to handle the mapping but it could be external to the robot.

    The advantage I see is that is breaks the navigation task into smaller, more manageable pieces. A robot going from the living room to the kitchen does not need to plan the exactness of its route in great detail. It only needs to know what room it is in, where it is in that room to within a certain approximation and which way to head for the room exit (say to the hallway) that leads it to the next stage of its journey to the kitchen.

    I like it! To talk about it is easy, though. To program it to function reliably is the challenge!

    I hope you do it!

    - Sparks
  • DgswanerDgswaner Posts: 795
    edited 2007-06-19 20:28
    ya I realize that it will take a great deal of programming skill, most likely more than I current have. but I'm up for the challenge.

    I do like the idea of having the PC in a central location and communicate via blue tooth or RF. that way bots could be small or large and still be able to use the system.

    in all likely hook it will be months before I actually start on this. I need to learn a few of the necessary components first. but I like to plan ahead and work toward a goal. I'll let you know if It works.

    Thanks for the input

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster
  • Skywalker49Skywalker49 Posts: 172
    edited 2007-06-19 21:48
    Dgswaner,

    I agree with you that accuracy to achieve the goals as you have them in mind is maybe not that important.
    Since it has always been my whish to build someting like this, I would like to give this a try later this year,
    after summer holidays in September. There are other "projects" to be completed first !!

    Do you already have a chassis ( base incl. servo's and power supply etc. )?
    I have a boebot with a BS2 and I'm sure that is not what we need to do the job but I would like to use the chassis / servo's of the BB.
    Mike Green has build an interesting machine that seems to be a good starting point. Boebot chassis, Propeller prototyping board,
    wireless communication, PING. It looks like more than a good starting point.
    Here is the link to the thread: http://forums.parallax.com/showthread.php?p=635533

    Regards, Ed

    Post Edited (Skywalker49) : 6/20/2007 7:32:01 AM GMT
  • DgswanerDgswaner Posts: 795
    edited 2007-06-20 02:45
    I'd love to team up with you on this and September is about my time frame for really diving into this.

    I have several Robot I could use for this. I attached the one that I really would like to implement this on. I also have a homegrown Boebot that operates with servos, for the drive train. I think it would be really beneficial to implement this with similar bots. preferably identical so the code could be directly uploaded from one bot to the other.

    my current bot the one attached, has IRPD, ping, and a Hitachi compass. I'm going to modify it to be have a 0deg turning radius and possible add an on board PC. But I have plenty of room to add what ever is required.

    I really like Mike greens platform but it scares me a little. I have no experience with a prop. and I would be much more help using a bs2. but I do want to make the switch to a prop. I'll see if I can't pick one up and start learning it before then.

    perhaps we can talk about this via e-mail off and on to keep things moving in the same direction.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster
    314 x 345 - 29K
    bot.gif 29.2K
  • Mike GreenMike Green Posts: 23,101
    edited 2007-06-20 03:01
    Guys,
    As you may notice from the thread you mentioned, the original BoeBotBasic was made for the Spin Stamp and the Board of Education. That version worked with either an xBee AppMod or the programming port (of the BOE ... Parallax doesn't officially support it with the Spin Stamp, but it worked with my USB to Serial converter ... a Keyspan High Speed adapter). My Spin Stamp version didn't have compass support, but the newer version (in the Propeller Object Exchange) does. You could always start with a Stamp and the BOE, then switch to a Spin Stamp later. You'd only have to add some series resistors to some of the inputs to protect the 3.3V Spin Stamp from 5V logic signals.
  • Skywalker49Skywalker49 Posts: 172
    edited 2007-06-20 20:50
    Mike,

    thanks for the reply. You write " .. can always start with a Stamp and then switch to a Spin Stamp later".
    It is not clear to me what the difference is between a Spin Stamp and a Propeller .. need to do some homework.
    The other thing that worries me is when we make the switch from Stamp to Spin Stamp or Propeller, doesn't that mean
    that all the code has to written and tested again ?


    DS,

    Like the idea of working together on this project. We need to do some homework first and agree on the micro to use
    and then the sensors and interface such as the wireless or blue tooth.
    I think that the base (chassis) and motors is not that important. Of course the programs must be able to handle those
    but with some "personalized" subroutines, we should be able to handle the differences.

    You have no experience with the Prop. Neither do I but I hate to start with the BS and then later have to re-do the code.
    That is a waste of time and leads to frustration.
    I have some experience with microprocessor chips such as the 6800 en Z80. Programming in assembler and even machine
    code ( 0 & 1's ) .. can't get worse. I have the impression that the Propeller is really a challenge. Instead of interrupts,
    multiple dedicated processors .. sounds like a new approach.

    Of course, cost is also something to consider. So, I intend to do some homework in the next couple of days and find out more
    about the Propeller.

    CU, Ed
  • DgswanerDgswaner Posts: 795
    edited 2007-06-21 05:41
    as far as the micro, I think the prop would be the best to use. but I'm not 100% sure if I add in my skill level.. at least on my end. I think that I'll but one ASAP and start learning it. It's something I've been wanting to do any way. this will give me a reason.

    I think your right about the chassis also. it shouldn't matter what kind of bot we have and I would actually like to develop a system that isn't bot specific. and could work on any bot with the right sensors.

    the first thing I would like to know is if this can be a self contained system or if we would need to develop a base unit to do the calcs. and data storage.

    I'll start looking into this when I can. and I'll let you know what I come up with.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster
  • Bruce BatesBruce Bates Posts: 3,045
    edited 2007-06-21 08:31
    Skywalker -

    There is no "Spin Stamp" to my knowledge. SPIN is a language which is used on the Parallax Propeller hardware chip. There is also nothing officially called a "prop" to my knowledge. The so called "prop" is the lazy man's method of typing Propeller.

    The potential confusion with using "prop" is that the EFX board is sometimes called the "prop board". The so called "prop board" (the EFX) has nothing to do with the Propeller chip.

    Bastardization of words, expecially proper nouns, is an enemy all of its own, and it is wholly man-made.

    Regards,

    Bruce Bates

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
  • D FaustD Faust Posts: 608
    edited 2007-06-21 10:29
    There is a spin stamp on the parallax website.· It looks as if it is just a propeller in the same package as the BASIC stamp (EEPROM etc). Note: only 3.3 V signals.

    Link to the page below.· FYI $49.99 right now.·
    http://www.parallax.com/detail.asp?product_id=SS1-IC

    Bruce Bates, you might not have known about it because it says new on the parallax main page.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    D Faust
  • DgswanerDgswaner Posts: 795
    edited 2007-06-21 12:48
    Bruce Bates, It's great diversity of people here that makes this forum so great! both expert and novice Thanks for doing your part!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster

    Post Edited (Dgswaner) : 6/21/2007 3:14:03 PM GMT
  • Marky-MarkMarky-Mark Posts: 26
    edited 2007-06-21 23:10
    How about this for correcting the bots position in a room:
    Have 3 IR beakons placed throughout the room.· Have a rotating detector that spins on top of the bot and finds the angle at which it sees the beacons.· Combine that with a compass module and you know your heading and relative positions of each beacon, and thus your location.· If you mount the beacons up high, or maybee go with several more you should be able to find the positon even with a lot of obstructions.

    Or is my thinking totally off here?
    ·
  • DgswanerDgswaner Posts: 795
    edited 2007-06-21 23:43
    I've thought of that before, but never tried it, I think that the IR beacons will spread so much that it would be hard to get an accurate position relative to the IR emmiter. I had the thought of using modulated lasers, going diagonal through the room and when the bot passes through the beam it can correct it's position. but even that wouldn't give enough information to accurately correct the position.

    for reading in IR or a Laser the Irobot Roomba have a really good solution. on the front of every roomba there is a funnel shaped mirror that must sit over a IR reciever(s) the funnel make it a passive (no moving parts) omni directional IR detector. It receives the remote control commands as well as the communication to the recharging station to park it in the right spot.

    It's on my to do list, to get a stamp able to detect the roomba virtual wall modules. This will help bots avoid hazard areas as well as recalculate it's position.

    thanks for the input!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster
  • FranklinFranklin Posts: 4,747
    edited 2007-06-22 01:15
    The IR beacons will be point sources when the bot is looking at them. The fact that the beam spreads is not relevent. Someone on this site built a bot that navigated between beacons in a house. Had a video and everything.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    - Stephen
  • OSOKOSOK Posts: 35
    edited 2007-06-23 06:38
    I've also had the idea in my head of making my boe-bot more functional by having an idea how to navigate other than by bumping into things and detecting them with IR sensors. Dgs, you made a post basically of what I wanted, but with something I didn't think about: a way for the bot to calibrate its position. Getting further into it, a thought came up: NDBs. Non-Directional Beacons used by airplanes and ships that send out radio signals and by picking them up they can tell their position and distance relative to each beacon. It'll probably be illegal to broadcast signals in the NDB range, but if it's done small scale, it shouldn't interfere with anything and be fine.

    Just something to look into...
  • Skywalker49Skywalker49 Posts: 172
    edited 2007-06-24 20:27
    Dgswaner,

    I did read a lot of Prop. documentation over the last couple of days and I'm impressed !! I think that we should not worry about external resources
    when we start off. Of course, we can always add RF / IR communication later on.
    The Prop. is really powerfull and I look forward to start doing some test with goniometric calculations.

    The type of board I would prefer is the Prop. Proto Board + Prop. Plug for programming. 25,- for the board and 30,- for the Plug.
    The board has 64Kb on board and lots of space to hook-up whatever we need. A plus is also that is fits on my Boebot.
    Now the minus ... the dealer in Europe (Benelux / Netherlands) doesn't have the Proto board in the catalog!! Too cheap I think :<))
    I will give them a call tomorrow and check what they can do about that.

    Ed
  • DgswanerDgswaner Posts: 795
    edited 2007-06-24 21:52
    I've read some of the manual about the prop but I've been away all weekend so I didn't have as much time as I wanted, I was pretty excited about what I read as well I think it can more than handle this project. The only thing I'm not totally sure about is the memory required to hold both maps. I was trying to find out if the prop could handle multi dimensional arrays but I didn't get that far in the manual. I was thinking that it would be easier to handle the data if we had a 3 dimensional array for storing the data of each map. length of room width of room and storing data. 3d arrays would be nice but not necessary,

    If it's easier I could order your boards when I order mine and then ship them to you. do you have paypal?

    I say let's give it a go with the prop and then if it's not accurate enough or we have other issues then we add IR beacons, a base unit or what ever else is required. I would like to add RF to communicate for other bots once it was up and running, but that's the least of our challenges. and that can be done at the end of the project.

    added:

    OSOK, If you want in on the band wagon the more the marrier. I've thought of building RF beacons that a bot could use to triangulate it's position, but when I started looking it to it, it was just way more complex and required way more hardware than i wanted to deal with. Perhaps if this method doesn't produce good enough results than that would be the next step. after all I'm not looking for exact positioning. at least at this point.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster

    Post Edited (Dgswaner) : 6/24/2007 11:48:47 PM GMT
  • Skywalker49Skywalker49 Posts: 172
    edited 2007-06-25 19:33
    I contacted today the Dutch distributor and their reply was very short: "we don't sell that board" neither to they sell the Prop Plug.
    That's not nice isn't it. Parallax should not be pleased with such distr.

    Looked again in the catalog and the Education board will do the job too. It's in the same price class 70+. Disadvantage is, it has only 32Kb of memory but
    it can be expanded for a few $/Euro. Memory used are I2C chips and have 3 address lines. Lot's of memory can be hooked up.

    Have a look, any comments ?

    Look at the picture in the first message of this thread !! That's how my Boebot will look like. Difficult to re-invent the wheel on this forum smile.gif
    http://forums.parallax.com/showthread.php?p=635059

    Post Edited (Skywalker49) : 6/25/2007 8:54:10 PM GMT
  • LSBLSB Posts: 175
    edited 2007-06-26 00:10
    Much is said, in mapping, of avoiding obstacles; I’m not sure why. As a human, I call them landmarks and I rely on them to get me where I’m going. I start at one and move toward the next; from there I choose another. I do not navigate by the open spaces between, but rather from one obstacle to the next—street sign to street sign, blue house to green… city to park to convenience store to picket fence. I can think of no place I’d be more lost than on a featureless sea.

    I very much like the idea of a matrix based navigation and I think your idea of adding recognition of the permanence of obstructions has a great deal of merit, but I think that successful mapping also relies on identifying landmarks, as opposed to avoiding them. The QT301 is an analog proximity sensor—well suited to identifying conductive obstacles. The Parallax color sensor could add a greater ability to distinguish one object from another. RFID tags might be secreted under carpets. It may be possible to collect rudimentary shape information with a series of touch sensors… In addition to mapping clear spaces, I should think that mapping the “flavor” of the landmarks would also be a priority.

    Think of it this way: How much trouble would your robot have navigating if there was an easily identifiable waypoint in every square foot of your house? Is the answer then to avoid obstacles, or to identify more of them?

    To get an idea of how tough this would be, I got on the floor and put a toilet paper tube against the several items at about 3 inches above the carpet (I figured this is what my robot could ‘see&#8217[noparse];)[/noparse]. From what data I could gather through the tube I tried to identify what I was seeing and where I was. Some items and positions were instantly recognizable (a vase, color variations in the fireplace hearth, a lamp base), others were indistinguishable from similar items (dining room chair legs, the matched end tables on opposite sides of the living room). Yet, in virtually every case I was only a foot or two from some object I could identify. I also found several ‘immovable’ landmarks—heater vents, room corners, doorways, and built-ins.

    I don’t know that this is helpful to you, but I do know that rarely in life (presumably in robotics as well) is progress made by avoiding obstacles, but rather by understanding and incorporating them.
  • DgswanerDgswaner Posts: 795
    edited 2007-06-26 02:05
    you've convinced me, I think that object recognition is part of the answer. but even if a robot is able to recognize obstacles it would still need a map of where the obstacles were in relation to each other.... a "matrix map". But rather than having to running into (detecting) a wall before adjusting its position in the matrix, the bot could self learn obstacles and add them to its map and use them to adjust the position in the map.

    LSB one thing that your human test didn't try was a hazard such as steps it's invisible at 4" so how do you detect it. try your test in an unfamiliar environment with lots of stairs, I bet you end up with a sore back. joking aside. steps are a big concern for me, my biggest robot weighs about 50 lbs at the moment and I expect it to get heavier. I know ledge sensors can work pretty well but I would just prefer that my bot not get fractions of an inch away from a ledge before it besides to avoid it, If this bot were to topple down a flight of stairs it could be lethal to a child or pet let alone damaging the bot. I don't intend to let a robots this size roam when and where it wants but I don't want to have to watch it like a hawk either.

    I've hear the idea about RFID tags in the floor and I would love to do that but I have very little carpet in my home and it's just not an option at this point. but I'll definitely consider the walls.

    the color sensor is a great idea as well. few of the rooms in my house have the same color walls and the floors vary some also. so by being able to see the wall, floor and object color just adds another level of accuracy. I like it!

    I see what you are saying about avoiding obstacles, I of course navigate by landmarks as well but only in known environments. thats why I use map quest. or better yet a GPS. when traveling to unknown places. then I just follow a series of steps to get me from here to there. that ultimately is what I guess I want to achieve. a little version of map quest for my home. So I tell a bot to go to the kitchen (no still not for beer). and it takes its current location and creates a step by step list of directions to get there. accuracy is the big issue and that's where I see obstacle recognition being the biggest help.

    thanks for your input I'm learning a lot

    Skywalker49
    This project could balloon into a very large endeavor. I think if we are going to team up on this we need to come up with a set of objectives and then work on a solution.
    I originally wanted just a rudimentary way of navigating but I think this is evolving past what I had in mind, which is great I just want to make sure we are heading to the same finish line.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster
  • Skywalker49Skywalker49 Posts: 172
    edited 2007-06-28 21:41
    Dgswaner and others,
    yes, this could easily balloon but you/we in charge and we should not let us loose focus on the initial goal(s).
    Agreed that you asked for input of this Forum and got good replies. Based on these inputs, we must define objectives and key project / sub-projects to achieve the objectives.
    Maybe a task for the next couple of weeks so that we have a clear picture on the radar of what we want to achieve in terms of functionality.
    Also the consept we want to explore such as your idea of a map, object recognition mentioned by·LSB etc. must be agreed too.
    Not to forget the technical aspect such as which sensors or other external devices will be used.
    A lot to think and dream about.

    In the meantime I have decided to go ahead and get my hands on a Propeller.
    The Dutch Parallax reseller does not have the Parallax Prop. Proto Board for sale but he has another Prop. based
    board -> http://elmicro.com/en/proprpm.html
    Looks good to me.
    I consider to order this board the next week or so.

    Ed

    Post Edited (Skywalker49) : 6/28/2007 9:50:37 PM GMT
  • DgswanerDgswaner Posts: 795
    edited 2007-07-13 04:58
    Skywalker,

    Here is what I want to see from this project.

    I want to be able to add a component to a robot that will give it the ability to know it's location and travel through a user generated map. I don't really want to specify an amount of accuracy because I really want exact location at all times. but I'll accept it to be at least as accurate as it takes for the system to function reliably. if that's inches fine if it's feet fine.
    With as inexpensive as Propeller boards are I would like the "navigation system" to be self contained and not part of the CPU for the robot. I would like to see the system function on minimal sensors. a PING, IRPD, Compass, and wheel encoders. I want to have the ability to rank each piece of the map with a hazard level or preferred area of travel 0-9 ranking 0-1 could be hazard level 2-7 be room labels 8,9 could be a preferred area of travel. I want the bot to build a map on the fly marking hazards and recalibrating position at set intervals or events. I would like to get this functioning to the best of our abilities and then add other components if required or if other functions are wanted. To help with troubleshooting I think it would be good to have a RF link to a PC and have it transmit back data for viewing only. This could be left on the final product if desired. but I don't want it to be required to function.

    Let me know what you think and we'll merge or ideas and go from there.

    I should have my prop ordered on Monday. and I'll start the learning.

    DG

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster
  • WhitWhit Posts: 4,191
    edited 2007-07-13 13:40
    I know this whole subject is way over my head, but I love reading these discussions to help my understanding grow. If you are mapping a specific (known) place - like the inside of your own house. Would it be possible to build the maps ahead of time. If there were gates at certain points on the route (say doorways) could optical clues (like bar codes or even something like the tag reader - http://www.parallax.com/detail.asp?product_id=32390) be read to let the bot know when it was moving from one map area to another and in which direction? Hazardous areas could be marked in this way too. As you moved into a new space (with the other systems - encoders etc) you could have a map only of the clear floor space-which could be more simple geometrically and this could be size slightly smaller (that the actual clear space)·to account for accuracy issues. This wouild keep you someplace know to be safe and clear. You could even have set places on the map that readings to walls or know objects could be taken to verify slight discrepencies. I know you guys are way ahead of me, but maybe this might spark one of you to a new idea.

    This is a great problem and an interesting discussion.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Whit+


    "We keep moving forward, opening new doors, and doing new things, because we're curious and curiosity keeps leading us down new paths." - Walt Disney

    Post Edited (Whit) : 7/13/2007 2:02:09 PM GMT
  • Bruce BatesBruce Bates Posts: 3,045
    edited 2007-07-13 14:07
    Gents -

    Just to follow up on what Whit was posing, here is a basic method I saw on TV the other night on Discovery or the Science Channel. They showed some very hefty pick-and-pack mobile platforms which "read" both routing information (Interstate sign posts if you will) and aisle markings (exit ramp signs if you will) by magnetic means. Since there is no real need for actual alpha-numeric "names" on these routes or "street signs" as you have in the real world, a binary encoded method of marking and a couple of sets of Hall Effect sensors might work out rather well.

    Fore and aft down-facing Hall Effect sensors (possibly arrays) could easily "read" the route information, as well as a set of port and starboard Hall Effect sensors (again possibly arrays) for the "exits" could easily gather all the fixed point location information from the floor and door jambs. I'd like to think it could be done with Velco or double sticky tape so as not to ruin the decor, and so it was both removable and changable if needed.

    I'd be willing to look into the basic feasibilty of such a system, but I can't get to deep in it. It may not be feasible on a small scale, as the system I was watching was owned and operated by the US Government and they have very DEEP POCKETS smile.gif

    Regards,

    Bruce Bates

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
  • DgswanerDgswaner Posts: 795
    edited 2007-07-13 14:34
    Bruce, if you could spend a $2000.00 +/-, researching that method that would be great! [noparse]:)[/noparse] seriously tho. if you wanted to toy around with it and see what you think. but I'm hoping to have system that doesn't rely on way points, my gut feeling is that it will be required. my/our first goal is going to be a basic system that doesn't require them, but I will add them as required or to add functionality.

    I have a Ping and compass module mounted on a servo for distance and heading, I'm currently working on my bot looking for the clearest path, finding the compass heading and turning until the bot is facing that direction. This will be the basics of navigating and calculating direction of travel.

    to restat my goal here in a simple manner I want a module that I can add to any bot and with a minimum amount of sensors make bots do more than randomly bounce around a room. I think if we can get a simple but reliable system it will benefit the whole community.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    A complex design is the sign of an inferior designer. - Jamie Hyneman, Myth Buster
  • WhitWhit Posts: 4,191
    edited 2007-07-13 15:32
    Dgswaner said...
    ·I'm hoping to have system that doesn't rely on way points, my gut feeling is that it will be required. my/our first goal is going to be a basic system that doesn't require them, but I will add them as required or to add functionality.
    DG,

    I did not understand that you were trying to avoid "way points." I guess that using markers or signs gets away from actually making the robot "smarter."

    If you decide that you·have to use them, could the RFID Reader Module and Tags work? The reader is not too expensive and the tags are cheap enough. I know that the read distance is pretty close. Could that happen between the between the bottom of the bot and the floor?


    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Whit+


    "We keep moving forward, opening new doors, and doing new things, because we're curious and curiosity keeps leading us down new paths." - Walt Disney

    Post Edited (Whit) : 7/13/2007 3:40:31 PM GMT
Sign In or Register to comment.