Hello, I wanna know the answer to the titular question.
I’m currently using single side TWR because the measurement time presumably is the shortest, as I will be including a large amount of tags in the future, as much as 100. double-side would likely double the measurement time even not counting all the overhead.
But at the same time, double side clearly has the advantage of improved accuracy.
My question is, how much more accurate? Are there researches and thesis done on it? If it’s significantly more accurate then it merits a decision to switch to that scheme, even if it means noticeably increased measurement duration.
It depends entirely on how good your clock error estimates are.
If the clocks on both devices were perfect then the accuracy is the same. DS-TWR still gets a slight advantage since in that situation it’s the same as the average of two SS measurements but that’s the only difference.
As soon as you have to allow for clock errors then you need to factor in how different the clocks are between the two units. If you have a reference source that you can use to measure this (e.g. your initiator always transmits at a perfectly defined period) then you can measure this clock difference on the responder and compensate for it accordingly. If you can do this perfectly then again the two systems should give the same accuracy. Obviously doing it perfectly isn’t possible but in the correct circumstance it’s possible to get fairly close.
On a DS-TWR we typically get a measurement standard deviation of around 3 cm and a mean error from truth of under 2cm. But a lot of work has gone into getting to that point.
Thank you for you very detailed elaboration as usual Andy! What about Single Side? Can you get in within half a meter? If we can get it down under 30 cm it would be simply divine. 50cm would be good enough, with amplifiers, @ 100 meter range.
We never tried single side, we started out aiming for position errors under 10cm so didn’t consider it worth testing. However I’d expect it to be able to do what you want assuming you have some sort of repetitive signal available that you can use to calibrate clocks. This could either be your normal tag or a special fixed tag that acts as a system master time indicator.
Some of the examples from Decawave use the carrier integrator to correct the clock.
Have a look at ex_06a_ss_twr_init in dw1000_api_rev2p14 and https://github.com/Decawave/dwm1001-examples.
I believe PANS release 2 uses SS-TWR with clock offset compensation. There are a number of threads about this, for example Why is SS TWR used in PANS 2.0 instead of DS TWR?
Thanks for the information! I’ll look into it and it’s gonna take some time and effort…