This is an original concept for a transfemoral
(above-knee) prosthetic device called RADIANT.
I was doing some initial
adventuring online, as is my habit when I’m looking for interesting design
ideas and novel concepts for prostheses, when I came across this image from the movie Ex Machina:
Ex Machina, which features a main character who is AI and is
given a cyborg/humanesque body. The way areas of her form match up with and
flow next to each other is beautiful. There are areas that look almost like human
skin or biomechanical fabric, and areas that become completely transparent and
reveal the machine beneath. This idea had a lot of potential, so I kept
browsing, in search of some supporting idea that would lead me to a more
concrete notion of my own. I soon came across this artwork from Rocio Montoya,
which really got me questing for more in this line of ideas:
Then I found this artwork from tekka-croe.deviantart.com,
and it thoroughly captivated my imagination...
My thoughts began to solidify, and I decided I wanted to
design a prosthetic device that was visually adjacent to these works of art.
The smooth surface layers revealing an offset robotic interior would create an
intriguing piece, so I started drawing some concept art to try to capture how I
would bring my own concept to transfemoral prosthesis.
My brainstorm sessions usually start out very
broad, where any idea I have basically gets to be on the initial sheet of paper
with zero criticism. I don’t start judging until I’ve slept a little and had
time to compare concepts – which seem to work visually and functionally, and
which might not be so appealing after they’re modeled. I also did some research
into the musculature of legs, and decided to very loosely imitate the curves
created by overlapping muscle. Around the ankle, it would depart from the shape
of a human leg and enter the world of geometry and robotics – this effectively
(and conveniently) removed the need to design an ankle joint. I referenced
athletic prostheses and simple arched foot designs, such as the type Oscar
Pistorius wears for sprinting, for ideas on how to design a joint-less foot/ankle.
A good example is the BioStride foot from HI-Tech (www.humanitechnology.com/prosthetic-feet). Additionally, I researched the
types of sockets associated with a transfemoral amputation. This image from the
Northwestern University Prosthetics-Orthotics Center shows the difference
between two types transfemoral sockets. I chose to design a prosthesis using a
sub-ischial socket. The Center has also developed vacuum-assisted suspension (to
accompany these designs) that improves comfort within the socket and around the
pelvic area. (http://www.nupoc.northwestern.edu/research/projects/lowerlimb/dev_subischial.html)
This image is my first
brainstorming sheet of “any idea that pops into my head”:
My final decision was how I planned
on handling the knee joint, since I wanted this to be an above-knee prosthesis.
Since I’m not an engineer, as I believe I’ve stated before, this time I made
the choice to use an already existing prosthetic knee that could fit inside my
design. The C-Leg made by Ottobock is a microprocessor knee
(www.ottobockus.com/C-Leg.html) that comes extremely close to imitating a real,
responsive walking motion. According to their website, “The
microprocessor-controlled leg prosthesis system is ideal for anyone with high
stability and reliability requirements in everyday life.” If I were an
engineer, I would’ve wanted to design this. If I were an amputee, I would want
this leg. However, I would want the exterior to be highly customizable, because
I’m an individual (and an artist) with specific tastes. To be fair, Ottobock
does offer three different variations of protective cover you can purchase
separately for your C-Leg, assuming that one of them suits your style. I took
the liberty of basically modeling a C-Leg into my Radiant model to the best of
my ability (and using reference images), with a slight difference in the knee
joint to thoroughly sell the concept. I also think the Very Good Knee (VGK-Go!)
from OrthoMobility (www.orthomobility.com/) is an aesthetically pleasing knee,
and it gave me ideas for the slightly different knee joint that would look
better with this new design.
Finally, what would really finish the Radiant concept would
be a way to make the internal surface a real-life emissive material, so that
light could radiate from the gaps between the exterior surfaces. Light-emitting
materials today are limited and expensive, but LEDs are not. The interior
surface of Radiant would emit light through a translucent material via embedded
LEDs of basically any color the person wanted (the exterior surface would be a
customizable color as well.) Ta-da! Now, the real work can begin.
A transfemoral prosthesis, as far
as 3D modeling is concerned, is made up of roughly three functional key elements
that I needed to concept: a socket for the residual limb, a knee, and an
ankle/foot. I say “roughly” because my concept actually integrates the foot
with the ankle joint and lower leg, so that the design is one consistent,
flexible piece. The rest could be left up to my imagination to create.
For portfolio purposes, I wanted to
elevate the renders of my prosthetic devices by providing them with some
context – which led to the decision to spend some time up front modeling a
realistic human body. There were some important criteria I needed to meet for this
to be the correct aesthetic decision but also useful to me as I modeled my
devices. First, the modeling of a human body had to be done in Maya to achieve
the desired level of realism, as well as the closest possible proximity to the
original form of a leg. The Hanger Clinic’s website explains in medical terms
why every good prosthesis is a custom prosthesis (www.hangerclinic.com/limb-loss/adult-lower-extremity/Pages/Above-knee-Prosthetics.aspx).
For my purposes, what I took from this research was that everyone’s residual
limb is unique, its housing must be made to fit the individual, and ideally the
design will complement the person’s body type. I began strategizing now that I
had this information. Organic modeling in Rhino - a NURBS modeling environment
- is possible, but stops just short of torture (for me, at least), and also
doesn’t produce the same results as organic modeling in a polygonal environment
like Maya. Alternately, hard surface modeling is a much more pleasant and
efficient process in Rhino than it is in Maya (primarily a polygonal modeling
environment). Secondly, the body needed to be realistic, but not so realistic
that the polycount got too high (a.k.a. the number of polygons in the model).
By keeping the count low, I could export the mesh model from Maya into Rhino,
and then convert the polygonal mesh object to a NURBS object that was simple
enough to allow me to pull vertical and horizontal curves from, utilizing the
actual form of the original body to design a prosthetic around. This would get
me as close to the form and volume of the original leg as possible, short of
performing a 3D scan of someone’s real leg. Beyond the requirements I created
for myself to lead to success in this project, it seemed fitting that I should
spend my Capstone semester teaming up the very different worlds of polygonal
and NURBS modeling. I have worked hard to become proficient in both during my
time at UTD, and I find myself on a regular basis describing to people who are new
to modeling the ways in which Rhino and Maya complement each other, and which
method has proven better for me in varying situations.
Character Model: Maya
process and tools:
I have modeled a couple of characters
in Maya before (both male, and both for animation), but it’s been a while, and
it seems like every time I neglect one software in favor of another for a few
months, I forget everything I’ve ever learned about the first one. Therefore,
my foray into modeling a realistic female body started with rereading both
spirals I had taken notes in from Modeling & Texturing 1 and 2. I did TRY to start modeling without reference
to notes, and ended up wasting a lot of time right up front. That’s okay! It
wasn’t too much time, and it brought me back to reality. This is why I always
take notes – no one is better at explaining something to me than myself from two
years ago.
I
went a little off-script with my female body model, wanting to keep it in that
friendly area of not-too-high poly and not-too-low poly. That mostly means I
didn’t adhere to the general rules of 8-sided cylinders, since I thought I
could get away with fewer, for the sake of low-poly modeling. I did NOT,
however, give in to having triangles or N-gons, so my conscience is clear on
that. I’ve also learned from more than one modeling professor that human bodies
are essentially “tubes connected to other tubes,” so this is how I always approach
the beginning of a character model in Maya, human or not. I started by having proportional front and
side reference images of a female body, so that I knew I wasn’t straying from
the basic rules of human anatomy or making anything up. I roughly modeled the
torso was first, then I branched off to the arms and legs, and then the hands
and feet. The face and head are always the difficult parts for me. I started by
modeling edge loops around the eyes and mouth and getting them exactly where I
wanted. After that, I bridged the gap by creating a nose. From there, I
extruded out from the sides of the eyes to start forming the shape of the jaw
from the front and side views. After getting those roughly in place, the
process of appending, bridging, redrawing edges, and pushing and pulling
vertices to make an appealing-looking (but low-poly) face is really something
that takes me a long time to do. Then, connecting some low-poly ears (the only
parts that I didn’t model realistically for the sake of poly-count, and also
since there was no need) and the rest of the head was relatively simple.
Lastly, I extruded the torso up to create a neck, which I then connected to the
lower mesh of the head. The final step was modeling some simple clothes, since
she was going to be used for renders. Making a basic shirt and a pair of shorts
is as simple as extracting a portion of the torso and legs, then scaling them
up and rounding them out to lay on top of the body. I also modeled some simple
sunglasses in Rhino, since she seemed like a sunglasses person, and her eyes
were looking a little dead without a realistic texture. I learned a few tools I
hadn’t ever used before in Maya, but I’m not sure how much I’ll continue to use
them. I’ve found that most people build a small collection of tools they’re fluent
with in Maya, and if you’re good at those, you don’t necessarily need to know
the full, outlandish range of tools available in the software. I have hotkeys
for about 20 tools I use regularly, some much more than others, and some with
way more power than others. Here are a
few I got familiar with during this model:
CollapseEdge Tool (Edit Mesh>Collapse) : select two parallel
edges, then collapse the components and merge the vertices of those components.
A handy new clean up tool for handling unmatched mesh flow from one object to
another that you’re combining.
ChamferVertex :
Select a vertex and flatten it into a face with four verts.
ConnectComponents
: (can insert a connecting edge that respects your edge flow on one side) Lets you create an edge loop by selecting a
concentric edge loop that may not have consistent flow on the other side.
Radiant Modeling: Rhino
process and tools:
After extracting the leg mesh from
my Maya model and exporting it as an obj into Rhino, I used MeshToNURBS to
convert the object into something useful for NURBS modeling. I then chose
horizontal loops around the leg that were doing the most work defining the form
of the leg, and I used DuplicateEdge to select those “edge loops” basically,
and to duplicate and join them into new closed curves. I used Rebuild to place
the polycount exactly at 8 and to bring the degree up from 1 to 3. This would
give me a simple, rounded loop that defined that particular horizontal portion
of the leg, but wasn’t too detailed. When creating these loops, the goal is to
make them consistently spaced, equal in point complexity, and have their points
lined up with the others vertically. I continued this process all the way down
the leg, through the ankle, and to the end of the toe. This design doesn’t
incorporate an ankle joint, so the form is continuous and flows all the way to
the toe. After the horizontal curves were roughly in place, I could use
InterpolatePoints to draw vertical silhouette curves from the front and side
views, using O-snaps to make sure they were intersecting the horizontal curves at
the correct control points. Combined with some vertical curves I had pulled
from the mesh leg, these would pair up with the horizontal curves to create an initial
surface. The transitional area around the ankle and heel was more difficult to
define, since I was getting ever closer to organic modeling in Rhino, which I
mentioned was worth avoiding. I had to be very selective about what curves to
use for building the surface, depending on how true to the original ankle I
wanted the new surface to be, as well as how difficult I wanted the next part
of the modeling process to become. The simpler the base surface is, the less
troublesome the surface becomes later when you’re modeling details into it. To
simplify my surface creating process, especially since my prosthetic concept
didn’t have a realistic foot anyway, I created a flat, closed curve from the
top view that would be the basic shape of the sole. Around this point, I
imported my concept art into the scene, using PictureFrame to create reference
planes that the front and side views of my concept art could be attached to. I
had a general concept drawn out of what the shape of the sole should be, and I needed
to start referring to the curves of the concept, as well as the curves of the
original leg mesh. I didn’t know yet if the sole curves I was creating would be
used as part of a curve network, or if it would just be a reference for me
while I drew continuous horizontal loops that could eventually be used for a
Loft. It’s worth having both options available to you, especially since you can
get quite different results from those two surface building commands. I also
created a 2D curve from the side view that would be the silhouette shape of the
curve for the sole. The side view looks very much like the side of a foot, but
the shape from the top diverges from a traditional sole shape and becomes very
robotic, and much slimmer in the front than a biological foot. After testing
for clean curves using CurvatureGraph and CurvatureAnalysis, I used Crv2View to
get an in-between curve that combined the two perspectives. This would provide
me with a good sole to start attaching the vertical curves to, effectively solidifying
a potential network of curves to form a 3D object later (assuming, after
testing, that it looked better than a Loft). Before I moved on, however, I used
Rebuild to simplify the new curve. Then, I began testing surfaces! This was a
period of a lot of trial and error, which is how it usually goes. I tried
several versions of a surface using NetworkSrf, but none of them looked as
attractive or as close to my concept art as the surfaces resulting from a Loft.
Therefore, I next created additional curves to define the cross sections of the
foot. After lofting and using a Patch and BlendSrf to close the toe area, I
tested many of the control points in the ankle and foot to make sure I was
getting an attractive “foot” shape, even if it wasn’t the shape of a foot. I
made sure a heel and a weight-bearing “ball” of the foot were both still
present, but otherwise left it to my concept art to define the silhouette. I
also used CageEdit (which is relatively new to me since I’m partial to being able
to adjust vertices in polygonal modeling) to adjust the overall form a little
bit. This roughly allowed me to sculpt a surface, but without the specific
control points that made up the surface, which can be a little messy.
I next turned to creating an inner offset surface from my
base surface by using OffsetSrf at .2”. The resulting surface was not
incredibly clean, but using Rebuild didn’t result in an inner shape that was
consistent with the outer shape, so I decided to keep it. I didn’t anticipate
any problems, because the inner surface was not going to be modeled on after
this action. It only needed to provide an anchor for the sectioned shells that
would make up the outer surface. I used this same method for creating the
“super inner” surface that would actually be the part of the inside that
touched the stump or held the C-Leg in place. I offset the base surface by .5”
this time, used Rebuild to clean it up, then used a CutPlane and Cap to close
off the bottom at a reasonable height. The foot/ankle needed to be a solid
piece so that it remained sturdy though flexible, but above the ankle could
become hollow to accommodate a pylon and knee system. From here, I turned to
creating the joint mechanism for the knee. I didn’t want to get too far into
the design process before I addressed this, since form traditionally follows
function for good reason. I had already decided to model a microprocessor knee
system based on an existing prosthetic knee, but with a little variation to go
with my original concept. Infinitech.org is a great resource for reading up on
the types of knees that are available today, from very basic single axis knees
to microprocessor knees that are highly computerized and intended to react and
adapt like a biological knee. The knee that I chose to refer to is the C-Leg
from Ottobock, a prosthetics and orthotics company responsible for many prosthetic
innovations in recent years. I don’t claim to know the engineering behind the
C-Leg, but I can model an exterior that looks similar to it, and say my overall
AK prosthetic design is intended to accompany a C-Leg. I started with the wheel
structure I wanted to be the base for the knee. Using a half-circle, a Revolve
command, a base cylinder, and a BlendSrf, I created the joint shape. There was
probably an easier way to do that. I created the rest of the knee joint via
drawing 2D curves and extruding them, then filleting edges, and using
Boolean2Objects and BooleanIntersection to get the solids I wanted. Once the
knee was in place, and I knew the exact space it would occupy, I could move
back to the surfaces that make up the exterior part of the prosthesis. I
started by defining the cut-offs below and above the knee joint, since the knee
was going to be exposed in the final design. By using a combination of
projection, using Interpolate Curve on Surface, and the Pull command to get
points back onto the target surface, I got the exact shape I was aiming for
around the knee, and I applied it to all three surfaces (the exterior,
interior, and what I’m calling the “super” interior, which was the surface that
would be in contact with the sock.) I used BlendSrf with added custom shapes to
build the smooth, rounded surface that connected the inner surface and the
super inner surface. For the outer shell design, I drew InterpolateCurves from
the front and side perspectives, then used Project, ProjectToCPlane, BlendCrv
(a command I hadn’t used before, but turned out to be basically like BlendSrf
in 2D), OffsetCrv, OffsetCrvOnSrf, InterpolateOnSurface, Intersect, Bend, and
Pull, and Rebuild to get my final outlines. I also had to use SrfSeam to adjust
surface seam positions after I got the intersecting curves figured out, because
they weren’t ideal in their original positions, even though I had tried to
place them intelligently while building the surfaces. I needed to be very aware
of how the surface seams would affect any UV layouts I decided to use later.
Placing them in the center of a surface-to-be would make for better symmetry,
and placing them in between areas I needed to manipulate might mean I could
avoid them altogether.
Then, I finally started using Split on the surfaces with the
interpolated curves. I used OffsetSrf (solid or not), BlendSrf with custom
shapes, CageEdit, and FilletEdge to get the resulting shell surfaces that make
up the outer design. I then used BooleanDifference to remove the part of the
shells that intersected with the inner base of the leg. This ensured absolute
intersection and closed polysurfaces, which are both necessary for 3D printing.
My final step was to use FlowAlongSrf with CreateUVCrv in
order to create textures on the surface of the outer shells. I did several
tests with a few concepts I had drawn out in the beginning of my design
process, but none of the test renders received any love from my test subjects
(I run major design leaps past a few trusted, artistic friends before
implementing anything officially). So, in the end I decided Radiant looked more
complete and aesthetically awesome without any additional texture on the
exterior surfaces. In most cases of design, less is more anyway.
Materials
in Keyshot:
Radiant’s
design success depends partially on emissive materials, so it’s fortunate that
Keyshot has those. For the interior surfaces, I used a warm emissive material
with different diffuse colors that complemented the exterior surface materials.
The exterior shells have either an Axalta Paint or a regular Paint material
applied to them. The Ottobock C-Leg parts have titanium applied, as well as
silver and ginger bronze paint materials. The grips on the foot have a
mold-tech plastic material applied that imitates dimpled rubber. The female
model has a translucent human skin material applied, which makes her look like
a mannequin when no bump texture is applied, and a basketball when a bump
texture is applied (it also greatly
increases render time), so I decided she looks fine as a mannequin. Her clothes
are nylon fabric, and her sunglasses are Axalta paint and basic grey glass
materials.
Materials for 3D Print:
I 3D printed this design in ABS-M30, which is a good material for prototyping because it has "great tensile, impact and flexural strength, and environmental stability" according to Stratasys. I chose to print it in two pieces, because it turned out that it was going to be a reasonable price at full scale, but it wouldn't really fit on the build plate at full size. After the lengthy build, which took almost two days, I adhered the two sections together using a glue that contained acetone, which partially melts the ABS and does a great job of joining ABS to itself. After waiting a day, I started the process of applying multiple layers of XTC-3D to the surface, in order to level out the 3D print signature, which always ends up looking like a topographic map in certain areas. To keep the XTC very thin, I added isopropyl alcohol to the mixture (2 parts A, 1 part B, 1 part alcohol). I ended up painting three layers of XTC over the course of a week. Afterward, I was rewarded with a fairly thick, even surface that could be sanded down to get a rough, but still even, surface that would be easy to paint. Before I started sanding, though, I filled the crevice between the two parts with a sculpting putty that would also be easy to sand down after it dried and set. Another 24 hours later (there was a lot of waiting in this part of the project) I sanded down the entire surface - sanding it perfectly took about a day. Next, I launched the painting process. The first layer was simple polyurethane. The second layer was a white matte primer. The third, fourth, fifth, and sixth layers were polyurethane mixed with SoStrong tints - I aimed for a vibrant indigo color that was a little transparent due to the nature of polyurethane. After that process, which took another week, it was time for two layers of white pearlescent paint that was sprayed on evenly in two coats. The final coat was a yet another layer of polyurethane to protect it from damage.
Materials for 3D Print:
I 3D printed this design in ABS-M30, which is a good material for prototyping because it has "great tensile, impact and flexural strength, and environmental stability" according to Stratasys. I chose to print it in two pieces, because it turned out that it was going to be a reasonable price at full scale, but it wouldn't really fit on the build plate at full size. After the lengthy build, which took almost two days, I adhered the two sections together using a glue that contained acetone, which partially melts the ABS and does a great job of joining ABS to itself. After waiting a day, I started the process of applying multiple layers of XTC-3D to the surface, in order to level out the 3D print signature, which always ends up looking like a topographic map in certain areas. To keep the XTC very thin, I added isopropyl alcohol to the mixture (2 parts A, 1 part B, 1 part alcohol). I ended up painting three layers of XTC over the course of a week. Afterward, I was rewarded with a fairly thick, even surface that could be sanded down to get a rough, but still even, surface that would be easy to paint. Before I started sanding, though, I filled the crevice between the two parts with a sculpting putty that would also be easy to sand down after it dried and set. Another 24 hours later (there was a lot of waiting in this part of the project) I sanded down the entire surface - sanding it perfectly took about a day. Next, I launched the painting process. The first layer was simple polyurethane. The second layer was a white matte primer. The third, fourth, fifth, and sixth layers were polyurethane mixed with SoStrong tints - I aimed for a vibrant indigo color that was a little transparent due to the nature of polyurethane. After that process, which took another week, it was time for two layers of white pearlescent paint that was sprayed on evenly in two coats. The final coat was a yet another layer of polyurethane to protect it from damage.
3D Printed Prototype:
Materials:
Here's a link to my presentation regarding this design, as well as Anatomic (a below-elbow prosthetic device):
Here is a collection of reference images of prostheses, cosmesis, and general inspiration:
Sources:
tekka-croe.deviantart.com
Prosthesis/Cosmesis
companies I found:
https://glazeprosthetics.com/
http://unyq.com/prosthetic-covers/
No comments:
Post a Comment