Simulink - Mass/spring/damper system - why offset in steady state value?

9 views (last 30 days)
I've built a simple Simulink model of a straightforward mass/spring/damper system. It seems to work fine, but I'm puzzled why the final steady state output (displacement of the mass) doesn't converge back to zero (the initial starting point).
Have worked from standard equation:
mx''+cx'+kx=F
rearranged to give:
x''=1/m (-cx'-kx+F)
The forcing function F is a unit step input, and varying damping coefficient I get appropriate responses, but they all converge to a steady state value with a very small offset from zero position.
Why doesn't the mass come to rest back at it's starting point?
Model and output plots here:
I've set the initial condition in integrator one to "1", in order to get the mass oscillating either side of its starting position, with extremes in both positive and negative directions (as opposed to just oscillating in the positive range). Is this the correct way to achieve this behaviour?
Would appreciate words of advice...
G

Accepted Answer

Grufff
Grufff on 6 Mar 2012
Oh dear, I'm so stupid :/
Just realised that of course I'm going to get an offset, I'm using a step input. The final output is the value of that step attenuated/amplified by the model parameters.
If I use an impulse input it should converge back to zero (I'm off to do that now).
And of course giving my first integrator a value of 1 is not what I wanted to do either, if I want the system at rest to begin with (I'm giving it an initial velocity if I do that, right?).
(embarrassed)
  1 Comment
Udhaya K
Udhaya K on 21 Feb 2021
Hi Gruff.
Indeed it is a 9 year old thread, but just trying my luck here. Did you already find the answer? I have a very similar question and couldn't find a solution:
https://nl.mathworks.com/matlabcentral/answers/751254-spring-mass-damper-system-shows-position-of-mass-only-to-be-on-positive-side?s_tid=prof_contriblnk

Sign in to comment.

More Answers (0)

Categories

Find more on Mathematics in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!