Download as pdf or txt
Download as pdf or txt
You are on page 1of 21

GrowPro - Hydroponics

DormGarden - Final Report


Professor Fine, Section D1

Team Black
Aditya Jain, Will Willigrod, Juan Gallegos, Akram Semakula, Radhey Patel
GrowPro - Hydroponics Dorm Garden - Team Black
1

Table of Contents

Executive Summary - 2

Introduction - 2

Problem Statement - 3
Objectives, Metrics, Constraints

Design Alternatives - 4

Basis for Design Selection - 6

Evaluation of Results - 8

Appendix - 9
Bill of Materials - 9
Physical Design Diagrams - 10
CAD Model - 12
Mathematical Models - 12
Code - 14
Supporting Images - 18
GrowPro - Hydroponics Dorm Garden - Team Black
2
Executive Summary

Our group was responsible for the construction of an automated hydroponics dorm
garden that would provide a sustainable environment for plant growth. Our approach in doing so
consisted of controlling light and monitoring both the temperature of the system, as well as the
pH. The final hydroponics design utilized was an ebb and flow model. Among its primary
characteristics and key features were blue and red LEDs, an archimedes screw, a water tank, an
acrylic container, and sensors for the monitoring of pH, water level, light, temperature, and
humidity. We utilized red and blue LEDs in order to take advantage of the specific spectrum of
light that chlorophyll can absorb for the purpose of maximizing energy efficiency. The water
flow was controlled through an automated archimedes screw, powered by a DC motor. We
believe our “GrowPro” design has been highly optimized for the dorm garden task and
meets+exceeds the client’s objectives in cost (only $281), automation (automates more than one
environmental variable and monitors all other ones), maintenance (user control and
recommendations from the push of a button on their smartphone) and other design aspects.
On the specifics; considering that the quantity of water delivered to the plants is relative
to the respective growth stage of the plant, we took it upon ourselves to regulate this one through
a mobile application. We also made the decision of utilizing an archimedes screw rather than a
traditional water pump, in light of the possibility that a screw would have a lower likelihood of
becoming clogged as a result of its interaction with the growth medium and visual attractiveness.
Finally, in order to ensure that the system would ensure an optimal environment for the plants at
all stages of growth, five sensors were integrated in such manner that it would continuously
monitor the sensor data and present issues over time. The user would simply set a PlantProfile
and just respond to push notifications for maintenance issues. Seeing as different plants require
different growth parameters, the system variables would be modified relatively to the plant that
was selected; this is a future goal for our mobile application. All in all, the user’s sole
responsibility would be the addition of appropriate nutrients using a general hydroponics nutrient
package, refreshing the water, and dealing with maintenance issues out of the scope for our
design (temperature, etc).

Introduction

In the interest of our client, Team Black was tasked with the planning, developing and
constructing of a hydroponic garden system. Hydroponics is a method of growing plants that
does not require soil and instead relies on the blending of mineral nutrient solutions in a water
solvent. There are a few key advantages that hydroponic garden systems typically have over
traditional soil-based gardens. For one, they tend to require minimal space when compared to
their traditional counterpart and as a result, allow for the maximization of space within one’s
home. They also allow for the reprocessing of water and nutrients, which not only saves the user
GrowPro - Hydroponics Dorm Garden - Team Black
3
time, but also money. Finally, hydroponic systems are known for producing better results, such
as higher yields and an increased nutritional value. However, hydroponic systems can require
precise maintenance to optimize plant growth in the face of environmental variables such as
light, humidity, temperature, water levels, and nutrient levels.

Problem Statement

