hi, i am going to build two robots which need to be aware of each other’s direction and distance in a circular arena.
I was thinking along the lines of having an infrared “beacon” and sensors on each robot, so they can tell when they are looking at each other. They would also each have a set of ultrasonic ‘sonar’ sensors, so they can perceive distance.
The problem is that each robot’s ultrasonic sensor sets would probably interfere with each other (im guessing, having never worked with them before). is there a solution to this?? Is it possible to put some kind of carrier wave on the transmission which is a different frequency to that of the other robot? can you get sensors which are ‘matched’ in some way?
Any help would be much appreciated.
As far as I know, there isn’t an easy way to make cheap ultrasonic rangefinders not interfere with each other. However, if you’re already using some kind of IR beacon system, you might use that to also coordinate the pings so that only one sensor is active at a time.
How long would it take you to get a distance ping?
Hypothetically, you could build only one robot to have a sonar sensor, and pulse the IR beacon on it at a rate to tell the other bot the distance at the same time that it’s getting a directional fix.
For example, 10hz is 10cm, 100hz is 1m, etc. You could of course scale the frequency to your needs.
I’m rxperimenting with the Maxbotix LV-EZ1 range finder. It has a narrow beam, I believe, and has an ‘enable’ control line to cut off continuous ranging. It puts out an analog voltage, ascii character, and a pulse width to indicate distance.
Makes the software part a lot easier. Cost is about $25 though.