How to integrate angular velocity to get angular position?

9 views (last 30 days)
Hi there!
I have some flight test data and I need to integrate the roll velocity with respect to time to find the plane's roll angle at each point in time.
Ive tried the following however it produces a graph that decreases at a constant rate with some variation. The time period of measurement is constant and 0.1s.
RollRateIn = cumtrapz(RollRate);
The RollRate varies scholastically with maxima ~ +/-20 Rad/s.
I'd really appreciate some help on this guys!
Jasper

Answers (1)

Star Strider
Star Strider on 10 Mar 2018
If the integral is decreasing, and with your experiment design it should not be decreasing, then you are integrating a constant, perhaps a negative mean value of the roll rate. (This could be due to calibration problems with the sensor.)
I would do a simple linear fit (using polyfit) to see if there is a linear trend, and also take the mean of your data to see if it is other than zero. You can then use the linear trend information to detrend your data, or simply subtract the mean if that turns out the be the problem.
  7 Comments
jasper wagen
jasper wagen on 13 Mar 2018
Jim thank you for you help, you've really gone above and beyond. Certainly is an interesting problem (and a frustrating one!). I will dig deeper into the recording equipment used and perhaps use a kalman filter to work around the faulty gyro data.
Fabrice Lallement
Fabrice Lallement on 19 Apr 2018
Edited: Fabrice Lallement on 19 Apr 2018
Previous answers are perfect for your issue. I would just like to add a reference for understanding INS data since you were asking for one. It is a bit lengthy but really simple to understand.
An introduction to inertial navigation. Oliver J. Woodman
You can easily find the article on Internet.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!