Help with using Complementary filter (Madgwick) for IMU orientation estimates

22 ビュー (過去 30 日間)
Luckshman Bavan
Luckshman Bavan 2017 年 10 月 27 日
回答済み: Star Strider 2017 年 10 月 27 日
Apologies if this question has a very simple solution. I am clinician and very new to Matlab and inertial measurement. I am using the Madgwick AHRS algorithm for obtaining orientation estimates from the meta motion R IMU. I have got it working reasonably well but feel output is suboptimal due to the heterogeneity of sensor sampling. The gyro, acc and mag are not sampling on the exact same time stamps and so I do not receive 9 data points at specific times. There are 3 things that complicate the situation.
1)The Mag can sample at a max rate of 25Hz.
2)Sampling isn't absolutely perfect e.g. 60 sec of sampling at 100Hz may give me 5950 Acc data entries and 5790 gyro data entries.
3)Due to BLE limitation 3 packets of data are sent with a single timestamp, so we don't actually know the exact times when 2/3 of the data is being sampled.
Can anyone recommend an optimal way to resample the data so they are on similar timestamps? Or is there a way to implement the complementary filter with sensor data at different time points and sampling rates.
The best I have managed is a crude resampling (using the resample function) and artificially allocating resampled data points to a new time stamp (e.g. t=0:0.01:60 for a 60 sec trial).
Thank you!

回答 (1 件)

Star Strider
Star Strider 2017 年 10 月 27 日
‘The best I have managed is a crude resampling (using the resample function) and artificially allocating resampled data points to a new time stamp (e.g. t=0:0.01:60 for a 60 sec trial).’
The Signal Processing Toolbox resample (link) function is your best option, especially for signal processing purposes, since it uses an anti-aliasing filter.
I would not recommend interpolation without using an anti-aliasing filter.

カテゴリ

Help Center および File ExchangeMultirate Signal Processing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by