As was previously stated, the project presented to the team involved the construction of a
hydroponics system capable of growing a minimum of one plant in a confined space. The ideal
target being the volume above and below a college dorm room table. This system could have
been composed in a variety of different ways ranging from ebb and flow and wick, to drip and
static (deep water culture). In order to enable the successful growth of plants in such an
environment, the establishment of controls over a variety of different environmental factors was
necessary. According to the information and data we obtained within the first week of working
on this project, we discovered that the major environmental variables which affect plant growth
are light intensity, temperature, humidity, pH level of the blend, and a suitable nutrient to water
concentration/level. The system in question here was intended to be operated by college students,
who are characterized for their busy and irregular schedules.
This required our hydroponic garden system to be low maintenance. As was defined by
our client, low maintenance suggested that the plant(s) involved would be capable of thriving on
their own without the need for any human intervention within the span of a week. Our client also
desired that the device require no longer than 15 minutes per day of maintenance in order for the
plant to grow at expected, published rates. This maintenance time included the time needed for
the user to modify the environment variables as directed by the system. To reduce maintenance
time, the customer required that automation be utilized for at least one of the environmental
variables listed above. This meant that the system would automatically adjust said variable, and
set it to a level or range in which plant growth would be optimal. As for the remaining variables,
the client required that they be manually maintained by digitally keeping the end user aware of
any changes necessary, and their respective timings. Ideally, such a system would also be able to
be implemented in homes and offices worldwide, in which environmental conditions would
differ greatly.
Objectives & Metrics
● Objective: Should be low maintenance.
Metric: it should require 15 min or less of maintenance per day and should be able to spur
plant growth without maintenance for at least a week.
● Objective: Should inform customer of maintenance in user-friendly manner.
Metric: When errors occur, the user should be aware of the error and know what to do
● Objective: Should grow a substantial amount of produce.
Metric: it should grow the equivalent of 56 g of radishes.
GrowPro - Hydroponics Dorm Garden - Team Black
4
● Objective: Should be able to grow a healthy plant.
Metric: it should match or exceed previously published growth rates.
● Objective: Should automate control of at least one environmental variable.
Metric: % of time where that variable remains in optimal zone without user intervention.
Ideally 100%.
Constraints
1. Should fit in a small table space for a dorm room; should not exceed 60 cm length wise,
50 cm width wise, and 60 cm height wise.
2. Should be the smallest size possible to reach produce goal.
3. Can not exceed the budget of $400 (the more inexpensive the better)
4. Time constraint - 7 weeks to have a prototype ready. Should finish prototype in 5 weeks
to prove it can grow a plant.
5. Can not exceed 120 V input energy (US standard power outlet).
6. Must meet all FDA and OSHA safety regulations.

