SparkFun Forums 

Where electronics enthusiasts find answers.

All things pertaining to wireless and RF links
By jana
#115307
Hi everyone, I would like to build a robot that could position him self on a table, with help of X and Y cordinates. My thought is to have 4 senders/recivers at each corner. And one sender/reciver on my robot that will recive and send cordinates.

I have some expirence of programing 8bit microcontrollers and step motors.

My question is: Wich wireless device is easyest and good for my project? (e.g. bluetooth, WiFi, RF....)
Wich micro controller is the most suitable for my project?

Thanks in advance
User avatar
By leon_heller
#115317
They all use RF!

The Nordic nRF24L01+ would be suitable. You won't be able to get position data with it, of course, you will need some sort of sensor system.
By jana
#115328
I saw that bluetooth module is much cheeper than nRF24L01+. What is the downside of using blutooth module in this project? Wich one of the techniques is easiest to implement (with less effort)? thanks
By stevech
#115330
jana wrote:Hi everyone, I would like to build a robot that could position him self on a table, with help of X and Y cordinates. My thought is to have 4 senders/recivers at each corner. And one sender/reciver on my robot that will recive and send cordinates.

I have some expirence of programing 8bit microcontrollers and step motors.

My question is: Wich wireless device is easyest and good for my project? (e.g. bluetooth, WiFi, RF....)
Wich micro controller is the most suitable for my project?

Thanks in advance
I think the XBee modules' serial port extension is plug and play simple. All the error correction and protocols are done, to include transparent serial port wireless extension, and sensor sample transmission is built-in if you wish.

getting location accurate to a few inches is impractically difficult unless there's a "track" or some such with known references.
By pbender
#115397
As long as the 4 corner points are fixed, you can get a reasonably accurate position by triangulation using the received signal strength. The received signal strength is Inversely proportional to the distance between the sender and receiver.

I would probably use XBees for the project. They will calculate the received signaling strength for you.

I have a similar project in development myself.

Paul
Last edited by pbender on Sun Dec 12, 2010 4:52 pm, edited 1 time in total.
By stevech
#115406
Signal strength is not very accurate for positioning. To be even reasonable,clear line of sight is needed, along with short distances, and an implementation that minimizes the effects of antenna radiation pattern variations.
By jana
#115408
The speed of light is about 300 000 000ms. I think that it would be hard to get a resolution/accuracy and preciceion under 5m with ZigBee, unless I get a microcontroller with speed above 200Mhz.

Does a packet that has been sent via RF arive at speed of sound or does it take litle bit longer than that?
By jana
#115412
There will be some obsticales located at the same plane as the robot, thats the reason I could not do with US sensor.
By pbair
#115423
jana wrote:There will be some obsticales located at the same plane as the robot, thats the reason I could not do with US sensor.
Can you mount sensors (and/or other components) at an elevation high enough from the table's suface to maintain line-of-sight with your robot? (e.g. hanging from the ceiling, or attached to poles around the table)
By jana
#115486
Thing is though that I wanted a bot that could position him self with RF, if that's not possible for less than 2000$, then I give up the idea.
By colinb
#115815
I seriously doubt you can achieve accurate positioning on such a small scale (to less than one meter accuracy) with RF. The two major RF location determination techniques are (a) time-of-flight and (b) signal strength.

Signal strength is easy to use but provides very poor precision, especially when there may be obstacles in the way creating extra attenuation and multipath signals which will completely throw off the location calculation.

Time-of-flight (TOF) and the specific realization as time difference of arrival (TDOA, which is how GPS works) can provide very reliable measurements but at short ranges (less than 100 m?) will require highly specialized setup. I seriously doubt you can get within one meter accuracy on your budget. See the forum thread Localization for more.

I would consider ultrasonic range sensors if you can, or perhaps putting some sort of 2D position reference in place either on the floor or above the area you are using. Some ideas:
- A matrix of IR LEDs, each transmitting a unique pattern encoding its position (would have to use time-multiplexing to avoid interference between LEDs)
- Multiple ultrasonic transmitter references around the table, or perhaps above it suspended from the ceiling? You can use triangulation with multiple references to resolve a more accurate position.
- Print a grid on the floor and use optical sensing to track position (maybe use an optical mouse sensor?).
- Use a matrix of inductively coupled position references in the floor, such as passive RFID tags with an RFID reader in the robot.
By Cannibal
#115821
Hi There,

I'm not terribly sure that you can achieve what you're shooting for on a small budget. I work in a satnav group at a university where we have people using the signals from space, terrestrial beacon signals, as well as experimenting with ranging to cellular towers, and UWB radios.

The most promising technology for what you are attempting is the UWB radio since they give good ranging performance over short to moderate ranges, however I don't know if you can get them for less than a few thousand dollars and I'm not sure even how legal they are.

I wish you good luck and encourage you to consider the ultrasonic approach mentioned - it's conceptually the same approach as the RF one, it just relaxes some of the really tough design constraints.
By biff44
#115872
There are a number of ways of doing what you want to do. A common, but complex, one is to sent three or more microwave signals between the unit and the corners of the table, and compute the round-trip time of flight (or phase angle). Practically, you want something in the 5.8 Ghz range to get the antenna size small enough to be unobtrusive. You might be able to do it at 2.4 ghz with ceramic chip antennas. You can get accuracies down to a few mm's, if you work at it.

A cheaper way might be the way GE Medical systems in Lawrence MA used to use to track position in an operating room for surgery. They had a set of orthogonal magnetic fields, at low (<100KHz) frequency, and the moving object would intersect the fields and report its position. Maybe there are some research papers on it somewhere on the web. That would be cheaper, as you do not need microwave transcievers!
By colinb
#115873
biff44 wrote:There are a number of ways of doing what you want to do. A common, but complex, one is to sent three or more microwave signals between the unit and the corners of the table, and compute the round-trip time of flight (or phase angle). Practically, you want something in the 5.8 Ghz range to get the antenna size small enough to be unobtrusive. You might be able to do it at 2.4 ghz with ceramic chip antennas. You can get accuracies down to a few mm's, if you work at it.
That sounds really complex and expensive in terms of microware RF electronics and processing, but it's not something in which I have experience.
biff44 wrote:A cheaper way might be the way GE Medical systems in Lawrence MA used to use to track position in an operating room for surgery. They had a set of orthogonal magnetic fields, at low (<100KHz) frequency, and the moving object would intersect the fields and report its position. Maybe there are some research papers on it somewhere on the web. That would be cheaper, as you do not need microwave transcievers!
Very interesting. Magnetic fields would be really fantastic for this since they will not be obstructed by most objects as RF or ultrasound would.