Iot Controlled Pet Feeder
Iot Controlled Pet Feeder
S COLLEGE OF ENGINEERING,
MANDYA
(An Autonomous Institute under Visvesvaraya Technological University, Belagavi)
A DISSERTATION REPORT ON
“IOT CONTROLLED PET FEEDER”
Submitted in partial fulfilment of the requirement
For the award of the
BACHELOR OF ENGINEERING DEGREE
Submitted by
CERTIFICATE
This is to certify that,
Prajwal Shetty S 4PS18EC069
Rakshith Kumar 4PS18EC080
Mohan K R 4PS18EC120
Gunavardhan N Y 4PS18EC402
have successfully completed the project work entitled “Iot Controlled Pet Feeder” in partial
fulfilment for the award of degree of Bachelor of Engineering in Electronics and
communication Engineering of P.E.S college of Engineering, Mandya, VTU Belagavi
during the year 2021-2022. It is certified that all corrections/suggestions indicated in internal
assessment have been incorporated in the report deposited in the Library. The project has been
approved as it satisfies the academic requirements in respect of project work prescribed for
the degree in Bachelor of Engineering.
ii
P.E.S COLLEGE OF ENGINEERING
(An Autonomous Institute under VTU, Belagavi)
MANDYA – 571401
Department of Electronics and Communication Engineering
DECLARATION
We Prajwal Shetty S, Rakshith Kumar, Mohan K R, Gunavardhan N Y
students of 8th semester Bachelor of Engineering in Electronics & Communication, PESCE,
Mandya, hereby declare that the project work being presented in the dissertation entitled
“IOT CONTROLLED PET FEEDER ” is an authentic record of the work that has been
independently carried out by us and submitted in partial fulfilment of the requirements for
the award of degree in semester Bachelor of Engineering in Electronics &
Communication, affiliated to Visvesvaraya Technological University (VTU), Belagavi
during the year 2021- 2022.
The work contained in the thesis has not been submitted in part or full to any other university
or institution or professional body for the award of any other degree or any fellowship.
Place: Mandya
Date: 11/07/2022
Prajwal Shetty S
Rakshith Kumar
Mohan K R
Gunavardhan N Y
iii
ACKNOWLEDGEMENT
Any accomplishment requires the effort of many people and this work is no different. We
find great pleasure in expressing our deep sense of gratitude towards all those who have
made it possible for us to complete this project with success.
We also extend our sincere thanks to HOD of Electronics and Communication Department
Dr. M J Anand and also all the staff members who extended the preparatory steps of this
Project.
We would like to express sincerest gratitude to our guide Mrs. Shwetha S K for her dynamic
and valuable guidance and keen interest in our project work. We are grateful to his/her for
constant encouragement in fulfillment of project work.
We would also like to express appreciation and thanks to all our friends who knowingly
assisted us with a valuable assistance and support
iv
ABSTRACT
Over half of the people in the world intentionally have pets as their companions,
But these pets are becoming burden to the pet owners. There is a lot of stress for the owner
while feeding their pets. Over the years different automatic pet feeders are available in the
market, but none of them are still not able to solve lot of problems like overeating, obesity.
This project aims in rectifying the problems caused by existing feeders and designing an
efficient automatic pet feeders using internet of things. This Automatic pet feeder uses a
NODEMCU Micro Controller and consists of an interface with DC servo motor, relays,
water pump and other hardware equipment. A software code is dumped into the micro
controller to perform operations like rotating motors and switching relays on and off. The
whole feeder system is controlled using a mobile phone installed with blynk software. The
user sends signals to the micro controller using blynk application through blynk cloud.
When the DC servo motor runs, the motor rotates the propeller which is in the feeding
device, which drops down pet food through the pipe into perforated feeding bowl. The
water pump will be kept in a tank containing water. When the water pump runs, the water
is pumped into the water bowl of pet. So, the pet will receive regular amounts of food and
water on a steady feeding schedule.
v
Table of Content:
Chapter 1: Introduction 1
1.1 General Introduction .................................................................................. 1
1.2 Problem statement ..................................................................................... 2
1.3 Aim............................................................................................................ 2
1.4 General Block Diagram ............................................................................. 2
1.5 Applications............................................................................................... 3
1.6 Objective.................................................................................................... 4
vi
Chapter 4: Implementation and Experimental Analysis 23
Chapter 5 : Results 32
References 36
vii
List of Figures:
Fig 4.1.2. Steps to be followed for Blynk App Setup ........................................... ..24
viii
List of Tables:
ix
IOT CONTROLLED PET FEEDER
CHAPTER -1
INTRODUCTION
Automatic pet feeder is one of the new technologies for feeding pet. It will help pet
owner to take care of their pet while they are not at home. Even the owners are not at home,
they still can feed their pet. Automatic pet feeder is built to help pet owner taking care of
their pet. IoT pet feeder is one of the pet feeders that will be controlled by a mobile
application through internet. The automatic pet feeder will automatically dispense
predetermined amount of food and water to the bowls. As pet lovers, user should
understand those pets also need a proper diet management. Whether user away from home
unexpectedly or simply would like one less chore to worry about, user can feel secure that
the beloved pet will be cared for and fed on time every time.
The Automatic pet feeder will solve two problems which pet owners face i.e., making
sure that each pet has access to a healthy amount of food throughout the day, regardless of
the owner’s schedule. Making sure that each pet eats only its own food though th ere are a
variety of products on the market which solve the first problem, there are none which
address the second. The automatic pet feeder will give pet owners a solution to both
problems, thereby improving the lives of both pets and owners by allowing the owner to
reliably provide food to a pet at the time the owner wishes and keep the pet from reaching
the food stored for later feedings. Many animal feed systems can be designed to function
as an automatic device that allow the user to feed whenever he wishes from anywhere
through internet. The purpose of having sensors in a system like this is to automate the feed
process completely with less human interference.
Feeding the pets automatically is not possible to feed pet manually. Maintain and
take care of pet’s diet periodically is difficult. Monitoring the pet when no one is at home
is a very big problem of pet lovers. Calling pets automatically at the time of fe eding, have
a more personalized experience of keeping the pets to pet owner is a very big challenge
for the pet lovers.
1.3 AIM:
This project aims in rectifying the problems caused by existing feeders and designing
an efficient automatic pet feeders using internet of things
1.5 APPLICATIONS:
Some pet owners have busy schedules and work their pet’s needs around them, or
others might seek out help from a professional dog sitter. Pet feeder system maintains an
eating schedule for an pet animal and cleans up their space for user.
The System provides two-way communication between the pet and the
et owner. The pet owner can make sure that functionality of the system is
achieved by seeing visually through online communication.
1.6 OBJECTIVE:
The objective of this project is to create an automatic feeding machine for pets
feeding. This project is designed keeping the view of dairy farms, poultry farms and pets
at home it is important to maintain the diet of animals just like human being from keeping
them healthy for better production and good quality of milk in the case of dairy farm and
eggs and chicken in the case of poultry farm.
Now a days, everyone can have a pet at home without giving their full commitment to have
a healthy pet. With this feeding machine, it will help pet owner to manage their pet diet
wheel. When user is at home, it can be controlled by a mobile application through internet.
If user is not at home, user can set the timer to feed their pet. To make sure that the food
does not exceed force sensor will active and detect the exact amount should be in the bowl.
CHAPTER-2
LITERATURE SURVEY
In [1], “The design of the system is made in such a way that the device is created for
helping pet owners as predetermined amounts of the food are dispensed when the user gives
a common using an infrared remote control that is wireless. Actually, this system a cts in
two ways, one is sending information to owners and the other one is feeding pets. In the
system, there is a unique feature of refill alert which lets the owner know that the bowl is
running empty”.
In [3],”A software code is dumped into the micro controller to perform operations
like rotating motors and switching relays on and off. The whole feeder system is controlled
using a mobile phone installed with blink software. The user sends signals to the micro
controller using blink application through blink cloud. When the DC servo motor runs, the
motor rotates the propeller which is in the feeding device, which drops down pet food
through the pipe into perforated feeding bowl”.
In [4],” There are lots of pet feeding devices in the market, aimed at ensuring that
pets get a healthy amount of feeds even when the pet owner is away. The major difference
in the various pet feeding devices is the degree of control that these devices could give to
pet owners and the methodology used to achieve it. Hence, this study proposes a pet feeder
system that is IoT driven. The proposed solution, with the aid of a user-friendly interface
and the integration of IoT into pet feeder device, would allow users / owners control the
pet feeder remotely”.
CHAPTER - 3
The proposed system works based on the Iot controlled which is controlled by the user
using Blynk application and camera interface application. The straightforward methods our
system are:
SL No. of
Components Specifications
No. Unites
2 WIFI camera - 1
4 Water pump - 1
5 Servo controller - 1
6 MOSFET drive - 1
7 power adopter 9v 2a 1
8 Feeder bowl - 2
10 Blynk App 1
11 Tapo App
Features:
• ESP-12E Processor
• Arduino-like hardware IO
Specifications:
Features:
• Motion Detection
• Sound and Light Alarm
• Night Vision
• 1080p Crystal Clear Image
• Two-Way Audio
• Alarm System.
A servo motor is a type of motor that can rotate with great precision. Normally this
type of motor consists of a control circuit that provides feedback on the current position of
the motor shaft, this feedback allows the servo motors to rotate with great precision. If you
want to rotate an object at some specific angles or distance, then you use a servo motor. It
is just made up of a simple motor which runs through a servo mechanism.
A servomotor is a linear actuator or rotary actuator that allows for precise control
of linear or angular position, acceleration, and velocity. It consists of a motor coupled to a
sensor for position feedback.
Features:
• High resolution
• Accurate positioning
• Fast control response
• Constant torque throughout the servo travel range
• Excellent holding power
Specifications:
Servo Plug JR
Pinout:
• RED – Positive
• Brown – Negative
• Orange – Signal
Features:
• High resolution
• Accurate positioning
• Fast control response
• Constant torque throughout the servo travel range
• Excellent holding power
Specifications
Pinout control
Features:
• DC 3v to 6v submersible pump.
• Micro mini submersible water pump 3v to 6v.
Specification:
Pinout:
• VCC – Positive
• GND – Negative
• SIG – Signal
Specification:
3.3.1 Arduino:
Arduino was born at the Ivrea Interaction Design Institute as an easy tool for fast
prototyping, aimed at students without a background in electronics and programming.
Thanks to its simple and accessible user experience, Arduino has been used in
thousands of different projects and applications. The Arduino software is easy -to-use for
beginners, yet flexible enough for advanced users. It runs on Mac, Windows, and Linux.
Teachers and students use it to build low cost scientific instruments, to prove chemistry and
physics principles, or to get started with programming and robotics. Designers and
architects build interactive prototypes, musicians and artists use it for installations and to
experiment with new musical instruments. Makers, of course, use it to build many of the
projects exhibited at the Maker Faire, for example. Arduino is a key tool to learn new
things. Anyone - children, hobbyists, artists, programmers - can start tinkering just
following the step by step instructions of a kit, or sharing ideas online with other members
of the Arduino community.
There are many other microcontrollers and microcontroller platforms available for
physical computing. Parallax Basic Stamp, Netmedia's BX-24, Phidgets, MIT's
Handyboard, and many others offer similar functionality. All of these tools take the messy
details of microcontroller programming and wrap it up in an easy-to-use package. Arduino
also simplifies the process of working with microcontrollers, but it offers some advantage
for teachers, students, and interested amateurs over other systems:
platforms. The least expensive version of the Arduino module can be assembled by hand,
and even the pre-assembled Arduino modules cost less than $50
• Cross-platform - The Arduino Software (IDE) runs on Windows, Macintosh OSX, and
Linux operating systems. Most microcontroller systems are limited to Windows.
• Simple, clear programming environment - The Arduino Software (IDE) is easy-to-use for
beginners, yet flexible enough for advanced users to take advantage of as well. For teachers,
it's conveniently based on the Processing programming environment, so students learning
to program in that environment will be familiar with how the Arduino IDE works.
• Open source and extensible software - The Arduino software is published as open source
tools, available for extension by experienced programmers. The language can be expanded
through C++ libraries, and people wanting to understand the technical details can make the
leap from Arduino to the AVR C programming language on which it's based. Similarly,
you can add AVR-C code directly into your Arduino programs if you want to.
• Open source and extensible hardware - The plans of the Arduino boards are published
under a Creative Commons license, so experienced circuit designers can make their own
version of the module, extending it and improving it. Even relatively inexperienced users
can build the breadboard version of the module in order to understand how it works and
save money.
Sketchbook
Programs written using Arduino Software (IDE) are called sketches. These sketches
are written in the text editor and are saved with the file extension .ino. The editor has
features for cutting/pasting and for searching/replacing text. The message area gives
feedback while saving and exporting and also displays errors. The console displays text
output by the Arduino Software (IDE), including complete error messages and other
information. The bottom righthand corner of the window displays the configured board and
serial port. The toolbar buttons allow you to verify and upload programs, create, open, and
save sketches.
3.3.4 Uploading:
Before uploading your sketch, you need to select the correct items from the Tools
> Board and Tools > Port menus. The boards are described below.
When you upload a sketch, you're using the Arduino bootloader, a small program
that has been loaded on to the microcontroller on your board. It allows you to upload code
without using any additional hardware. The bootloader is active for a few seconds when
the board resets; then it starts whichever sketch was most recently uploaded to the
microcontroller. The bootloader will blink the on-board (pin 13) LED when it starts (i.e.
when the board resets)
3.3.5 Libraries:
Libraries provide extra functionality for use in sketches, e.g. working with hardware
or manipulating data. To use a library in a sketch, select it from the Sketch > Import
Library menu. This will insert one or more #include statements at the top of the sketch and
compile the library with your sketch. Because libraries are uploaded to the board with your
sketch, they increase the amount of space it takes up. If a sketch no lo nger needs a library,
simply delete its #include statements from the top of your code.
This displays serial sent from the Arduino or Genuino board over USB or serial
connector. To send data to the board, enter text and click on the "send" button or press
enter. Choose the baud rate from the drop-down menu that matches the rate passed
to Serial.begin in your sketch. Note that on Windows, Mac or Linux the board will reset (it
will rerun your sketch) when you connect with the serial monitor. Please note that the Serial
Monitor does not process control characters; if your sketch needs a complete management
of the serial communication with control characters, you can use an external terminal
program and connect it to the COM port assigned to your Arduino board.
Circuit Diagram:
In NodeMCU ESP8266, We taken three pins for servo motors and water pump, if
push button is tapped on blynk application, respective pin will be triggered. Here we are
using two drivers, one is for two servo motor and another for water pump. The input for
NodeMCU is 15 volt DC supply. The same supply is given to water pump also. D1 and
D2 pins are connected to servo motor drive and servo motor drive is connected to servo
motors. D6 pin is connected to mosfet drive and mosfet drive is connected to the water
pump.
CHAPTER – 4
Step 6: Tools > Board: Node MCU > select ESP8266 board > select Node MCU 1.0
version.
Step 7: Tools > Port > Select port e.g., COM4.
Step 6: File > New > Implement source code > save file.
Step 7: Compile source code > Make connection to the Blynk app > upload .
Step 2: Create a new Template with name, hardware used and connection type.
Step 3: Copy the Firmware configuration from the template info which needs to be
implemented in the source code.
Step 4: Template > DataStream > Edit > New DataStream >Digital > Add name
(container name), Pin number and Pin Mode. Similarly create for other containers.
Step 5: Template > Web Dashboard > Edit > Add the controls to the Dashboard.
Step 6: Login with same account with the Mobile and control the dispense of food.
➢ Select Sketch > Include Library > Manage Libraries from the Arduino
IDE's menus.
➢ Wait for the update to finish.
➢ In the "Filter your search" field, type "blynk".
➢ Press Enter.
➢ Click on "Blynk by Volodymyr Shymanskyy".
➢ Click the Install" button.
➢ Wait for the installation to finish.
➢ Click the Close button.
#define Wetfood 10
#define dryfood 13
#define Water 12
#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
int dryfood_Button;
int Wetfood_Button;
int Water_Button;
int pulselength1;
int pulselength2;
// Depending on your servo make, the pulse width min and max may vary, you want these to be as
small/large as possible without hitting the hard stop for max range. You'll have to tweak them as necessary
to match the servos you have!
#define SERVOMIN 100 // This is the 'minimum' pulse length count (out of 4096)
#define SERVOMAX 480 // This is the 'maximum' pulse length count (out of 4096)
void setup() {
Serial.begin(115200);
pwm.begin();
pwm.setOscillatorFrequency(27000000);
pinMode(dryfood, INPUT);
pinMode(Wetfood, INPUT);
pinMode(Water, INPUT);
delay(10);
pwm.setPWM(servonum2, 0, pulselength2);
pwm.setPWM(servonum1, 0, pulselength1);
void Button_read()
dryfood_Button=digitalRead(dryfood);
Wetfood_Button=digitalRead(Wetfood);
Water_Button=digitalRead(Water);
if(dryfood_Button==1)
dryfood_feed();
if(Wetfood_Button==1)
wetfood_feed();
if(Water_Button==1)
water_feed();
void dryfood_feed()
Serial.print("dry food");
Serial.print(": ");
Serial.print(dryfood_Button);
Serial.println(" ");
pwm.setPWM(servonum1, 0, pulselength1);
delay(2000);
pwm.setPWM(servonum1, 0, pulselength1);
delay(500);
void wetfood_feed()
Serial.print("wet food");
Serial.print(": ");
Serial.print(Wetfood_Button);
Serial.println(" ");
pwm.setPWM(servonum2, 0, pulselength2);
delay(2000);
pwm.setPWM(servonum2, 0, pulselength2);
delay(500);
void water_feed()
Serial.print("water");
Serial.print(": ");
Serial.print(Water_Button);
Serial.println(" ");
digitalWrite(Water, Water_Button);
delay(2000);
digitalWrite(Water, Water_Button);
delay(500);
void loop() {
Blynk.run();
Button_read();
CHAPTER-5
RESULTS
The above figures show the results of our project. Figure 5.1 shows the dispense of
food, which contains three containers, they are wet food, dry food, and liquid item. Wet
food and dry food are dispensed by using servo motor which are place under the containers.
Liquid item is poured to bowl by using water pump which is placed inside the container.
Here we are using 15v dc supply for the model.
Figure 5.2 shows the user interface on blynk mobile application. The user interface
has the buttons which indicate wet food, dry food, and liquid, one indicator for level of
liquid. If we tap wet food button once, the servo motor angle will be change and food will
drop in the bowl, for one tap 50 gram of food will be dispensed form the container. Same
for dry food also, for liquid button 50 ml of liquid will pour into bowl.
Figure 5.3 shows the camera interface between the user and pet, it is a two way
voice communication and one way video communication. Camera is connected to wifi .
CHAPTER – 6
The interaction between humans and physical devices and objects is attracting
increasing attention. Many studies have attempted to provide a natural and intuitive
approach to request services. The current trend of combining pet control and IoT
technology offers exciting future developments. This study presents the smart pet care
system based on the concept of the Internet of things. The proposed system is also
based on smart-home technology, including the smart pet door and pet feeder. The
results not only present the key improvement of the pet care system involved with the IoT
technology, but also meet the needs of owners.
The basic vision behind the IoT, it may have a new way of operational method, it
may have a new method of connecting devices, and there might be the even complete clean-
slate approach. As the full operational definition is not yet finalized, there are numerous
research issues that can be worked on. As a next step, we will fully integrate the other pet
care devices into our system, including litter boxes, pet cam, etc. With that, the diverse
needs of the owners can be met, and the health, monitor, and entertainment topics for
pets are all covered. Besides, standing as the cloud term, how to connect the numerous
networking devices around the globe is the next issue. In the future, we will centralize on
the establish of the IoT gateway and long distance appliances of the pets.
REFERENCES
[1] Raed Abdulla, Ahmed Abdlekader Eldebani, Sathish Kumar Selvaperumal, Maythem K.
Abbas described “Monitoring and controlling features with the help of IoT”. Asia Pacific
University of Innovation and Technology. March - April 2020 ,ISSN: 0193-4120 Page
No. 269 – 279
[2] Saurabh A. yadav, Sneha S. kulkarni, Ashwini S. jadhav, Prof. Akshay R. jain describes
“Design of pet feeder which can be controlled by interactive remote controller which
helps to get rid of the manualsettings of the previous versions of pet feeder”. Computer
engineering, PVGCOEN, Maharashtra, INDIA.Vol-4 Issue-2 2018
[3] Jayaram Kumar Kondapalli, Venkata Ramana Sanepu, Balakrishna Satyam Kothapalli,
Shankar
Pattabhi Ram Peketi, Venkata Dattu Naveen Kukatla described “Automatic pet feeder uses
a NODEMCU Micro Controller”. © 2019 JETIR April 2019, Volume 6, Issue 4