Inspiration
Millions of people around the world and especially in the western world, waste food due to negligence. Wasted food accounts for 8% of all greenhouse gas emissions emitted globally [1]. In middle- and high-income countries, consumers take a bigger slice of the blame: estimates suggest that households are responsible for 53% of all food waste in Europe [2], and 47% of food waste in Canada [3]. The average U.S. household wasted 31.9% of its food. The total annual cost of the wasted food was estimated to be $240 billion or $1,866 per household [4]. This is a huge motivation for a device that can notify people when their fruits and vegetables are about to rot to minimize this waste and move towards a greener future where no one goes hungry to bed. There are many risks associated with eating rotten meat, such as Salmonella, Listeria and E. coli. With noRot, it will be possible to significantly reduce the risk of such contamination with it’s UV sterilization and smart gas sensing.
What it does
noRot is a device that monitors the condition of the food kept in its compartment. We wanted to tackle the problem of food waste in households brought about due to negligence. The device takes steps to prevent rotting by using a UV sterilizing system and generating mist periodically to maintain freshness of the produce. The device uses an LCD screen and a webserver to provide the user with notifications on whether the food is appropriate to eat. We can proudly say the project is a success currently on the minor scale of 1 fruit/vegetable kept in the container and showcases all the important functionality we set out to implement. A piece of meat can also be kept in the container at this time and if the user selects this mode the mist generation will be deactivated but all other function will remain the same.
How we built it
noRot was built using 3D printing, off-the-shelf parts, and C/HTML/CSS programming. Below is an overview of some crucial parts.
Inputs: Gas Sensors: MQ2, MQ136, MQ3, MQ8 Temperature Sensor - TMP36 Analog Joystick
Outputs: UV Sterilization System (Adafruit UV NeoPixel Lights) Water atomization module and atomization plate LCD Display
Communication Devices: WiFi Module - ESP8266 (4MB Flash) WiFi Module will allow the device to notify the user about any rotten fruits or vegetables and sync time information from the internet to the device so it takes readings periodically throughout the day. In addition, data aggregation for all the tests were done by connecting the Arduino to the serial monitor and then using Putty to record the sensor readings. Putty would store all the readings in a .log file or .txt file which could then be imported into an Excel sheet and then analyzed for an approximate rotting threshold.
Challenges we ran into
Due to the various wires that were required for this project to connect all the sensors, analog stick, NodeMCU, NeoPixel lights, water atomizer, and Arduino it became difficult to place everything on a portable container while using breadboards.
Calibrating the sensors took weeks of testing because prior data information was not available to the team.
Maintain an 800kHz frequency for the UV lights for difficult because the Arduino can only output 62.5kHz using interrupts and timers. As a result, assembly code needed to be written to solve this dilemma.
Figuring out the wireless communication system was also difficult because data transfer had a lot of latency and data was not always received accurately.
Accomplishments that we're proud of
Programming the WS2811 library using assembly code allowed us to maintain an 800kHz frequency to power the Adafruit NeoPixel UV lights.
Getting real-time clock data from the NodeMCU and then presenting that to the user.
Gathering sensor data and constructing a framework to understand the decomposition process of produce and meats. CHECK IMAGES FOR TEST GRAPHS!!!
Developing a lovely UI for users to keep track of the condition of their food.
Creating great 3D models so we could 3D custom mounts for the water atomization, UV lights, and gas sensors.
What we learned
Topics: PWM, ADC, Analog Processing, Serial/Wireless Communication, Interrupts, and Timers.
The effectiveness of the final solution for this project mainly depended on two major factors: the accuracy with which the device is able to detect rotting in produce and meats along with the improvement in shelf life. Ultimately, sensor selection was a key challenge in this project. As a result sensor readings were taken from the following sensors mentioned previously including: TMP36, MQ2. MQ3, MQ8, and MQ136. After doing testing solely with the MQ2 sensor it was determined that using just one sensor was too unreliable. In order to increase reliability and accuracy, it was decided that sensor fusion with multiple gas sensors was the best course of action. The MQ2 gas sensor was paired with the MQ3, which detects alcohols, and this confirmed that both the sensors were able to detect the ripening and the slow rotting of the banana. Similarly the MQ136 was also paired with the MQ8, which detects hydrogen, to use the lessons learned from the produce detection and improve meat detection. Ultimately, the following ADC threshold for rotting was found: the MQ2/MQ3: 400 and MQ136/MQ8: 450. This threshold found the item was not appropriate to eat.
In terms of shelf life improvement, the food managed to stay fresh within our container for about a week when we started with an unripe specimen. Otherwise, only about 3-5 days if we started with a more ripened fruit. Similar results were seen with meats but refrigeration would obviously change this metric because meats cannot be kept outside. The UV sterilization and misting systems did seem to improve the environmental conditions for the food but quantifiable results were not derived due to the short testing time available during this final project.
What's next for noRot
Biggest improvement for this device at the current time would be to take all the circuitry and convert it into a PCB device which would save space and allow for all the items to fit in the space above.
Perform more sensor testing to make sure that we get an extremely accurate and reliable sensing suite to measure food freshness.
Improve water atomization for better water vaporization within the box.
Improve the UI so that the users get more charts and metrics about their food. Such as weight and calorie intake potentially.
Log in or sign up for Devpost to join the conversation.