User Tools

Site Tools


doc:lps:toda3

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
doc:lps:toda3 [2018-06-15 08:51]
kristoffer
doc:lps:toda3 [2018-06-15 08:53] (current)
kristoffer
Line 23: Line 23:
   * Configure the Nodes as anchors, and set the mode to TDoA 3   * Configure the Nodes as anchors, and set the mode to TDoA 3
   * Anchor positions can be set using the python client (0 - 7) but if you have more anchors you will have toools/​lpp/​set_positions.py script.py   * Anchor positions can be set using the python client (0 - 7) but if you have more anchors you will have toools/​lpp/​set_positions.py script.py
 +
 +===== Setting anchor positions =====
 +
 +Anchor positions can be set by the python client but it only supports ids 0-7. If you want to use more anchors there is a tool that can be used.
 +
 +The tool uses a Crazyflie as a bridge to transmit UWB messages to the anchors. When it is started it transmits positions for all anchors over and over,
 +
 +The tool is somewhat hackish and could use some updates, for instance the Crazyflie radio address is hardcoded in the script. Be prepared to modify the script...
 +
 +  * Create a file with your anchor positions, see tools/​lpp/​positions_example.yaml
 +  * Start the Crazyflie
 +  * Pipe the position file into the tool ''​cat my_position_file.yaml | python3 tools/​lpp/​set_positions.py''​
 +  * Move the Crazyflie close to all anchors to transfer the positions
 +
 +===== Sniffing =====
 +
 +If an anchor is configured to act as a sniffer, it can be used to listen to the UWB messages in the system. To set an anchor to sniffer mode, connect via USB.
 +
 +==== Basic sniffing ====
 +
 +Connect the sniffer via USB and check in /dev which port that it uses. Use this as the first argument
 +The second argument is the output format, use yaml
 +example: ''​python3 tools/​sniffer/​sniffer_binary.py /​dev/​tty.usbmodem1421 yaml''​
 +
 +==== TDoA 3 parsing ====
 +
 +Pipe the yaml into the TDoA 3 decoder to see TDoA 3 data unpacked
 +
 +example: ''​python3 tools/​sniffer/​sniffer_binary.py /​dev/​tty.usbmodem1421 yaml | python3 tools/​sniffer/​tdoa3_decoder.py''​
 +
 +This will show all data that the sniffer receives. To limit the output it is possible to filter which anchors to show. Add one or more ids at the end to only show data from only these anchors.
 +
 +example: ''​python3 tools/​sniffer/​sniffer_binary.py /​dev/​tty.usbmodem1421 yaml | python3 tools/​sniffer/​tdoa3_decoder.py 2 3''​
 +
 +==== Time of flight and anchor to anchor distance ====
 +
 +By piping the TDoA 3 data into the TOF tool, the measured anchor to anchor distances will be displayed. By adding the '​m'​ argument the output will be in meters instead of UWB clock ticks.
 +
 +example: ''​python3 tools/​sniffer/​sniffer_binary.py /​dev/​tty.usbmodem1421 yaml | python3 tools/​sniffer/​tdoa3_decoder.py | python3 tools/​sniffer/​tdoa3_tof.py m''​
 +
  
 ===== 2D positioning ===== ===== 2D positioning =====
Line 61: Line 101:
   * Change it to 1024 bits: #define PREAMBLE_LENGTH_S ( 1024 * 1017.63e-9 )   * Change it to 1024 bits: #define PREAMBLE_LENGTH_S ( 1024 * 1017.63e-9 )
   * Compile and flash   * Compile and flash
- 
-===== Sniffing ===== 
- 
-If an anchor is configured to act as a sniffer, it can be used to listen to the UWB messages in the system. To set an anchor to sniffer mode, connect via USB. 
- 
-==== Basic sniffing ==== 
- 
-Connect the sniffer via USB and check in /dev which port that it uses. Use this as the first argument 
-The second argument is the output format, use yaml 
-example: ''​python3 tools/​sniffer/​sniffer_binary.py /​dev/​tty.usbmodem1421 yaml''​ 
- 
-==== TDoA 3 parsing ==== 
- 
-Pipe the yaml into the TDoA 3 decoder to see TDoA 3 data unpacked 
- 
-example: ''​python3 tools/​sniffer/​sniffer_binary.py /​dev/​tty.usbmodem1421 yaml | python3 tools/​sniffer/​tdoa3_decoder.py''​ 
- 
-This will show all data that the sniffer receives. To limit the output it is possible to filter which anchors to show. Add one or more ids at the end to only show data from only these anchors. 
- 
-example: ''​python3 tools/​sniffer/​sniffer_binary.py /​dev/​tty.usbmodem1421 yaml | python3 tools/​sniffer/​tdoa3_decoder.py 2 3''​ 
- 
-==== Time of flight and anchor to anchor distance ==== 
- 
-By piping the TDoA 3 data into the TOF tool, the measured anchor to anchor distances will be displayed. By adding the '​m'​ argument the output will be in meters instead of UWB clock ticks. 
- 
-example: ''​python3 tools/​sniffer/​sniffer_binary.py /​dev/​tty.usbmodem1421 yaml | python3 tools/​sniffer/​tdoa3_decoder.py | python3 tools/​sniffer/​tdoa3_tof.py m''​ 
- 
-==== Setting anchor positions ==== 
- 
-Anchor positions can be set by the python client but it only supports ids 0-7. If you want to use more anchors there is a tool that can be used. 
- 
-The tool uses a Crazyflie as a bridge to transmit UWB messages to the anchors. When it is started it transmits positions for all anchors over and over, 
- 
-The tool is somewhat hackish and could use some updates, for instance the Crazyflie radio address is hardcoded in the script. Be prepared to modify the script... 
- 
-  * Create a file with your anchor positions, see tools/​lpp/​positions_example.yaml 
-  * Start the Crazyflie 
-  * Pipe the position file into the tool ''​cat my_position_file.yaml | python3 tools/​lpp/​set_positions.py''​ 
-  * Move the Crazyflie close to all anchors to transfer the positions 
  
  
doc/lps/toda3.txt · Last modified: 2018-06-15 08:53 by kristoffer