Agriboost


Voted First Place Capstone Project 2019

What?

At the end of undergraduate engineering, a group project is given to all engineers, wherein we must reflect the skills we've learned throughout our undergraduate education experience. Showcasing not only the technical skills that we've picked up in:

    - Software Engineering
    - Mechanical Engineering
    - Electrical Engineering

But also, teamwork, project management, problem-solving and other interpersonal skills that we've cultivated and will need as future engineers.
For this task we were given free rain on project choice, and provided engineering documents along the way, specifically:
    - A Contract of what we will deliver
    - System Requirements
    - System Design
    - Hazard Analysis and Mitigation


So given this, we decided that we would develop a precision agriculture system where we monitor variables in a farmers field and provide them with insights, recommendations and with more data and better models provide an optimal crop rotation to maximize a farmers yield.

Why?

Our team treated this project as realistically as possible establish a company name Eltrotech, and a product Agriboost as our goal was to boost agriculture growth or at least optimize the process.

Acting professionally we began by doing heavy research into the
Precision Agriculture industry and competing monitoring systems. We found that there were two types of sensor systems out there standalone single sensor systems and ones that are more similar to ours with an array of sensors. These all had one thing in common though and that was the high price tag $$$$$ so we set out with a goal of getting this same system ready for a farmer to use at a much lower cost, as a system that costs ~$1000 for a single node doesn't seem expensive until you scale it to the size of a farmers field at which point costs add up.

So with this in mind our team of 7 were determined to provide a good system at a low cost to at least from a proof of concept point of view show that, farmers do not need to pay as much as they are for systems that can optimize crop-yields, because in the end we all need food, and in the near future we will need a lot more of it.

Who Are We?

A Team of 7 Engineering students 4 Mechtronics and 3 Software

Card image cap

Chassis Team Lead

Christie Condron
Card image cap

HUB Team Lead

Gary Barretto
Card image cap

EDC Team Lead

Vishal Bhatia
Card image cap

Server Team Lead

Pavithran Pathmarajah
Card image cap

COM Team Lead

Pareek Ravi
Card image cap

Power Team Lead

Gino Salayo
Card image cap

UI Team Lead

Kunal Shah

McMaster Museum of Art Collaboration

The McMaster Museum of Art was kind enough to allow us to test run our system in their vaults where paintings including some by Van Goh are kept since the gallery constantly cycles what they put on display.

In these vaults they have to track humidity and temperature and make sure they are within a certain range, to make sure that the paintings are not damaged, this is all tracked using analog technology and physical data sheets using a hygrothermograph. Where records must be kept on hand for years at a time and with multiple vaults, and years of data stored on 30-day reals this is a lot of information to keep, and when duplicates need to be made and send off when requesting more art pieces it is overall a major hassle.

So Eltrotech took a subset of Agriboost and implemented it in the museum to keep a digital record of the humidity and temperature online, where data can be easily tabulated and exported. During our term working with the museum before renovations, we collected data and were able to verify, against the tried and tested hygrothermographs in place that our sensors are accurate.


We hope to continue work with the McMaster Museum of art and bring them into the digital era.

Current Technology

The art industry relies on 18th-century technology, namely the Hygrothermograph, which tracks humidity and temperature data on a reel that can track 30 days worth of data.

The system uses human hair attached to a bimetallic strip that is especially sensitive to humidity and temperature variations to track the current conditions.


This system requires curators to physically check the current system status, especially when there is an extreme weather event requiring them to trek to the gallery in potentially dangerous conditions to make sure temperature and humidity are within acceptable tolerances.

Our System

Agriboost is an all in one system designed to survive and sustain itself in a farmers field from last to the first frost while hosting over 15 different sensors. This is a little overkill for an art gallery, as we do not need to worry about the elements or power since there is hardline power.

So we stripped down our system using one combined humiture sensor to collect temperature and humidity data, stripping the chassis, power system and sensors down and implementing in the museum.


What this new system did was allow the curators to stay in during extreme weather conditions since they can remotely monitor the situation, and also eliminates worries about overnight issues as the system can send notifications if any thresholds are breached.

Our System - Agriboost


Overview

