ECE 153B Final Project: Automatic Pet Feeder

Week 10:  

We completed all the code and built the hardware for the automatic pet feeder.  Most of the actual building took place this week, and we were able to contend with whether or not our ideas were practical or not given cost / efficiency of our hardware, and made changes to our software/hardware implementation accordingly. The container (which we attached to the STEP motor which was used to rotate the food into the bowl) was too heavy for the motor to move when filled up completely, so we had to modify it. Additionally we needed to add an additional IR sensor to detect if the container was in the process of dropping food into the bowl or not during the 'pet food bowl is empty' case.

The STEP motor has a max load of 9g, which we hadn't factored into our calculations and this made it difficult to move large quantities of food. As a result we decided to lighten the load / dispense a smaller amount of food into the food bowl. 

Because only a small amount of food could be handled, we decided to make the IR sensor hand held  (and up to the user to remove the bowl and detect emptiness) rather than a part of the machine which would automatically detect the dispensed food immediately after it was dispensed.  

The LCD monitor successfully prints out a message displaying that the food bowl is empty and needs to be refilled, and we used interrupt logic to automatically run the motor when the bowl is empty. 

The Termite window is able to use a UART connection to display a message to the user notifying them the pet food bowl is empty.

Week 9:  

Distance sensor was connected via UART and we are able to check distances and notify user that the jar of food is empty and needs to be refilled. We were planning to use another distance sensor of the same type and implement logic to check if the bowl was also empty but we ran into issues with that and decided to use a different kind of distance sensor (IR Sensor) which is easier to implement and got it working. We are in our testing phase with the second distance sensor although the first distance sensor is confirmed to be functioning properly. The monitor which uses SPI is also confirmed to be fully working and is able to print a message saying that the food is empty, as pictured below.

SPI connected ILI monitor confirmed working and prints "Food is empty" message when new Distance Sensor 2 is covered.

Week 8:  

Project files / outline were created. We have started researching how to connect and implement the different peripherals and creating a list of parts to buy for the final project. ILI9341 (SPI) monitor was ordered. We are working on modifying SPI skeleton code was obtained and we are researching syntax and example code. List of Pins was created for all of the peripherals we plan to use for the project.


SPI / ILI Notes
List of GPIO Pins