Go Down

### Topic: Indoor Positioning System with DWM1000 (Read 1 time)previous topic - next topic

#### archeresque

##### Oct 20, 2017, 01:56 am
I'm building an indoor positioning system using the Decawave DWM1000 chip. I have 3 anchors and one tag which is what I want to track. I am using the arduino dw-1000 library by thotro for my anchors and tags as well. I have no problem getting range from one anchor to the tag but how would I incorporate all 3 anchors such that I can triangulate a position? Additionally, once I can locate the tag I would love a couple recommendations on how to display this information graphically using a javascript or python etc but the objective of this post is simply to triangulate a position. I am using an Arduino Pro Mini and a custom PCB.

#### jremington

#1
##### Oct 20, 2017, 04:16 am
Look up "trilateration" for general methods.

#### archeresque

#2
##### Oct 21, 2017, 05:24 am
Look up "trilateration" for general methods.
More specifically, I guess I have a programming question. It seems like the examples in the library are only suited for one anchor and one tag. I would like to have 3 anchors transmitting a radius from the tag.

#### PaulS

#3
##### Oct 24, 2017, 12:55 pm
More specifically, I guess I have a programming question. It seems like the examples in the library are only suited for one anchor and one tag. I would like to have 3 anchors transmitting a radius from the tag.
So, if you know where the anchors are (the centers of the circles) and three distances (the radii of the circles), you can draw a picture, right? Two circles intersect at 0 points, 1 point, or two points. If they don't intersect at all, you are out of range. If they intersect at one point, well, that's where you are. If they intersect at two points, you are at one of them. Which one is defined by the third circle.

Once you can see that visually, programming a solution is not too difficult.

#### jremington

#4
##### Oct 24, 2017, 05:25 pmLast Edit: Oct 24, 2017, 05:26 pm by jremington
Quote
It seems like the examples in the library are only suited for one anchor and one tag.
You will need to improve your coding skills, so that you can add additional tags and anchors to the library (or write your own library).

#### archeresque

#5
##### Oct 24, 2017, 06:16 pm
You will need to improve your coding skills, so that you can add additional tags and anchors to the library (or write your own library).
I ended up looking at the documentation for the library and I adjusted the library to have static addresses such that I can add tags that will be labeled 1,2,3 and so on. In the end I realized that my issue wasn't with the code, it was that my DWM1000 units weren't receiving enough power. Once I fixed the power issue in my circuit, I was able to run several without much of a problem. If anyone else has this problem, it can helpful to go into the library and change the resistor type for the rst pin to a pull-up resistor.

Go Up