In October of 2018 we wrote a contract saying that we would deliver an in and above ground field sensor network that met these four criteria:

     - Collect, validate and tabulate relevant agricultural data for the farmer. Relevant data includes information that is timely, accurate and applicable.
    - Present said data to the farmer, which the farmer will be able to access remotely through web-based application(s).
    - Operate in an agricultural environment; meaning it should be able to withstand the typical horticultural growing season environment of Southern Ontario (last frost until first frost). The system will have preferences for the farmer to update while using it over this time.
    - Keep its data secured between deployed hardware through end to end encryption.


While fulfilling these four criteria and make our product we determined that we will need 7 subsystems (pictured). Each system was given a team-lead that made necessary executive decisions and took on the duty of ensuring that the sub-system was completed according to our SCRUM schedule.

Power System

The Power System is key as it needs to provide the field node with consistent power from the last frost to the first frost of the year, which in agriculture is defined as the growing season.

The power team was constrained to power itself with no connection to landline power, as we do not want the farmer to have to run cables into their field for obvious reasons.

Accounting for on average of 48 hours of cloud cover in a week with outlier situations of 72 hours, the team designed the system to handle a worst case scenario which was 72 hours of continuous cloud cover.

The team chooses their battery size and the size of their solar panel based off of this situation, using the average power draw calculated by the EDC team.
Accounting for extremely rare situations and guarding against weeks with greater than 72 hours of cloud cover the team developed, a safe shutdown and startup process, so the field node turns off when there is not enough power and starts back up when there is enough.


We would like to thank our sponsor Anker for providing solar panels and battery banks to this end

The Power Team


Card image cap

Team Lead

Gino Salayo

Mechatronics Engineering Graduate from McMaster University

Card image cap

Team Member

Vishal Bhatia

Mechatronics Engineering | Student - Athlete | UX Designer

Card image cap

Team Member

Pareek Ravi

4th Year Bachelors of Software Engineering at McMaster University | Backend Developer| Robotics Enthusiast

Chassis System

The Chassis team had to ensure that like the power system, our node would remain operational for the duration of the growing season and be robust enough to handle extreme weather conditions and relocation over the estimated lifetime of the product.

The team had to make sure there was space for all sensors and the batteries while providing sufficient protection for sensitive sensors and for components that are not water resistant.

The chassis also has a circular underground plate, which prevents the node from falling over from wind or a light nudge, by providing opposite forces on each side of the unit depending on the force and direction of the hit.

The Chassis Team


Card image cap

Team Lead

Christie Condron

Mechatronics Engineering & Management Major

Card image cap

Team Member

Gary Barretto

Software Developer

Card image cap

Team Member

Pareek Ravi

4th Year Bachelors of Software Engineering at McMaster University | Backend Developer| Robotics Enthusiast

Card image cap

Team Member

Gino Salayo

Mechatronics Engineering Graduate from McMaster University

EDC System

The Environmental Data Collection (EDC) System:

Agriboost is a system that relies on collecting data from the environment. This is done using a variety of above ground and underground sensors; which is stored locally and witlessly transmitted to the HUB, to ensure that data is collected.

The core of the EDC is a raspberry pi zero, as it allows us to easily implement a local database system and interface with multiple sensors and libraries based on different languages; at a low cost, while saving us precious development time which we would have needed trying to implement a local storage solution to store sensor data if the wireless connection is offline.

The EDC is also able to receive updates and change the ping rate it uses to gather data over longer or shorter time intervals.

The EDC Team


Card image cap

Team Lead

Vishal Bhatia

Mechatronics Engineering | Student - Athlete | UX Designer

Card image cap

Team Member

Christie Condron

Mechatronics Engineering & Management Major

Card image cap

Team Member

Pareek Ravi

4th Year Bachelors of Software Engineering at McMaster University | Backend Developer| Robotics Enthusiast

COM System

The Communication (COM) System:

Agribbost requires collecting data from a network of EDC nodes in the field to get an accurate representation of the current fields state as a whole. This requires a low power method of transmitting data from multiple nodes in the field to a single hub.

Using low cost off the shelf NRF24L01 transceiver and patching existing open source libraries to work with the latest version of Raspbian (Raspberry Pi Linux based operating system), the team designed and implemented an RSA based end to end encryption system to ensure the data being transmitted is not tampered with.


