Parametric Face Mask Guard
With the pandemic, face masks have become a part of everyday life and are often worn for long periods of time in public spaces when people resume to in-person school and work. Due to physical differences in people’s head shape, size, and facial features, face masks can often cause discomfort or even pain. The idea is to design a face mask guard that fits on the outside of conventional face masks with ear straps to improve the comfort and convenience of extended wear. The design should accommodate for physical differences between individuals, be easily removable, and mitigate common problems with wearing face masks for prolonged periods of time.
Motivation: masks are uncomfortable on the ear, head, and face
Goals:
- find a way to make ear straps less painful on the ear
- find a way to adjust how tightly a mask fits on the face
Supplies
- Enders 3 Pro Printer
- Filament
- Rhino/Grasshopper
- Autodesk Fusion 360
- Elastic bands
- Quick-release buckles
Generating a Triangle
First, we start off with making a generic method to create a triangle based on 2 vertices and 2 angles. Since the mask will be composed of various triangles at varying sizes, we want the triangle generation to be entirely parameterized.
We also want to hollow the triangle out to reduce print time and filament usage, and at the same time increasing breathability since it's intended to go on the outside of a mask. The scale of the inner triangle is easy to create since each edge will simply be a proportion of the original. However, it is currently not offset properly from the outer triangle.
Offseting Inner Triangle
Some searching around showed us that it would've been a good thing to pay attention in geometry class.
The vertices of the inner triangle will always fall on the lines that bisect the triangle, and the intersection of the bisectors is the incenter. To determine where the incenter is, we can use our generate triangle function with the same vertices but half the angles, which will generate the third vertex, which is the incenter.
There is also a formula for computing the incenter with 3 vertices of the triangle:
for side lengths a, b, and c and vertices A, B, and C, where a is the side length between A and B
incenter = ((a*x_A + b * x_B, c * x_C) / (a + b + c), (a*y_A + b*y_B, c*y_C) / (a + b + c))
Now that we have both the outer and inner triangles, a boolean difference will hollow out the triangle.
Extruding and Printing
Extruding and then printing our hollowed out triangle proves that we might've made the triangle too thick to be on a mask. Since everything is parameterized, that was an easy change.
Adding Cylindrical Connector
We want the angles between different triangular faces to be adjustable, so a hinge mechanism might be a good solution to this. We start by adding a cylinder to the side of the triangle.
The first test print showed that the radius of the cylinder wasn't enough.
Creating the Cylindrical Slot
Next, we want to create a cylindrical slot on the piece that neighbors the piece with the cylindrical connector. Be creating a larger cylinder with some tolerance then cutting away part of it, we have the hinge mechanism.
Baking and Slicing
There were more nodes than I though would be necessary for creating the hinge geometries. It is unexpectedly hard to design a good hinge.
We kind of expected the slicer to not like the overhangs created by the cylinders, but it will probably be fine.
Testing the Hinge
While the hinge does work, and is able to hold its shape after adjustment, the attachment isn't very secure when adjusting the angle. To mitigate this, we can try making the slot protrude from the side of the triangle more, and make a slit on the inside of the cylinder to allow for fuller clamps and rotations.
Designing Segments for Strap Band
The face mask will need to attach to the guard in some way. The initial intuition here is to create a repeating pattern of hooks that the mask can strap onto while also allowing it to be adjustable so the mask isn't too loosely or too tightly on the face.
While having at least a test print would be nice, the printer keeps running into the print because the bed was too high.
Testing the Band
From testing, we figured that the prongs on the sides should angle inwards more to keep the straps more secure. It then occurred to me that perhaps a segmented band isn't necessary. Instead, the adjustment on the strap length can be made by wrapping the strap around the prongs.
After further thought, I figured that to make it truly adjustable, we can using a single segment of the pattern as a strap clip to connect the mask straps to my add-on head straps. That way, we can adjust the mask fit by adjusting the fit of the head strap
Iterating Over Strap Clip
From the first iteration of the strap clip, I noticed that the hollowed part of the clip can conveniently loop an elastic band through to form the head band at an angle.
For the second version, we enlarged the hollow part to fit the width of the elastic band. The prongs are also angled inwards and a gap is added at the bottom to slip the band through.
To get the strap actually working and wearable, where the tension in the head strap would be able to hold the mask in place, a second head strap is probably necessary to counteract the tension from the first strap to keep the strap clip stable.
Additionally, a thank you to Walter's tri-glide slide clip STL because the one I bought was 1.5", and was way too large and bulky
Leveling Printer... and Leveling... and Again
Printer was having many problems. Sometimes the extruded filament doesn't adhere to bed. Sometimes corners get warped. Sometimes weird spaghettis form. Sometimes no amount of leveling the bed gets the printer to cooperate.
It's possible that the center of the bed is warped so I instead leveled the bed relative to the bottom left corner. I also decreased print speed from 50 to 40, and decreased nozzle temperature to 190 ºC to get the small triangles with dramatic angles to print properly.
Sometimes, the bottom left corner isn't happy either.
Iterating Over Hinges
Now, we come back to the hinges. Somehow this turned into a painstaking pursuit for good hinges, which is important to obtaining the freedom of movement but also the rigidity necessary to form a mesh with these triangles over the mask.
We'll talk about all the problems that caused subsequent iterations in the next step.
Hinges are tricky.
Testing Different Hinges
Here are some of the problematic iterations:
- not enough rotation allowed for slot --> generate slit next to shaft for the slot
- not enough tolerance on slit --> add more tolerance
- slot too fragile, prone to snapping when rotating hinge --> increase slot wall thickness
- slot too robust, prone to snapping shaft when rotating hinge --> increase shaft contact area with face and decrease slot length
These triangular pieces ended up producing a hinge with robust enough rotation and can kind of hold its shape.
Except it still needs more modification to allow bending in the opposite direction
Generating Triangles From Points
Since we originally wanted to compose the physical mesh by using triangles of varying sizes and shapes, I tried generating the triangles and their connecting hinges through grasshopper from a cloud of points with shared edges.
While I was able to parse the points and get the outer triangles generated in the right locations, the inner triangles were offset, which reveals that our incenter algorithm was probably problematic.
Assembling the Guard
To test the viability of creating forms through these connecting hinges, I proceeded to print...a bunch of them. If the pieces are tiled in a straight line, the range of motion that the hinges provide allow the pieces to form a flexible band. They can also be pieced into hexagons into a larger surface––forming somewhat of a coaster.
By using the property that these hinges allow flexible rotation yet can also hold their own angles to some extent, I assembled them into a ring that roughly fits around the face. I used a surgical face mask here since these masks typically are too loose on the face while KN95s are always too tight.
We can see that the guard is able to press down the sides of the fabric so that they leave less of a gap between the skin and the mask. However, as this was a concern that was raised during the project review, the guard is a bit heavy on the face despite individual pieces being quite light. Nonetheless, as a proof of concept, this assembled guard has the potential to provide better fit for surgical masks with an interestingly geometric aesthetic.
Aesthetically, it doesn't look too shabby but isn't as cool as I'd hoped for.
Testing Strap Clip V3
Version 2 of the strap clips gave me the idea that the prongs can be angled even closer to the main part of the clip so that mask straps are less likely to slip out. Moreover, instead of having the negative space on the inside of the clip be triangular, version 3 angled the bottom edge inwards to make the clip slimmer on the face while hugging closer to the head straps.
To test the comfort and utility of it, I wore it to campus for meetings and presentations. While the clip works with a single head strap, double head straps proved the most effective in taking off any force applied to the ears. The sloped edges on the clip helped the 2 head straps stay at an angle from one another so those were well designed. The head straps can get a bit bulky but that can be solved by buying narrower elastic bands. Overall very comfortable on the face and ear. There were some occasional slippage for the top strap but not too frequent. The head straps are also easy to put on and remove without the need to take off my glasses.
Additionally, not only do the clips alleviate pain from the ears, but they also help with adjusting the tightness of the mask on the face. The number of times that a mask strap is looped through the inside of the clip onto the prong affects how much mask strap is between the clip and the actual mask, such that by adjusting the length of the 2 head straps and the mask straps, we can control how tight the fit of the mask is.
Assembling Polyhedrons on a Tangent
With all of the triangles I've printed for my guard prototype, I kind of went on a tangent and started exploring their feasibility as an extension to my press fit project where I attempted to create various polyhedrons through press fit triangular pieces. Since these hinges are able to stay in place while allowing range of motions, they proved to be much better components in constructing polyhedrons.
In face, less complex polyhedrons like the tetrahedron and octahedron are robust enough to withstand being thrown on the ground and rolled around like a dice.
Moreover, because the base of these pieces are equilateral triangles, 4 of these pieces will form a larger equilateral triangle and can therefore be used to create larger polyhedrons.
I am definitely quite fond of how clean the icosahedron looks even with all the hinge connections visible on the surface.
Making a Lamp Shade
Based on the idea that 4 pieces can be combined to form a larger equilateral component, I used a total of 60 pieces to create 15 out of 20 faces of an icosahedron. It works quite well as an extension to the lamp shade project and is able to project interest patterns of light onto the wall.
Modifying the Hinge for More Rotation Range
So far, the hinge design is only able to support close to 180º rotation. In hope of creating a hinge that will allow more range of motion to the pieces so they can create better fitting curvatures for the face, I modified the design to have the hinge connection pieces be farther away from the main triangular body.
While this solution does allow for greater range of motion, it also took away from the stability of the hinge since the slot can now slide freely on the shaft without another slot on the edge of the triangular piece to constrain its translation. I also deviated from equilateral triangles and printed 72º-54º-54º isosceles triangles in an attempt to assemble a dodecahedron. Due to the sliding behavior of these hinges, it became much more difficult to keep the form of the polyhedron during assembly.
Unfortunately, I wasn't able to print enough pieces to construct a dodecahedron, but just know that I had hopes of one day assembling a pentakis dodecahedron.