Issues with the Lighthouse Deck oriented upside down or towards one side #691
Replies: 3 comments
-
Hi! This is interesting, but not something I have tested. Some of the code will probably work OK, but there is some functionality that definitely will not. Geometry estimationI'm not exactly sure how well this will work. My guess is that the relative positions of the base stations will be correct, but that the coordinate system might be wrong. It should be easy to see in the lighthouse tab in the client, or save the config as a file. Position estimationThe position is estimated in Yaw estimationThe yaw estimation is a bit of a hack and is done outside the kalman filter, this will not work at all. The implementation assumes the deck is mounted the standard way. It would be interesting to hear how this works out, please keep us posted! |
Beta Was this translation helpful? Give feedback.
-
Hello, I'm back with some results ! In each test the sensor position in the firmware is modified to respect the real position of the deck (similar to the position variables in lighthouse_types.py below). I use the takeoff and goto methods from the HighLevelCommander to command the drone. Oriented -ZCalibration: "Reversed" lighthouse geometry:
"Normal" lighthouse geometry:
(calibs data are exactly the same) I forgot to mention it in my initial message, but as you can see, the position estimated by the cfclient is as if the deck was in its normal configuration. So they appears in altitude looking down rather than on the ground looking up. Then, I rotate the rotation matrix of 180° around the X-axis and substract the calibrated Z to a value close to the height of the drone during calibration to have a coherent positive Z position. Pose estimation: The drone was also stable with 1 base station without the flow deck ! I had to place the drone before take off high up so it can always detect the signal and have a stable position. Position estimation with the BMI088 & BMP388 only is very bad (fast drift in position). I had no problem with the yaw estimation of the Lighthouse. Oriented +YCalibration:
So I calibrated using the deck in its normal position. Pose estimation: ConclusionLighthouse deck reversed is all good but it seems to be more sensible to small base station displacements. Lighthouse deck on the side works only with 2 Lighthouses. If 1 only is detected it will crash. (tested only with the flow deck on) |
Beta Was this translation helpful? Give feedback.
-
Thanks for sharing! |
Beta Was this translation helpful? Give feedback.
-
Hello,
I am testing different placements of the Lighthouse deck on a custom brushless drone using the Bolt 1.1 deck (2023.02 firmware) + Flow deck v2 to avoid drift when there is no signal detected. I am using Lighthouse base stations v2.
Normally the Lighthouse deck is oriented +Z in the drone frame. However with a ribbon cable, I am able to place the Lighthouse deck upside down (-Z) or on the side of the drone (+Y).
-Z : In this configuration, the base stations are placed on the ground looking up. Calibration is made with the drone placed on a metal bar at about 1.4m supported by 2 tripods (Lighthouse deck upside down). The drone is quite stable with 2 base stations. However, the drone crashes using 1 base station only.
+Y : In this configuration, the base stations are placed normally, mounted on tripods. Calibration is made with the deck oriented +Z. The drone is never stable and crashes every time with 1 or 2 base stations.
I tried to modify the Lighthouse deck position in lines 207 to 213 of the file lighthouse_position_est.c and the normal vector of the deck in line 444. This resulted in the same behavior as with the original firmware : the drone goes fast on one side and crashes.
I don't know if such placement of the Lighthouse deck has been thought of or tested before but I am interested to know if it is possible. I also looked at the file mm_sweep_angles.c but couldn't find something to modify.
Any help is greatly appreciated.
Beta Was this translation helpful? Give feedback.
All reactions