As a senior design project I led an interdepartmental team of computer and mechanical engineering students designing a low-cost myoelectric prosthetic hand prototype. My primary responsibilities were the overall project management as well as power supply and PCB design.
The concept was to use self-locking ACME screws driven by geared DC motors to drive the fingers. The fingers were a rigid bar mechanism which allowed the design to function correctly. This is an alternative to the commonly seen servo driven finger mechanism and provided significant advantages. These included precise speed and position feedback through quadrature encoders, self-locking design which allowed motor power to be turned off when not actively moving which greatly increases battery life, and more precise overall finger control. Below is an example of testing the self-locking mechanism on a rudimentary 3D printed hand.
The final PCB design is based on the ST Microelectronics STM32F407VGT microcontroller and contains all power, control, and I/O required for operation of the hand. Power is supplied by a 4000 mAh 8.4V LiPo battery pack which is controlled by a dedicated battery management IC. This handles switch-over between charge/discharge as well as current limiting and pack protection. This feeds a 6V 5A buck converter which is used to power all of the DC motors. A separate 3.3V buck converter provides power for the microcontroller as well as powering sensors. There is a tremendous amount of IO on the board which allows for each finger to have a quadrature encoder on the motor, force sensor on the fingertip, motor torque sensing, and two limit switches. It is capable of driving six motors in anticipation of a second degree of motion on the thump allowing for articulation. Additionally there are interfaces for external user buttons, LED indicators, and an interface to a myoelectric sensing board. University safety concerns prevented us from designing our own myoelectric sensing board, so an off-the-shelf unit was used instead. Future revisions will have this sensing circuitry designed in as well.
The bottom side of the board was used to place a bluetooth radio, various passives, and one of the motor torque sensor amplifiers.
The PCB ended up larger than desired, but space was still at a premium. This is the final PCB design layout
Prior to building the board above, a prototype was designed to test the motor drivers, battery manager, and power supplies. A few design flaws were revealed in this prototype which allowed changes to be made for the final board. The switches and jumpers allow each power stage to be disconnected from the previous. This was done to allow testing of later stages in the event one of the previous ones did not function correctly. As mentioned above, this ended up being a wise choice because there were problems with the battery management circuit.
This is a picture of very early proof of concept testing of the motor drivers, power supplies, and screw drive mechanism.
The project has been put on hold since graduation, but my goal is to pick it back up soon and publish everything to the open source community.