Design Alternatives
Given the problem of designing a compact hydroponic garden, there are numerous ways
to approach the various challenges that came along with it. For each function that the design had
to perform, there are multiple viable solutions. In order to make the decisions about which of
those solutions would be implemented in the prototype, a chart listing each function and the
ways of achieving it was used. On it, all ideas were listed and discussed before a final contender
was chosen.
Notable examples of functions with disputed means include the hydroponic philosophy,
and giving feedback to the user. The first of these functions was the underlying design ideology
that would be used for the garden. Hydroponic systems come in an array of varieties, each of
them with their own advantages as well as disadvantages. A deep water culture (DWC) system
was first considered because of its relative simplicity. It is just a pool of water with nutrients and
oxygen that the plants sit in. It would be simple to build as well as control. However, DWC
systems are also more vulnerable to rot and disease if they are not monitored and cleaned
properly. Given the intended market of this product, busy college students, it seemed likely that a
student would at times not have the sufficient time to properly maintain the garden. The next
consideration was for an ebb and flow system. In an ebb and flow, there are two tanks, one for
holding nutrient-rich water and one for the plants. Water is periodically pumped from the water
tank into the plant bed. It is then allowed to drain back into the water tank. This method keeps
the roots of the plants wet without leaving them immersed. Because there is no long-term contact
with the roots and moisture, they are less vulnerable to root rot and therefore need less
preventative maintenance of the system.
Next, a method of giving the user feedback had to be decided upon as well. Since the
goal was to build a garden that is not only low maintenance but also user-friendly, it had to give
GrowPro - Hydroponics Dorm Garden - Team Black
5
is owner real-time, actionable feedback. The first idea suggested was a series of led lights, each
with a meaning assigned to it. However, it was too simplistic. There would be no warning before
a problem was shown. If the user was not attentive to the plants and an led went on, there was a
serious risk of the user not seeing it and putting the plants in jeopardy. Next, an LCD screen was
proposed. It was a good contender with no immediately identifiable shortcomings. However, in
the interest of keeping options open, more ideas were discussed. A suggestion about having an
app that connected directly with the garden came up. It was very promising. A user would almost
always have their phone with them, so there is little risk of them not seeing the status of the
garden. In addition, much more data about the plant and its condition could be shared in a small
package.
Table 1: Functions and Means - Design Space Analysis
Functions Means
Grow Plant (hydroponic Nutrient Film
system) Technique Wick System Ebb and Flow Aeroponics
Bath/no automation
Control water levels Gravity Archimedes' Screw Wicks required
pre mix (user
responsible for Add specific mL of Nutrients mix together
regulation, not each nutrient with a first, then mixed into Directly add nutrients to
Control nutrients and minerals automated) water level sensor water each plant
LED strips with
LED grow light w/ LED grow light, user photosensor for ambient
Control light sensor controls just sunlight. light
Measure temperature
thermometer w/ ac insulation to prevent with sensor and notify
Control temperature and heat source (Al) temperature changes user
Send data to cloud for
Measure Maintenance Data Arduino control Rasberry Pi with Use computer on student analysis and process
(temperature, etc) with sensors sensors desk from cloud
LCD screen on the WiFi server with
Transmit Maintenance system which notifications to user
Data/Give feedback displays all the data Lights as a code system Sound buzzer system phone
rechargable battery
Power w/ powercord Batteries Powercords
User access to the plants Front door Roof hatch Slider No Top Panel
Make it a closed
system (put the Reduce the temperature Pump more water to
Prevent water loss plant in a box) at night counteract evaporation
Prevent bug Package in a Use a smell deterrent
infestations/external damages container (closed for bugs Bug repellent
GrowPro - Hydroponics Dorm Garden - Team Black
6
system)
Pipe the water from Pour water into Store water as ice and
Store water Internal water tank some water source watertank directly melt
Reed switch and
Use a light sensor to magnet to detect water Water level sensor to
Measure Water Level detect water binarily binary measure rate of flow

Basis for Final Design Selection


