Applied Design
Overview2. Developed a functional prototype filter for the EDCs degradation. 3. Proposed the mechanical design of the fluorescence-based detector that shall tell the concentration of EDCs. 4. Designed the testing app and database that are capable of telling the condition of farmland and forming a safe web that knows when and where the pollution happens. |
The Smart EDC Farmland Protection System
In order to solve some real environmental challenges, our team has proposed an integrated system that can both detect and degrade endocrine disrupting chemicals (EDCs) suitable for farmland water protection.
When we started building this system, we aimed not only to solve a few farmers’ problems but on a bigger scale, agricultural and industrial, since in most of the developing countries, factories could be easily found in between farmland. On the left-hand side of the flowchart, we developed the system that could sense the concentration of the EDC in the water and control the valve to protect the farmland from polluted water. And on the right-hand side of the flowchart, we could collect such data, such as the concentration, time, and place. If the number of devices could grow to dozens or say hundreds, we would be able to tell where and when did the pollution came from.
In general, the gate will remain half-open and let the water comes into the channel. When the water passes through the gate, it will then passes through the filter. Enzyme mixed with activated carbon is filled in the filter, which can help filter out most of our target endocrine disrupting chemicals. We have proved the capability of the enzyme and filter through the modeling and experiment test. Then the water will encounter our fluorescent detection device. We pump some water into the detector and mix them with the indicator paper which is coated with modified E. coli, and the EDCs in the water can be captured by our modified E. coli. The E. coli is later excited with laser light to produce fluorescent, the fluorescent (whose) signal will be collected and calculated into relative EDCs concentration.
If the detected EDCs concentration is safe for the farmland to use, the microcontroller which is embedded in the detector will send a signal to the gate to tell it to remain open to let the water in. However, if the detected EDCs concentration is above the safety limit, a feedback signal will be sent to the gate and lower it to protect the farmland from further damage. The reading of the EDCs concentration will also be sent to our database and the App, which can allow the farmer or the farmland manager to remotely monitor the condition of the farmland.
Filter Design: Functional Prototype
Our target is to make the filter have the best efficient and longest lifetime. In the design, we use different pore size material to protect our core enzyme, so that it will not be damaged by other particles, and extending the filter lifetime. The front part of the filter is composed of polypropylene fiber, the back end of the filter is filled with activated carbon, which is mixed with the enzyme that can degrade our target endocrine disrupting chemicals. As for the outer shell, it is made of a layer of steel net and galvanized iron. A Solidworks filter sketch is provided underneath.
Before making the functional prototype, our wet and dry lab members conducted enzyme kinetics modeling to know the degradation speed and time, also a concentration test is performed to know the activated carbon’s EDC absorbing ability. Both modeling and test sure positive result, for further details, please check out the Model page under the Project category. Some prototype photos are provided underneath, too.
Fluorescence Detector: Design Concept and Current Lab Result
Our design filer has proven to be capable of degrading the endocrine disrupting chemicals (EDCs) in the water. However, there are more situations needed to be considered. For example, when factories illegally emit wastewater that contains a high concentration of EDCs, it may exceed the degradation capability of our filter, and the farmland could then suffer serious damage. Also when typhoon approaches, the heavy muddy water can severely contaminate the growing environment of the crops. Thus, it is important to isolate such water flowing into the farmland. Hence we proposed a design of the fluorescence-based EDCs detector, that can detect the concentration of EDCs, and automatically controls the gate depending on the feedback signals sent by the detector.
The core of the fluorescence-based EDCs detector lies on the chip which we designed to capture EDCs for the water sample. The mechanism behind it is to modify the E. colis expression of GFP and ER-alpha. EDCs will combine with ER-alpha, causing the structure of ER-alpha to change. And then monobody will capture the bounded ER-alpha together with E. coli, leading to the change of fluorescence or surface plasmon resonance signal on the gold chip and we can thus estimate the concentration of EDCs. Despite there are still some technical challenges for us to tackle, for instance, the transforming of GFP into E. coli. We have been able to detect BPA and NP concentration as low as 5µM (about 1 ppm) in the water.
Here we introduce the mechanical design proposal of our fluorescence-based EDCs detector. The mechanism of the fluorescence-based EDCs detector works as follow: First installed the biochip into the detector. Turn on the detector’s microcontroller (MCU) and mini water pump. The pump will periodically suck water and flow through the biochip A laser light will excite the E. coli ’s GFP gene on the biochip and send out fluorescence. The fluorescence will pass through an optical filter then be received by our light detector. The program in the MCU will calculate the fluorescence light into relative EDCs concentration If the concentration is lower than the safety standard, the MCU will not send a signal to the gate; if the concentration is higher than the safety standard, a feedback signal will be sent to the gate to close it in order to protect the farmland.
Water Gate
The water gate in our model is controlled by a step motor, and the screw bar in the middle of the gate enable the step motor to control the rising and lowering of the gate. The mechanism of the rising and lowering depends on the EDCs concentration sensed by our fluorescence-based EDCs detector. When the EDCs concentration exceeds the safety value or the flow rate is too fast, the microcontroller in the detector will automatically send out a control signal to lower the gate to protect the farmland.
IoT System and App
With the implementation of our device, we now can provide farmers a water protection system. Furthermore, we have developed an app and IoT system. The app will allow the user to know the condition of the farmland water, and the IoT system is set to save all the data and collaborate with other nearby protection systems to build up a “safe web.” When our devices are widely spread around a region, we would not only be able to help the farmers keep their farmland’ water source safe, but even identify when and where the pollution came from.
The IoT System
Why IoT?
In order to fulfill the purpose of data monitoring in periodically, we have to implement IoT system to our device. The implementation can be simply classified in the following steps:
1. Sensors (temperature, PH detector) collect data to our controller.
2. Controller upload data to cloud through wifi.
What has been used?
Cloud Platform: MediaTek Cloud Sandbox
We created an account on MediaTek Cloud Sandbox, therefore, our data will be going there.
After establishing an MCS account, we start to create our virtual device and data channel. When data channel is being created, they will have their own Device ID and Device Key. So, when writing our Arduino code and assign them with specific Device ID and Device Key, our data will be able to send to that data channel.
Controller and Sensors
The controller is the heart of our device, where it is responsible for receiving, processing, uploading data to the cloud, and also control our motor.
The reason why we choose MediaTek LinkIt™ ONE as our controller mainly because it has its own cloud platform MediaTek Cloud Sandbox, which enable us to implement IoT system to our device much easier. As for the sensors, right now we have used a thermometer and pH meter. Fluorescence detector will be added to the system once biochip has been successfully manufactured.
How we do this?
Step 1: Sensors collect data to our controller
This part is relatively simple, based on the sensors we use, we search for the corresponding code on the Internet, and copy them into our Arduino code (Figure 1). Once we have the code and correct PIN connected to our sensors, then we are good to go.
Step 2: Controller upload data to cloud through wifi
Remember the Device ID and Device Key that we mentioned before? In this part, we are going to use it. The function of them works like the address, when we assign specific Device ID and Device Key inside our code (Figure 2), our data can be correctly sent to the corresponding data channel.
The App Design
Why we built this APP?
The purpose of building this APP is that we hope to monitor values from our detection point in periodically.Furthermore, if we have multiple detection points in the future, we can label all data with different colors of markers according to their concentrations, and show them on the google map. Therefore, we can get regional concentrations at once, which enable us to identify sources of pollution with ease.
How do we build our APP?
The software we use is Android Studio. And we manage to represent our detection data in the following ways:
Tab1: Periodically detection value from a single detection point.
Tab2: Historical monitoring data from a single detection point.
Tab3: The distribution of all detection points and their visualized EDC concentrations.
Since our detection system has implemented Internet of Things (IoT), therefore, all data being detected will be stored in our cloud in JSON format (For details, please refer to DEVICE / Software – IoT page). So if we want to retrieve those data from our cloud, what we have to do can be simplified as followings:
1. Get JSON file from the server.
2. Parse JSON to retrieve specific data.
3. Display.
Now we will go through those steps one by one :
1. Get JSON file from server
Data is uploaded to our cloud were stored in JSON format (Figure 1), and data being uploaded by different sensors have their own unique URL. So, in our code, by searching the specific URL (Figure 2), we can get the information we need.
(Notice: Since our EDC sensor has not been made yet, so here we use the value detected by ultrasound for replacement. However, our detector’s mechanical design proposal and the software parts are ready.)
2. Parse JSON to retrieve specific data
The JSON file we get from the server contains lots of information, such as API Version、Message、Device ID、Recorded time and Value, etc, therefore, in order to get a specific data in JSON file, we have to use a technique called parsing, to parse JSON Objects and JSON Arrays.(Figure 3)
(Notice: Since our EDC sensor has not been made yet, so here we use the value detected by ultrasound for replacement. However, our detector’s mechanical design proposal and the software parts are ready.)
3. Display
And finally, here is how we represent our data.
For Tab1 (Periodically detection value from a single detection point), we simply layout some TextView boxes, and let the text be changed to the value we got from JSON file.
For Tab2 (Historical monitoring data from a single detection point), we use GRAPH VIEW (http://www.android-graphview.org/showcase/ ) to display two of our data, which are temperature and concentration of EDC, with y-axis their values and x-axis the recorded time.
(Notice: Since our EDC sensor has not been made yet, so here we use the value detected by ultrasound for replacement. However, our detector’s mechanical design proposal and the software parts are ready.)
As for Tab3 (The distribution of all detection points and their visualized EDC concentrations), in order to use google map in our application, we need to register to Google Developer Console for permission.