Final Post

In summary, I wanted to create a magnet-based sensor for the shoulder and started off by creating a proof of concept. I created a styrofoam model of the shoulder and placed a magnet on it. When moving the model’s arm around, I could detect the changing magnetic field on the magnetometer. It worked well in the fact that moving the arm with the magnet on it would change the magnetic field read by the magnetometer. However, I did not rotate the whole model or move it around to see the effect of the outside environment. Later, when testing on a real person, we found that the outside environment changes significantly due to the proximity of metal objects, including phones, metal screws in tables, and doorknobs. Upon creating the proof of concept, I created a model for the magnet that was placed on the arm. I treated the magnet as a dipole and predicted where that dipole would need to be given a magnetometer’s reading. Lastly, I defined the position of the arm in terms of yaw, pitch, and roll coordinates, and given a magnetometer’s reading, I was able to limit the position of the shoulder to two spots in the yaw, pitch, and roll coordinates. This model did not account for the thickness of the arm, and the estimate for the position of the magnetometer was rough. The model also did not account for the motion of the magnetometer when the arm was being raised. This plays a significant effect on the reading because the magnetometer rotates with the arm when it is raised, so the change in the magnetic field is less significant than it should be.

With the project finishing up, I can conclude that it would be too difficult to model the shoulder mathematically, due to a large variation in shoulders physique and the placement of the magnet and magnetometer. The placement of the magnetometer and magnet play a significant role, and the magnetometer is very sensitive to the magnet, so any small change in the position of the magnetometer would significantly alter the reading. The environment also provided a challenge that needs to be overcome, but there are multiple ways to solve this challenge. The most important thing that I found out from this project is that each reading from the magnetometer had at most two possible locations where the arm could be. This means that a machine learning model will be able to be fitted to where it can recognize the position of the arm given a magnetometer reading. As this project comes to an end, I will continue working on the machine learning model for calculating the position of the arm instead of the mathematical model.