Significant design choices were made throughout the planning and construction of the
GrowPro hydroponics system through the use of Design Space analysis as well as the use of
modeling for design evaluation. First, in deciding the design of the chassis to hold the
hydroponics garden and electronics components, we primarily considered an 80/20 metal based
design, a glass tank design, and an acrylic design based on the available materials and constraints
placed on our design. Our hydroponics system had very precise dimensions which were based
upon the number of radish plants that we wanted to grow. The system also took into account both
the light modeling and placement used, as well as the implementation of plastic tubs (with set
dimensions matching our final design) as the water tank and plant bed.
We chose to opt out from purchasing a pre built tank and decided to custom-build a
carrying system, to ensure that our costs would be minimal. Our primary concerns were the
stability of the design and its ability to hold a substantial amount of weight as the water screw
would need to be mounted directly to the chassis (meaning the chassis would need to be easily
modified), and the chassis would need to hold approximately 30 lbs of water and plants. Due to
these constraints, we cut and designed an acrylic chassis and held it together using acrylic glue
which acted to melt the acrylic together. Despite theoretical worries with this design, we found
the design to be extremely stable experimentally and it allowed us to easily add horizontal
mounts to hold up the plastic tub plant-bed as well as mount the motor. We experienced no issues
in lifting the final product with the 30 lbs of weight from one room to the next and placing it in a
desk sized space. Thus, we did not add additional 80/20 supports. We did, however, implement a
lifting lid design utilizing 80/20 making it easy for the user to plant/harvest plants.
A major decision was selecting the hydroponics system that we would use. As described
in the Design Alternatives section, we did extensive research on the nutrient film system, wick
system, and ebb and flow systems. Research suggests that nutrient film systems, while efficient
in water usage, have been shown to reduce yield in terms of root growth due to the lack of a
medium through which the plants can be supported and the limitations in pot size. As the system
needed to grow radishes, a root-based plant, systems which allowed for best growth of root
plants were prioritized. On the other hand, wick systems show significant efficiency and can
support root growth due to plants uptaking needed nutrients, however, wick systems are
essentially independent, with little potential for control of water flow or analysis. As automation
and user control were key outcomes for the client and thus part of the metrics upon which the
GrowPro - Hydroponics Dorm Garden - Team Black
7
project would be evaluated, the ebb and flow model was thus selected over the other designs. It
should be noted that the ebb and flow system has the added benefit of using coco coir as an inert
medium capable of anchoring the roots of plants thus allowing for high yield of root-based
plants, an even distribution of nutrients, and the opportunity for increased automated control of
water flow and nutrient levels.
Once the ebb and flow system had been decided on, a system was needed to deliver water
to the plants in cycles. In deciding the method for water delivery, the team considered a water
pump based system, a gravity drip system, and the archimedes screw. The archimedes screw was
selected on the basis of its low noise level and energy consumption, fine control of water levels
relative to a calculated flow rate, a reduced likelihood of being clogged, and its visual
attractiveness. In order to ensure that the archimedes screw design would be able to lift the
required amount of water (in order to deliver 1 inch of water in depth * the square area of the
floorbed), a detailed mathematical analysis of the required water screw RPM was utilized, as
described in the Appendix. The model showed how the water screw at the desired 45 degree
angle could deliver the needed amount of water in 6 minutes at 30 RPM as long as a motor with
enough torque to lift the water screw weight was in place. This meant the water screw only
needed to be one for a few six minute duty cycles a weak, making it very efficient. We thus
chose a geared 12V DC motor to handle the required amount of torque and because the RPM
could be adjusted as needed. The math model approach was very useful in making design
decisions, so we replicated this process in developing a light irradiance math model to ensure an
appropriate amount of light would be delivered to the plants taking into account light overlap
from multiple light sources and our specific plant bed.
Finally, in regards to the control system, we considered a sound based system, LCD
panel, lighting system, and finally a WiFi+smartphone IoT solution. We quickly discarded the
sound system and lighting system as delivering the amount of information that we needed would
be clunky and make for a complicated experience for the end user. Although the
WiFi+smartphone system required additional coding complexity, we selected this solution due to
our prioritization of the end user’s ease-of-use, its ability to store long term data (giving the
project long-term growth potential with future data analysis applications, the creation of a
website where the user could access plant data), and its capacity to give detailed
recommendations & provide live sensor data. As a result, our final design allowed the user to
perform basic maintenance from far away using their smartphone. In tests, the data suggested
that the WiFi shield solution was able to maintain a connection to the WiFi network indefinitely
(Figure 8, Appendix), resolving the main potential worry of WiFi instability.

