From Nerves to Nodes: Creating a Bionic Arm through 3D Printing
Advisor: Ms. Alexis Parker
Internship Location: O'Conner Hospital, San Jose, CA
Onsite Mentor: Tanvi Raman
In a world where hands are essential for daily tasks, imagine facing life without them. For over 2.1 million people, this is a stark reality due to limb loss, a number expected to double by 2050. Among them, over 3% grapple with upper limb loss. Prosthetics offer hope, but current solutions often lack the dexterity and intuitive control needed for true empowerment. A bionic arm mimics natural human functions through advanced technology, aiding individuals with limb loss. Electromyography (EMG) records muscle electrical activity, essential for interpreting signals from remaining muscles in the residual limb. These signals control the bionic arm's movements, making EMG a common interface for powered prostheses, ensuring ease and comfort.
Project Blog
Week 1
This week, I focused on designing the finger joint. I created a working finger model using cardboard, string, wooden rods, and popsicle sticks.
In the initial stages, I studied hand anatomy, paying close attention to flexor and extensor tendons, ligaments, and joint structures, all to mechanically replicate them. I realized that rubber bands could replicate extensor tendons, while nonelastic string could replicate flexor tendons. The concept was straightforward: pulling the finger with a string would cause it to curl, and releasing the string would let the rubber band pull it back into extension.
A knuckle joint is a connection point that allows two parts to move in a bending motion, similar to how your knuckles work. It's made up of a pin or rod that fits into holes in both parts, allowing them to rotate around the pin. This movement enables flexibility and bending, just like when you curl your fingers.
The Build
Below are the pieces I crafted: the first piece serves as the fork end of the joint, while the other piece acts as the one-eye end.
The assembly process involved wedging the pieces together, with a rod inserted through them to function as a knuckle pin, thereby allowing rotational movement, as depicted in the illustration.
Following this, I attached another fork end to the one-eye end to replicate the pattern.
In the end, I had a finger-like structure.
Afterward, I added rods to the back of the finger where I could attach an elastic rubber band.
Additionally, I inserted small rods at the bottom of the finger. This setup allowed the string to catch onto these rods, allowing the gradual pulling of each ligament one by one.
My Issues
I encountered several issues with the first model. Since I had to cut the cardboard pieces by hand and draw them, they weren't all accurately sized. This sizing issue affected the fitting of each knuckle joint, leading me to cut extra pieces of cardboard. The round areas were jagged and as a result, the finger's movement wasn't smooth. This created a lot of friction.
I believe these problems will be solved when I start 3D printing the pieces because the printer can accurately create the right size and curves needed for smooth movement. To make the hand easier to work with, I enlarged the prototype finger design. This won't be an issue with a 3D printer, as it can produce small parts with accuracy.
Each joint was equally sized, which isn't true for a normal finger tendon. Additionally, the appearance of the finger isn't great; there's uneven hot glue and wear and tear on the cardboard from repeated movement. I plan to address these issues by using plastic for durability.
Despite these challenges, the finger joint designs are a solid foundation, and I'll continue using knuckle joints for each finger joint.
Week 2: Blog
This week, I researched and studied the anatomy of the metacarpal region of the hand or the palm area. I discovered that muscles in this region cause the bone to expand outwards when the hand makes a fist. My goal for my hand is the flexion and extension of fingers and the opposition of the thumb.
In my last week's blog post, I discussed creating individual fingers, including a thumb with two phalanges. Now, my focus shifts to testing whether this design is capable of forming a fist or the flexion of all the fingers. Flexion is the act of curling the fingers to close the hand.
At the start of week two, I researched the muscles responsible for finger flexion. This led me to the dorsal interosseous muscles, a group of paired intrinsic muscles of the hand located between the metacarpals. The four dorsal interosseous muscles in both flexion and extension of the fingers. As the fingers curl up, they move the metacarpals outward, creating enough space for the fingers to curl into a fist. The diagram below provides an anterior view, illustrating how the muscles function and their placement.
The first model I planned to build does not replicate those mussels or the movement of the metacarpals so before I built the physical model my initial hypothesis was that while the fingers would curl properly, it might be somewhat challenging. The result might not resemble a proper fist.
To test if my design applies to making a fist I would have to repeat the finger model I made last week. This took considerable time as I had to hand-carve all the pieces.
I then designed a hinge joint where I could attach all the phalanges to the meta cables, the same as the knuckle mechanical joint I used but with a slight modification so that it could attach to a plate.
As mentioned in my blog last week, I anticipate resolving these issues once I can 3D print my parts. Next week, I aim to learn how to use Fusion 360 for 3D modeling each piece of the build. Furthermore, I’ll focus on tweaking the hinge joint where the phalanges and metacarpals join to improve sturdiness and enable a better fist structure.
Week 3: Blog
In last week's blog, I discussed studying the metacarpal region's anatomy and testing a hand model's ability to form a fist, revealing challenges in achieving smooth finger flexion. At the beginning of this week, I refined the model, and successfully improved its functionality. Below is a video demonstrating the flexion and extension of all four fingers.
https://www.youtube.com/watch?v=7u-oXqkElE8
Since this is week 3, I do believe that I should start my study of Electromyography (EMG) sensors early and explain how they will be used in my senior project. EMG sensors have a long history of use in prosthetics. However, before understanding how EMG sensors function, it's important to grasp the physiology of muscle contractions.
When you decide to move a muscle, your brain sends a message to that muscle through nerves. This message triggers a surge of electricity along these nerve fibers. When this electrical surge reaches the muscle, it creates a chain reaction inside the muscle cells. Among these reactions, calcium ions rush into the muscle cells. These calcium ions act like keys that unlock the muscle's ability to contract. Now, inside the muscle cells, there are tiny motors that work by pulling on protein filaments. When these motors pull on the protein filaments, the muscle contracts. The strength of this muscle contraction depends on how many of these tiny motors are activated and how quickly they're pulling on the protein filaments. When you need to exert more force, your nervous system recruits more of these motor units, and they start pulling faster. This increased activity generates a stronger electrical signal, which EMG sensors can detect.
Once the EMG sensor detects the electrical activity it sends a signal to a circuit board. This signal then is translated into a command. The command generated by the EMG sensors will control servo motors, which in turn will manipulate strings connected to each finger ligament. If the string is pulled by the motor the finger will curl and once the motor rewinds the string will be pulled back and the elastic will cause the finger to uncurl.
Next week, I will have to research further how the signals from the EMG sensors are converted into a command for a motor. This will require some circuit knowledge and coding expertise.
Post 4: Blog 4: Fusion 360 is my BFF
For this week, I dedicated myself to mastering Fusion 360, a comprehensive software for 3D modeling. It's been quite the journey filled with countless YouTube tutorials and articles to help grasp the program's intricacies. I primarily focused on Fusion Essential and Product Design online modules to get started.
Building Parts
My primary objective was to replicate the two parts essential for creating the phalanges. These parts are integral components of a knuckle joint, facilitating the bending motion akin to how a finger curls. Essentially, this joint comprises of a pin or rod that slots into corresponding holes in both parts, allowing them to pivot around it. This pivotal movement is what grants flexibility and enables bending.
Below, I present the components I meticulously crafted: the first piece serves as the fork end of the joint, while the other piece functions as the socket or "one-eye" end.
Using Fusion 360
To begin the process of 3D modeling these pieces in Fusion 360, I first downloaded the free version of Fusion 360 for personal use. However, I found the initial experience quite challenging. Upon launching the software, I was met with a screen that appeared unfamiliar or daunting to me.
When I first encountered the Fusion 360 interface, it was overwhelming. The multitude of options and tools left me feeling uncertain about where to begin. Thankfully, I turned to the vast resources available online for guidance. For the first four days, I immersed myself in exploring the practice models demonstrated in various tutorials.
Gradually, I gained confidence in navigating the software and manipulating 3D models. Once I felt comfortable, I decided to apply my newfound skills to create the one-eye joint. However, despite my efforts, the outcome fell short of my expectations, leaving me somewhat disappointed with the results. But that was okay! I returned to the drawing board, determined to refine my process.
The Steps
Now I was prepared to guide you through the steps involved in crafting both the fork end and the one-eye end of the joint. To begin, I broke down the components into their fundamental shapes, enabling me to work with manageable elements. I recorded the measurements of these shapes, facilitating the precise sketching process in Fusion 360. By planning each step, I ensured a smoother journey towards creating a final product.
This was the basic shape I needed to make. I set aside the green and purple colors for later consideration. First, I started sketching a 5 cm by 2 cm rectangle in Fusion 360. At each end of the rectangle, I included two circles, each with a radius of 1 cm, as illustrated in the image below.
After drawing the basic shape, I proceeded to transform the 2D shape into a 3D one. Utilizing the extruding feature, I gave it a thickness of approximately 0.5 cm. Now, it was time to examine the purple and green parts. The purple sections indicated what needed to be cut off to form the one-eye end, while the green portions represented the actual one-eye end.
I proceeded by sketching another rectangle, measuring 7 cm by 0.5 cm, outlining the area that needed to be cut.
I then sketched another rectangle measuring 7 cm by 0.5 cm. This rectangle served to outline the area that needed to be cut.
It already looked a lot better! Next, I needed to create the hole, which was around 0.2 cm in diameter and had to be placed in a specific spot.
And voila! With meticulous planning and precise execution, I successfully crafted the first piece of my project, bringing my vision one step closer to reality.
Now, I just have to make the two-eye end of the joint.
Week 5: Blog
This week, I've successfully 3D printed the pieces I designed just last week.
For those unfamiliar with 3D printing, here's a brief overview: I began by exporting my 3D model file as an STL file. STL, which stands for stereolithography, Standard Triangle Language, or Standard Tessellation Language, is a common file format used in both 3D printing and computer-aided design (CAD). These files consist of interconnected triangles that define the surface geometry of a 3D model or object.
The next step involves using 3D printing software to slice the STL file into printable pieces. In my case, I utilized Creality Print software for this task. The pieces are sliced into layers, with an infill pattern that I've configured.
Once sliced, I save the file onto an SD card and insert it into my 3D printer to initiate the printing process.
But how does the actual 3D printer operate? It functions by constructing objects layer by layer from a digital design file. Starting with a digital model sliced into thin horizontal layers, the printer gradually deposits material—typically plastic filament or resin—layer by layer, adhering to the design until the object is fully formed. This method, known as additive manufacturing, entails adding material layer by layer, contrasting with traditional machining methods that involve subtracting material.
Following the printing process, I assemble the parts into a functional finger. It's worth noting that printing all the parts for a single finger is time-consuming, taking at least 1 hour and 30 minutes. This slow pace emphasizes the importance of carefully checking for errors during the 3D modeling phase and ensuring the model is finalized before printing.
Week 6: Blog
This week, I delved into researching motor mechanisms. Through thorough investigation and experimentation with interface functionalities, I gained valuable insights into how servo motors operate and their potential applications in my project.
Servo motors, comprising DC motors, gears, control circuits, and feedback systems, intricately convert electrical energy into precise mechanical motion. The DC motor, powered by electricity, rotates its shaft, linked to gears for amplifying torque and ensuring accurate control. The control circuit, often integrating microcontrollers or specialized servo controllers, interprets input signals, typically in PWM pulse format, to dictate the motor's desired position. Simultaneously, the feedback system, employing devices like potentiometers or encoders, continuously compares desired and actual positions, facilitating real-time adjustments to minimize discrepancies.
In my project, servo motors play an important role in pulling the strings to curl the fingers of a prosthetic arm. However, I encountered a challenge: servo motors' size poses spatial constraints in the wrist area. Despite this, their programmability and precise control offer significant advantages, enabling tailored finger movements to achieve a closed fist, for instance. To address this spatial limitation, my next step involves 3D modeling housing designs, strategizing on efficiently accommodating multiple motors to align with the project's objectives.
Furthermore, I have successfully designed and 3D printed a version of the palm to which all the fingers will be attached. I plan to refine the model to give it a more realistic appearance resembling an actual hand.
Now, I'm itching to dive into the next stage: adding the electronics that'll make this model truly functional. Next week, I'm all about circuitry and microcontrollers, setting the stage for the prosthetic arm's capabilities. Let's bring this project to life!
Week 7: Circuitry Challenges: Senior Project Update
This week has been challenging, marking the low point of my senior project journey. For the first time, I found myself confused and somewhat lost. In the preceding weeks, I had developed a solid understanding of how everything worked, but now it was time to dive into circuitry, and things felt daunting.
Despite feeling overwhelmed, I persisted. This week, I continued my research into all the components necessary for my senior project, delving deeper into how each part functions. While I've compiled a comprehensive list of the required materials, I'm still in the process of fully understanding how each component operates and ensuring that I can provide clear explanations and insights in my upcoming blogs. However here is a list of all the components I will need.
Arduino Board: This serves as the brain of the project, providing the platform for programming and controlling the system.
Jumper Wires: These wires will be essential for establishing connections between different components on the breadboard and Arduino board.
Servo Motors: These motors will enable precise control over the movement of mechanical parts in my project, adding a dynamic element to the design.
Breadboard: Acting as a prototyping platform, the breadboard will allow me to assemble and test the circuitry before finalizing the connections.
With all the necessary components on their way, I'm eagerly anticipating their arrival next week. Despite the challenges encountered, I remain committed to seeing this project through to its completion. Stay tuned for more updates on my progress in the coming weeks.
Week 8: Exploring Servo Motors and Circuitry
This week I have gotten all my parts and was able to have a hands-on demonstration of how everything works. My EMG sensors are still on the way though so I will explain how the computer can control a servo motor and some interesting properties I found with this.
A breadboard is a key tool used in electronics prototyping. It's a grid-like board where electronic components and wires can be inserted and interconnected to create temporary circuits for testing without soldering. This allows for quick adjustments and experimentation in circuit designs before finalization.
Jumper cables, also known as jumper wires, are essential components in electronics prototyping. They are flexible wires with connectors at each end that can be easily inserted into the holes of a breadboard or connected to electronic components. Jumper cables facilitate the creation of electrical connections between different points on a breadboard or between components without the need for soldering. This flexibility allows for the rapid construction and testing of circuits, making them indispensable tools for experimenting with various circuit configurations and designs.
The Arduino board is a powerful microcontroller platform widely used in electronics projects. It acts as the brain of the project, providing a programmable interface for controlling various electronic components. Equipped with input/output pins, it allows users to connect sensors, motors, and other devices to create interactive systems. Programming an Arduino is relatively straightforward using a simplified version of C/C++ language.
I was able to get the servo motor to work and here is a video of it.
https://youtube.com/shorts/O2dLhprnzYQ
However, while experimenting with two variants – the SG90 and the 996 – I encountered an interesting limitation: their relatively slow speed. This sluggishness stems from the internal mechanical gears crucial for precise movement control. While this precision is advantageous, it poses a challenge for my project's goal of achieving 10 curls per second. Although the fingers themselves can manage this speed, the servo motors may not match it. Nonetheless, this discovery is an integral part of the experimentation process. I'll continue to explore how to address this hurdle and optimize the motors' performance for my project.
Week 10: Blog
As I sit down to write this final blog post, I can't help but feel a wave of accomplishment and relief wash over me. It's been quite the journey, from the initial concept to now, where I stand with a fully functional hand model ready for presentation on Senior Project Day. The road hasn't always been smooth, with its fair share of setbacks and challenges, but looking back, I'm amazed at how far I've come.
Week by week, I documented my progress, sharing both triumphs and tribulations. One of the early challenges I encountered was with the thumb part of my hand model, which didn't quite meet my expectations. But with determination and a bit of ingenuity, I utilized 3D printing to fix the issue, bringing me one step closer to my vision.
As the weeks went by, I tackled each component of the hand model. Every detail mattered, from incorporating circuitry to fine-tuning the finger pull and ensuring the curl of the thumb and extension of the fingers met my specifications. Yet, just when I thought I had everything under control, I encountered a new challenge.
While capable of handling the desired movements of the hand, my servo motors struggled to keep up at 10 curls per second. Despite the fingers themselves being capable of such rapid movement, the motors would overheat without a delay between each rotation angle. It was a setback I hadn't anticipated, but one that I'm determined to overcome.
Reflecting on this journey, I realize that innovation isn't always a linear path. It's filled with twists and turns, highs and lows, but it's in navigating these challenges that true growth occurs. As I prepare for Senior Project Presentation Day, I do so with a newfound appreciation for the journey and the lessons learned.
So, to my dear readers, as I bid farewell to this blog series, I leave you with this: embrace the challenges, celebrate the victories, and never underestimate the power of perseverance. Thank you for joining me on this adventure—I couldn't have done it without you.