You are on page 1of 9

WIFI MODULE DESIGN BASED ON INTERNET OF THINGS FOR FISH FEEDING

MONITORING AND CONTROL IN AQUARIUM


Agung Rakhmat Gumilar1, Dr.Muhammad Ary Murti S.T., M.T.2, Dr.Rizki Ardianto Priramadhi S.T., M.T.3
1,2,3
Prodi S1 Teknik Elektro, Fakultas Teknik Elektro, Universitas Telkom
1
agunrg17@gmail.com, 2ary.murti@gmail.com, 3rizki.ap@gmail.com

Abstract
Internet Of Things (IoT) is a technology that uses internet networks that allow control, communication, and
cooperation between several objects. Along with the times, there have been many renewable innovations that utilize the
technology of Internet of Things (IoT) with the aim of facilitating work or human activities to be more practical and
efficient, even replacing humans themselves [1]. Internet of Things (IoT) is widely applied in various types of activities
including the control system and monitoring of fish feed provision in aquariums, therefore it is needed as a device based
on Internet of Things (IoT) to be able to realize the system.

The aim of this Final Project is to design an Internet of Things (IoT) system to control the automatic and
manual feeding of fish through the Blynk application, with the amount of automatic feeding twice a day as much as 8-9
grams and three times a day as much as 11 -12 grams, while for manuals there are two choices of the amount of feed
expenditure, which is as much as 5-6 grams, and 9-10 grams. This system can also monitor conditions for the availability
of feed, conditions for water clarity, and water levels in the aquarium.

Keywords: Internet Of Things (IoT), Smart Aquarium, Smart Fish Feeder

1. Pendahuluan

Internet of Things (IoT) is a technology that uses an internet network that allows for control, communication,
and cooperation between several objects. Along with the times, there have been many renewable innovations that
utilize the Internet of Things (IoT) technology with the aim of facilitating human work or activities to be more
practical and efficient, even replacing humans themselves [1]. Internet of Things (IoT) is widely applied in a variety
of activities including control and monitoring fish feeding system in an aquarium, so there is needed the device to
be able to realize the system of Internet of Things (IoT).
Fish farming in a small or large aquarium is one of the hobbies that are quite popular in the community, because
the method of fish farming is not complicated and can be enjoyed inside the house. Fish farming certainly requires
care and feeding the fish regularly, but because of busyness or other activities, it often becomes an obstacle in
feeding fish in aquariums. There are several obstacles to doing this. Therefore, the Internet of Things (IoT) module
can be used to assist in the process of controlling fish feeding in the aquarium, as well as monitoring the condition
of aquarium..
Research on fish feeding control systems in aquariums has been carried out, one of which is about Fish Feeding
Equipment in Automatic Aquariums Based on ATMEGA16 Microcontroller [2]. In this study the authors designed
an Internet of Things (IoT) module with WiFi to control fish feeding in an aquarium, and monitor the amount of
feed still available in fish feed containers through an android application.
The purpose of this Final Project is to design an Internet of Things (IoT) system to control fish feeding
automatically and manually through the Blynk application, with 8-9 grams of automatic feeding twice a day and 11
times a day 11 -12 grams, while the manual has two choices for the amount of food expenditure that is as much as
5-6 grams, and 9-10 grams. This system can also monitor the condition of the availability of feed quantity, conditions
of water clarity, and water level in the aquarium.

2. Basic Theory and System Design

2.1. Internet Of Things (IoT)


Internet of Things (IoT) is a network that is interconnected with each other, such as sensors or actuators, equipped
with telecommunications interfaces, and data processing and storage [2]. Internet of things technology can also be defined
as technology that enables the communication and control of various objects (electronic devices) through the internet
network, making electronic devices easy to connect directly to the internet to facilitate connectivity between devices. In
general, the functions of IoT system is to collect the data generated by electronic devices connected to the internet to be
processed and analyzed, so that it can be used to control and monitor the performance of the devices.
Internet of Things (IoT) system makes electronic devices connected through the internet network, the data
information around the device from sensors can be retrieved in realtime, then the data will be processed by the controller
to be sent to the server. The data will then be retrieved by an intelligent device in the form of a smartphone or laptop to
be displayed using an application, so that the data will be able to continue to be controlled and monitored by the user..

