Tracking 3d gait from accelerometer data

13 ビュー (過去 30 日間)
Giovanni Mastromatteo
Giovanni Mastromatteo 2016 年 11 月 16 日
回答済み: Guillaume 2020 年 6 月 17 日
Hi, I'm testing a LPMS b2-bluetooth-imu board and I get from the device the accelerometer, gyro, magnetometer, Euler angles and Quaternions data.
The idea is to realize something similar to this (https://www.youtube.com/watch?v=6ijArKE8vKU).
Now, after two integrations of the linear acceleration data for three directions, I have found the resultant displacement.
How could I rebuild the step gait combining the result for each axis?
Thanking you in advance for your help in this matter.

回答 (2 件)

Sharah
Sharah 2016 年 11 月 16 日
What do you mean by "rebuild the step gait combining the result for each axis"?
Usually you would do double integration on all 3 axis x y z. You shouldn't combined them all together if you want the real movement in all 3 direction. On the other hand, if you only require resultant displacement, then you'll combined the data from all theree axis as in:
xyz = sqrt(x^2 + y^2 + z^2)
And if you want a graphical representation of the gait, you will plot the data from all three axis.
_
SAM
Human Robotics Group
Imperial College London
  2 件のコメント
Giovanni Mastromatteo
Giovanni Mastromatteo 2016 年 11 月 16 日
Sorry, I didn't explain well. What i would to track is the gait from the obtained values of displacement in the three axes. I've integrated the arrays of linear acceleration in 3-axis, in the sintax shown below:
vX=cumtrapz(Time, aX);
sX=cumtrapz(Time, vX);
vY=cumtrapz(Time, aY);
sY=cumtrapz(Time, vY);
vZ=cumtrapz(Time, aZ);
sZ=cumtrapz(Time, vZ);
Plotting the resulting arrays for the displacement I obtain these graphs
I wish to track the gait as this example
Thanks for your help
Sharah
Sharah 2016 年 11 月 16 日
1) Your integration value especially from Z direction looks like there's drift, you might want to remove that
2) the picture you're showing looks like the force measure by a force plate during walking, so not sure what you're trying to see here.
3) If you think about a movement, there will always be a 3D representation of a movement. if you are interested in only the vertical (up and down the movement), just take the value from only that axis (either only x, y or z) depending on your measurement.

サインインしてコメントする。


Guillaume
Guillaume 2020 年 6 月 17 日
Hi Giovanni.
I am currently working on small floating devices and I would like to use my LMPS B2 as a displacement tracker.
I am seeing that you have probably achieved what I am looking for.
Would you mind to share your MALTAB script ?
Are you satisfied with the final output ?
Many many thanks.

Community Treasure Hunt

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

Start Hunting!

Translated by