How to setup Gabe's project, Mechanism

How to setup Gabe's project, Mechanism

February 3, 2025

Some time ago I got to know this awsome project: https://github.com/gabemorris12/mechanism

MIT | A visual tool to aid engineers with the design process for mechanisms, cams, and gears.

Lately, I just saw that Gabe placed some interesting video about it:

#python -m venv gabe_mechanism_venv #create the venv
python3 -m venv gabe_mechanism_venv #create the venv

#gabe_mechanism_venv\Scripts\activate #activate venv (windows)
source gabe_mechanism_venv/bin/activate #(linux/mac)

Install dependencies with:

pip install -e .
#pip freeze > requirements.txt #generate a txt with the ones you have!
ℹ️
I tried with ./examples/engine.py and worked perfectly!

I just added this line at the script to get a .gif rendered:

#ani.save('../animations/engine.mp4', dpi=300)
ani.save('../animations/engine.gif', writer='pillow', fps=30)

So that you can see the engine sample animation working:

Engine Sample Animation

As you can guess:

  • Bars are represented by red lines
  • Acceleration is in orange
  • Speed in grey

I exchanged some email with its creator, GabeMorris12.

A visual tool to aid engineers with the design process for mechanisms, cams, and gears.

ℹ️
I forked the project and Im trying to make a systematic approach for mechanism design here.

Created this simple version with python:

And working on the symbolic one: https://github.com/JAlcocerT/MultiBodySystemDynamics-MBSD-

Conclusions

ℹ️
Kudos again to Gabe! The project is release under MIT for anyone to use and modify.

I created a small slider crank app for motor sport lovers (and with much smaller scope than Gabe’s project)

https://github.com/JAlcocerT/Slider-Crank

Simulation of a Slider-Crank mechanism. Powered by Python and DASH.

Why am I so excited about get this project working on my computer?

Well, I dedicated an important part of my life to Mechanical engineering…

…and mechanisms are everywhere.

Making our lifes better thanks to their smart designs and leverage.

Mechanisms are kind of code that “automates” the physical movement logic.

Some example?

The one of the engine I will reserve for another post.

Today is the turn of a Singer Machine!

Singer Mechanism

15cm on the bottom 35cm la biela 4cm (x2) crank


FAQ

  • What are eigenvectors?

https://www.youtube.com/watch?v=PFDu9oVAE-g

3D Design