Automatic Arduino Pet Feeder

25,342

106

4

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.

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.

Be the First to Share

    Recommendations

    • Make it Glow Contest

      Make it Glow Contest
    • First Time Author Contest

      First Time Author Contest
    • PCB Challenge

      PCB Challenge

    4 Discussions

    0
    seamuskoh
    seamuskoh

    Question 1 year 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.

    0
    Ades25
    Ades25

    1 year ago

    how to install step 8-10? is it on arduino?

    0
    neo_xnitro
    neo_xnitro

    3 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 !?

    0
    Techpins
    Techpins

    Reply 3 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