Aquaponics Sensor Array
Crop yield optimization with portable aquaponics sensor array
Scott McGimpsey Designs
Project Details
The Aquaponics Sensor Array (A.S.A.) is a combination of a portable sensor unit containing five lab-grade aqua/hydroponics-sensors, and a database/visualization server which shares the collected time series data with the user. The device was designed and built with a focus on data integrity, ease of use, and operational flexibility.Aquaponics Sensor Array
A portable scientific grade sensor array with five measurements, local storage, and wifi communication.
The A.S.A. was built at the request of Neil Moloney. Neil is a specialist in system optimization, and wanted to apply that specialty to his sister's aquaponic-based farm. To accomplish this, he would need time series measurements of the metrics which most influence aquaponic crop yields; pH, Water Temperature, Dissolved Oxygen, Oxygen Reduction Potential, and Electrical Conductivity. However, a couple of factors limited his ability to get this data; Scale and Data Handling.
Regarding scale, the approximate cost for a single set of sensor probes hit roughly around $600-800. At this price point, setting up a system which would collect data from each of the dozens of growing pools would be cost prohibitive for the start-up farm. Neil reasoned that with some portability of the system and a little manual effort for taking readings, the price/scale issue could be addressed. The second issue was data presentation. It is less than trivial to take in large sets of data and present it in a coherent manner, and yet without being able to visualize the data regularly with the flexibility to filter the scope and time of the data being reviewed, analysis becomes far more cumbersome. With these limitations, Neil sought someone who could help him realize a solution which would address these issues and more.
Neil and I met through Freelancer, a consultant and freelance job connection service. He explained his requirements, and we began working out some of the core details. Through a few iterative sessions, we identified a need for flexible data sampling, live reporting, mild water-proofing, thorough error handling and resilience, and ease of use. Using these requirements and some pre-selected components per Neil, I prototyped, coded, and built the Aquaponics Sensor Array (A.S.A.). The A.S.A.'s five lab-grade sensors are connected to electrically isolated control chips. These control chips transmit their data to the primary microcontroller via an I2C bus, where they are tagged with the source aquaponics pool ID, and the current time via a precision RTC (real time clock) IC. If the A.S.A. is within range of its home WiFi network, it will upload this data package to a server hosting a simple SQL database using an SPI connected ESP8266 WiFi module. If the server or the network are unavailable, the A.S.A. instead stores the readings to an onboard memory chip (capable of storing nearly 3000 data samples) for later upload. The memory chip is a non-volatile 32 kilobyte FRAM (ferroelectric RAM) IC, which excels at fast read/write rates, long storage periods, and being highly wear resistant. For the user interface, the A.S.A. sports a clean and minimalist 16x2 character LCD display, a rotary input knob, and a single push-button for navigating the intuitive scroll-menu User Interface (UI). The UI features live reading data, network status indicator, and a full configuration menu for everything from which sensors are enabled and which aquaponics pond is being sampled from to WiFi, time, and memory management settings. The firmware is also programmed with a wide variety of error handling, including for data integrity through sudden power loss. Using a memory flag system, the device detects corrupted data packages and erases them, retaining any non-corrupted readings for upload.
To enclose the electronics, Neil selected a Pelican Case known for its quality and waterproof rating. To ensure that the device remained resistant to splashing and limited submersion, I designed a custom acrylic window and gasket to view the LCD through. Additionally, the power cord was passed through a waterproof cable gland, and each of the BNC connectors were hand-sealed using a silicone sealant. To mount the electronics inside the case, I designed and routed a case divider which made use of the existing pelican perimeter stands. I also 3d printed and mounted two bracing standoffs which contact the inside of the lid when the case is closed. This keeps the mounting plate immobilized within the case. The database server hosts the received data from the A.S.A. and reports it via an open source time series web-enabled tool called 'Grafana'. Grafana enables the user to gain flexibility in their reporting from easy to create and customize dashboards. The user can configure each graph to filter data by pond, greenhouse, reading type, and timespan. Additionally, aggregate readings, averages, and more can be displayed through the use of specialized queries.
- Date : 09.05.2018
- Client : Neil Moloney
- Skills :C++, SQL, Linux,
CNC Fabrication,
I2C, ESP8266, Soldering - Location : Canada/Belize
Client Review.
NEIL REVIEW GOES HERE