Interpreting Calibration and Geometry Data. [SOLVED]

Topics related to the Lighthouse positioning system, configuration and use
Post Reply
cafeciaojoe
Member
Posts: 83
Joined: Mon Jun 18, 2018 2:37 am

Interpreting Calibration and Geometry Data. [SOLVED]

Post by cafeciaojoe »

Hello! Couple of questions re the interpretation of calibration and geometry Data.

1)
When I use read_mem_lighthouse.py what does it mean if valid=false is obtained from one of the basetations' geometry reading?

This same lighthouse returns a lot of 0 values from this bastetation.
The calibration data seems to be read fine from both basestattions.
(will copy paste from the terminal on Monday, cannot do this at the moment)

2)
When I use write_mem_lighthouse.py or persist_bs_data.py i assume I place the vlaues from the terminal into the script to write it to the CF?

3)
When hard coding the geometry values and the calibration values into lighthouse_core.c there seems to be eight sets of values that need to be hard coded... four for EACH lighthouse?
(see line 82 - 83 and line 95-86 for lighthouse 1)
(see line 86 - 87 and line 102-103 for lighthouse 2)
https://github.com/bitcraze/crazyflie-f ... core.c#L82

When I run read_mem_lighthouse.py or get_bs_geometry.py I only four sets of data, I assume two for each lighthouse (geometry and calibration)

Thanks in advance!
Last edited by cafeciaojoe on Mon Jan 04, 2021 6:20 am, edited 1 time in total.
PhD Student
RMIT University
School of Design
http://www.cafeciaojoe.com
Image
kristoffer
Bitcraze
Posts: 630
Joined: Tue Jun 30, 2015 7:47 am

Re: Interpreting Calibration and Geometry Data.

Post by kristoffer »

Hi!

The handling of calibration and geo data is under development, but I don't think it will change too much from now on. The over all concept is that each base station has
1. geometry data describing its position and orientation in space
2. calibration data describing the properties of the two light planes
The valid parameter tells the system if the data (geo or calib) is valid and should be used or not. If the valid flag is false for geo data, that base station will NOT be used in the position estimation. If the calibration data is not valid on the other hand, the sweep data is used but without calibration, which will give errors in the estimated position.
We will add support in the python client to manage the geo and calib data in a user friendly way, but have not got that far yet unfortunately.
When I use read_mem_lighthouse.py what does it mean if valid=false is obtained from one of the basetations' geometry reading?
The geo data has probably not been set
When I use write_mem_lighthouse.py or persist_bs_data.py i assume I place the vlaues from the terminal into the script to write it to the CF?
read_mem_lighthouse.py and write_mem_lighthouse.py read and write data to RAM. These are the settings that are used for position estimation, but will obviously be lost when the CF is turned off. To use "permanent" settings that are available on startup, there are three options:
1. Hard code values in lighthouse_core.c
2. Write an app in the crazyflie that sets the values
3- Use the permanent storage (recently added)

When storing geo and calib data in the permanent storage, the Crazyflie takes the current values in RAM and saves them, so the process is to first make sure the data in RAM is correct and then persist it. This exactly what persist_bs_data.py is doing, so yes, you should modify the script with your own values.

If you look in the script, you will see that there are three phases, upload geo data, upload calib data and finally persist data for all base stations.

When hard coding the geometry values and the calibration values into lighthouse_core.c there seems to be eight sets of values that need to be hard coded... four for EACH lighthouse?
We have two systems in our flight arena, one V1 and one V2 and the geo data in lighthouse_core.c are for both systems. It is only possible to use one of them at a time though, so bsGeometry should only contain two lines, one for each base station. bsCalibration should contain two lines per base station (one per light sweep).
cafeciaojoe
Member
Posts: 83
Joined: Mon Jun 18, 2018 2:37 am

Re: Interpreting Calibration and Geometry Data.

Post by cafeciaojoe »

Got it thanks for the info!
PhD Student
RMIT University
School of Design
http://www.cafeciaojoe.com
Image
Post Reply