Tuesday, May 10, 2016

The Finished Final Project

Over the last 5 weeks in Engineering 160, Sara and I have been working on our final engineering project. Working closely with Jim Wice from Disability Services, Sara and I were able to develop a functional, and useful, body temperature warning system.

The cool thing about this project was that we got to work with an actual client and address actual issues. While the projects in class are very realistic and teach us important skills for engineering, it is not the same as working towards a specific goal to actually help someone. In some aspects, the human interaction can make the project a little bit easier because you can get feedback on different ideas and mechanisms. However,  real world problems are very complicated. There is not a single cut-and-dry way to solve the problems, nor is there a specific limited skill set that you need. With this project we had to teach ourselves a lot of new skills and learn how to be resourceful. While we did develop quite a few skills throughout the class that were helpful, the real world project required more flexibility, creativity and ingenuity.

This blog post will outline the most important parts of our project and talk about the development of our ideas and product.

The Challenges to Address:

We first met with Jim in the middle of March to discuss potential issues that our engineering class could address. Jim told us that many people with spinal cord injuries or certain diseases, such as Multiple Sclerosis, have a hard time perceiving and self regulating their body temperature. Many times huge changes in temperature will go un-recognized until the temperature has become hazardous. This can cause issues like hypothermia or over-heating, both of which can be very damaging to the person.

After Jim's explanation of the issues he wanted us to address, we had a discussion about Jim's preferences and different ideas for how to solve the problems. Jim wanted us to develop some sort of device that would warn him of bad temperature changes or work to alleviate the large fluctuations in his temperature. We bounced some ideas off of him, asked him questions and clarified the goals of the project.

Not only did we have to meet Jim's requirements and create a product that would help him, we also had to meet the requirements of the project for the class. These requirements included using at least one mechanism, incorporating feedback, sensing and control (most likely using an Arduino), and creating a physical object with mostly raw materials, all while staying under a $50 budget and with less than 6 weeks to complete the project. Welcome to the real world!

Brainstorming and Initial Ideas:

After the meeting, Sara and I started on the brainstorming part of the project (one of the most important steps in the engineering process). We each came up with some ideas like a finger temperature sensor that would vibrate when the temperature went out of the normal range:


or a temperature sensor that would turn on LED lights when the temperature went out of range:


As you can tell by our ideas, Sara and I were pretty set on a device that would warn Jim, or any other user, of a dangerous body temperature. Whereas we focused on a warning device, the other group focused more on a device to actively adjust the body temperature. Either way, both devices could potentially be very useful for Jim.

As you can see by the pictures however, these were very general, raw ideas. No matter what we chose to do we would have to refine our ideas and really plan out all of the pieces of the project.

Refining our Idea:

After Sara and I came up with our initial ideas from our brainstorm, we worked on combining our ideas in to one product that would accomplish what we wanted and also be a feasible goal to attain in the 5 weeks we had to work. Ultimately, Sara and I decided to make a temperature sensing device that would be connected to Jim's ankle and read the temperature of his extremities. The sensor would be connected to an Arduino that would also be connected to a servo motor. The servo would would have a stick attached to it and on the user interface there would be a temperature range arc (shown below). The servo would be programmed to move the stick to the correlating temperature on the scale to warn Jim when he was getting too hot, too cold, or if he was in a healthy range.

This project would meet all of the requirements of the project (the feedback and control with the sensor and Arduino, the mechanism with the servo motor, and using raw materials), it would most likely be under the budget limit, and we were pretty confident that we could get it done in 5 weeks. Also, this project combined a lot of concepts and techniques we had learned throughout the year such as working with Arduinos, programming, using a servo motor, creating circuits, using sensing, feedback and control, and of course the engineering process. Here is what the sketch looked like for our refined idea:


We planned to have the device attached to Jim's chair in some way, but we hadn't quite figured that out yet.