Evaluation of Results
The goal was to design and build a functional automated hydroponic dorm garden that
required minimal maintenance and was capable of growing a substantial amount of produce. To
be successful, the garden should require less than 15 minutes of maintenance daily, inform the
GrowPro - Hydroponics Dorm Garden - Team Black
8
user of problems 24 hours in advance, grow 12 healthy radish plants, and control at least one
environmental variable. Additionally, the design should cost less than $400 with emphasis
towards making it inexpensive and to automate control of as many environmental variables as
possible. Our proposed design succeeds on all of these fronts as described below.
The GrowPro was designed to require as little maintenance as possible. The water tank
can hold two gallons of water, which can last two weeks. The nutrients can be added easily
directly into the water tank and the user does not need to manually test the pH since there is
already a pH sensor that frequently records the pH of the solution. The nutrients would only need
to be added every two weeks with the water replacement, and this takes five minutes. The growth
medium also does not need to be replaced for approximately two years so the only actions the
user needs to consistently do is fill up the water tank and add the appropriate nutrient solution.
This should take less than 15 minutes a day so the low maintenance metric was met.
To inform the user, an app was designed with the garden that would notify the user from
their phone of issues and provide them with sensor data to guide them on how to fix issues using
a web server. The user just needs to set a cycle by selecting what stage of growth the plant is at.
This prototype functionality was developed using the Sparkfun ESP8266 WiFi Shield and
Android AppInventor. The water level sensor detects the rate of water loss and the water level so
it can give accurate estimates of when the water tank will be empty and how many cycles it has
been since the water was refilled. The app will also send out a notification alert when the water
tank is 24 hours way from being empty. The pH sensor, temperature+humidity sensor, measures
the environmental variables whenever the Android app sends a request for them (every 10
minutes) and will also notify the user if manual changes need to be made). Since this informs the
user in a relatively quick manner as soon as a generic problem occurred and provided them with
easy to follow recommendations for maintenance, this metric was also met.
To ensure that the garden could house 12 radishes, which is approximately 56 g of
produce, the dimensions of the garden how to be considered in detail. It was assumed that the
radishes would be planted approximately two inches apart, meaning each radish had a
comfortable 16 in2 of room. To house 12 plants, the area had to be at least 192 in2. Considering
this, the dimensions of the box, without considering height, was 12 in by 18 in with an area of
216 in2. The area was chosen to be slightly larger than necessary to allow for space taken up by
the archimedes screw. In order for the radishes to be healthy, the radishes need the correct
amount of light, water, and nutrients. To ensure appropriate lighting, the candelence of the LEDs
was used to calculate the number of LEDs needed to supply the correct intensity of light over the
entire area (Appendix, Math Models). The archimedes screw is capable of delivering ample
amount of water to the plants at a moderate speed and the nutrients can easily be adjusted
directly from the user adding nutrient solution. Since the GrowPro can house 12 radishes
comfortably and create the right environment for healthy growth, this metric was met.
The water supply and light source were the automated environmental variables. The
archimedes screw was designed to supply sufficient water for the plants in under ten minutes.
GrowPro - Hydroponics Dorm Garden - Team Black
9
Thus, using duty cycles throughout the day, water would be delivered with little noise and high
efficiency. The amount of water being delivered would be controlled through the app depending
on the stage of the plant’s life (PlantProfile code). As previously stated, the candelence of the
LED strips were used to supply the appropriate amount of lighting and the amount of time the
lights would be on was controlled by the light cycle+ambient light data from the photocell
sensor. Since two environmental variables were automated, this metric was also achieved.
Finally, as shown in the Bill of Materials in the Appendix, the final cost of the design
came in significantly less than $400, with a cost of $281.41 even when including 3D printing and
other workshop costs. It can also fit on a standard dorm desk as described in the Problem
Statement and operates on 12V. This means that all of the objectives were achieved while
circumventing the constraints.

Appendix

Bill of Materials Summary


Part Description Price ($) Quantity Total Price ($)
Arduino Mega 45.95 1 45.95

Temperature/humidity sensor 9.95 1 9.95


Coco Coir medium 9.99 3 29.97
River Rocks 11.99 1 11.99
Cherry radish seeds 2.23 1 2.23

General Hydroponics Nutrient Pack 23.99 1 23.99


Light sensor 0.95 1 0.95

Arduino-compatible DC motors 20 1 20
Water Depth Sensor 4.99 1 4.99
M/M Jumper Wires (20) 1.95 1 1.95

USB B to Wall Charger (5v) 7 1 7

12V wall charger + adapter 7 2 14


F/F Jumper Wires (20) 1.95 1 1.95
Esp 8266 Wifi Shield 17 1 17
pH Sensor/EC Sensor 34.49 1 34.49
suguru 20 1 20
GrowPro - Hydroponics Dorm Garden - Team Black
10
3D Printed Archimedes Screw 0
DC Motor for Screw 20 1 20
PVC Pipe 15 1 15
281.41

Physical Design Diagrams

