Shop OBEX P1 Docs P2 Docs Learn Events
Distance between RF Transmitter and Receiver Using Arduino — Parallax Forums

Distance between RF Transmitter and Receiver Using Arduino

Hello all,
I am doing a project on finding the distance between RF Transmitter and Receiver
I am using two 433MHz Transmitter and Receiver pair.

But max Frequency of arduino is 16MHz, is it possible to calculate the transmission and reception time of the RF module using ardunio

Suggest easy methods to find the travelling time of Rf, so that the distance can be calculated using Distance=Speed x Time.

If this is not possible, do tell a way to go about....
Both Hardware and software changes are welcome

Comments

  • kwinnkwinn Posts: 8,697
    Not an easy task with a micro and software. Speed of light in a vacuum is 299,792,458 meters/second in a vacuum, so if your transmit/receive pairs were 300 meters apart the elapsed time to send a signal from A to B and back to A would be 2 microseconds. To get reasonable accuracy (1%) you would need to measure the elapsed time and account for the software delays to at least the 10 nanosecond level. Not a practical job for a 16MHz micro unless it has a hardware assist.
  • Thanks for your response, can i know what kind of hardware assist is needed.
    Is there any possibility to reduce the frequency of RF Transmitter and Reciever

    But have seen this implemented, please tell a solution to complete this project
  • Thanks for your response, can i know what kind of hardware assist is needed.
    Is there any possibility to reduce the frequency of RF Transmitter and Reciever

    But have seen this implemented, please tell a solution to complete this project

    You need to supply part numbers for the RF devices so a data sheet can be referred to.
  • Reducing the frequency does not reduce c (speed of light). The theory of operation regarding laser range finders may be of some interest to you (https://en.wikipedia.org/wiki/Laser_rangefinder has the formulas you seek for a time-of-flight scheme) , they typically measure round trip time for a pulse of light then calculate the range. There is another method using triangulation but this requires a well collimated beam, which RF is most definitely not. This is not a trivial project to create, usually specialized silicon (processor) is used. Perhaps you may want to experiment with ultrasonic based devices - these utilize sound pulses and ultrasonic transducers are cheap and widely available. Parallax's Ping uses sound, their laser rangefinder uses light in a time-of-flight scheme. The manuals on both of these devices gives a nice overview of how this works.

    Mike R...
  • The time of arrival of a modulated RF signal is limited by the modulation bandwidth, for a 25kHz bandwidth channel that means the arrival time is measurable to a few microseconds, being the risetime of the carrier with that bandwidth (6us nominally). This is completely independent of the carrier frequency and severely limits the distance resolution you can get with narrow band simple techniques.

    Fortunately there are tricks to be played using spread-spectrum techniques coupled with phase measurement, which
    is how GPS works - worth reading up about?

    Also the brute force method is UWB (ultra-wide band), which typically operates at high microwave frequencies where lots of bandwidth is available - this allows something that's basically time-of-flight like an ultrasound sensor. Again readup about this, there are several chipsets using this available.
  • kwinnkwinn Posts: 8,697
    Thanks for your response, can i know what kind of hardware assist is needed.
    Is there any possibility to reduce the frequency of RF Transmitter and Reciever

    But have seen this implemented, please tell a solution to complete this project

    First, keep in mind that I have never built hardware to do this, so consider the answer theoretical only, and that there may be difficulties in implementing the hardware.

    The hardware would consist of two transceivers A and B.

    Transceiver A has hardware to send a short burst of RF at frequency F, and a timer measure the interval between sending the burst and receiving a burst back from Transceiver B.

    Transceiver B listens for a burst of RF at frequency F and sends a burst back as soon as the burst from Transceiver A ends.

    The sequence would be:

    Transceiver A:
    Start timer and start transmitting RF.
    At end of burst time stop transmitting and listen for RF.
    After receiving RF burst from B stop timer and calculate speed.

    Transceiver B:
    Listen for RF burst from A.
    After receiving RF burst from B send RF burst.

    After looking over the hardware needed I think two Propellers, one for each transceiver would be most if not all of the hardware needed to control the two transceivers. An even simpler approach would be to use a laser, mirror/retro-reflector, and a single Prop.
  • You don't understand the issue - in a bandwidth limited channel there is no burst, the carrier amplitude rises smoothly up and smoothly down on the timescale of the modulation. To measure the arrival time of this more accurately than the risetime is "difficult" in the face of normal multipath fading and so forth - you basically are limited by the modulation bandwidth, typically 25kHz for FM transceivers. The timing resolution you are likely to get is a few us, ie on the order of a mile.
  • pjvpjv Posts: 1,903
    Mark_T

    Finally, somebody who "gets" it, and understands the issues. Nice explanation.

    Cheers,
    Peter (pjv)
Sign In or Register to comment.