Simulink: apply constant velocity to model

5 views (last 30 days)
Hana on 4 Sep 2012
Edited: Markus M. on 23 Dec 2022
i want to model a spring-damper-mass system and apply a constant velocity on it during the whole simulation. how can it be done? i tried by adding a constant, but it only will be added to the system at the beginning. also a step block couldn't solve my problem either.
i would appreciate your help!

Answers (1)

Ryan G
Ryan G on 4 Sep 2012
To do this you can put an external reset on the integrator set to 'level' and use a step/pulse to activate it. The integrator will now follow whatever is coming in for the initial condition.
Markus M.
Markus M. on 23 Dec 2022
Edited: Markus M. on 23 Dec 2022
This is done easily in simulink like @Ryan G mentioned.
The mass damper system with constant velocity is shown below (mass=1 for convenience).
First you have to create a level signal for the integrator, which defines when the integrator should hold the initial condition. Call it z. Connect it with the external reset signal from the v-integrator.
Next, the integrator needs to know which value to reset to. Unfortunately we cannot simply input a value here, because the integrator also resets to this value at . This can be fixed however with a simple logic switch logic. (the integrator reset value) is , when z is 0. Else, when z is 1 (active), is .
A plot is shown below:
Constants used here:
%define values for v
v0=0.5; % = v(t=0)
vconst=2; % = v(z=1)
%spring-damper constants
k=1; % spring constant
d=1; % damper constant
%Step times

Sign in to comment.


Find more on General Applications 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!