We were all talking about food one day, and how once we started eating we couldn't stop. Then the wonderful idea crept into our heads that if something would prevent us from overeating, we would be much healthier. As we pondered it more, it seemed like a better idea. According to Centers for Disease Control and Prevention, as of 2015~2016, "The prevalence of obesity was 39.8% and affected about 93.3 million of US adults." Many times, when we sit down with a full family-style bag of potato chips, we don't ponder about how many servings we're eating. We often mindlessly snack, ignoring the detrimental effect it can have on life. Something that would help control portion sizes and stop the family-style bag binge-eating for people trying to be healthy would be beneficial for society. And thus, Snacktually Good was born
What it does
This smart food dispenser only dispenses up to one serving of each snack it contains and displays trends graphically on the companion website. The companion website gathers information about the snacks in the dispenser through a picture taken of the bar code of the product. Using zxing, that bar code is decoded and eventually provides a way to web-scrape product information, including the nutrition facts. The product results are filtered and only a few nutrition facts are selected and taken into account - including serving size and calories. The database contains some snack nutrition information for the website, as Snacktually has stored it in the past.
How we built it
Lots of Python and PHP (along with HTML5, CSS, BS4, Serial, Requests, and various other python modules) were utilized to construct the companion website to Snacktually Good. The majority of the hardware was coded in Arduino. Cardboard, clear acrylic, hot glue, and masking tape were the key components in Snacktually itself. The electronics we used were the Arduinos, stepper motors, momentary tactile switches, and bar load cells.
Challenges we ran into
Software was a difficult aspect of this project, and provided many obstacles - some which we were unable to overcome. A fundamental sector of this project was Web Scraping, and proved very challenging. None of the members in this group had any experience with it, and some valuable resources were unavailable to us. The search engine that was scraped was Bing, and provided an incomprehensive scope of the entry. In addition, the scanning of the barcode also provided problems, as one of the laptop webcameras were unable to procure an image that zxing was able to decode. Being a hardware hack, the production of the physical portion was equally as challenging. The group members were not acquainted with the new hardware that was utilized in this project such as the load cell. One important material in the construction of the main structure was hot glue, wihch was annoying, and delivered painful burns. Ten hours before the project was due, the hardware assembled resembled little more than a jumbled mess, and it obviously didn't work. The search browser used for web scraping was not cooperating either, and down to the last few minutes, there were details that prevented the dispenser from functioning properly.
Accomplishments that we're proud of
In our perspective as High school Sophmores, this project was fairly ambitious, but eventually, we made many of the key features "work". The most important features all functioned, and we managed to figure out software, which was a stress in the first few hours of the hackathon, and the hardware, which was our primary stress in the last hours.
What we learned
Some of us learned back-end, some of us learned web scraping, and some of us learned how to work with load cells and buttons. All of the group members learned new skills, and familiarized themselves with tools useful in the future.
What's next for Snacktually Good
Although we were proud of our hack, we believe that there is plenty of room for further development. One of the problems we had encountered was the lack of nutrition labels, and in the future, we could use image recognition to provide essential nutrition facts from less popular snacks. Another development would be making it wireless, and expanding some website features. These features may take a medical route, as it can provide important information about patient habits to doctors. It can also be used as a potential pill dispenser, preventing possible overdoses.