File Exchange

image thumbnail

Simscape Multibody Parts Library

version (10.8 MB) by Steve Miller
Parameterized parts for Simscape Multibody, with gear assemblies and MATLAB code for extrusions


Updated 17 Apr 2021

From GitHub

View Version History

View license on GitHub

This set of examples shows you how to create parameterized parts for Simscape Multibody and example MATLAB scripts for defining general extrusions. The parts have been used in a wide range of examples to show how these blocks enable you to rapidly model mechanisms. Within the library are a set of gear assemblies. The parameterized gear assemblies group the required blocks together and parameterize them so that frames are always positioned and oriented correctly.

Please read the 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 R2020b:
For R2020a:
For R2019b:
For R2019a:
For R2018b:
For R2018a:
For R2017b:
For R2017a:
For R2016a:
For R2013a:

To see how to defining bodies in Simscape Multibody, watch this video (5 min):

To learn more about multibody simulation with Simscape Multibody, please watch this webinar:

To find other Simscape examples, search for posts with the keyword "physical modeling"

To learn more about MathWorks Simscape Products, go to:

Cite As

Steve Miller (2021). Simscape Multibody Parts Library (, GitHub. Retrieved .

Comments and Ratings (9)

Ashish Ranjan

Steve Miller

Thanks Daniel. I considered adding the number of points as an optional parameter for Extr_Data_Ring. I decided to keep the list of parameters as short as possible, and hopefully the code is clear enough for people to extend it. Now that I have seen that this is necessary for some use cases, I'll consider adding it for all Extr_Data_* scripts that include arcs. Thanks for the feedback.

Daniel Stuewe

Steve, I mostly use the Contact Forces Library, but I noticed that the ring extrusion script is used here. Anyway, the visualization of the ring extrusion is clocked every degree which is probably okay in many cases, but I found the need to have the visualization of rings have more refinement. I've gone in and modified the Extr_Data_Ring script to divide the arc into 1000 divisions so it works for me, but I thought I'd throw it out there as a suggestion to refine the angular spacing of rings. (BTW, I've also noticed that visualizations of solid bodies using the Simscape Multibody "Solid" block are similarly coarse.)

Pavel Osipov

sashank Tirumala


Aidan Zimmerman

Hi Steve,
I'm a bit new to Simulink, how do I get your excellent libraries to get into the standard simulink Library browser?


Carlos Moran


MATLAB Release Compatibility
Created with R2021a
Compatible with R2013a to R2021a
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!