Mechanical Design Challenges
How to learn mechanical design + Project Euler-inspired mechanical design challenges
You may find the challenges at the end of the article
Introduction
My biggest surprise when I started taking college mechanical engineering classes was how theoretical it was. I think when many of us hear about mechanical engineering, we instantly think of Legos, robots, engines, rockets, and other hardware. However, as I took more and more classes, I realized that most of the topics I actually encountered were things like beam bending equations, matrices, differential equations, and MATLAB code. If I encountered mechanisms in my assignments, they were usually basic gearing and linkage mechanisms that the assignment had already provided, and my task was to calculate properties about them such as their maximum load. I have talked to many of my peers from MIT and other engineering schools, and one universal observation we all made was that our curriculums focused far more on theory than on designing hardware. In other words, we spent lots of time learning how to analyze hardware that had already been provided to us but very little time learning how to come up with the hardware we were analyzing.
I decided to write this article not just to share my observations about this knowledge gap in the curriculum, but to also share resources that I believe would fill this knowledge gap. However, before I proceed, it would be useful to quickly summarize the mechanical engineering design process. Note that in practice, every organization has differences in their process, but they generally follow this sequence:
1. Define Design Requirements
Ex: A company that makes microSD card slots hears that users are having trouble removing microSD cards from their slots. After investigating, the company decides they need to redesign the slot, and they begin to decide on design requirements such as ease of card removal, cost, size, and cycle life.
2. Generate Ideas
Ex: Engineers gather information from users and brainstorm ways to solve this problem. One of their most promising ideas is to design the slot so that once the microSD card is pushed in, the user can eject it by pushing again (assume this type of microSD card slot hasn’t been invented yet. For promising ideas like this, engineers begin to generate mechanism ideas by researching existing solutions and brainstorming new mechanisms. They sketch out rough ideas, such as one inspired by a retractable pen and another that guides a spring-loaded part along a looped path with energy minimums.
3. Analyze Ideas
Ex: Engineers do basic analysis to determine which mechanism ideas are viable. These include rough cost and size estimates and back-of-the-envelope spring calculations. For the most promising concepts, the engineers create detailed CAD and run detailed analysis like FEA where necessary. Note that this step is often interwoven with the prototyping step described next.
4. Prototype Ideas
Ex: Engineers make physical prototypes of the most promising ideas using mills, laser cutters, 3D printers, and other tools. They assess factors that are easier to test physically than analytically, such as how the microSD card feels as it’s pushed or how many push cycles the mechanism can handle. They refine the prototypes over multiple iterations, and during this process of iteration, the engineers may go back to generating new ideas or even revisiting design requirements. As the iterations progress, the engineers put more and more attention into optimizing DFM and DFA.
5. Finalize and Produce
Ex: The company decides the looped-path mechanism best meets their needs and they finalize their CAD, drawings, BOM, and other documentation. They lock in materials and tolerances, work with suppliers, and run pilot builds. After resolving any issues, the company begins mass producing this new microSD card slot.
All the mechanical engineering curriculums I’ve seen cover how to perform the analyzing step, and most have machine shops for students to prototype concepts using shop tools. However, not enough attention is given to the generating step, especially the part where engineers come up with mechanisms that fulfill the design requirements. This is unfortunate because if the ideas that come out of this generation step are mediocre, then all subsequent steps will be mediocre at best. The success of subsequent steps relies on the engineers coming up with good, often non-obvious ideas, and this step is generally where “eureka” moments happen. Unfortunately, right now the way the curriculum teaches mechanical engineering is a lot like somebody trying to teach a chef how to come up with new recipes by teaching them chemistry, or trying to teach a composer how to compose music by teaching them acoustics. Learning a theory-heavy subject like chemistry could elevate a chef’s existing cooking skills by helping them optimize an existing recipe or understand exactly why the steps of a recipe work, but chemistry on its own does little to help the chef come up with new recipes. Similarly, the skill to analyze and optimize a mechanism using physics does not directly translate to the skill to come up with that mechanism during the idea generation step.
Whenever I have talked to my other engineering peers about the mechanical engineering curriculum, the most common follow-up question has been “how do you teach someone how to come up with mechanisms?” Fundamentally, the skill to come up with mechanisms is a skill of creativity, and one way to define creativity is the ability to combine existing ideas in novel, useful ways. I believe this leads to two main approaches:
Build up a library of mechanisms
Practice coming up with mechanisms
Approach 1: Learn More Mechanisms
There are many resources for learning more mechanisms. For example, there are thousands of interesting mechanisms stored across the following books and videos:
Illustrated Sourcebook of Mechanical Components by Robert O. Parmley
Mechanisms and Mechanical Devices Sourcebook by Neil Sclater and Nicholas P. Chironis
Ingenious Mechanisms for Designers and Inventors by Franklin D. Jones
Mechanisms in Modern Engineering Design by Ivan I. Artobolevsky
McMaster-Carr catalog
thang010146’s YouTube channel
507 Mechanical Movements by Henry T. Brown
The famous Machinery’s Handbook and Shigley’s Mechanical Engineering Design also cover some of the most common mechanisms, but they focus much more on equations and analysis.
It is especially useful to learn about mechanisms by fixing or taking apart kitchen appliances, toys, power tools, lab equipment, and other interesting machines that one encounters. Fixing or taking machines apart allows one to see mechanisms “in their natural habitat,” and this extra context builds up intuition about not just what mechanisms exist, but also about which mechanisms show up frequently in the real world.
Mechanical hobbies like woodworking, lockpicking, and car modding are also valuable. Even though the number of mechanisms they provide exposure to may be limited, the intuition they foster about topics like stress concentrations, material properties, and ease of assembly is transferable to understanding a wide range of mechanisms.
Additionally, there are excellent YouTube channels that explain how complex mechanisms work and demonstrate how others design mechanisms for their personal projects:
Steve Mould
engineerguy
Technology Connections
Jared Owen
Animagraffs
Quasar-Ed
Thomas Schwenke
Matt Rittman
Veritasium
This Old Tony
Our Own Devices
Breaking Taps
OskarPuzzle
Aaed Musa
I have looked for conventions or conferences focused specifically on mechanisms, but I have not found any. I have attended events like Maker Faire and Open Sauce, but even there it was rare to find projects that used novel mechanisms. There are certainly many people skilled at designing mechanisms, but they seem to be perpetually dispersed across different institutions.
Approach 2: Practice Generating Mechanisms
The second strategy for developing mechanical design skills is to practice coming up with mechanical solutions to design requirements. Hardware-centered personal projects and project teams are particularly valuable. Many of my peers first became interested in mechanisms through activities like playing with Legos or participating in FRC (FIRST Robotics Competition). These activities then led to more personal projects and project teams, and this experience later helped them secure positions within industry where they became responsible for doing more mechanical design. Even after joining a company, personal projects remain uniquely valuable. Within engineering companies, growing the technical skills of employees is valued but rarely the top priority, and personal projects can ensure that one always has challenging yet satisfying problems to solve.
However, with the possible exception of personal projects, there doesn’t seem to be an activity optimized for practicing mechanical design similar to what Project Euler, Codeforces, and USAMO/USACO practice problems are for math and computer science. For this reason, I have created a list of mechanical design questions designed specifically for people to practice coming up with mechanical solutions to design problems. I have placed these questions at the end of the article.
Going through every useful strategy for generating mechanisms would be beyond the scope of this article. I may create a dedicated article for this in the future, but for now I will discuss a few strategies that I have found useful. For those interested in learning more, I would recommend the following resources:
FUNdaMENTALS of Design by Alexander H. Slocum
Engineering Design: A Systematic Approach by Wolfgang Beitz
77 Cards: Design Heuristics for Inspiring Ideas
IDEO Method Cards
When generating ideas that fulfill the design requirements, it is best to start by generating as many ideas as possible. The more diverse the ideas are, the better. These ideas might seem overly complex at first, but they serve as starting points on the path to simpler, more elegant solutions. This would be a good time to research how others approached the problem, such as by looking through patents.
These ideas might start off as abstract strategies (e.g., dispense hand soap using a simple pushing action), but eventually they must become specific, visualizable mechanism ideas (e.g., a hand soap-filled chamber whose volume shrinks when pushed and has ball check valves at its inlet and outlet). The design requirements should always guide the generation of these mechanism ideas. However, it is worth mentioning that even though those design requirements could be anything, there are some qualities that almost always help a mechanism achieve them:
Off-the-shelf
Low part count
Simple geometries
Simple orientations
Off-the-shelf hardware like springs, bearings, and gearboxes are useful because they already have a proven design and they save design and manufacturing time. Simple off-the-shelf hardware like screws are typically standardized to specific sizes and tolerances, which makes them interchangeable. In some cases, the entire design problem can be solved using off-the-shelf purchases.
Low part count is beneficial because fewer parts means fewer opportunities for defects during manufacturing, assembling, or operation. If there must be multiple parts, having copies of the same part is often better than having unique parts since using the same part design simplifies manufacturing and assembly. Keep in mind that compliant or frangible mechanisms can often replace multiple moving parts with just one moving part. Additionally, fluid-based mechanisms such as those that use water, oil, or air can often be designed to have no moving parts. Granular media like pellets and ball bearings can resemble fluids in the way they move, and these mechanisms can sometimes also be built with no moving parts other than the granular media.
Making the components in the mechanism resemble simple shapes like spheres, cylinders, wires, and plates is beneficial. Simple shapes like these can often be made from off-the-shelf stock and common manufacturing processes.
Simple orientations are also beneficial. This means keeping geometries like axles and faces oriented in the same direction if possible. If they must have different orientations, try to make them perpendicular to each other. This makes the design easier to manufacture, assemble, and troubleshoot.
The above qualities can be summarized by one word: “simplicity.” In general, the complexity of a mechanical solution should be in proportion to the complexity of its design requirements.
Another principle I like to consider when designing mechanisms is “dominant” vs “recessive” traits, a concept I am loosely borrowing from Mendelian genetics. For example, high and low cost can be seen as dominant and recessive traits, respectively. If one component of a mechanism has high cost, then its high cost dominates the overall cost of the mechanism even if the other components have low cost. Similarly, a mechanism made of many moderately priced components can also end up with a high overall cost since dominant traits can be cumulative in nature. It generally doesn’t hurt for a mechanism to have recessive traits like low cost, light weight, and small size because it’s often trivial to convert to their dominant versions through actions like using more expensive materials, adding weight, or enlarging a component. Moreover, actions like these can often be applied to just one component since it only takes one component with the dominant trait to give the whole mechanism the dominant trait. On the other hand, converting from dominant to recessive traits is generally much harder because actions like using cheaper components, removing material, or shrinking components often compromise the mechanism’s functionality in the process, and these actions may need to be applied to every component carrying the dominant trait. Below is a list of some recessive traits. Notice how the qualities described in the previous paragraphs are also recessive:
Off-the-shelf
Low part count
Simple geometry
Simple orientation
Cheap
Lightweight
Compact
Strong
Energy efficient
Low vibration
Transparent
Easy to manufacture
Easy to assemble
Easy to disassemble
Easy to troubleshoot
The actual design requirements should of course take priority over these traits. However, if the design requirements are flexible, I find recessive traits like these to be useful heuristics for guiding mechanical designs.
Additionally, if a mechanism offers more functionality than necessary, then there’s a good chance that other aspects of the mechanism can be improved. Here are some examples:
If a bracket is stronger than it needs to be, then it might be made lighter by using less material or cheaper by using a cheaper material.
A design uses threaded fasteners, which allows for disassembly. However, if disassembly isn’t necessary, then it might be possible to trade the ability to disassemble for the ability to assemble faster by using snap fits or ultrasonic welding.
A design uses a lead screw to convert a low torque motor’s rotation into a high force linear movement. However, if the constant mechanical advantage and long range of linear movement aren’t necessary, other mechanisms such as a cam, over-center linkage, or Spanish windlass could achieve a higher mechanical advantage at a lower cost.
Keep in mind that the extra, unneeded functionality of a mechanism can be easy to overlook since even the most commonly-used solutions to design problems (e.g., using screws for fastening) can provide extra functionality that isn’t part of the design requirements.
Mechanical Design Challenges
I created this list of mechanical design challenges because there are currently very few resources for one to practice coming up with mechanical solutions to design problems. I took inspiration from the format of Project Euler and USAMO and USACO practice problems, and many of these challenges were inspired by clever mechanisms I saw in commercial products. Some of these can be solved using overly complicated mechanisms, but I strongly encourage looking for simple, practical solutions to each challenge. I am still in the process of adding solutions to each challenge, but if you think you have found an elegant solution to any of these challenges or if you have a new challenge idea, send me an email through my personal website. I will do my best to give credit wherever possible.
Motion Restriction
Design a mechanism where a revolute joint encounters a hard stop after >1 rotation
Design a mechanism where a revolute joint encounters a hard stop after >3 rotations
Design a mechanism where a revolute joint encounters a hard stop after >10 rotations
Design a mechanism where a revolute joint encounters a hard stop after >100 rotations
Design a compliant mechanism that encounters a hard stop after >10 rotations
Design a mechanism where a revolute joint can rotate clockwise within a smooth cylindrical surface but locks up against the surface when it is rotated counterclockwise
Design a mechanism where a slider joint can slide in one direction over a smooth rod but locks up when it is slid in the other direction
Design a ratchet that switches its locking direction after being rotated clockwise past a certain point and then switches its locking direction again after being rotated counterclockwise back to its starting position
Design a mechanism where an input revolute joint cannot be backdriven clockwise or counterclockwise by an output revolute joint. There is a 1:1 mechanical advantage between the input and output revolute joints.
Design a mechanism where an input slider joint cannot be backdriven forward or backwards by an output slider joint. There is a 1:1 mechanical advantage between the input and output slider joints.
Motion Coupling
Design a mechanism where an output revolute joint rotates at <1/10,000 the speed of an input revolute joint
Design a mechanism where the speed ratio between an input revolute joint and output revolute joint is exactly 1567:893
Design a linkage that converts revolute motion into straight line motion using only revolute joints
Design a linkage that transmits rotation around one axis to a skew axis using only revolute joints
Design a mechanism where the position of an output revolute joint is proportional to the sum of the positions of 2 input revolute joints
Design a mechanism where the position of an output revolute joint is proportional to the product of the positions of 2 input revolute joints
Design a mechanism where the position of an output revolute joint is proportional to the sum of the positions of 5 input revolute joints
Design a mechanism where the position of an output slider joint is proportional to the sum of the positions of 5 input slider joints
Design a mechanism where an output revolute joint’s position is proportional to an input revolute joint’s speed of rotation
Design a mechanism where an output revolute joint’s speed of rotation is proportional to an input revolute joint’s static position. The mechanism can have an internal or external source of mechanical energy.
Design a mechanism that can measure the area of an arbitrary 2D shape
Design a mechanism where an output revolute joint’s position is proportional to an input slider joint’s frequency of vibration
Design a mechanism that uses two input revolute joints with stationary axes of rotation to control an output cylindrical joint’s axial and rotational position
Design a mechanism that uses two input revolute joints with stationary axes of rotation to control the rotation and the direction of a wheel
Design a mechanism that uses three input revolute joints with stationary axes of rotation to control the position of an output component in 3D space
Design a mechanism that uses three input revolute joints with stationary axes of rotation to control the XY positions and Z rotation of an output planar joint
Design a mechanism where an output revolute joint’s position always matches an input revolute joint’s position. The input revolute joint can only supply a limited torque and the output revolute joint must supply up to 10x the max torque of the input revolute joint. The mechanism can have an internal or external source of mechanical energy.
A Voith Schneider Propeller (VSP) is used by some ships because it can quickly provide thrust in any direction. Unlike conventional ship propellers which rotate around a horizontal axis, VSP rotates a ring of vertical hydrofoils around a vertical axis. Each hydrofoil in the VSP must constantly change its angle of attack while the VSP is rotating so that the VSP produces a net thrust in one direction. Design a mechanism that is able to control the angle of attack of the hydrofoils as the VSP rotates.
Design a mechanism with continuously variable mechanical advantage between its coaxial input and output revolute joints
Design a mechanism where an output revolute joint maintains a constant speed of rotation despite being driven by an input revolute joint rotating at variable speeds
Design a bike gear shifter that sets the desired pedal torque instead of the gear ratio. The gear shifter must automatically and mechanically shift the gear ratio so that the cyclist always applies the same torque to the pedals regardless of bike speed and incline.
States
Design a mechanism where a slider joint can slide forward and, after sliding back to its starting position, is unable to slide forward again
Design a mechanism where a slider joint toggles between an “on” position and an “off” position each time it is pushed in the same direction
Design a mechanism with parallel input and output slider joints where the output slider joint is locked in place until the input slider joint is moved past a certain position
Design a lock where an output slider joint is locked in place unless each of the 5 input slider joints are slid from their “off” to “on” positions in a specific order
Master Lock’s directional combination lock has a dial in the middle that can slide up, down, left, or right. Unlocking the lock requires sliding the dial in a sequence of these directions (the order matters), and this sequence can be any length. Predict what the mechanism inside looks like.
Design a living hinge that has 3 stable rotational positions
Design a mechanism containing a row of 5 slider joints where each joint has an “on” position and an “off” position, and pushing any one of the slider joints to its “on” position causes all the other slider joints to move to their “off” positions
Design a mechanism containing a coaxial stack of 5 revolute joints where each joint has an “on” position and an “off” position, and rotating any one of the rotary joints to its “on” position prevents the other rotary joints from rotating
Design a mechanical clock that automatically adjusts for daylight savings and leap years
Design a binary counter that counts in gray code
Design a mechanism where an output revolute joint switches from an “off” to “on” position when the speed of rotation of an input revolute joint rises above 1 rotation per second
Design a door that can be manually opened or closed at any time and, if left open in any position, waits 5 seconds before automatically beginning to close
Design a lock and key mechanism that doesn’t need springs, gravity, or any other passive biasing force to function
Design a keyless lock whose method of unlocking involves alternating between leaving the lock upright and leaving the lock upside down for specific amounts of time in each orientation
Fluids and Granular Media
Design a mechanism that is able to take water from a large container and fill up another container of water at a higher water level without using any moving parts
Design a container that allows air expanding inside of it to escape without allowing any of the outside air to enter the container
Design a container that allows the user to dispense a precise amount of liquid from a container even when the initial volume of liquid in the container is variable
Design a mechanism that releases water after a button is pushed down and automatically stops releasing water after 5 seconds
Design a mechanism that releases compressed air after a button is pushed down and automatically stops releasing compressed air after 5 seconds
Design a mechanism that releases sand after a button is pushed down and automatically stops releasing sand after 5 seconds
Design a mechanism that releases whole coffee beans after a button is pushed down and automatically stops releasing whole coffee beans after 5 seconds
Design a pneumatic cylinder that has 3 stable output positions
Design a mechanism where balls of equal diameter may enter at any rate but always exit one at a time with at least one second between each ball. No moving parts other than the balls are allowed.
Design a mechanism that takes in balls of equal diameter and then releases them all at once after a certain number of balls has accumulated. No moving parts other than the balls are allowed.
Design an 8-bit mechanical binary adder where the only moving parts are balls. Must also be able to perform subtraction and handle negative numbers.
Other
Design a mechanism where a revolute joint takes >10 seconds to rotate from one position to another
Design a mechanism where a revolute joint takes >10,000 seconds to rotate from one position to another
Design a mechanism that can lift an object weighing 10x as much as the mechanism to a height that is 10x the height of the mechanism’s initial bounding box
Design a tall structure under tension that allows a horizontal cable to pass from one side of the structure to the other without snapping the structure
Design the shape of a component that, when placed with copies of itself in a container, automatically forms a clot over a hole in the container that has a diameter 10x the spherical bounding box of the component
Design a structure that can extend as far as possible over a ledge using nothing but 100 Jenga blocks
Design a chain reaction mechanism that can send a signal to a point 10 meters away in the horizontal direction in under a second using nothing but Jenga blocks
Design a mechanism where the ratio between the number of steps required to disassemble it and the number of components in the object is >10:1 (a “step” can be defined as one uninterrupted movement of a component from one position to another position)
Design a fully mechanical implementation of Conway’s game of life that can be hung on the wall like an interactive poster. Must have at least 400 cells and fit within a 1x1x0.05 meter bounding box.
Solutions
Potential solution: a screw mechanism, perhaps with some way to prevent jamming at the end of travel
Potential solution: a spool of cable
N/A
Vice clamp and caulk gun
The lower handle of self-adjusting crimping pliers or the backrest adjuster of a futon (video to be added)
Wrap spring clutch that expands around a stationary shaft when the input is rotated but contracts when the output is rotated (video to be added)
Force the input to pull on rubber while the output pushes on rubber within a confined space
Place two plates with holes in them over an axle like in a caulk gun, and force the output to push on the far end of the plates while the input pushes on the short end of the plates (video to be added)
Potential solution: moving the input pushes on a compression spring wrapped around an axle whereas moving the output pulls the compression spring, causing it to squeeze tighter around the axle
To produce extreme speed reductions, it is often much more space efficient to take advantage of a small difference in size between two geometric features (such as in the below solutions and differential windlasses) instead of relying on extreme differences in size (such as in spur gear trains and block and tackle systems)
Two stages of this differential harmonic drive
N/A
Potential solution: logarithmically scale the input rotations, sum them up, and then exponentially scale the sum. This could work for >2 input revolute joints.
N/A
Potential solution: instead of eddy currents, place a viscous fluid in shear between the input and spring-biased output
N/A
N/A
N/A
Double capstan-based torque amplifier (not to be confused with torque converters)
Conceptually, this is similar to how helicopters have to constantly change the angle of attack of each blade as it rotates around, but they use a different mechanism (swashplate)
Another linkage used for controlling a cyclorotor, which is the aerodynamic version of Voith Schneider Propeller
Enviolo gear shifter, which is used in bike share systems like Bluebikes
Potential solution: the input drives the winding spring of a mechanical clock
N/A
When designing state-based mechanisms like this, the key is to make sure that something in the mechanism physically changes when going from one state to another. This physical change often involves moving some intermediate component (i.e., a component that isn’t the input or output component) from one position to another, and this intermediate component is often not visible or exposed to the user of the mechanism. In this problem, there are two states: the initial state and the “locked“ state after the slider has been moved forward and then back. In the solutions linked below, the first solution’s intermediate component is a ball bearing and the second solution’s intermediate component is a dowel pin.
Simplex push button lock (video to be added)
Teardown video. For those interested in another challenge, try to find a way to non-destructively open the lock without knowing the combination.
N/A
Buttons of blenders/food processors (video to be added)
N/A
N/A
N/A
N/A
N/A
Potential solution: boil/evaporate the water and recondense it at a higher height
Push faucet (video to be added)
N/A
N/A
N/A
N/A
N/A
Rotary speed limiters (likely based on shearing a viscous fluid)
To give a mechanism time dependency, one must ensure that something is in motion at all times, whether it’s a component, the vibration of a component, or the movement of molecules in a fluid. If the mechanism ever gets to a point where nothing is moving over time, physics won’t “know” the difference between the state of the mechanism from one point in time t to the next point in time t+dt, and the mechanism will never be able to move. To produce large time dependencies, fluids are useful because they can move slowly without getting stuck by stiction, and it’s generally trivial to increase the amount of fluid available for contributing to the time dependency.
Potential solution: take advantage of the time it takes for a liquid to evaporate
Potential solution: take advantage of the time it takes for a liquid to drip out of a container
Potential solution: mechanical clock
This is basically the shaft passer problem, but with the additional requirement that the “shaft” is tensioned
Potential solution: make the horizontal cable pass through a horizontal row of at least 3 carabiner-style clips
Potential solution: Velcro or magnets. However, the solution may get interesting if only rigid, non-magnetic components are allowed.
N/A
Technically, this challenge would be trivial for mechanisms that use sound as their signal
Potential solution: a scaled up version of these compression bridges
Many mechanical puzzles would fulfill these requirements
Chinese rings puzzle with at least 8 rings
N/A
