There are 3 ways range error upon rotation can be introduced between two nodes with apparent line of sight.
- Antenna group delay variation
This is the natural variation in the antenna delay with direction. It can be in the range of 20 cm for any given antenna. The “man” antenna Decawave provides has ~10-15 cm variation with rotation, for example. Through careful design, an antenna can get this down to a few cm, but achieving zero is really not a feasible goal, at least not in a general way.
If you have some means to measure the orientation between the two nodes, you can model and correct for this variation to some degree.
- Signal strength variation
As Decawave details in APS011, changes in signal strength introduce a change in antenna delay. This effect is about +/- 10 cm.
By looking at the signal strength, the delay variation can be modeled out. It won’t be perfect because it depends somewhat on the other signals coming into the DW1000.
- Antenna null
In certain orientations, the antenna pattern will have a null. If that null is deep enough, the first path is lost entirely at the receiving node, even at 3 m distances. Similarly, the signal effect could be cancellation where the first path is being mixed with a 180 degree out of phase short multipath. In either case, the DW1000 fails to find the true first path and will lock onto the next detectable signal which is the shortest multipath signal. The distance variation is always positive (reading is longer than true distance). The change in distance can be large, it depends on your environment.
From your description, it is apparent you have this effect going on since that is the only viable means to get such large variations with rotation in an otherwise properly designed system. It is possible some other fault (time base, software, etc) could be at issue here, but if the effect is truly related only to antenna orientation, then to get the large variations you report, it has to be null or cancellation.
I’ve read some articles that do also describe this problem, but not a lot about what to do about it.
If you know the antenna patterns, setup your system so that the nulls don’t align between nodes, which should remove the major variations for the most part. Cancellations from objects moving in your environment can always introduce cancellations, though.
If that isn’t possible, then you need to assess each reading and determine if it is valid (true first path) or false (multipath). This takes some sophisticated analysis of the signal metrics and can only be done to a certain probability. We took millions of empirical measurements to tune our quality weighting function to assess signal validity.
Once a signal is deemed to be likely multipath, there is no easy way to correct it for the true path, that signal just wasn’t received. There are possible complex treatments involving pattern matching the impulse response between a “good” hit and a “bad” one and making some adjustment, but this is a huge amount of work with a good chance it fails. We have looked into that and decided it wasn’t worth pursuing further, and the computational load and time to read out the impulse response would cripple system performance.
Mike Ciholas, President, Ciholas, Inc
3700 Bell Road, Newburgh, IN 47630 USA
+1 812 962 9408