Double-Integration of Acceleration Data using cumtrapz to get Displacement

10 views (last 30 days)
Hello everyone and greetings from Germany!
I'm new to Matlab and searching for help. I want to extract the radial displacement of my sensor inside the tire tread. The only data i have is the radial acceleration. I recreated the signal theoretically for one wheel rotation according to a paper i read because i dont have the experimental data yet. This way i was able to get some data to experiment with. The graph should look something like this:
I'm only interested in the part inside the tire contact patch, so I treated everything outside the contact patch as if it would be zero:
Then i wanted to use the function cumtrapz twice to numerically integrate my vector of data and get the displacement, which leads to the following plot:
First of all, this is not what i was expecting. I think the result should look like a parabolic figure, starting from zero and ending at zero with a peak displacement somewhere around 20 or 30mm. Therefore i plotted the velocity after the first cumtrapz:
So here is my problem. I dont know if cumtrapz is the soultion to my problem after seeing these results. But i dont know what else i could do, because i just have datapoints of acceleration and nothing else. I read a paper where they did this too, but they didnt explain how they did it.
I hope someone can help me.

Answers (1)

Walter Roberson
Walter Roberson on 23 Nov 2021
In the section you trimmed to, your second figure, you have no negative accelerations. Therefore your object never slows down -- it just does not always speed up as quickly as other times. An object that never slows down cannot have a parabolic trajectory.
  1 Comment
Kevin Pollmer
Kevin Pollmer on 23 Nov 2021
Hello Walter, thank you for your quick answer!
Thats right. So i tried something. I used cumtrapz on the original data i created (first figure of my question). But since there is a lot negative acceleration the result is the opposite as above.
Then i de-meaned the acceleration and used cumtrapz twice:
But what bothers me is, that i already have a growing displacement without even reaching the point where the sensor enters the contact patch area. I know that while integrating the constant value of approx. -30m/s² of the acceleration leads to an error. Is that correct?
If so, is there a solution to this or do i simply not understand the whole problem?

Sign in to comment.

Categories

Find more on Startup and Shutdown in Help Center and File Exchange

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!