Knee Brace Protoytpe
Skills Used: Embedded C, Microcontrollers, PCB Design, Motors
This was a project class that I took, involving creating a vibrating, heating knee brace. My main responsibility was the controls and PCB design.
The PCB started on a bread board and as more functionality was requested by other sub-teams, it grew into the fully formed, PCB design shown below. After validating and testing the design, we ordered surface mounted PCBs (I surface mounted one side because it was a lot cheaper and faster).
The Knee Brace had the following functionality (reflected in the design of the PCB):
Vibrating Motors (two separate motors), with multiple levels of vibration intensity
Heating, with multiple levels of heat
Indicator lights so the user could see visually which level was selected
Buttons to allow the user to turn the Knee Brace on/off, and select the intensity level
A major challenge was getting the circuit to perform correctly. It took many iterations to get the breadboard circuit to be robust enough to handle extended periods of testing.
My other main responsibility was to program the microcontroller to control the functionality and respond to user input. I had to send a precise voltage to the motors and the heating wires to ensure a safe experience for the end user. This was all done in C, on a microcontroller with limited memory, so that was a big consideration when writing the program. A challenge was making the code reliable enough to avoid errors from prolonged use. I add safety checks so if there was an error, all voltage to the motors and heating wires was cut off.
It's difficult to visually see the motors or the heating wire in the video below, but the brace ended up working great! The LEDs changing signals a change in the intensity of the motors or heating cable.