Exoskeleton Motor Controller Tuning

Exoskeletons are used to provide structural support to humans. They can be indirectly linked to muscles, thus aiding in smoother and faster movements. They can be used by humans to perform difficult tasks, and can also be used by people with impairments, to assist them with daily functions.

The purpose of this project was to tune a controller for an exoskeleton motor, such that it could help a human in traversing a trajectory as required. Since it is not possible to predict what the human is going to do, the controller needs to be robust and adapt to the changing requirements rapidly.

The motor controller was designed on Simulink, and a 1-DoF model was also designed on Simulink to analyze the performance of the controller. We designed a physical apparatus on SolidWorks and manufactured it with the help of laser cutting acrylic, and 3D printed the desired parts. The two arms were connected with the help of foam and velcro, similar to how an actual exoskeleton would be attached to a human, and motor encoders were used to check the rotations on the actual motors. This was used to compare the simulated values with a physical model.

SolidWorks Assembly of the Testing Apparatus
Assembled Test Apparatus

We performed optimization on the Simulink model, to determine the ideal values of motor controller parameters. After implementing the calculated parameters on the physical model, we were able to design the controller such that it closely resembled the desired trajectory.

The tuned trajectory (red) closely resembles the model trajectory (blue), with the reference trajectory (yellow) also shown