2.2. Blynk
Blynk is a free application platform for iOS and Android to control the devices such as Arduino, Rspberry pi through
internet. Blynk is designed to support the Internet of Things (IoT) system with the aim of controlling an object remotely,
can display sensor readings, store data, and can display data. Blynk is a digital dashboard with a graphical interface facility
in making projects, adding components to the Blynk application is done by drag and drop, making it easier for users to
add input / output components without the need for Android or iOS programming capabilities.
Blynk was designed for the Internet of Things. It can control hardware remotely, it can display sensor data, it can store
data, vizualize it and do many other cool things [1].
There are three major components in the platform:
1. Blynk Apps
Blynk Apps makes it possible to create a project interface with various input and output components that support
for sending and receiving data as well as representing data according to the selected component. Data
representation can be in the form of visual numbers or graphics. There are 4 types of component categories that
depend on the Blynk :
a. The controller, are used to send data or commands to hardware.
b. Display, are used to display data from hardware to the smartphone.
c. Notifications, are used to send messages and notifications.
d. Interface are used to adjust the appearance of the Blynk application, it can be a menu or tab.
2. Blynk Server
Blynk server is a cloud-based Backend Service facility that is responsible for managing communication between
smartphone applications and hardware. The ability to handle dozens of hardware at the same time makes it easier
for IoT system developers.
3. Blynk Library
Blynk Library can be used to help with code development. The Blynk library is available on many hardware
platforms making it even easier for IoT developers with hardware flexibility supported by the Blynk
environment.

Figure 2.1 Overview of the Blynk Application System

2.3. NodeMCU
NodeMCU is an open source platform to support the Internet of Things (IoT) system, nodeMCU is an arduino
compatible board device that uses the ESP8266 WiFi System On Chip (SoC) which integrates GPIO, PWM (Pulse Width
Modulation), IIC, ADC (Analog to Digital Converter) in one board. Arduino compatible means, nodeMCU can be
programmed using the Arduino IDE. The use of the MCU node board for the implementation of the Internet of Things
(IoT) system is more profitable in terms of cost and place efficiency because of its small size and has been equipped with
WiFi and microcontroller features so there is no need to add additional controllers. NodeMCU uses esp8266 WiFi chip,
where this module can function as a client or access point in a control or monitoring system.

Figure 2.2 NodeMCU Pin Mapping


2.4. Sensor
The sensor is used to retrieve data needed by the system, the data from the sensor will be processed by the
microcontroller and the data will be sent to the server to be displayed on applications on smartphones. In this system
uses several sensors including.
A. Load Cell Sensor
Load Cell Sensor is a sensor for measuring weight. In use, load cells convert weight into electrical signals. Load cells
generally contain 4 strain gauges arranged as a series of wheatstone bridges. The compressive force imposed on the load
cell will make the strain gauge balance disturbed, with the excitation voltage on the load cell, the imbalance of the
wheatstone bridge caused by the compressive force on the load cell will be converted into a voltage signal.
B. HX711
HX711 is a signal amplifier / amplifier module for a loadcell sensor / heavy load. With this module, the
microcontroller can read a signal from the load sensor. Because the load cell sensor is only able to provide a voltage
signal that is so small that it requires an amplifier to amplify the signal to the minimum limit of a 0V-5V microcontroller.
HX711 has the working principle of converting measured changes in changes in resistance and converting them into
voltage quantities.
C. LDR (Light Dependant Resistor) Sensor
LDR is a light-sensitive electrical component, this device can also be called a photocell, photoconductive or
photoresistor. LDR utilizes a semiconductor load whose electrical characteristics vary according to the light received.
LDR resistance is very high in weak light intensity (dark), conversely LDR resistance is very low in strong light intensity
(bright). LDR sensor (Light Dependant Resistor) is a sensor for reading the intensity of light, which serves to determine
the condition of water clarity in the aquarium.
D. Ultrasonic Sensor
Ultrasonic sensors are formed from two units, the first is the receiving unit and the second is the transmitter unit. The
contraction that is formed is continued towards the vibrating diaphragm until an ultrasonic wave is generated which
radiates into the air around where it is located, and if there are specific objects around the place it will cause reflections
of the ultrasonic waves. The wave reflection is then received by the receiver's sensor unit. The scanning operation carried
out by the sensor uses the reflection method by calculating the difference in distance between the target object and the
sensor. The way to calculate this distance is to multiply half the time used by the ultrasonic signal to travel from the TX
circuit until it is recaptured by the Rx circuit. This time is calculated when the transmitter is active until an input from the
receiver's range is obtained. If within the specified time limit, the receiver circuit does not also receive an input signal
means that there is nothing blocking in front of it.
E. RTC (Real Time Clock) DS1307
RTC is a component needed to provide information about time. The time here can be in seconds, minutes, days,
months and years. In order to keep working, an RTC is equipped with a battery.
2.5. Motor Servo

