Started this discussion. Last reply by Alex May 24, 2011. 5 Replies 0 Likes
Hi Alex,
You said you had a question. What is it?
Bill
Hi Alex,
You asked me a question about how to get position and velocity information at high bandwidth. Here is a link to a recent post on the subject. The method is really simple. You start with accurate attitude estimation, so you have the rotation transformation matrix. Then, transform the accelerometer information from body frame to earth frame and account for gravity. Integrate the acceleration to get velocity, integrate again to get position.
Of course, there will be errors that quickly grow. The solution to that is to use the GPS information to provide drift compensation. Simple proportional negative feedback will do the trick, if you inject it into the correct places in the calculation. Use the velocity error in the earth frame to compensate the acceleration. Use the position error to compensate the lock.
The result is that you will have a high bandwidth estimator of velocity and location.
Best regards,
Bill
Hi William,
Many thanks for your kind comments. I am reading your post in detail right now. Will go to realize the code in this week and let you know my result then.
May trouble you a bit more in the implmenentation procedure if you don't mind.
Have a nice day!
Best regards,
Alex
Hi William,
Many thanks for your kind patience. If not bothering you too much, could you give me some suggestions on the following questions?
a) RMAX, after my checking, is 1, may I know the meaning to define it?
b) Similarly, the meaning of defining MAX16?
c) For the two versions, DR_filter_gain is different, may I know why?
d) DR_period is also different (I can understand 40/GPS_rate, but don’t understand 40/GPS_rate +4 (in the simpler version)?
e) By my understanding, from the first beginning, IMUvelocity and IMUlocation are continuously updated with 40 Hz. Although we can get info from GPS, this info is only for correction purpose. That is, in real flight control, only the trimmed IMUvelocity and IMUlocation are used. Am I right?
f) In your post, you mentioned that the GPS latency is considered in the algorithm. Is it the processing when HILSIM == 0? This is a very important step in practical implementation, right?
Truly sorry for putting so many questions. I will summarize this post, your answer, as well as my later experience (particularly in practical implementation) and share with guys here.
Best regards,
Alex
Season Two of the Trust Time Trial (T3) Contest has now begun. The fourth round is an accuracy round for multicopters, which requires contestants to fly a cube. The deadline is April 14th.6 members
51 members
130 members
686 members
24 members
© 2013 Created by Chris Anderson.
Powered by
