Here’s my approach to handling the tilt for downward facing vertical and horizontal motion tracking.
This is what I’d already worked out to take into account any tilt of the quadcopter frame and therefore LEDDAR sensor readings.
With this in place, this is the equivalent processing for the video motion tracking:
The results of both are in the earth frame, as are the flight plan targets, so I think I’ll swap to earth frame processing until the last step of processing.
One problem as I’m now pushing the limit of the code keeping up with the sensors: with diagnostics on and 1kHz IMU sampling, the IMU FIFO overflows as the code can’t keep up. This is with Zoe (1GHz CPU speed) and without LEDDAR.
LEDDAR has already forced me to drop the IMU sample rate to 500Hz on Chloe; I really hope this is enough to also allow LEDDAR, macro-block processing and diagnostics to work without FIFO overflow. I really don’t want to drop to the next level of 333Hz if I can help it.
Coding is in process already.