Servo motor is a rotary actuator (motor) device designed to determine the angular position of the motor output
shaft. Servo motors consist of a motor, gear, potentiometer and control circuit. The potentiometer serves to determine
the rotation angle of the motor, while the angle of the axis of the servo motor is set based on the pulse width (PWM)
sent through the signal legs of the motor cable.

2.6. System Model Design


In designing an Internet module based on Internet of Things (IoT), the WiFi module can be used to monitor and
control fish feeding in an aquarium. In this system there are several control and monitoring features, including control
of feeding fish manually and automatically based on a predetermined timer, monitoring for the condition of the amount
of fish feed remaining, monitoring the state of the water ie the conditions of clarity and water level in the aquarium.
Users can give orders and monitor through a smartphone application to open or close the fish feed valve, this command
will be sent via the internet to a WiFi module that has been integrated with a fish feeder device. The WiFi module will
process an order to move the motor to open or close the feed container valve.
Server Internet User

Sesnor Load
Cell

RTC
Modul WiFi
Motor
(NodeMCU)
Sesnor LDR

Sensor
Ultrasonik

Figure 2.3 System Model Design

Figure 2.3 is an illustration of the monitoring and control system for fish feeding equipment in an aquarium. Internet-
based electronic device of things (IoT). The WiFi module uses the NodeMCU module that functions as a manager and
sender of data to the server, because NodeMCU uses a WiFi chip ESP8266 which is an integrated system of on-chip WiFi
controller that does not require an additional microcontroller. Servo motor functions to open or close the valve of the fish
feed container when it will feed. The weight sensor (load cell) functions to calculate the amount of feed that is still
available in the container, the LDR sensor (Light Dependant Resistor) functions to monitor the condition of aquarium
water clarity, the ultrasonic sensor functions to monitor water level conditions in the aquarium, and RTC (Real Time
Clock) function as a timer for fish feeding time automatically.

2.7 Block Diagram


Modul WiFi
User Server Blynk ESP8266 Motor Servo Wadah Pakan
(NodeMCU)

Sensor

Figure 2.4 System Block Diagram

Figure 2.4 shows a block diagram of a monitoring and control system for fish feed equipment in an aquarium.
Internet-based electronic devices of things (IoT) using the NodeMCU WiFi module that functions as a manager and
sender of data to the Blynk server, because NodeMCU uses the ESP8266 WiFi chip which has already integrated
controller so that it does not require an additional microcontroller. Data from sensor readings and motor condition will be
sent and saved to the Blynk database server by the ESP8266 WiFi module. Users can access, give orders, and monitor
through the Blynk application on a smartphone to change conditions stored in the database.

2.8 Hardware Design

Figure 2.5 Hardware Design


