thotro / arduino-dw1000

A library that offers functionality to use Decawave's DW1000 chips/modules with Arduino.
Apache License 2.0
511 stars 286 forks source link

Adding TDOA (time difference of arrival) feature for direction finding #77

Open greymfm opened 8 years ago

greymfm commented 8 years ago

The Arduino library currently supports the ToA (time of arrival) feature of the DW1000 modules for two-way-ranging.

In addition to that it would be very useful to also use the TDOA (time difference of arrival) feature of the DW1000 modules for direction finding, e.g. if we could connect 3x DW1000 modules and get the time difference of the received signal between them. This would allow us to do direction finding (knowing the angle of the sender). Thereby, in addition to distance we would also get an angle, thus reducing the number of senders for position estimation (localization). In other words, we would not need 3 senders (3 distances), just 1 (1 distance, 1 angle) and that greatly reduces the required infrastructure for position estimation (localization) in a difficult outdoor environment like a robotic lawn mower.

Combining both methods (ToA and optionally TDOA) would be very intesting.

What do you think?

tdoa

Rotzbua commented 8 years ago

Looks similar to: https://github.com/lab11/polypoint

wql7013 commented 7 years ago

They both don't work as well as we expect, because of the short distances between each two antennas, we tested. The errors seem to be caused by the inner circuit of the IC or the signal detection algorithm rather than the environment surroundings or the clocks. We connected two DW1000 ICs to the same external reference clock, and the standard variation of the time difference of arrival between them was about twice larger than that of the time of flight calculated by TWR, mathematically it implied that the errors of estimated timestamps of arrival of the same signal between two different sensors are independent.

Rotzbua commented 7 years ago

Please move the information about TDoA to the wiki. Thanks. duplicates #47 #77 #108 #128 #130 #152