At the very end of the second week of this project, Sara and I hit a major road-block. We found out about a project that MIT was doing that sounded very similar to ours. This made us question everything. We had the options of switch gears and developing a device that would actively address the temperature changes by heating or cooling Jim, sticking with our original idea, or maybe changing our idea to give it some different applications. This, we discovered, was another very common occurrence in the field of engineering. Things are always changing and new devices are being created every day. Engineering is a field that is constantly building and growing on itself with the introduction of new technology. That is just the nature of engineering; making what we have (or don't have) better and more useful.

After our little crisis and re-evaluation, we decided to go with the last option. We made some major changes to our idea to give it a different use than just measuring the temperature. While we kept many of the same features (the temperature sensor on the ankle, using an Arduino, and using a servo motor), the concepts changed quite a bit. We decided to develop a temperature warning device, instead of just a temperature gauge.

Our new idea ended up being a warning device that would do something when Jim's temperature got out of range, instead of just show him. We decided to have two "layers" of warnings. The first set of warnings would be LED lights that would come on (just like one of the original brainstorms!) when the body temperature started going out of the nominal range. There would be a blue LED for the colder range and a red LED for the hotter range. If the temperature continued to move out of range in to a dangerous zone, the servo motor would begin to move and ring a bell. This new idea was more ambitious (still doable though) and more useful, which made Sara and I more excited about our project. I also appreciated the fact that it would be more useful and likely make a larger impact on Jim's life. So from our crisis, good ideas followed.

First Prototype:

Once Sara and I finalized our plans for the project, we started constructing our first prototype. This included creating the circuit, the code and figuring out how we wanted to put it all together. Sara took on the task of developing the code, and I created the circuit. During this stage in the development process we luckily didn't run in to any major issues. We had a few minor problems with the code or connections in the circuit, but we were able to figure those out quickly and move on. This stage in the project was where all of our previously learned skills came in to play (coding, using Arduino, creating circuits). Our first prototype was functional and useful, but it definitely had lots of room for improvement. But again, it is the nature of engineering to have to do multiple iterations to perfect your product and make adjustments to make it better. The parts we used included: a thermistor to measure the temperature, 2 LED lights, a servo motor, an Arduino, a bell, some resistors, some wires, batteries, and some velcro. Here is what our first prototype ended up looking like:






Feedback from our Client:

Once we got our first prototype up and running (Week 4), we showed it to Jim to get feedback, answer questions, and take some data. Our meeting with Jim went very well. He seemed to be very excited about our project. As I mentioned in my Week 4 blog post, he compared ours to MIT's project and thought it was better than theirs that they had been working on all semester. Along with his praise, he also had some recommendations and questions. One of the biggest adjustments that he wanted to make was to increase the delay time for the bell mechanism so it wouldn't go off every 10 minutes, but rather every hour (if his temperature had not gone back to the normal range after that time period). This would allow him to have enough time to address the temperature issue and cool himself off or warm himself up. This was an easy adjustment to make in the code, which made meeting Jim's requirements easy.

After the feedback and discussion portion of the meeting we took data from Jim to determine the correct temperature range for him.




After our meeting, we also took data to determine the correct temperature range for the device. To do this, we used cups of hot water and ice water. We put the cups one at a time against Sara's ankle to heat up or cool down her skin to simulate changing body temperatures. Once Sara got uncomfortably hot or cold we attached the thermistor and measured the resistance for each of the two extreme conditions. We then shifted this resistance range to be centralized around Jim's nominal temperature, so that the code could be adjusted specifically for Jim.

Along with feedback from Jim, we also got feedback from Amy. I realized throughout this project how important feedback is. Not only can get questions answered, but both parties (the developer and the client) can be on the same page as each other. This cooperation helps to ensure the best construction and use of the product. The feedback was very helpful for us to determine what direction to take throughout the development. Anyways, Amy recommended that we work on making the product smaller and more aesthetically pleasing. Since we had accomplished all of the mechanical and electrical tasks we had set out to do, the next step was to make it more useable for our client and more appealing.

The Second Prototype:

Throughout the rest of week 4 and 5 we worked on condensing our circuit and decreasing the size of our product. Through lots of tinkering, soldering, and creativity (what engineering is all about) we were eventually able to fit all of the electronics inside of an Altoids box with the user interface (including the servo, bell, and LEDs) attached to the outside of the box (I go in to more detail regarding the condensing process of the product in my Week 5 blog). We also fixed the bell to make it more stable, better looking, and more effective.

The first step we took to condense the product was solder the circuit on to a small protoboard. All we had to was transfer the circuit to the protoboard and then solder the circuit elements to the board. Then, through a lot of different tries we figured out the best way to orient the Arduino and the circuit. One of the biggest parts of engineering, as I mentioned before, is the iterations. This comes in many different forms, including iterations of the whole project and iterations of small pieces of the project to get the specifics right. At the end of the day, here is how we oriented the electronics:


The next step was to cut out the appropriate holes for the wires, the LEDs, the servo connections, and the ports for the battery pack and the computer cord. To do this we used some of the machine shop tools that we had been introduced to earlier in the semester.

We then glued the servo and bell to the top of the box and the battery pack to the side to put the device all together. 

The final touch was to make it look as nice as possible with the setup we chose. To do this, we decided to paint the whole thing black so it would look more uniform and not be such an eyesore when attached to the wheelchair. Ultimately, our product turned out to be much more aesthetically pleasing, and smaller, than our first prototype. So, we accomplished our second set of goals for our second prototype. Yay!

Here is what the finished product looked like:



For the demonstration and videos we used a slightly adjusted version of the code that had a much smaller range of temperatures and a much shorter delay time. This was so that we could show all of the stages of warning in a short time. Here is how the product worked:



The Finished Project:



Overall, Sara and I were very pleased with our final project. Our hard work really paid off! When we presented our product to the class and to the clients for the project, Jim, and even the woman from the Child Study Center, really liked our product and mentioned that they could see many different uses and applications of our project.


If we had more time I would have liked to make our device even more aesthetically pleasing. Maybe we could have laser cut or 3D printed out a box to house the electronics with appropriate holes for the wires and with slots to attache the servo and the bell. Also, I think the bell mechanism could be improved, maybe by using a different mechanism than the servo motor, or using a different kind of bell. Also, there were a lot of stray wires that looked a little messy. Unfortunately, with our budget, the limitations of the technology and the time constraint, fixing the wire problem would not have been feasible. However, if this project were to advance further, that could be an area of improvement.

Reflection:

One of my biggest goals for this final project was to create a product that would be useful and actually could help people. This project hits pretty close to home for me. My father was diagnosed with MS when I was in middle school and has a very hard time regulating his body temperature. Because of this reason, I was really passionate about this project and really wanted to make a device that worked and was useful. I have see the effects that a problematic body temperature can have on someone, so I believe that this is a very important problem to address. Not only did this project inspire me to find ways to help Jim, my dad, and people like them, but it also gave me a deeper knowledge of the hardships that these people have. It gave me a new perspective on finding solutions and how many things we take for granted can be a big issue for someone else.

From this project, I also learned many important lessons in engineering. These included, but are not limited to: (1) things don't always go the way you plan, (2) you WILL run in to problems and roadblocks, (3) its ok to ask for advice, (4) there are more tools, resources, and products out there than you know so just do some research, and (5) engineering can be frustrating at times, but it is also so rewarding when you get your product to work.

I hope to be able to continue with engineering in the future through taking classes maybe at MIT, doing more projects, and maybe even grad school in the future. I think engineering is such an exciting  and important field to be in, and it can make huge differences in people's lives.

No comments:

Post a Comment