Figure 2.5 is a hardware design used in the design of the Internet-based WiFi module (IoT) for monitoring and
control of fish feeding systems in aquarium.

2.9 Software Design


Start

Start

Inisialisasi Sistem
Inisialisasi Sistem

N
N
Koneksi Internet?
Koneksi Internet?
Y

Menghubungkan ke Y
Server Blynk

Pengambilan Data
Sensor LDR dan
N
Pakan Ototmatis? Pakan Manual Ultrasonik

RTC membaca Servo Buka/Tutup Pengiriman Data ke


Waktu Katup Pakan
Blynk Server

N
Waktu 08.00 dan 17.00

Tampilkan di
Y
Aplikasi Blynk
Servo Membuka
Katup Pakan

End
End

(a) (b)

Figure 2.6 (a) Fish Feeding Flowchart (b) Clarity and Height of Water Flowchart

Figure 2.6 shows the flow diagram of the feeding system. When the system is activated it will use an internet
connection to connect the WiFI NodeMCU ESP8266 module to the Blynk cloud server, when the system is connected
there will be two conditions that can be selected to control fish feeding by automatic manual based on the specified time,
or by manual according user wishes on the Blynk application on smartphone. All input data obtained from sensor readings
or instructions on the Blynk application will be processed by NodeMcu to determine the next conditions that the system
will do. The sensor will read the condition of the amount of fish feed available in the container, monitor the condition of
water clarity in the aquarium, monitor the water level in the aquarium. This condition information is displayed on the
Blynk application as monitoring the amount of feed in the container, and monitoring the condition of the clarity and height
of the aquarium water. In manual servo motor control, there are two button choices on the display in the Blynk application.
In the water condition monitoring system, an LDR (Light Dependant Resistor) sensor and an ultrasonic sensor are used,
where the LDR sensor functions to measure the intensity of light in water used as a reference for water clarity conditions,
while the ultrasonic sensor is used to measure the distance used as a reference to measure altitude water in an aquarium.
Then the data received by the sensor will be sent to the Blynk server and then displayed in the Blynk application on the
smartphone.
3. Discussion

3.1. Testing And Analysis


Test Purpose: The test is carried out to determine the accuracy of the load cell sensor reading, determine the performance
of the LDR (Light Dependant Resistor) sensor in reading the conditions of water clarity, and the performance of the
ultrasonic sensor in reading the height of the aquarium water.
Testing Tool:
1. 5kg load cell sensor
2. Module HX711
3. LDR sensor
4. Ultrasonic Sensor
5. NodeMCU
6. Arduino IDE
7. Weights with a weight of 1000gr, 500gr, and 10gr
8. Aquarium height 25cm
9. Aquarium LED lights.
Testing Step: Load cell sensor is connected to digital port pins D0 and D5 on NodeMCU, then loads with different weights
are placed alternately above the sensor. The ultrasonic sensor is connected to the digital port pins D7 and D8 on
NodeMCU, then the sensor is placed above the aquarium with a height of 25 cm. The distance readable by an ultrasonic
sensor is processed by a program in NodeMCU to calculate the water level in an aquarium. The LDR (Light Dependant
Resistor) sensor is connected to the analog port A0 of the NodeMCU, then the sensor is placed next to the aquarium with
a beam of light shining from the top of the aquarium. The resistance value that is read by the LDR sensor will be processed
by the program in NodeMCU to determine the condition of water clarity in the aquarium.

Pengujian Load Cell Dengan Beban 1000gr Pengujian Load Cell Dengan Beban 500gr
1020 505
BERAT (gram)

BERAT (gram)

1000 500
980 495
490
960
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
DATA KE- DATA KE-

Timbangan Digital (gr) Load Cell (gr)


Timbangan Digital (gr)
.
(a) (b)

Pengujian Load Cell Dengan Beban 10gr


14
BERAT (gram)

12
10
8
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
DATA KE-

Timbangan Digital (gr) Load Cell (gr)

