Professional Documents
Culture Documents
This research project is about a farm monitoring system that uses the Internet of Things (IoT)
system that enables real time monitoring of farm irrigation by using smart sensors. This
system also allows the users in this case farmers or other relevant stakeholders to have access
to real time data on soil moisture, soil temperature and soil humidity provided by the soil
mosture sensor and DHT11 sensor which are critical parameters for the growth of the crops.
As we all know that the agricultural sector is the backbone of Rwanda’s economy and
contributes over 33 percent of GDP with 45 per cent export earnings, while 73 per cent work
in the agricultural sector, which makes the sector the biggest employer in Rwanda. . However
challenges remain to transform agriculture from subsistence to a productive high value,
market oriented farming. These challenges include inadequate access to markets, low human
capacity, small existing base of agro processing, lack of access to agriculture finance and long
term credit, inadequate access to advanced technologies, limited rural infrastructure, and high
production and transport costs. ICTs can play a role in addressing some of these challenges by
offering access to information and solutions embedded in broader stakeholder systems by
automating agriculture systems such as irrigation system throuth a remote controlled water
pump . The strategic application of ICT to the agriculture sector then offers the best
opportunity for economic growth and poverty alleviation when utilized as a holistic tool and
used appropriately and effectively within the agricultural sector. Hence, this system has been
implemented in some parts of Rwanda to allow the optimum use of resources such as water
and other important resources. The summarizations of activities which have been done and
testing results are presented; some recommendations and orientation for those who will be
carrying out further research about this project are presented in this report. At the end of the
presentation we mentioned the bibliography both electronic and books
i
DECLARATION
I hereby declare that this project report is based on my original work except for citations and
quotations which have been duly acknowledged. I also declare that it has not been previously
and concurrently submitted anywhere.
Signature: …………………………………………..
ii
APPROVAL
I, Mr. MANIRAHO Laurent hereby certify that this project report has been done under my
supervision and submitted with my approval.
Signature………………………………..
Date……………………………………..
iii
DEDICATION
iv
DEFINITION OF TERMINOLOGIES
v
Contents
PROJECT ABSTRACT..................................................................................................................................................... i
DECLARATION............................................................................................................................................................... iii
APPROVAL........................................................................................................................................................................ iv
DEDICATION..................................................................................................................................................................... v
DEFINITION OF TERMINOLOGIES...................................................................................................................... vi
CHAPTER 1......................................................................................................................................................................... 1
GENERAL INTRODUCTION...................................................................................................................................... 1
Background of the study.............................................................................................................................................. 2
Problem statement......................................................................................................................................................... 3
Objectives of the study................................................................................................................................................. 4
General Objective..................................................................................................................................................... 4
Specific Objectives................................................................................................................................................... 4
Scope of the Study......................................................................................................................................................... 4
Methodology and Techniques used in the Study.................................................................................................. 5
Observation................................................................................................................................................................. 5
Documentation........................................................................................................................................................... 5
Expected Results............................................................................................................................................................ 5
Organization of Report................................................................................................................................................. 6
CHAPTER 2......................................................................................................................................................................... 7
ANALYSIS OF CURRENT SYSTEM....................................................................................................................... 7
Introduction..................................................................................................................................................................... 7
Description of Current System Environment........................................................................................................ 7
Problems of the current system.................................................................................................................................. 8
Proposed Solutions........................................................................................................................................................ 8
Functional Requirements........................................................................................................................................ 9
Non-Functional Requirements............................................................................................................................ 10
CHAPTER 3...................................................................................................................................................................... 11
REQUIREMENTS ANALYSIS AND DESIGN OF THE NEW SYSTEM.................................................11
Introduction................................................................................................................................................................... 11
.......................................................................................................................................................................................... 11
Analysis and Design Methodology........................................................................................................................ 12
Objects oriented methodology............................................................................................................................ 12
Unified Modelling Language (UML)............................................................................................................... 12
Design of the new system......................................................................................................................................... 13
Use Case Diagram.................................................................................................................................................. 13
Use-case description.............................................................................................................................................. 17
Class diagram.......................................................................................................................................................... 20
vi
............................................................................................................................................................................................... 21
Sequence diagram................................................................................................................................................... 21
Database design...................................................................................................................................................... 25
Database Schema diagram................................................................................................................................... 25
System Architecture Design................................................................................................................................ 26
CHAPTER 4...................................................................................................................................................................... 28
IMPLEMENTATION OF THE NEW SYSTEM................................................................................................... 28
Technologies used....................................................................................................................................................... 28
Software tools.......................................................................................................................................................... 28
Hardware Tools....................................................................................................................................................... 30
Graphical interface of Home Automation System............................................................................................ 32
Login page................................................................................................................................................................ 32
Register account page........................................................................................................................................... 33
Dashboard of temperature and Humidity and Soil Moisture page..........................................................34
Irrigation control page........................................................................................................................................... 35
Software Testing.......................................................................................................................................................... 36
Hardware functionality Testing.......................................................................................................................... 38
Software and Hardware compatibility requirements........................................................................................ 38
CHAPTER 5...................................................................................................................................................................... 39
CONCLUSION AND RECOMMENDATIONS................................................................................................... 39
Conclusion..................................................................................................................................................................... 39
Recommendations....................................................................................................................................................... 39
References.......................................................................................................................................................................... 40
vii
List of figures
LIST OF TABLES
viii
CHAPTER 1
GENERAL INTRODUCTION
There are challenges that hinder the transformation of Rwandan agriculture from subsistence
to a productive high value, market oriented. To address some of the challenges of agri-food
systems in Rwanda and rural transformation, new development approaches are needed, that
combine innovative policies, technologies and organizational processes and practices, and
use of digital and other types of innovation for the improvement of agriculture and food
systems, into agriculture 4.0 (the fourth agricultural revolution).
Agriculture has been one of the primary occupations of man since early civilization and even
today manual interventions in farming are inevitable. Greenhouse form an important part of
the agriculture and horticulture sectors in our country as they can be used to grow plants
under controlled climatic conditions for optimal growth . Greenhouse technology is the
technique of providing favourable environmental conditions for plants. It replaces the direct
supervision. Now a day, due to urbanization and lack of land availability there is a great need
to construct the greenhouse, which will be revered mainly for growing crops. Greenhouse
monitoring and controlling projects is used to measure the various parameters like
temperature, humidity, light, water level, moisture, etc. and to display them on LED.
Continuous monitoring of these environmental factors gives relevant information pertaining
to the individual effects of the various factors towards obtaining effects of the various factors
towards obtaining maximum crop production. Unlike open farming where natures control
takes the upper hand, green house prevents a closed environment that can be strictly
controlled by humans in order to provide optimal conditions for the growth of plants.
This project presents the systems that collects and automatically controls condition of
greenhouse environment and crops by using different sensors. The existing control system
monitors temperature, humidity, light intensity, soil moisture. To make up for this project
proposes and collects the information regarding these parameters so that the change of
condition of crops depending on internal environment factors of greenhouse can be estimated.
1
Background of the study
A green house is where plants such as flowers and vegetables are grown. Green houses
warmup during the day when sun-rays penetrates through it, which heats the plant, soil and
structure. Green houses help to protect crops from many diseases, particularly those that are
soil borne and splash onto plants in the rain. Greenhouse effect is a natural phenomenon and
beneficial to human being. Numerous farmers fail to get good profits from the greenhouse
crops for the reason that they can’t manage two essential factors, which determines plant
growth as well as productivity. Green house temperature should not go below a certain
degree, High humidity can result to crop transpiration, condensation of water vapour on
various greenhouse surfaces, and water evaporation from the humid soil. To overcome such
challenges, this greenhouse monitoring and control system comes to rescue. This project
demonstrates the design and implementation of a various sensors for greenhouse environment
monitoring and controlling. This greenhouse control system is powered by Atmega328
microcontroller it consists of temperature sensor, light sensor, soil moisture sensor, LDR
sensor, LCD display module, 12v DC fan, Bulb and pump (microcontroller, n.d.).
Temperature sensor, senses the level of temperature. If it goes high DC fans gets on and when
the temperature goes low the fan gets off. Soil moisture sensor, senses the water level as the
level decreases the pumps gets on. In the absence of light, the LDR sensor senses and the bulb
starts glowing. By this way it will become easy to monitor and control the system. The data
collected and processed are sent from the sensor nodes to the main node, where the received
data are analysed and processed to execute the output orders for the engine contract. In the
design of the main node algorithm, the optimal variation of the temperature and humidity
parameters during the day and night must be considered within the default configuration
values for each type of culture. Managed to build a system with a fairly reliable data
collection every 30 seconds using the wireless network, where the success rate of data
transfers up to 70%.
2
Problem statement
In Rwanda, farmers harvest less than half of expected yield due to crop cultivation in
unsuitable environment, which is also a result of lack of information on their soil environment
namely, soil moisture, temperature and humidity.
This project will show the vast opportunities presented by the Internet of Things, which will
spark the interest of lecturers and other students to also come up with solutions that leverage
the capabilities of the Internet of Things. Internet of Things is relatively a new technology in
Rwanda and by presenting this project, it will be a learning experience to other students that
might be interested in acquiring knowledge on the Internet of Things.
3
especially keeping in mind that it strongly aligns with the government of Rwanda's ICT4RAg
strategy to leverage on ICT in agriculture in Rwanda.
General Objective
Our main objectives of this project are build greenhouse with automatic monitoring and
controlling system. Constantly monitor and control environmental conditions in greenhouse.
It focuses on saving water, increasing efficiency and reducing the environmental impacts on
plants production. The user can see the atmospheric conditions of the greenhouse plants on
website and control the greenhouse from faraway places. It is to increase the production of
food stuff. To save water, power etc.
Specific Objectives
This project consists of 2 parts i.e. the hardware and software. Part which consists of a low
cost sensing unit (DHT11 sensor for temperature and humidity data as well as a soil moisture
sensor)
Which can be deployed in the farm as well as an online dashboard to allow real time
monitoring for the farmer or other relevant stakeholders. The proposed project will be
designed based on the research that was conducted in in The horticulture center of excellence,
established at Mulindi in the City of Kigali This project will be done within a period of 1
month.
4
Methodology and Techniques used in the Study
Observation
An observation is a data collection method, by which you gather knowledge of the researched
phenomenon through making observations of the phenomena, as and when it occurs. You
should aim to focus your observations on human behaviour, the use of the phenomenon and
human interactions related to the phenomenon. You can also make observations on verbal and
nonverbal expressions. In making and documenting observations, you need to clearly
differentiate your own observations from the observations provided to you by other people.
The range of data storage genre found in Archives and Collections, is suitable for
documenting observations e.g. audio, visual, textual and digital including sub-genres of note
taking, audio recording and video recording.
Focus Group Discussions
Focus group discussions take the interactive benefits of an interview to the next level by
bringing a carefully chosen group together for a moderated discussion on the subject of the
survey.
Documentation
Document review involves systematic data collection from existing records. This technique
helped us to go through all the data in several works relating to our topic in order to put the
necessary information. Several books, dissertation and newspapers were consulted as well as
web graphic, which helped us to make the research on the internet and to consult different
sites related to this dissertation
5
Expected Results
The expected outcome of the system can be discussed in few different ways. It is mandatory
for the system to have an authentication process to enter the greenhouse system, to avoid any
kind of unauthorized access. When an invalid password is entered a message will come at the
display saying, ‘wrong password'. If the password is correct a message comes out notifying
'login success' then it proceeds to display the home page of the app where controls option is
given. The control dashboard will provide information of all connected appliances or and their
status where an individual will be able to control and monitor all connected appliances
(devices) via a personal computer. The dashboard will provide indoor temperature and
humidity information monitoring.
Organization of Report
Chapter One entitled General Introduction gives the general description of the work, it
includes introduction, background of the study, Statement of problem, the motivation in the
study, methodology and techniques used in the study, the objective of the work, challenges,
expected results, scope of the study and organization of the report.
Chapter Two discusses about the analysis of the existing system where we will describe the
operation and the environment of the existing system, deeply discover their issues, and
suggested solutions proposed on those problems. This chapter will describe the organizational
environment in which the new system will be implemented.
Chapter Three entitled Requirements Analysis and Design of the new System is normally the
logical conception of the new system by designing professional diagrams as provided by
UML methodology. It will portray the conceptual process of the solutions proposed to solve
the problems of the existing system.
Chapter Four will focus on the technical realization of the application where we will explain
and design the new system by showing how the application has been conceived, what are the
technologies have been used, as well as the different types of testing used to validate the
software.
6
Finally, chapter five will conclude our project as well as recommendations for future
development.
CHAPTER 2
Introduction
Considering the pressing challenge of climate-related risks in Rwanda and in the region, the
need for more accurate agricultural data and the commitment of the Government of Rwanda
to ICTs in general and particularly IoT; this project’s main objective is to prototype and
develop a technology that can sustainably address issues related to irrigation water wastage
through “real time” soil data collection in different areas.
The lack of tools to know how much water in the soil is available to the crop, and how much
water the crop needs. We found that the irrigation that is done whenever crops or plants needs
water in a uniform way.
7
Problems of the current system
After analysing the workflow and implementation of existing automated and non-automated
greenhouse monitoring systems below are problems found:
Proposed Solutions
Real time farm level data is critical for efficient irrigation water management. Farm level data
is very difficult to collect only with the use of the human eye. Considering the pressing
challenge of climate-related risks to the agriculture sector in Rwanda, there is need for more
accurate agricultural data; this project’s main objective is to prototype and develop a
technology that can sustainably address issues related to irrigation water wastage through
“real time” soil data collection namely soil temperature, soil moisture and soil humidity.
With the farm monitoring system using Internet of Things, the farmer/user can remotely
monitor the critical parameters from his farm i.e. soil temperature, soil moisture and soil
humidity. From the online dashboard, there is also possibility to be notified when there is any
set threshold value that has been reached. Furthermore, a custom CSV data set will be
downloaded from the dashboard and by using Power BI, we will be able to generate
interactive and insightful reports that can be shared with relevant project stakeholders. To be
8
able to report online, it is required to have an account in the Power BI Service
Requirement specifications:
Functional and Non-functional requirements
The requirement specification activity includes asset of features that the system must have to
be used. A functional requirement is a specification of a function that the system must
support, while non-functional requirement is a constraint on the operation of the system that is
not related directly to a function of the system.
Functional Requirements.
9
Non-Functional Requirements
Availability: The system should always be available for access at 24 hours, 7 days a week.
Also in the occurrence of any major system malfunctioning, the system should be available in
1 to 2 working days, so that business process is not severely affected.
User Friendly: The system must be easy to use and should be easy to be learnt to be used by
a user
Performance : The system should have high performance rate when executing users input
and should be able to provide response within a short time span usually 50seconds for highly
complicated tasks and 25 seconds for less complicated tasks
Security: The system should only allow users with valid email and password to login, no
duplicate email is allowed, it must authenticate the email and password to have access to
user’s page thereby blocking unauthorized personnel.
Usability: Considered the level of knowledge possessed by the users of this system,
a simple but quality user interface should be developed to make it easy to
understand and require less training.
10
CHAPTER 3
Introduction
The development of a new system is a work does by spending much time on innovating the
previous one; it focuses on satisfying the user by providing functionalities that were not
included in the old system. Making a deep analysis the old system leads to figure out that
there is some missing contents that can be useful to a user no matter what energy you have
spent on developing it you will always need to improve it.
11
Analysis and Design Methodology
They are two main basic building blocks that are useful in development of the system by
using Object Oriented Methodology those are: Classes and Objects.
Object-oriented modelling is typically done via use cases and abstract definitions of the most
important objects. The most common language used to do object-oriented modelling is the
Unified Modelling Language (UML).
The Unified Modelling Language (UML) is a general-purpose modelling language in the field
of software engineering, which is designed to provide a standard way to visualize the design
of a system. It is a standard notation for modelling the Object-oriented systems.
It was developed by Grady Booch, Ivar Jacobson and James Rumbaugh at Rational Software
in the 1990s. It was adopted by the Object Management Group (OMG) in 1997, and has been
managed by this organization ever since. In 2000 the Unified Modeling Language was
accepted by the International Organization for Standardization (ISO) as a standard for
modeling software-intensive systems.
12
Unified Modelling Language (UML) combines techniques from data modelling (entity
relationship diagrams), business modelling (work flows), object modelling, and component
modelling. It can be used with all processes, throughout the software development life cycle,
and across different implementation technologies (Rivest, 2002).
The Unified Modelling Language (UML) offers a standard way to visualize a system's
architectural blueprints, including elements such as:
● activities
● actors
● business processes
● database schemas
● (logical) components
● programming language statements
● Reusable software components.
UML has synthesized the notations of the Booch method, the Object-modelling technique
(OMT) and Object-oriented software engineering (OOSE) by fusing them into a single,
common and widely usable modelling language. UML aims to be a standard modelling
language, which can model concurrent and distributed systems (alan, 2005).
System design is the first phase of the system development life cycle in which you and the
user develop a concrete understanding of how the system will operate.
Systems design is the process of defining the architecture, components, modules, interfaces,
and data for a system to satisfy specified requirements.
Use case diagram is UML diagram which shows some business or software system,
its external users (called actors), and a set of actions (called use cases) that users of the system
should or can perform while using the system. Use case diagrams are used to describe
functionality of a system from the point of view of external users (L, 2007).
13
Use case diagrams consist of actors, use cases and their relationships. The diagram is used to
model the system/subsystem of an application. A single use case diagram captures a particular
functionality of a system. Use case diagrams are used to gather the requirements of a system
including internal and external influences. These requirements are mostly design
requirements. Hence, when a system is analysed to gather its functionalities, use cases are
prepared and actors are identified.
Description Shape
An actor:
● Is a Person or system that derives benefit from and
is external to the subject.
● Is depicted as either a stick figure (default) or if a
nonhuman Acton is involved, as a rectangle with
« actor » in it (alternative).
● Can be associated with other actors using a
specialization/super class Field, denoted by an
Arrow with a hollow arrowhead.
A use case:
● Represents a major piece of system functionality
● Can extend another use case
● Can include another use case.
● Is placed inside the system boundary
14
A boundary:
● It is a box drawn around the use case to denote the
edge or boundary of the system being modelled.
● Includes the name of the subject inside or on top.
● Represents the scope of the subject, e.g. a system
or an individual business process.
An Field relationship:
● Links an actor with the use case(s) with which it
interacts.
15
The figure below describes the operations of new system and the stakeholders through the use
case diagram
16
Use-case description
Use Case description details what a use case do, and what it requests in order to be well
executed. Each use case looks like this:
⮚ Name : A name of a use case
⮚ Description: What a system intends to do
⮚ Actor: The actor involved in the use case
⮚ Pre-condition: The system state before the use case can begin
⮚ Post-condition: The system state when the use case is over
⮚ Normal flow: The actual steps of the use case
⮚ Alternative flow: Steps which may happen in case a normal flow fails.
Alternative flow:
4. If the information is not valid, the system provides the message indicating the error.
5. If the system fails to store information display message “The system fails”
Table 2: User Account Registration Use Case
17
Use case description for login
Name: Login
Actor: Farmer and Greenhouse coordinator(admin)
Description: This allows the users to access the system content
Pre-condition: the user should first have credentials
Post-condition: the system shows the user if he/she successfully accessed his/her account
Normal flow:
User login on the system
1. The user has account if not he/she has to request for credentials
2. The system checks the corresponding given information
3. If given information is true then the system display the page corresponding to the type of
user or it display the error message
Alternative flow:
2. A. If the request was not found is the system provides the message indicating the error.
2. A. If the system fails to retrieve information display message “The system fails”
Table 3: Login Use Case
Use case description for monitoring temperature and humidity and soil moisture
Actor: farmer
Description: This allows the user to view real time information of the greenhouse and also
measures the temperature and humidity via the web
Pre-condition: the user should first login
Post-condition:
Normal flow:
18
● The user will be able to compare and analyse the temperature and humidity data
and take an action
Alternative flow:
1. If the request is not found the system provides the message indicating the error.
Table 4: Use Case of monitoring temperature and humidity and soil moisture
Use case description for control temperature and humidity and other actuators
Alternative flow:
1. If the request is not found the system provides the message indicating the error.
Table 5: Use Case of control temperature and humidity and other actuators
Class diagram
A class diagram is the structure diagram that describes the structure of a system by showing
the system's classes, their attributes, operations (or methods), and the relationships among the
19
classes. The figure below shows the class diagram of the national budget preparation
information system.
Class diagrams offer a number of benefits for any organization. Use UML class diagrams to:
⮚ Illustrate data models for information systems, no matter how simple or complex.
⮚ Better, understand the general overview of the schematics of an application.
⮚ Visually express any specific needs of a system and disseminate that information
throughout the business.
⮚ Create detailed charts that highlight any specific code needed to be programmed and
implemented to the described structure.
⮚ Provide an implementation-independent description of types used in a system that are
later passed between its components.
20
Sequence diagram
A sequence diagram is a form of interaction diagram, which shows objects as lifelines running
down the page, with their interactions over time represented as messages drawn as arrows
from the source lifeline to the target lifeline. A sequence diagram shows object interactions
arranged in time sequence.
The notations and their definitions that are used in sequence diagram:
An object lifeline:
✔ It participates in a sequence by sending and/or
receiving messages.
✔ It is placed across the top of the diagram.
An activation:
✔ It is a long narrow rectangle placed on top of a
lifeline.
✔ It denotes when an object is sending or receiving
messages
A message:
✔ It conveys information from one object to another one.
✔ An operation call is labelled with the message being
sent and a solid arrow, whereas a return is labelled
with the value being returned and shown as a dashed
arrow.
21
Sequence diagram for creating a layer of the organization structure
As the sequence diagram graphically displays the interaction between actors and the system,
the diagram below clearly describes how the user interacts with the system.
22
Figure 4: Sequence diagram for Admin creating farmers
23
Sequence diagram for Temperature and Humidity monitoring
24
Figure 7: Sequence diagram for greenhouse appliance control.
Database design
It is the process of producing a detailed data model of database. This data model contains all
the needed logical and physical design choices and physical storage parameters needed to
generate a design in a data definition language, which can then be used to create a database.
25
DATABASE SCHEMA DIAGRAM
26
Figure 9: System Architectural Design
27
CHAPTER 4
Introduction
This chapter describes the development of a “GREENHOUSE MONITORING AND
CONTROL SYSTEM”. It includes a brief overview of the technologies used to make the
application, operational, the presentation of screenshots for the new system, tests that have
been applied. Last but not least, software and hardware compatibility requirements.
Technologies used
To develop this application, I have used different technologies and tools namely
Software tools
MySQL: is a software development tool used to develop a database as collection of data. The
purpose of a database is to store and retrieve related information. (Vaughan-Nichols, 2013)
XAMPP: Cross-Platform (X), Apache (A), MySQL (M), PHP (P) and Perl (P) is a free and
open source cross-platform web server solution stack package developed by Apache
Friends, consisting mainly of the Apache HTTP Server, Maria DB database, and
interpreters for scripts written in the PHP and Perl programming languages.
HTML: HTML (Hyper Text Markup Language) is written in the form of HTML elements
consisting of tags enclosed in angle brackets (like <html>), within the web page content.
HTML tags most commonly come in pairs like <h1> and </h1>, although some tags, known
as empty elements, are unpaired, for example <img/>. The first tag in a pair is the start tag,
the second tag is the end tag (they are also called opening tags and closing tags).HTML
allows images and objects to be embedded and can be used to create interactive forms.
28
JavaScript: JavaScript (JS) is an interpreted computer programming language. It was
originally implemented as part of web browsers so that client-side scripts could interact
with the user, control the browser, communicate asynchronously, and alter the document
content that was displayed.
CSS: Cascading style sheets are used to format the layout of web pages. They can be used
to define text styles, table sizes, and other aspects of Web pages that previously could only
be defined in a page's HTML.CSS makes it easy to change styles across several pages at
once. (Petrie, et al, 2010).
Arduino: For making the project (Smart home system) must be needed an arduino board.
Arduino is an open source computer hardware and software company, project, and user
community that designs and manufactures single-board microcontrollers and
microcontroller kits for building digital devices and interactive objects that can sense and
control objects in the physical world.
29
Hardware Tools
NODEMCU
It is an open-source firmware and development kit that plays a vital role in designing your
own IoT product using a few Lua script lines. The module is mainly based on ESP8266 that is
a low-cost Wi-Fi microchip incorporating both a full TCP/IP
stack and microcontroller capability. Manufacturer Express if Systems introduces it. A
manufacturer based in Shanghai, China. Arduino Modules and Microcontrollers have always
been a great choice to incorporate automation into the relevant project. But these modules
come with a little drawback as they don't feature a built-in Wi-Fi capability, subsequently, we
need to add external Wi-Fi protocol into these devices to make them compatible with the
internet channel. This is where NodeMCU V3 comes handy that incorporates a built-in Wi-Fi
support, giving an easy pathway to design IoT applications as per your technical
requirements. In this post, I'll try to cover brief details related to this Wi-Fi Development Kit,
its main features, pinout and everything you need to know about this module. (ESP8266,
2018)
RELAY SWITCH: used to control the forward or reverse direction of motors. Use Relay
Logic to control lights using relays in standard applications as well as 3-way switching
application. Our relay logic guide helps demonstrate the best ways to connect NCD relay
controllers in real-world control applications. The COM (Common) connection of a relay is
the part of the relay that moves. When a relay is off, the COMMON is connected to the NC
(Normally Closed). The NO (Normally Open) connection of the relay is not connected until
the relay turns on. When the relay turns on, the COMMON move from NC to NO.
Mechanical relays create a Clicking sound that indicates movement of the COMMON
terminal.
30
Not all relays have a Normally Closed Connection. For instance, 30A relays (as offered on
our web site) do not have a Normally Closed connection. We do not currently offer Solid
State relays with a Normally Closed connection. It is possible to use Two relays to create a
normally
The sensor can measure temperature from 0°C to 50°C and humidity from 20% to 90% with
an accuracy of ±1°C and ±1%. So if you are looking to measure in this range then this sensor
might be the right choice for you. (Cook, 2017)
31
Graphical interface of Home Automation System
Login page
32
Register account page
33
Dashboard of temperature and Humidity and Soil Moisture page
34
Irrigation control page
35
Report
Software Testing
Software tests play an important role in the software designing. They help to verify the
effectiveness of the software to see if it actually does what it was supposed to solve.
✔ Does the application meet the requirements that guided its design and development?
✔ Does the application works as expected?
✔ Can the application be implemented with the same characteristics and satisfies the
needs of the stakeholders?
36
The following are some software testing
The Unit Test: Unit testing is a process to ensure the proper functioning of particular
software or a portion of a program. It is a method by which individual units of source code,
sets of one or more computer program modules together with associated control data, usage
procedures, and operating procedures, are tested to determine if they are fit for use. In other
words every small component that can be compiled with the goal to know that every unit
matches to its specifications, and to know if there are logical mistakes. Indeed, the unit test is
an efficient means that permits to detect the maximum possible mistakes. The application has
been checked with the unit test at each piece of the code written. (Testing, n.d.)
The Integration test: is the phase in software testing in which individual software modules
are combined and tested as a group. This test is useful to check the assembly of the different
part of the software. It is also a progression of tests, in which the software and hardware
components are collected and tested until the entire system is tested. The application modules
have been successively tested until completion to ensure that the whole constituted by the
assembled software components answers to the required functional and technical
specifications.
The Validation test: The last test phase has the role of validating the software in its external
environment. The product has been put in final situation in order to verify if it perfectly
answers to the needs expressed in the first phase. The validation test is important, since it is
necessary to verify if the setting up of the application corresponds to the expressed needs. For
example the national Id should be 16 digits and the email address should contain @ and ends
with Gmail, yahoo.com. The application has been tested in its entirety, and it is in this way
that we noticed that the progress of operations done corresponds to the functional
specifications. (Testing, n.d.)
37
Hardware functionality Testing
Hardware functionality testing is performed on hardware products to verify that your product
functions exactly as designed. The general purpose of hardware functionality testing is to
verify if the product performs as expected and documented, typically in technical or
functional specifications. Developers creating a new product start from a functional
specification, which describes the product’s capabilities and limitations. Test Engineers utilize
this specification, if available, as a guideline for expected product response. Tasks are
exercised to test specific features or functions, and the results of these tasks are verified by
Developers to be in compliance with the expected response. This type of testing is beneficial
to product developers who are creating a new product or an existing product, which has
undergone significant enhancements or changes in capabilities (Testing, n.d.).
38
✔ 1 DHT 11 sensor
CHAPTER 5
Conclusion
Hence, the idea to create a fully working greenhouse system with facility to control and
monitor appliances has been finally realized. The output of this project is an array of
agriculture devices that are controlled over a web application with connection to Wi-Fi
module.
This project is a successful outcome of continuous and tireless effort from all the project
members’ supervisors, college faculty, colleagues and other helping hands. This project has
been a great experience and opportunity to learn and to experiment. Moreover, the author got
the chance to closely experiment and learn about what goes into designing and developing
home automation systems. I am very much delighted that, I explored this topic as my major
project title and in a way created a version of smart home system of my own, and to be
closely related with the technology that is of a great interest of study and research today and is
sure to revolutionize the way of living of people in the days to come.
39
Recommendations
I would like to recommend future homeowners to start using this technology, as it is cheaper
than we always think that it is expensive.
I would like also to recommend the government of Rwanda as well as Adventist University
of Central Africa to start encouraging young technocrats to join this field of IoT by adding
Internet of Things courses in engineering curriculum as it is growing rapidly and providing
enough implementation components because most of the components are expensive. In
closing of this work, I would like to suggest any interested person who can add other
functionalities or who can give me some helpful ideas on what can be added to a system as a
way of improving the capacity of the system to serve whoever is willing to use it.
40
References
alan. (2005). system analysis and design .
ESP8266, L. b. (2018).
L, J. (2007).
www.utmel.com: https://www.utmel.com/productdetail/microchiptechnology-
atmega328ppn
Rivest. (2002).
yuvayana.org. (2016). relay logic circuit relay contactor switch and timer. Retrieved
from http://er.yuvayana.org.
Bibliography
● Cook, S. D. (2017). Wireless Mobile and Sensor Networks.
Interaction.
● Aurum, A., Jeffery, R., Wohlin, C., & Handzic, M. (Eds) (2013). Managing software
● Bennett, S., McRobb, S., & Farmer, R. (2005). Object-oriented systems analysis and
● Dennis, A., Wixom, B. H., & Tegarden, D. (2015). Systems Analysis and Design: An
41
CURRICULUM VITAE
PERSONAL IDENTIFICATION
First name: NZAMWITA VUNINGOMA
Last name: JORDAN
Place of birth: NYARUGENGE
SPOKEN LANGUAGES
Language Understanding Speaking Writing
Listening Reading
English 4 4 4 4
French 4 4 4 4
Swahili 1 1 1 1
5 5 5 5
Justification of 5:mother tongue 4: fluently 3: good 2: sufficient 1: basic
score
Mother tongue: Kinyarwanda
42
ORGANIZATION SKILLS AND COMPETENCES
• Ability to work under pressure through our campus(Auca department of IT),
• Focused,
• Organized and hardworking,
• Team player/lead in the group
• Quick learner
CORE VALUES
• Excellent,
• Ethics,
• Trust,
• Team work,
• Continuous Learning,
• Technology enthusiast,
• Carrier minded
PERSONAL SKILLS
• Ability to effectively work under minimum supervision and the spirit of teamwork;
• Strong interpersonal skills, problem solving and organization skills
• The spirit of punctuality and commitment to achieve better results while respecting
deadlines
• I am able to establish and maintain effective working relations with people in any
environment
Skills of computer software’s :
Network Administration
• Routing and Switching
• Windows Server Administration
• Linux Server Administration
• Computer Maintenance(Hardware and Software)
• Web design and Mobile App Development using JAVA
• Database System Design and Management
• Graphic Design (adobe Illustator , adobe photoshop, adobe animation)
WORKING EXPERIENCE
• IT Teachings Support at CANAL OLYMPIA REBERO (from 21st April to 10th may 2021)
43
CERTIFICATION
• IoT TRAINNING CERTIFICATION
• CISCO NETWORKING ACADEMY CERTIFICATION
Reference
• KABERA KEVIN
+250786027337
• PASCAL CYUZUZO
+250788800886
• NDAGIJIMANA EMMANUEL
+250783245797
I declare that the information given here above is true and sincere.
44