Smart
PLANT system
CS460 G1T4 Jian Lin, Gadman, Kok Wee, Yi Xin
01
02
04
05
PROBLEM
FUTURE WORKS
LESSONS LEARNT
SOLUTION
TABLE OF CONTENTS
03
PROTOTYPE
Improvements
Live till old,
Learn till old
WHY
HOW
SEE
Problem
PROBLEM
Singaporeans love growing plants but many do not have the time or physical capacity to care for them properly.
SOLUTION
A cyber-physical system that monitors and water/fertilise plants to reduce the effort required to care for plants while increasing care quality.
PrototypE
OUR PROTOTYPE
Smart Plant System
System features
MONITORing
AUTOMATED
The plant environment such as the soil moisture and sunlight level is actively monitored
Pump systems that automatically dispense a set volume of water/fertiliser
System features
INTERFACE
portability
A web application present users with system information and configurations
A reservoir system that stores water and alerts user of water levels
OUR ProtoTYPE as a CPS
Sensing
Computation
Networking
Control
CIRCUIT DIAGRAM
PROTOTYPE COMPONENTS
TYPE | name | details |
Sensor | 1x Soil Moisture Sensor | 3.3-5V, Analog |
Sensor | 1x Light Sensor | 3.3-5V, Analog |
Sensor | 1x Water Level Sensor | 3.3-5V, Analog |
Sensor | 1x Temp & Humidity Sensor | 3.5-5.5V, Digital |
Actuator | 2x Water Pump | 6V, 30ml/s |
Actuator | 1x Relay Module | 3.3-5V, 4-Channel |
Microcontroller | 1x Analog-To-Digital Converter | 3.3-6V, PCF8591T Chip |
Microcontroller | 1x Raspberry PI 4B | - |
Power Source | 1x Battery | 9V |
Storage | 1x Micro SD-Card | 32GB |
Not necessary since I will be covering the components in the demo anyway
FEATURE 1
MONITORING
What?
why?
how?
Soil moisture and sunlight sensors to take measurements of plant environment. Soil moisture measurement is processed by backend system to carry out watering action, based on set moisture threshold.
By taking in soil moisture data and watering the plant based on this measurement, it creates a closed-loop system that ensures automated watering capabilities. Sunlight data is collected for plant owners to understand the amount of sunlight their plants are getting so that they can adjust the plants location to get the best sunlight.
We connected the analog sensors to an ADC which feeds 8-bit data to the microcontroller (Raspberry Pi). This data is processed by a flask-based server that controls the system and which settings are configurable via the web app.
FEATURE 2
automated
What?
why?
how?
While the fertiliser dispense system runs based on a configurable time-interval, the water dispense system is part of an automated closed-loop system together with the soil moisture sensor.
This two dispense systems allow the prototype to automatically care for the plants without the plant owner’s intervention, fulfilling the core functions of our solution.
The water pump runs based on the configured soil moisture threshold data from the backend server. Meanwhile, the fertiliser pump runs based on the time-interval data. The frequency of instructions is in tandem with the logging of the sensor data, which is every 1 minute.
FEATURE 3
interface
What?
why?
how?
A web application is created to allows the presentation of system data in a visualised manner and allows the configuration of system settings.
This makes it easy for the user to understand data collected. At the same time, it is simple to configure the system parameters based on the user’s preferences.
The web application is built with the React framework that utilised API data sent from the Flask backend server. This application contains data calibration and formatting functions, and is integrated with several lightweight libraries such as ChartJS to create a user-friendly interface.
FEATURE 4
PORTABILITY
What?
why?
how?
A reservoir system is integrated into the prototype which allows it to be portable and easy to set-up. This system is also set up with automated notification via SMS to alert plant owner’s that water level is low.
As a prototype, it is important for the hardware to be portable so that testing can be performed efficiently. Additionally, when deployed for application, this portability feature will allow the plant owner’s to adjust the plant location easily and reduce the cost needed to connect a fixed water source.
A water level sensor is used to collect reservoir levels. The data received is sent to the backend server for processing. Twilio API is used to send notifications to the plant owner whenever the reservoir level is below the customised threshold.
Demonstration
Future
Works
FUTURE WORKS
autonomy
MONITORING
scalability
A variety of high-quality sensors can be added to the system to enhance the capabilities of the system, such as nutrients and PH sensor.
Connect the water pump to a water pipe to make the system fully automatic. However, will trade off portability.
Although the circuits are relatively independent, more can be done to improve the software to allow more sensors and actuators to be added onto the system.
Lessons learnt
Learning Phases
Research
Planning
Application
Troubleshooting
Improvement
Learn about the problem
Study potential solutions and approaches
Learn to build
Identify issues and learn from mistakes
Apply knowledge
Lesson 1: RESEARCH
Lesson 2: CALIBRATION
Lesson 3: PROBLEM SOLVING
THANK YOU
Let’s make Singapore technologically GREEN!