|
|
| File Information |
| Description |
I do not have the perfect solution, but I want to add little something in the challenge. Simulating that kind of coupled non-linear system seems to be tricky in Simulink®.
At first I thought this challenge was going to be easy, I assembled a SimMechanics model, clicked play… but the pendulums are not synchronizing, as mentioned by Parasar in his post.
Then I thought, let’s try with Simulink®. I implemented the equations provided and then face two choices:
- By default, the coupling of the equations results in an algebraic loop. I try to let the algebraic loop solver resolving the algebraic loop, and the results are similar to the ones from SiMemchanics™. It looks like the Simulink® algebraic loop solver is doing a job similar to the SimMechanics™ solver. I cannot explain the exact reason, my guess is that the algebraic loop solver removes the non-linearity that makes the pendulums synchronize in real life.
- My standard way to remove algebraic loops is to introduce a delay in the feedback path. In that case, the pendulums synchronize but the model becomes instable. The maximum sample time of the Simulink® solver must be adjusted to an appropriate value to obtain an acceptable tradeoff between synchronization and stability.
I implemented the model using a vector approach. It allows easily changing the number of pendulums and modifying the algorithm.
From what I understand, the pendulum equations are non-linear and it should not be required to add any nonlinear limits, like bump stops in a metronome.
I hope Seth will provide explanations on why no one has been able to obtain the synchronization using SimMechanics™.
Guy |
| Required Products |
Simulink
|
| MATLAB release |
MATLAB 7.7 (R2008b)
|
| Zip File Content |
|
| Other Files |
license.txt, metronome_guy.mdl
|
|
Tags for This File
|
| Everyone's Tags |
|
| Tags I've Applied |
|
| Add New Tags |
Please login to tag files.
|
| Updates |
| 18 Jun 2009 |
Minor modifs for BSD licences |
|
Public Submission Policy
NOTICE: Any content you submit to MATLAB Central, including personal information, is not subject to the protections which may be afforded information collected under other sections of The MathWorks, Inc. Web site. You are entirely responsible for
all content that you upload, post, e-mail, transmit or otherwise make available via MATLAB Central. The MathWorks does not control the content posted by visitors to MATLAB Central and, does not guarantee the accuracy, integrity, or quality of such content.
Under no circumstances will The MathWorks be liable in any way for any content not authored by The MathWorks, or any loss or damage of any kind incurred as a result of the use of any content posted, e-mailed, transmitted or otherwise made available
via MATLAB Central.
Read the complete Disclaimer prior to use.
Contact us at files@mathworks.com