← Back to Kevin's newslettersPublished: 2021 May 9

Last newsletter we asked “how fast can plants grow?” and I was unsatisfied with the 20x gap between my rough estimate and reality. Thanks to those of you who pointed out to me plant respiration, where carbon is lost as CO2 due to various plant metabolic processes (especially those occurring at night, when the CO2 cannot be recaptured by the plant via photosynthesis).


I’ve spent the last month doing the opposite of back-of-the-envelope estimation: Actually trying to make something work well.

For a yet-to-be-disclosed project, I need a satisfying-feeling axis of rotation — think “knob feel” from a 1970’s stereo.

Normally one might turn to bearings, basically two concentric rings that can rotate with respect to each other. However, in my case I need an attachment point that is separate from axis of rotation.

Since I have weekend access to a 50W CO2 laser cutter, I figured this would be a perfect opportunity to explore flexures (AKA compliant mechanisms), which are fabricated from a single material with geometry designed to bend only in certain degrees of freedom.

In particular, I figured I’d try this “butterfly” flexure from a wonderful video overview, which is fixed only at the bottom but rotates around the center:

Amy's butterfly flexure

I roughly drew a similar design up in CAD:

Kevin's CAD model of flexure

and spent a weekend cutting acrylic and tweaking angles/thicknesses to try and find a satisfying feel:

Many broken flexures

You can see where this is going, right?

I quickly put down my original project to the side to further investigate flexures.

To understand why the butterfly flexure moves the way it does, I read up on FACT, a theoretical framework for designing flexures. This involved a lot of staring at what I presume are some of the trippier figures which’ve appeared in the journal Precision Engineering:

FACT figures

until I (thank God) found the author’s far more comprehensible YouTube lecture series. (See lecture 1 for an intro, skip the math of 2 and 3, then watch lecture 4 for the big concepts and sweet pictures.)

Of course, this schematic/conceptual design is only half the story. Given that I already have a the butterfly flexure in mind, how do I go about optimizing the geometry to get a robust, skookum-feeling rotational mechanism?

This is refreshingly different from popular “generative-design” approaches which iteratively remove unstressed material from parts so you can save 5g of aluminum in exchange for an extra $100k of manufacturing costs and weeks of H.R. Giger nightmares. You know, this stuff:

I'm sure your chair is great, but you had the bad luck of being the first Google Image result https://www.researchgate.net/figure/Form-finding-process-through-topology-optimization_fig1_301396408

In contrast, my flexure geometric optimization problem has a lot of well-defined dimensions to explore even within the constraints of a cuttable-by-2D-laser design space:

I know that this process is doable in theory:

  1. Develop parameterized geometric model (sheet thickness, number of springs, their width and position, etc.)
  2. Generate instances and run finite element analyses (FEA) to find their modal frequencies
  3. Iterate based on optimization criteria (e.g., maximize stiffness in undesired motion directions and the gap between the desired modal frequency and all the others)

However, I’m not quite sure how to go about it in practice. With a fair bit of pointing and clicking, I can coax my CAD software to visualize geometric modes:

But I’d love to find a free and open source solution upon which I can build a long-term foundation for programmatic workflows.

SolveSpace is a very nice lil’ CAD tool, but (as far as I can tell) lacks variables and other parametric / programmatic support. Maybe I’ll have to script their underlying geometric constraint library?

Or just construct geometry by rendering SVG in the browser? Ehh…

As for the FEA, I have a plethora of choices for both meshing geometry and the physics calculations themselves, but I’ve been unable to find a solution that doesn’t require me to earn a PhD in the process.

FEA for All got me looking at Salome, though it takes an expert-user 30 minutes of clicking to bend a plate. FreeCAD’s workflow is similar and also (in my past experience) crashes often.

The most promisingly straightforward mesh -> modal analysis command-line workflow I found was from a project for designing musical bells, but unfortunately I wasn’t able to compile it on my Mac.

Maybe I’ll just have to bite the bullet and learn enough about the actual statics equations to model/simulate it using FreeFEM?

If you have any favorite geometric parametrization/generation or structural analysis tooling, please let me know!

Misc. stuff