The transceiver team built a library to handle the automatic connection between the field nodes and the hub node, and handles message handling and tracking with simple callbacks for the EDC and HUB to integrate with.

The COM Team


Card image cap

Team Lead

Pareek Ravi

4th Year Bachelors of Software Engineering at McMaster University | Backend Developer| Robotics Enthusiast

Card image cap

Team Member

Pavithran Pathmarajah

Bachelor of Software Engineering Class of 2019 Space Enthusiast | Puzzles with Nephew Solver | RC Car Hobbyist

Card image cap

Team Member

Gino Salayo

Mechatronics Engineering Graduate from McMaster University

HUB System

The HUB System:

Connects and receives data from all of the nodes in the field, storing it locally until an internet connection is found at which point the aggregated field data is sent to the server.

The HUB also acts as the intercommunication link between the server and the field nodes, passing on settings updates on from the server to the field nodes.


The HUB uses a raspberry pi 3b+ as it requires more processing power than the nodes in the field, handling larger data sets and communicating with multiple field nodes; the HUB also does not have the same power restrictions as the EDC as it can be allowed to connect to landline power since it is not located in the field.

The HUB Team


Card image cap

Team Lead

Gary Barretto

Software Developer

Card image cap

Team Member

Vishal Bhatia

Mechatronics Engineering | Student - Athlete | UX Designer

Card image cap

Team Member

Kunal Shah

Software Engineering Student at McMaster University, Formerly Software Developer at IBM

Server System

The Server is the intermediary between the field and the User Interface.
The server is built on the Java Spring framework, with a relational Microsoft SQL database to handle all the data.


The servers database interface was designed to allow classes to represent database tables and actions. This allowed separate team members to work on the database component and REST components with simple integration between the two later on.
The server uses JSON Web Token (JWT), to pass in relevant farm information related to user login, with timeout information to prevent token stealing.
The server uses sockets to transmit insights and recommendations to the User Interface in real time.
The insights are generated using a combination of threshold checks which are performed when new data is received for any one particular farm HUB. As well as this the use of Multi-Linear Regression models we were able to determine upcoming trends and provide future insights (Due to lack of data we believe this is currently prone to overfitting).

The SERVER Team


Card image cap

Team Lead

Pavithran Pathmarajah

Bachelor of Software Engineering Class of 2019 Space Enthusiast | Puzzles with Nephew Solver | RC Car Hobbyist

Card image cap

Team Member

Pareek Ravi

4th Year Bachelors of Software Engineering at McMaster University | Backend Developer| Robotics Enthusiast

Card image cap

Team Member

Kunal Shah

Software Engineering Student at McMaster University, Formerly Software Developer at IBM

User Interface

The User Interface (UI) is designed responsively and mobile first to ensure the farmer can access the app from their mobile phone, tablet or desktop computer and still have access to all the data that they desire.

The User Interface allows login and registration for multiple users to one farm and multiple farms to one user. Once logging there are 5 unique sections:


Dashboard
Small widgets with local data, large widgets that allow a live updating graph of what is available in data center
DataCenter
Allows the user to generate a graph based on data from multiple nodes/hubs(farms)/sensors etc. As well as export the tabulated data in spreadsheet form.
Maps
Allow the user to determine where all their node(s) and hub(s) are in their field(s), and monitor current stats from anyone selected node/hub. With future expansion into heat maps possible.
Insights
This is where insights and recommendations from the server are stored once the pop-up notification fades away.
Settings
This page allows the user to change the threshold settings and ping rates from each individual sensor. As well as rename nodes/hubs to make it easier to understand than using the serial numbers.

The UI Team


Card image cap

Team Lead

Kunal Shah

Software Engineering Student at McMaster University, Formerly Software Developer at IBM

Card image cap

Team Member

Gary Barretto

Software Developer

Card image cap

Team Member

Vishal Bhatia

Mechatronics Engineering | Student - Athlete | UX Designer

Card image cap

Team Member

Pavithran Pathmarajah

Bachelor of Software Engineering Class of 2019 Space Enthusiast | Puzzles with Nephew Solver | RC Car Hobbyist