(b) (d) (e)


Figure 3.1 (a) Load Cell with a weight of 1000gr (b) Load Cell with a Weight of 500gr (c) Load Cell with a Weight of
10gr (d) Ultrasonic Sensor (e) LDR Sensor
Test Results: Figure 3.1 (a) Above shows the results of load cell sensor testing with a load of 1000 grams, with an
experiment of 30 times, producing a maximum error value of 22.63 grams, having an accuracy of 98%. Figure 3.1 (b)
Above shows the results of load cell sensor testing with a load of 500 grams, with an experiment of 30 times, resulting in
an error value of 5.43 grams, having an accuracy of 99%. Figure 3.1 (c). Above shows the results of load cell sensor
testing with a load of 10 grams, with an experiment of 30 times, resulting in an error value of 0.63 grams, has an accuracy
of 95%. From Figure 3.1 (d) above shows the results of ultrasonic sensor testing to measure water level conditions in an
aquarium. The height of the water is obtained from a reduction of 25 cm (aquarium height) with the result of distance
reading by an ultrasonic sensor. From Figure 3.1 (e) above, the LDR (Light Dependant Resistor) sensor test results are
obtained to measure the condition of water clarity in the aquarium by calculating the resistance value read by the sensor
as a reference to determine the condition of water clarity, if the higher the value of the resistance read by the sensor,
shows the condition of the water more turbid.
3.2 Time System Test and Analysis
Testing Purpose: Testing is carried out to determine the response time needed by the system to carry out commands
from the Blynk application to open the feed valve using three buttons namely the automatic button, manual 1, and manual
2, using two different internet networks. The response time is measured using a stopwatch, calculated from the time the
command button in the Blynk application is pressed until the servo motor is moving.
Testing Tool:
1. 5kg load cell sensor
2. Module HX711
3. NodeMCU
4. Arduino IDE
5. Servo Motor
6. Blynk Application
7. Stopwatch
Test Step: Load cell sensor is connected to digital port pins D0 and D5 on NodeMCU, servo motor is connected to
port D4, then feed is fed into the container, the user gives instructions via the Blynk application on the smartphone to
open the feed valve using three buttons namely the automatic button, manual 1, and manual 2, comparing the length of
time a servo motor delay responds to commands from the Blynk application by using two different internet networks.
Automatic Control

Motor Respon Automatic Control


1.5
WAKTU DELAY (S)

0.5

0
1 2 3 4 5 6 7 8 9 101112131415161718192021222324252627282930
DATA KE-

Telkomsel 4G WiFi Nethost

Manual Control

Motor Respon Manual Control


1.5
WAKTU DELAY (S)

1
0.5
0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
DATA KE-

Telkomsel 4G Wifi Nethost

Figure 3.2 Testing Data Automatic Response Time Control and Manual Control
Figure 3.2 (a) shows the delay time of an automatic motor control response to commands from the Blynk
application with the Telkomsel 4G internet network connection having an average delay of 0.66s. Figure 3.2 (b) shows
the delay time of an automatic motor control response to commands from the Blynk application with a 1 Mbps Nethost
internet network connection having an average delay of 0.66s. Figure 3.2 (c) shows the delay time for a manual control
motor response to a command from the Blynk application with a 1 Mbps Nethost internet network connection having an
average delay of 0.75s. Figure 3.2 (d) shows the delay time of a manual control motor response to commands from the
Blynk application with a 1 Mbps Nethost internet network connection having an average delay of 0.64s.
4. Conclusion
From the test results, several conclusions can be obtained, namely:
1. Feed weight reading with a 5kg load cell sensor has a maximum average error value of 22.3 grams with an accuracy
above 95%.
2. Consistency of weight of the outgoing feed depends on the condition of the feed container, the less the condition of the
feed container the more unstable and the greater the error value of the weight of the feed that comes out.
3. The response time of a servo motor using the Telkomsel 4G and Nethost 1Mbps internet networks has an average delay
of under 1 second.
4. The LDR sensor can read the light intensity in water to determine water clarity, but it is still affected by the light
conditions around the aquarium.

