Help with non-linear block spring mass system
Show older comments

How can I add a block for the nonlinear term so that I can simulate the system?
3 Comments
Mathieu NOE
on 1 Feb 2024
you need to use the "look up table" block (use interpolation)
create first the table in matlab and import it in the "look up table" block
Fangjun Jiang
on 1 Feb 2024
The nonlinear part is the k() function. It is simple enough to construct it using blocks.
The block diagram is far from the correct implementation. Use two integrators to construct q1, two integrators for q2, two integrators for q3. And then construct the rest.
Cristian Rohozneanu
on 1 Feb 2024
Answers (1)
Fangjun Jiang
on 1 Feb 2024
0 votes
- Use two integrators connected in series to construct q1. The output is q1, the input is "q1 two dot". In the middle, it is "q1 dot".
- Do the same for q2 and q3
- Then you have Delta1=q1-q2, Delta2=q2-q3
- k(Delta1)=K0*Delta1+K1*(Delta1)^3 should be easy. You can even make it a function to apply the same for Delta2
- Then connect the signal lines in Simulink according to the last three lines of your equations. You will have the correct Simulink implementation of your mathmatical equations.
Categories
Find more on Modeling 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!