This week, Emma gained access to a sewing machine and was able to complete the headband (pending further modifications). The fabric chosen for the band sleeve (a Spandex-polyester mix) is a stretchy material that is somewhat delicate, so she encountered some problems with it getting sucked into the sewing machine. Additionally, the elastic thread chosen for use with the sleeve construction was difficult to use in the sewing machine, so that should be modified for future machine use. Eventually, by backing the seam with felt, the sleeve was sewn. The headband was assembled, and the IMU was inserted into the pocket of the band to be used for calibration.
Emma has also been working on making formal wiring diagrams for the final report and going through the DesignSafe analysis. This week, Katelyn struggled with getting the correct input from an Arduino to the Pi. Dr. Klaesner showed her that the issue was that the Serial Monitor for the Arduino was open (so Arduino IDE was trying to read data from Serial) at the same time that the Python program on the Pi was trying to read data from Serial. This caused all sorts of distortions and odd effects. With this resolved, Katelyn was able to get the Pi to accurately read output from an Arduino test program that gave values of 0, 1, or 2 every second. She also finished working through the other relevant issues for the Pi - the Python program can now activate audio output and there is a button to halt the program and write a file containing statistics from the session. Thom worked on calibration, and after discussion with Dr. Klaesner, was able to get a calibration loop up and running. He was also able to add cutoff values to the program so that the output is given as a 0, 1, or 2 to match the inputs needed for Katelyn’s Python program that will read in input from the Arduino and give corresponding feedback. Katelyn and Thom have largely completed the device. Individually, they made large strides towards the completed device, and spent Thursday and Friday morning overcoming the final hurdle of getting the Arduino and the Pi to communicate with each other so the verification and validation can be completed this weekend. However, it is still difficult to get the device to work consistently - it is proving very difficult to pinpoint the issue that is causing problems with the Arduino, and the devices worked together once, then immediately stopped working again. We have had problems with the Arduino running for a short period of time, then stopping, and are not sure if the Pi is causing this problem. To solve this, we have been running tests using the Arduino with our personal computers - it does not appear to be a problem with the Arduino, so it may be an issue with running the program on the Pi. We also need to start being more consistent about the order in which we run the Arduino and Python code, since this seems to have an effect. Our goal is to have it working more consistently in order to be able to test it well. Over the next week, we will be completing our verification and validation and writing our final report. Emma is working to finalize the physical headband. The base of the headband has been constructed, and she has verified that it fits our device specifications in terms of the amount of the head that it covers. She is working to secure the use of a sewing machine in order to construct the pocket that will hold the IMU in the headband, thereby completing the headband portion of the device. Emma also began looking into the final report and particularly the DesignSafe analysis. The DesignSafe program proved to be confusing and potentially difficult to use with our product, but she is currently gathering more information about how we can best use it for our device.
Thom got the calibration loop working this week - a button press activates a loop in the Arduino program. However, it triggers some sort of FIFO (first in first out) overflow that causes NaN (not a number) to be displayed for one of our yaw-pitch-roll values. He is currently working to resolve this issue. Katelyn is working with the Raspberry Pi and got some advice from a friend about how best to avoid timing issues when getting input from the Raspberry Pi from the Arduino Serial monitor. However, she is getting input from the Serial monitor, and just needs to figure out how to fine tune the timing (some of the inputs get cut off partway) and how to get the correct output from the Pi as a result. |
Authors
Thom Ellison, Emma Huff, Katelyn Miyasaki Archives
April 2019
Categories
|