This example shows a four-bar linkage modeled in Simscape Multibody that is optimized using MATLAB so that the tip of the linkage follows a desired trajectory.
Mechanical designers often wish to design mechanisms that will enable an end effector to follow a certain path. The lengths of the links and the position of the end effector influence the trajectory of the end effector in a complex kinematic relationship. Optimization algorithms can be used to tune those lengths to achieve the desired motion.
The process is similar to what is described in the video “Computational Design of Mechanical Characters” https://www.youtube.com/watch?v=DfznnKUwywQ
Please read the README.md file to get started.
Use the "Download from GitHub" button above to get files compatible with the latest release of MATLAB.
Use the links below to get files compatible with earlier releases of MATLAB.
For R2020a: https://github.com/mathworks/Simscape-Multibody-Four-Bar-Optim/archive/20.1.2.1.zip
For R2019b: https://github.com/mathworks/Simscape-Multibody-Four-Bar-Optim/archive/19.2.2.0.zip
For R2019a: https://github.com/mathworks/Simscape-Multibody-Four-Bar-Optim/archive/19.1.1.4.zip
For R2018b: https://github.com/mathworks/Simscape-Multibody-Four-Bar-Optim/archive/18.2.1.3.zip
For R2018a: https://github.com/mathworks/Simscape-Multibody-Four-Bar-Optim/archive/18.1.1.2.zip
For R2017b: https://github.com/mathworks/Simscape-Multibody-Four-Bar-Optim/archive/17.2.1.1.zip
For R2017a: https://github.com/mathworks/Simscape-Multibody-Four-Bar-Optim/archive/17.1.1.0.zip
See how to use Simscape Multibody to model a cam-follower mechanism:
https://www.mathworks.com/videos/modeling-contact-forces-in-a-cam-follower-94291.html
Learn more about multibody simulation with Simscape Multibody by watching this webinar
https://www.mathworks.com/videos/multibody-simulation-with-simmechanics-81877.html
Find other Simscape examples by searching posts for the keyword "physical modeling"
https://www.mathworks.com/matlabcentral/fileexchange/?term=%22physical+modeling%22
Learn more about MathWorks Simscape Products:
https://www.mathworks.com/physical-modeling/
Steve Miller (2021). Four Bar Linkage Optimization in Simscape (https://github.com/mathworks/Simscape-Multibody-Four-Bar-Optim/releases/tag/20.2.2.2), GitHub. Retrieved .
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Create scripts with code, output, and formatted text in a single executable document.
Hello steve,
I need to develop a 4 bar mechanism (or any other kind of mechanism) to trace a desired path. I tried using this GUI but I don't understand how to input the desired trajectory in this code.
Please guide me through it so that I can input the desired path and get the optimum mechanism dimensions which trace that path.
Also, if you could suggest me any other, better way to do this, it will be very helpful.
Thank you.
Hello Steve,
I am using the latest version of Matlab R2018b. Please send me the files! Much obliged!
My email is john.ris.1863@gmail.com
Best regards
@John - which MATLAB release are you using? Let me know and I may be able to send you the files tested and saved in the release you are using.
Hello! It doesn't work on my PC! I have the next error:
Output argument "options" (and maybe others) not assigned during call to "optimoptions".
Error in sm_four_bar_optim_match_path (line 86)
opt = optimoptions('patternsearch','PollMethod','GSSPositiveBasis2N',...
Please, tell me! What should I do to fix it?