Synchronizing metronomes

버전 1.1.0.1 (9.78 KB) 작성자: Guy Rouleau
The 5 pendulums, in a vectorized approach
다운로드 수: 2K
업데이트 날짜: 2016/9/1

라이선스 보기

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

인용 양식

Guy Rouleau (2024). Synchronizing metronomes (https://www.mathworks.com/matlabcentral/fileexchange/21748-synchronizing-metronomes), MATLAB Central File Exchange. 검색 날짜: .

MATLAB 릴리스 호환 정보
개발 환경: R2008b
모든 릴리스와 호환
플랫폼 호환성
Windows macOS Linux
카테고리
Help CenterMATLAB Answers에서 Assembly에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!
버전 게시됨 릴리스 정보
1.1.0.1

Updated license

1.1.0.0

Minor modifs for BSD licences

1.0.0.0