Figure 1 - Sketch of GrowPro with the plant container removed for clarity. The water tank, in
blue, can hold two gallons of water and is 15 in in length to allow for 3 in of room for the circuits
and arduino. The height of the lights can be adjusted by loosening a hex nut on each 80/20 bar.
There are 3 appendages attached to the walls that will support the plant container.
GrowPro - Hydroponics Dorm Garden - Team Black
11

Figure 2 - Two-dimensional sketch of plant container and water tank. The height of the water
tank and plant container is 14 in, 1 in shorter than the height of the entire apparatus. The
archimedes screw, in green, is 13 in long, or 9.2 in tall, and transports the water from the water
tank to the coco coir. The DC motor that spins the archimedes screw is mounted to the wall of
the plant container. The plant container is at a slight angle (2 degrees) so that the water naturally
flows to the left where drainage holes would allow for the water to drip back into the water tank.
GrowPro - Hydroponics Dorm Garden - Team Black
12
CAD Model

Figure 3 - Archimedes Screw CAD model which was utilized for 3D printing of the Archimedes
Screw and for selection of the PVC pipe which surrounded the screw. This was important as the
screw to surrounding cover must be tight otherwise water will not travel up the screw. The screw
was later sealed with epoxy as the 3D printed material was not porous and needed to be
waterproof to prevent swelling and damage of the material. Due to the size of the screw, the print
completed in two separate parts which were joined together through the use of suguru and a
screw.
Mathematical Models
GrowPro - Hydroponics Dorm Garden - Team Black
13

Figure 4 - Light Irradiance model demonstrating that light level in the planted areas would be
above 5000 lumens and below 7000 lumens of sunlight which is in the ideal range for radishes.
This had significant impact on our LED growstrip light placement. There is a bounding box of
about 4*4 inches around each light where plants can grow with enough light (assuming ambient
light is zero). This would suggest 8 plants-16 plants could grow safely. However, ambient light
will shift the graph vertically as y = x + ambient lux. This would allow for a greater area where
plants can grow. This would be monitored using the light sensor and the parsed data would
be sent to the reader and control would be automated by adjusting the light duty cycle.
GrowPro - Hydroponics Dorm Garden - Team Black
14
Figure 5 - Water screw mathematical model customized for our archimedes screw design. The
model showed that the design was capable of delivering the required amount of water in a short
duty cycle at the angle at which we had planned to mount the water screw in our physical design.

Code
Inclusion of the important code snippets with commentary, this code functioned as part of the
main loop and covers function of cycle selection, wifi server connection, and demo controls:

ESP8266Client client = server.available(500);


