/MechanicalIris

Web app supporting parameterized design of mechanical irises

Primary LanguagePython

Mechanical Iris Web App

Full-stack web application that designs mechanical Irises.

User Interface:

Interface Overview

CAD Equivalent:

CAD Equivalent

Final 3D-Printed Mechanical Iris:

3D Printed Iris

Featureset Overview

Mechanical irises can be parameterized by the number of blades, their minimum and maximum aperture size, and both blade and pin sizes. Final iris designs are visualized and can be exported as DXF files for later modification in CAD programs like SolidWorks, Fusion 360 or CATIA.

Geometry for the irises is determined by finding solutions to a series of non-linear equations; these equations are derived from closed-loop equations from kinematic analysis.

Architecture

This is a RESTful application, where all equations for iris designs are solved in the backend as well as generation of DXFs.

Backend

Relies on Django REST framework, numpy, scipy, pytest, matplotlib, and ezDXF.

Frontend

Uses React, TypeScript, JQuery, and Bootstrap.