This is an update on two topics.
1. A minor revision to GentleNAV RTL firmware.
2. Progress to date on an algorithm to combine 3 axes gyro, accelerometer, and GPS information.
1. While working on my next project, I discovered a minor error in the GentleNAV RTL firmware that runs on the
UAV DevBoard.
There are adjustments in the GentleNAV firmware to the pitch and yaw gyro signals to compensate for variation in A/D conversion of the gyro signals due to changes in battery voltage. Unfortunately, in doing the port from my previous board to the new board, I added the correction instead of subtracting. I did not notice the error during testing because I supply my board with regulated 5 volts from my electronic speed control.
Anyway, I have revised both the
code and the
documentation.
2. In case you are wondering what my next project is, I am presently working with Paul Bizard on a simple, fast, accurate algorithm for combining gyro, accelerometer, and GPS information into an estimate of the orientation of a plane. We do not have all of the details worked out, but we are making good progress.
Today I implemented one of the components of the algorithm. Paul and I refer to it as update and normalization. It is a routine that uses gyro information only to update a matrix of direction cosine factors and maintains the orthogonality conditions. It works quite well, the drift is extremely low, on the order of a degree per minute. I can spin the board 10 revolutions forward and then 10 back, and the orientation estimate returns to the starting point.
The bulk of the implementation uses vector and matrix library routines furnished by MicroChip that they tailored to the dsPIC30 hardware. Execution is very fast. Total execution time so far is 200 microseconds every 20 milliseconds using the 16 MHz clock.
The next step is to adjust roll and pitch drift with accelerometer information. When I get that done, I will make that firmware available here as a demo.
After that we will adjust yaw drift, and make adaptive gyro gain adjustments. We do not have all of the details worked out, but because of the astounding precision of the unadjusted algorithm, I do not think it will be very difficult.
Bill Premerlani
You need to be a member of DIY Drones to add comments!
Join DIY Drones