int whatdo = 0;
if (client){
Serial.println("Client connected!");
boolean currentLineIsBlank = true;
String totalMess = "";
while (client.connected())
{
if (client.available())
{
char c = client.read();
totalMess.concat(c);
// if you've gotten to the end of the line (received a newline
// character) and the line is blank, the http request has ended,
// so you can send a reply
if (c == '\n' && currentLineIsBlank)
{
Serial.println(totalMess);

// send back the sensor data on all client requests (future, optimize this)
Serial.println(F("Sending HTML page"));
// send a standard http response header:
}
if (c == '\n')
{
// you're starting a new line
currentLineIsBlank = true;
}
else if (c != '\r')
{
// you've gotten a character on the current line
GrowPro - Hydroponics Dorm Garden - Team Black
15
currentLineIsBlank = false;
}
}
}

//parse the read client request into action


if (totalMess.indexOf("/lights/0") != -1){
whatdo = 1;
} else if (totalMess.indexOf("/lights/1") != -1){
whatdo = 2;
}else if (totalMess.indexOf("/screw/0") != -1){
whatdo = 3;
}else if (totalMess.indexOf("/screw/1") != -1){
whatdo = 4;
}else if (totalMess.indexOf("/profile/1") != -1){
whatdo = 5;
}else if (totalMess.indexOf("/profile/2") != -1){
whatdo = 6;
}
else if (totalMess.indexOf("/profile/3") != -1){
whatdo = 7;
}
else if (totalMess.indexOf("/profile/4") != -1){
whatdo = 8;
}

//delay to give browser time to get the data


delay(2);
client.stop();
Serial.println(F("Client disconnected"));

}
Serial.println(String(whatdo));
switch (whatdo){
case 1:
digitalWrite(LIGHTS_PIN, HIGH);
Serial.println("Lights Low");
break;
case 2:
GrowPro - Hydroponics Dorm Garden - Team Black
16
digitalWrite(LIGHTS_PIN, LOW);
Serial.println("Lights High");
break;
case 3:
digitalWrite(MOTOR_PIN, HIGH);
Serial.println("Motor Low");
break;
case 4:
digitalWrite(MOTOR_PIN, LOW);
Serial.println("Motor High");
break;
case 5:
profile = 1;
//blink
esp8266.digitalWrite(5, 0);
delay(500);
esp8266.digitalWrite(5, 1);
delay(500);
break;
….
//Creates plant profile class which will house structured data on current cycles completed and
what the system ought to be doing with its Update function
class PlantProfile
{
// Class Member Variables
// These are initialized at startup
int lightperiod;
int waterperiod;

int tLight;
int tWater;

// Constructor - creates a Flasher


// and initializes the member variables and state
public:
PlantProfile(int light, int water)
{
lightperiod = light;
waterperiod = water;
GrowPro - Hydroponics Dorm Garden - Team Black
17

tLight = 0;
tWater = 0;
}

void Update(int delta)


{
//Update arduino's info about whether it is following the profile using timer and current sensor
data + log on time active
//delta is how long since last check

//read current sensor information


int lightsOn;
int motorOn;
//if on, uptick by delta, unless uptick would cause it to have been >= 24 hour hours in which
case reset everything to start over the cycle, or if uptick would cause disobeying the profile in
which case switch things off but don't reset
if (lightsOn){
if (tLight+delta >= lightperiod){
//turn off lights
tLight += delta;
} else if(tLight+delta >= 24){
tLight = 0;
//turn off lights
} else{
tLight += delta;
}

} else {
tLight+= delta;
if (tLight >= 24){
tLight = 0;
//turn lights on
}
}
if (motorOn){
if (tWater+delta >= waterperiod){
//turn off water
} else if(tWater+delta >= 24){
GrowPro - Hydroponics Dorm Garden - Team Black
18
tWater = 0;
//turn off water
} else{
tWater += delta;
}

} else {
tWater += delta;
if(tWater >= 24){
tWater = 0;
//turn motor on
}
}
}
};

PlantProfile seed(18, 3);


….
Supporting Images

Figure 6 - Design of the prototype Android App. Allows for user selection of the Hydroponics
garden cycle based on the stage of plant growth as well as demo control of the water screw and
lighting functions. It also displays live sensor reading with an easy to understand image on the
side of the sensor to tell whether it is in range/requires maintenance based on the current growth
cycle. The app also is able to send a notification to the user’s phone to alert them of important
maintenance issues. Clicking on the Current Plant State button takes the user to a
recommendations page providing detailed maintenance information. Together, these
functionalities make for a fully functional DormGarden system, although the interface would
need to be beautified for commercial use.
GrowPro - Hydroponics Dorm Garden - Team Black
19

Figure 7 - Android App code snippets showing how the App communicates with the web server
through committing API-like requests through modified URLs which the WiFi shield parses) as
well as requests regular updates on sensor data to trigger a notification service
GrowPro - Hydroponics Dorm Garden - Team Black
20
Figure 8 - (Left) Web Server stock page displaying the encoded values of the sensor readings. It
is labeled A0, A1, etc to make it efficient to loop through the sensor postings in the code instead
of parsing each one individually. The information represents voltage levels for Temperature,
Humidity, Water Level, Light, Water Screw on/off, and pH. (Right) shows demonstration of the
WiFi shield being able to connect to the WiFi network and stay stable and active for 44 minutes.

You might also like