Help Solving a problem before I have it.

musictechmusictech Posts: 54
edited 2005-02-02 - 17:20:23 in Robotics
Going to have a problem. I know its coming and hope you all can lend a hand.

I am doing a project using an FPGA controller and several stamps. Basically FPGA controller will take over all decision making for "drone" stamp powered bots. These drones will have bluetooth connectivity and GPS locators. They will each be given a unique id, similar to a MAC address, just in binary and they will be using something similar to encapsulation to communicate all their info. Other than the ability to do simple movements, run a object detection system, and communicate, the drone robots will have no decision making ability. The FPGA will do that.

My problem is, without adding any additional equipment, how can I tell what direction the drone is pointing? Lets say the drone is stopped. The FPGA controller wants it go to a point in the opposite direction. How can I convince it is pointing in the wrong direction? Or lets say it has stopped and performed many little tasks, rotating left and right. How can I get it to remember the direction it is pointing in, so that when the FPGA controller tells it to go to a point, it will know which way to turn?

Any help will be appreciated.



  • Bruce BatesBruce Bates Posts: 3,045
    edited 2005-02-01 - 06:36:34
    musictech -

    If I understand the situation correctlly, the drones will be equipped with GPS. If they know where they are now, and where they were at the last waypoint, they'll therefore know their own last direction of travel. If the FPGA keeps track of that as will both will have the same information. The last direction of travel will dictate their present heading.


    Bruce Bates
  • Jon WilliamsJon Williams Posts: 6,491
    edited 2005-02-01 - 15:08:24
    There are a number of small compass modules suitable for robots. You could equip your drones wtih a compass and simply query for current direction.

    Jon Williams
    Applications Engineer, Parallax
    Dallas, TX· USA
  • Jim McCorisonJim McCorison Posts: 359
    edited 2005-02-01 - 17:35:10
    I see two problems: 1) which way am I presently facing, 2) traveling in the correct direction.

    The GPS will not help with #1. While a GPS will put out a "compass" heading, it is only valid while in motion, and only over an averaged period of time. Once you stop, or slow sufficiently, the compass information is meaningless.

    A GPS could solve problem #2 as long as the distances traveled are sufficient for the accuracy of the GPS. If you want to travel 4 feet in a specific direction, commonly available GPS units won't be accurate enough to do so. You would need high end commercial grade units which are far more accurate, and expensive.

  • musictechmusictech Posts: 54
    edited 2005-02-01 - 18:37:23
    Here is the problem.· I am not sure I can spend any more on my budget, so the compass module may be out.· Unless it is next to nothing cheap.· Also I had thought of recording the previous location and that is all well and good when your moving.· However this won't help me when the drone has stopped to perform some sort of action.

    For example, lets say it travels to a waypoint stops performs various rotations while performing a task.· The GPS won't change as the actual location hasn't changed.· But now the drone could be pointing any of 365 different directions.·

    How do I get around that?· I am thinking of using an encoder on the steering wheel and the movement wheels and using them to calculate the direction, but not 100% sure that will work flawlessly.· Slip in the wheels would cause errors.
  • musictechmusictech Posts: 54
    edited 2005-02-01 - 18:38:30
    Another solution might be to use an old optical mouse, but that might be a project in itself figuring how to interface that with a stamp
  • achilles03achilles03 Posts: 247
    edited 2005-02-01 - 20:28:25
    As mentioned above, GPS can only give you accuracy to within a few meters, so unless you're averaging a couple feet a second, you can't really rely on GPS for directional information.

    Jon's suggestion of the compass would be your best bet if it's in your price range.

    If that's out of your price range, then maybe you could come up with some coarser but effective options. What is your arena/working area like?

    Can you place various colored lights around the arena? If that's an option, you could use 3 photocells (very cheap) facing the same direction, each with a red, yellow, and blue filter in front of it. Place a red, yellow, and blue light (also cheap) at 90 degree angles with respect to your arena. When you need to determine which direction they're facing, check the photocells. The photocells will read different intensities depending on which light they're facing. A low reading on all 3 photocells means it's facing the unlighted 4th direction. This would require some testing and calibration, and wouldn't work if the arena was outside or in a very bright room.

    Some more info about your "arena" and rule/requirements would be helpful.

    Hope that helps,
  • musictechmusictech Posts: 54
    edited 2005-02-01 - 23:38:39
    GPS will be fine with during traveling, because it should be doing roughly a few feet per second. However it the getting started.

    My arena is not fixed. I mean theoretically this project should work anywhere anytime, but probably for the demonstration it will be on an enclosed arena.

    Would it be possible to do something with an old normal compass and some infared emitters and recievers?
  • musictechmusictech Posts: 54
    edited 2005-02-01 - 23:39:43
    or perhaps a compass and a pot
  • RickBRickB Posts: 395
    edited 2005-02-02 - 06:20:07
    Musictech: Just a bit of free associating here. #1 A compass with a black background, white indicator needle, a ring of suface mt phototransistors around the circumference and floodlit with leds. #2 Same floodlit compass, no phototransistors, spiral tapered slot around top of compass, cds photocell above it measuring total amount of light reflected from needle as more or less of it is exposed by changing width slot. measure with pot command, Much cheaper than first. Brain exhausted, can't think any more. burger.gif

  • allanlane5allanlane5 Posts: 3,815
    edited 2005-02-02 - 13:48:21
    One more idea: a compass with only one LED and phototransistor. Put these so the needle of the compass blocks 'North'. Now you can easily have your 'bot point north -- and THEN tell it which way to go.
  • RickBRickB Posts: 395
    edited 2005-02-02 - 15:08:16
    Expanding on Allans' idea, use 4 phototransistors. N,S,E,& W can be found and then calibrate turn with # of steps to rotate to next point. Use hardware to turn 4 outputs to 2 bits if short of i/o ports. Or, use 4 tap voltage divider (5 resistors) with 1 transistor to each tap, and output from top tap. Measure with pot command.
    On first post, idea #2 requires 1 end of needle to be black.
    Possible idea killer: Local magnetic fields, ferrous metal objects.

  • achilles03achilles03 Posts: 247
    edited 2005-02-02 - 17:20:23
    I think the solution is becoming more complicated than the problem. Not only that, but mounting everything just right (phototransistors, etc) would be somewhat tough and tedious for every robot.

    What would be cheap enough for you? How about $13 a sensor?

    Their digital sensor outputs 8 directions: N, NE, E, SE, S, SW, W, and NW. Is that enough resolution for you? There's probably other compass/sensors out there, but that's the first one I came accross.

    Also, if you do decide to go with the phototransistor idea, just get 3 mounted at 120 deg apart, with the north side of the compass painted black and the south painted white. You can determine direction by calculating how much black and white is exposed to each photocell.

Sign In or Register to comment.