Introduction: Automatic Arduino Pet Feeder
Whenever you leave the house for a longer period of time and have to leave a pet behind, it’s hard to find someone to take care of it. This system feeds your pet at specific time frames, so that the animal is well fed.
It's a very simple design using items commonly found in most households.
All you need is an Arduino Uno board (or similar), a plastic bottle, a servo motor (doesn't have to be very powerful) and a small piece of cardboard.
Step 1: How to Make the HW Setup
1. Connect the servo's signal pin to pin #9 on the Arduino.
2. Connect the servo's VCC and GND pins to 5V VCC and GND on the Arduino.
3. The servo will be glued to one end of the plastic bottle, and rotate a piece of cardboard small enough to close the opening of the bottle so that the dry food is blocked.
Step 2: How to Make the SW Setup
1.Install Arduino IDE, from following link: https://www.arduino.cc/en/main/software
2.Click on Windows installer
3.Click on JUST DOWNLOAD
4.After download is complete, click on RUN button
5.Click on I Agree button (Arduino IDE is a free software)
6.Select all components from the list and click on Next button
7.Proceed with the installation after selecting the desired location
8.Install driver “Adafruit Industries LLC Ports”, by clicking on Install button
9.Install driver Arduino USB Driver” by clicking on Install button
10.Install driver “Linino Ports (COM&LPT)” by clicking on Install button
11.Press CLOSE button when installation is complete.
12.Download application file : PetFeeder.ino.
If all the hardware set-up is connected properly, you can simply compile and upload the software to the board.
Attachments
Step 3: How to Configure Your Setup
1.After code file (“PlantWatering.ino”) has been downloaded, double click on it and press OK button to create a folder named “PlantWatering”.
2.Select type of board from Arduino IDE menu: Tools\Board: “Arduino/Genuino Uno” 3.Identify the communication port on which the Arduino board will communicate, by accessing Device Manager 4.Set communication port (identified at step 3), from Arduino IDE menu: Tools\Port : COM7
Step 4: How to Configure Your Application
Depending on your set-up, you'd want to adjust the open and close position of the servo.
You may also want to set the time interval between feeds, expressed in minutes.
Depending on your requirements, you will have to find an appropriate plastic bottle (recipient) and a structure to fix it in place, above the pet's bowl.
4 Comments
Question 3 years ago
Hi, I tried to compile the code but had this error:
PetFeeder:32:8: error: expected constructor, destructor, or type conversion before '(' token
SIGNAL(TIMER0_COMPA_vect)
^
PetFeeder:32:7: error: expected constructor, destructor, or type conversion before '(' token
SIGNAL(TIMER0_COMPA_vect)
^
Any idea what's wrong? Thanks.
3 years ago
how to install step 8-10? is it on arduino?
6 years ago
Nice idea, but reliable ?
How are you sure that this will not stuck with a pet food ?
I suppose that if you reduce the aperture you reduce the food quantity
The food flow is more important if the bottle fully filled and less important when reach nearly empty !?
Reply 6 years ago
Hi,
basically I've used a bottle with larger "neck", and it doesn't get stuck.
Indeed, with smaller aperture you reduce the quantity, but you might get in trouble as mentioned above, the food will get stuck with a more narrow opening... but you can reduce the time frame from open to close.
Due to bigger quantity you'll get slightly more food poring out... but I didn't follow to have a very accurate dozing system... Although, your question gives me the idea to extend this project! Thanks