Bibliograpy
[1] A. F. Prasetyo, Rancang Bangun Smart Fish Berbasis Internet Of Thngs Menggunakan Aplikasi
Blynk, Balikpapan: Politeknik Negeri Balikpapan, 2018.

[2] L. Nulhakim, Alat Pemberi Pakan Ikan di Akuarium Otomatis Berbasis ATMega16, Yogyakarta:
Universitas Negeri Yogyakarta, 2014.

[3] A. Waluyo, Pemberi Pakan Ikan Otomatis Menggunakan ESP8266 Berbasis Internet Of Things,
Yogyakarta: Universitas Negeri Yogyakarta, 2018.

[4] W. Dewanto, "Pembangunan Sistem Pantau Smart Fish Farm Menggunakan Arduino Berbasis
Internet Of Things Terhadap Budidaya Ikan," Jurnal Ilmiah Komputer dan Informatika
(KOMPUTA), Vols. ISSN : 2089-9033, 2016.

[5] R. Dr. R. M, T. H. Mahajan, P. P. Mahajan , G. R. Dhage, P. A. Kapse and S. M. Dubale, "Design


and Implementation of Automatic Aquarium System Using Internet Of Things," International
Journal on Future Revolution in Computer Science & Communication Engineering, vol. 4, no. 4,
pp. ISSN: 2454-4248.

[6] M. S. Daulah, D. Syauqy and R. Primananda, "Implementasi Protokol MQTT Pada Monitoring
Suhu dan Ketersediaan Pakan Ikan pada Akuarium," Jurnal Pengembangan Teknologi Informasi
dan Ilmu Komputer, vol. 2, no. 9, pp. 2661-2668, 2018.

[7] B. W, Sistem Instrumentasi dan Sistem Kontrol, Erlangga, 2004.

[8] R. M. H, Power Electronic Handbook, Canada: Academic Press, 2001.

[9] A. Desai, S. H. Ruthwick and R. A, "Smart Aquarium," International Journal of Advance


Research in Engineering & Management (IJAREM), pp. 51-54.

[10] R. P. Pratama, "Aplikasi Web Server ESP8266 Untuk Pengendali Peralatan Listrik," INVOTEK,
vol. 17, no. 2, 2017.

[11] Arduino, "Arduino UNO," http://www.arduino.cc.

[12] A. F. Jaya, Monitoring dan Kendali Perangkat Pada Ruang Kelas Berbasis INternet of Things
(IoT), Bandung: Universitas Telkom, 2018.
[13] F. Yan and E. Wang, "Intelligent Fish Tank Based On WiFi Module," Journal of Autonomous
Intelligence, vol. 1, no. 1, 2018.

[14] S. Muhammad, A. Muid and D. Triyanto, "Rancang Bangun Sistem Pemberi Pakan Ikan dan
Pengukur Ph Air pada Keramba Berbasis Website," Jurnal Coding Sistem Komputer Untan , vol.
04, no. 02, pp. 161-172, 2016.

[15] A. Bahsyar, R. Handayani and M. Ike, "Perancangan dan Pembangunan Antar Muka Sistem
Pemberi Pakan Ikan Otomatis Berbasis Web," e-Proceeding of Applied Science, vol. 3, no. 3, p.
1895, 2017.

[16] D. S. Mulya, Yohandri and S. Kamus, "Pembuatan Alat Ukur Salinitas dan Kekeruhan Air
Menggunakan Sensor Elektroda dan LDR," Jurnal Sainstek, vol. 2, no. 2, pp. 126-139, 2015.

[17] Z. Budiarso and A. Prihandono, "Implementasi Sensor Ultrasonik Untuk Mengukur panjang
Gelombang Suara Berbasis Mikrokontroler," Jurnal Teknologi Informasi DINAMIK, vol. 20, no.
2, pp. 171-177, 2015.

You might also like