Feedback

  • CategoryClass project
  • Project dateFall 2023
  • Skills requiredProject management, system integration, web design, JS, CSS, HTML, SQLite, design, manufacturing, CAD

About this

This project was my capstone for MIT Mechanical Engineering's Product Design Processes class. Using a combination of temperature, dissolved oxygen, and weight sensors, our product — aptly named Feedback — aims to streamline operations in fish farms, improve fish health, prevent food waste, and lower labor costs through automating feeding.

In the world of commercial fish farming, efficient fish growth is crucial. The challenge lies in determining the right amount of food for the fish. Feeding them too much leads to waste and extra costs, while feeding them too little slows their growth. Farmers must consider factors like fish size, number, water temperature, and dissolved oxygen levels in water to calculate the optimal feed amount.

Currently, fish farmers face a dilemma: either spend hours daily calculating and manually feeding, or use automatic feeders that lack precision and often result in food waste. To address this issue, a new system called Feedback has been developed. This system integrates with existing feeders and uses temperature and oxygen level sensors to automatically calculate and dispense the right amount of feed. It's like adding a thermostat to your furnace, enabling smart control over basic hardware. Feedback minimizes human intervention, allowing farmers to focus on expanding and streamlining their operations. In fact, according to our calculations, we estimate that Feedback has the potential to save a medium-sized fish farm around $30K on labor and $50K in feed, which makes the $1.5K investment into Feedback well worth it.

System breakdown

Feedback uses temperature and dissolved oxygen sensors which are suspended in the water by a curved sensor mast. These sensors relay the temperature and dissolved oxygen to a computer, which stores it and performs the calculations required to find out how much to feed. Feedback then controls the motors of the off-the-shelf fish feeder to feed the correct amount, using the scale placed beneath the feeder to confirm how much it's fed. This allows us to confirm we are feeding accurately and notify farmers if their feeder is empty or jammed. If this were to become a real product, we would probably build our own feeder with this functionality so that it'd be an integrated system, but we didn't have time.

Key contributions

After chatting with my research advisor in the MIT Sea Grant, I identified that this concept would be a commercially viable product that satisfies a user need and fills a gap in the aquaculture market. And importantly, the project had interesting technical components that could be well-scoped such that a prototype could be made in just four weeks, the remaining time we had in the class. I pitched the idea among the hundreds we generated, and eventually, it was downselected to our finalist. I spearheaded user research, connecting with three fish farms that were interested in testing with us and conducting eight of the nine interviews we had with fish farmers and researchers in the field.

Because I was the only member of our team with programming experience, my biggest and most daunting task was to write all the software required to make the system run. This required me to draw upon my skills in CSS and HTML and learn JavaScript and SQLite to develop an entire website frontend and backend in two weeks. Because we were using a Jetson Nano, which did not have a built-in analog-to-digital converter, we used an Arduino to parse the data from our Vernier sensors, and then used serial communication through the USB to get sensor input from sensors. The scale similarly reported the weight of the feeder live through serial input. By parsing all three data streams simultaneously, their data could be time synchronized and tagged with a timestamp. Using existing studies in fish satiety, I could interpolate the amount to feed depending on the combination of sensor data and information input into the website by the farmer. In order to account for anomalies in sensor readings, I calculated a rolling average of the previous thirty minutes of data prior to feeding.

Combining hardware with software, I did extensive testing to ensure that the correct amount of food was dispensed both when the user clicked the "feed now" button as well as during scheduled feeds. Using a motor controller, I programmed the Nano to give PWM output such that we could fine-tune the speed of the auger and flywheel in the off-the-shelf feeder we bought. This allowed us to feed quickly at first, then slow down for precision as we approached the final feed amount. And because I wanted farmers to be able to learn about their tanks and check in on them at a glance, I integrated database storage and livestreaming of data to the website. During testing, I found lag to be a significant challenge, which required me to optimize our code to be non-blocking and run simultaneously on the different cores of the computer using threads.

Our user interface was a key component of our value proposition, as users needed to easily input information about their tank setup and feeder. By making our user interface accessible not only on the touchscreen attached to Feedback, but also on any web-enabled device including phones, tablets, and computers, we could streamline farmers' workflows by letting them view information about all of their tanks and feeders from one place. I encourage you to take a look at our website (which won't actually turn on anything, of course, because it's been disabled) to get a better idea of the user interface.

Design process

We explored a variety of different ideas when it came to mounting sensors. We considered using steel cables to suspend them in the water but then decided installation costs would be too high and cleaning the sensors would be annoying. We also considered using a buoy weighed down in the water, but we wanted to maintain consistent height in the water column to get consistent data and thought that the risk of fish pushing the buoy around or getting entangled was too high. Furthermore, both of these concepts would suffer from cable management, since power cables in the water would pose risks for entanglement of the fish and generally be quite annoying to route into the tank. We also considered developing a clamp for the side of the tank but abandoned the idea because there was such high variance in tank types. For example, some farms had inlaid tanks which are ponds which are holes in the floor. Others had concrete walls 1.5 feet thick and 6 feet tall. Some had glass tanks that were less than an inch thick. Some tanks were round, some rectangular. This variance meant inherently we could not cater to all of these tank types with one design.

We eventually went with a faucet-shaped design because of its ease of cleaning and installation. The user would simply need to place the sensor mast in front of the tank, fill the base with water to weigh it down, and lower the sensors into the water using the winch. Cleaning was similarly easy; the user would only need to pull the sensors back up with the winch, swivel the hook around using the handle, then pop open the sensor cage and clean inside.

However, while developing the hardware, we discovered that the cost of this design, although not crazy compared to the savings a farmer would receive, was still more expensive than ideal. In an ideal scenario, the majority of the cost would come from the computer such that each additional unit is comparatively cheap for the farmer. Thus, if this were to become converted into a real product, we would probably go with the vice-like design, potentially designing several "variants" to cater to different tank types.

Practicing soft skills

I’ve learned so much about not only what makes a successful product, but also what makes a successful team. As the team’s systems integrator, I learned how to scope to tight timelines, facilitate communication, and align differing goals.

With over a thousand attendees in person, as well as thousands of online viewers, this was definitely the biggest presentation I've ever given. I'm glad the presentation was so well-received, and I'm so proud of the insane amount of work our team has put into this project.

As I reflect on my time at MIT, I’m very proud of the skills that I’ve learned and grateful to the friends and mentors I’ve met here. After seeing so many familiar faces cheering me on during my presentation, I was reminded how fortunate I’ve been to find a community that values and supports me. I can’t wait to see what new, wild experiences my career will have in store for me.

Final presentation recording