Strange accelerations measurements in Simscape Multibody, using the Transform Sensor block
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Ronny Landsverk
am 28 Jan. 2018
Kommentiert: Ronny Landsverk
am 29 Jan. 2018
The acceleration stems from an inverted pendulum actuated with sinusoidal motion, and is in the translational x direction. That frame being measured has its z-axis in the rotational direction and sits on top of the pendulum. The reference frame is the global one, with x-axis directed in the same direction as the measured frame... The pendulum swings back and forth with an amplitude of 15 deg and unity radian frequency. I would expect sinusoidal-looking acceleration...
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/169555/image.jpeg)
The modeling is done using Simscape Multibody and the motion is sensed using a Transform Sensor. The plot shown is from a simulation using the variable-step auto(ode45) solver. Another simulation using the ode23s solver gives a totally different response, although not at all sinusoidal.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/169558/image.jpeg)
BTW, the pendulum represents a non-inertial base which to append an electro-mechanical system.
The model can be found at https://www.dropbox.com/s/7udnhog2i0fvkba/forum.slx?dl=0
Ronny
3 Kommentare
Akzeptierte Antwort
Birdman
am 29 Jan. 2018
It seems that your problem is with the solver. You set it to variable-step, which you allow Simulink to increase the step size until Simulink can, therefore you see unintended deviations from your desired signal. After a few experimental run for the model, fixed-step solver->ode5 will surely do it for you, with a 0.001 step size. Run the attached model.
3 Kommentare
Birdman
am 29 Jan. 2018
Bearbeitet: Birdman
am 29 Jan. 2018
But variable step solvers will increase the step size if they can and the thing is: that might not be what you want even in complex models. Therefore you need to identify your requirements and if a fixed step solver with 0.001 is enough for you, you should use it.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Assembly finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!