4 years, 5 months ago.

Units of Distance Measurement

I am wondering if anyone might know what the units are for distance that are output via this program. I have the program running, but cannot determine what the values mean, as they are not defined in the program. Thank you very much in advance.

Question relating to:

This is the DW1000 driver and our self developed distance measurement application based on it. We do this as a semester thesis at ETH Zürich under the Automatic Control Laboratory ... decawave, driver, dw1000, eth, Ranging, SPI, tranciever
Comment on this question

1 Answer

4 years, 5 months ago.

Unless there is some scaling on the final output it looks like it should be meters.

inline float MM2WayRanging::calibratedDistance(uint8_t destination) {
 
    float rawDistance = (tofs[destination] * 300 * TIMEUNITS_TO_US / 4);

Where tofs is the total time for 4 messages (2 each way) in decawave time units, TIMEUNITS_TO_US scales from the internal 15.65ps time units into microseconds and 300 is the speed of light in meters per microsecond.

Sorry I haven't gotten back. I will do some more tests and get back with some actual values to see if it's in meters or not. Thanks.

posted by Timothy Le 03 Jul 2015

I finally got some time to look into this again and it seems that the output is in feet for some reason. I put the modules on two sides of a ruler and when 12 inches apart, it seems that the program outputs a measurement 1 foot. Is there some other switch to convert between feet and meters. I'm still trying to look through the full code and fully understand it.

posted by Timothy Le 02 Aug 2015

I just got some additional numbers, but they only seem to be more confusing. These distances are from antenna to antenna on the modules:

  • 0.5FT - 0.8
  • 1FT - 1.1
  • 2FT - 1.3
  • 3FT - 1.9
  • 4FT - 2.1
  • 5FT - 2.7
  • 6FT - 3.0
  • 7FT - 3.3
  • 8FT - 3.8
  • 9FT - 4.0
  • 10FT - 4.5

Most of the values are +/- 0.1 since wireless interference may affect the accuracy of the measurements. Any help interpreting these results would be appreciated.

posted by Timothy Le 02 Aug 2015

That looks like meters to me.

It goes up by 1 every 3 feet or so which is what you would expect. The accuracy isn't great, it looks to be going up slightly faster than it should but it's certainly close.

Unless you've done an antenna delay calibration there is going to be a constant offset since the system won't know how much delay the antennas, cables and connectors are going to add.

This needs to be done for every device if you want accurate numbers, you can't measure one and use that number for everything even if they are supposed to be identical, no two parts are ever completely identical. A loose connector will add 5cm to the measurements when you are looking at fractions of a nanosecond timing resolutions.

posted by Andy A 03 Aug 2015

Thanks Andy. I forgot that the DWM1000's would require antenna delay calibration since they are OEM modules. I will try that out and see what results I get. I'll mark your answer above as the answer to the question. Thanks again.

posted by Timothy Le 03 Sep 2015