Close
0%
0%

Hacking the way to growing food

Using Technology And A Hackers Mindset To Grow Food.
Last Updated [16/01/2021]

Similar projects worth following
Sensing and automation in food production can be extremely expensive, This blog covers some more budget friendly alternatives for automation and sensing.

Licencing and IP

All codes/scripts are hosted at: www.MichaelRatcliffe.com/projects

[Will be updated before the 22/9/2015]

Everything is released as Copy Left, For more info:

>Licences

Project Preface

about me: Graduated with a Degree in Mechanical Engineering and a Masters in Electrical Engineering currently finishing my gap year and taking some time to design an automated greenhouse and small allotment type garden to provide a yearlong hassle free supply of food and a test bed for novel nutrient sourcing Aquaponics grow system.

>More Background

Want to see the test bed setup that is used to test most of these techniques:

>The Test Greenhouse

The HAD Competition

Build Something that matters

This project addresses how technology and creative thinking can be used to create better Food Security, Reduce Water Pollution and optimise Energy usage.

In this Project there is a lot of complimentary information to support the projects, to make seeing the Electronic portions of the projects, the link are followed by:

Completed Electronics Projects are Marked [C]

Projects with Expected Update are Marked [P]

Complimentary Information is Marked [I]

Just Want to see the cool Projects: Skip to Making Better Use or Plugging Leaks

Problem: World hunger

Learning how to farm from your father as he did with your grandfather is no longer going to cut it, the world is changing, the demand is increasing and the methods are staying firmly the same, the number of people on the verge of starvation and suffering malnutrition is climbing and climbing fast.

So who will solve the problem, the government, me, you? We need modern solutions to modern problems, step in a hacker. A hacker see’s a problem differently than the average person,where many see waste they will see opportunity. The Hacker Way is an approach to building that involves continuous improvement and iteration. Hackers believe that something can always be better, and that nothing is ever complete.

So what is a hacker’s solution to world hunger, take something that is free and use it to solve a problem. See it as a computer code/ flow chart, what are the inputs, outputs and leakages in the food supply? Plug the leaks, find alternative inputs and find a use for the waste.

I have seen world hunger first hand in Africa and China, The poor people in these countries are seeing a problem that we in the west have not seen yet [But it is coming and approaching fast] starvation. So I took a little time to see what the problem was, surprisingly they had access to large volumes of water, they had sunlight the limiting factor was poor nutrient sources and soil. Hmm I have been growing with Aquaponics for years now, problem solved?

Maybe not, in Aquaponics the food to feed the fish is relatively expensive for a person surviving on two dollars a day. We need to be a bit more creative to solve this solution.

Making Better Use

The First thing we can look at is how technology, particularity automation and control can improve the productivity of farms [Fish farm for this project] using traditional food sources.

Fish Feeders of the Future

This was the Product submitted to the Best Product Challenge, it is a set of controllers providing modern solutions to modern problems. All aimed at taking the next great step towards automation of food delivery for maximum food efficiency and fish growth to feed the next billion.

The daddy of the controllers is the vision based feedback system aimed at fisheries using floating food [mainly the up and coming aquaponics industry]. However many fisheries don't use floating food, the product for this implements a well defined open-loop solution fine tuned for your environment.

Some Basic Information:

>156 Billion KG of fish reared annual [that is more than beef!] [1]

>Optimum feeding regimes can increase productivity by 40%, food efficiency by 20% compared to conventional once per day feeding [2]

>There are many variables to consider when feeding fish [3]

Here is a quick video of the systems in action:


>Project...

Read more »

  • 1 × Raspberry Pi Open source, Easy to use and widely available.
  • 1 × arduino uno
  • 1 × USB Camera
  • 1 × Relay Power Supplies / Uninterruptible Power Supplies (UPS)
  • 1 × 919D Motor [50:1}

  • Home Page Has Moved

    Michael Ratcliffe10/19/2015 at 17:51 0 comments
  • The Test Greenhouse

    Michael Ratcliffe09/21/2015 at 07:31 0 comments

    Here is a Quick Youtube Walkaround the Greenhouse used for proof's of concepts:

  • More Background

    Michael Ratcliffe09/21/2015 at 07:28 0 comments

    about me: Graduated with a Degree in Mechanical Engineering and a Masters in Electrical Engineering currently finishing my gap year and taking some time to design an automated greenhouse and small allotment type garden to provide a yearlong hassle free supply of food and a test bed for novel nutrient sourcing Aquaponics grow system.

    Until the age of 21 I would consider myself a computer-phoebe, using my laptop mainly as a coffee matt, Then I saw a tutor flying a Quadcopter and got hooked! with a lot of help from the tutor [Bob Mackin of Lancaster university] I overcame the phobia and five years later I have automated and optimized many of the time consuming jobs on the farm and house, moving my area of expertise from mechanical engineering to control system engineering [Its much more Fun].

    Shameless Plug

    I am looking for a PhD/Job in automation and control systems, preferably in regard to farming but open to offers. Willing to commute/relocate worldwide for the right position.

    Take a look at the website below for CV, Reference and examples of work:

    www.MichaelRatcliffe.com

    Want to Fund me ? I am in need of the many electronics components [drop me an message].

    Take a look at some of my other projects:

    >Automated Green House Blog's Home Page [Updated: 21/9/2015 < British Format]

  • Licences

    Michael Ratcliffe09/21/2015 at 07:25 0 comments

    All Codes/Scrips are hosted at: www.MichaelRatcliffe.com/projects

    [Will be updated before the 22/9/2015]

    All of the content of this blog is writen by myself including the scrips/codes and design tutorials unless specificaly stated otherwise.

    Everything is released as Copy Left:

    Use it as you wish, please reference me if you use any large parts of my work [Michael Ratcliffe] Modify it, make it better etc. but as always you do so at your own risk.


    Scripts/codes under GNU:

    This program is free software: you can redistribute it and/or modify

    it under the terms of the GNU General Public License as published by

    the Free Software Foundation, either version 3 of the License, or

    (at your option) any later version.

    This program is distributed in the hope that it will be useful,

    but WITHOUT ANY WARRANTY; without even the implied warranty of

    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the

    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License

    along with this program. If not, see .

  • Familiarising yourself with the Feeders

    Michael Ratcliffe09/21/2015 at 07:09 0 comments

    Here is a How To use the Products:

  • Fish Feeding Basics

    Michael Ratcliffe09/21/2015 at 07:00 0 comments

    Feeding Fish Is a very time consuming task, taking skilled operators to visit sites multiple times a day and is prone to human error or implementation of inefficient feeding routines to save time. A computer could perform this task day in day out repeatable, efficiently and without human interaction, saving time, food and increasing yields from a system drastically.

    If the potential benefits are so good, then why has no one already done this? I can only give you my opinion on this. The task of feeding fish is a complicated one, many variables and environmental factors effect the feeding of fish [see below] and fish farming is a pretty boring subject.

    As you can see from the chart above the variables are numerous and sometimes hard to measure. Luckily a lot of these can be defined/measured and represented mathematical.

    Feed Spacing/Timings: The optimum time between feeding of fish depends on the size of the stomach of the fish, when they are young they require feeding regularly, decreasing as they grow larger.

    Feed Amount: The amount in percent body weight to feed the fish daily is largley influenced by the water temperature and the age of the fish. These are the inputs needed for the open loop controller. The vision based feedback does not need to know this, it will use the rate of food consumption to mimic a skilled human feeder.

    Feed Chemistry: the percent of protein you fed fish is related to the age of the fish and the water temperatures.

    A Note On DO: Dissolved Oxygen measurements are expensive, measuring probes need constant calibration and as such we will be assuming the pond has adequate oxygenation for growing fish. Spreading the feed serving over the day will spread the demand for DO over the day also. So in short, feeding multiple times a day decrease the peak demands for dissolved oxygen of the system. [this is a good thing]

    Useful Links for the Automated Feeders:

    >DIY Feeder Mechanical Proportion

    >Control Box How-to

    Open-Loop

    Work Done:

    >Code for Feed Amount vs Temperature

    >Wiring Diagram

    >How-to measure the feed-rate of your feeder

    >Sourced housing for final product prototype

    Work To Do:

    >Implement gps to allow feed timings implementation

    >Build into the housing

    >Increase type of fish from just Tilapia

    Camera Feed-Back

    Work Done:

    >Proved that food can be identified by the camera and OpenCv on Raspberry Pi

    >Proved that Feed Delivery Rate can be changed by PWM

    Work to Do:

    >Control loop to keep constant amount of food in pond, making note of duty cycle

    >Test at what time during decrease in PWM the fish are full for optimum growth

    >Implement a simpler arduino version for the IBC Aquaponic growers out there

  • Human Urine and Hydroponics [Working Proof]

    Michael Ratcliffe09/21/2015 at 06:22 0 comments

    There is a lot of people hungry in the world today this could be reduced by the application of technology. Lots of the main areas of food shortages have lots of sunlight and a surprising abundance of well water [even the sahara desert] the limiting factor is poor nutrient sources and soil. Hmm I have been growing with Aquaponics for years now, problem solved?

    Maybe not, in Aquaponics the food to feed the fish is relatively expensive for a person surviving on two dollars a day. What else can we use as a nutrient source instead of fish food, human pee will be a good source [its free, easily available]. It is possible, maybe considered disgusting in the west, but if you are hungry your definition of disgusting changes pretty quickly.

    The problem with using urine is that a person will never output more nutrients than he eats, so we are really only reducing the nutrient cycle waste and not having a real input to it. It’s a great start but we need to add to this solution. What is a plentiful and free nutrient source? [Later blogs will cover this]

    Here is a quick video showing a variate of plants growing from a fish less aquaponics unit instead dosed with pasteurised human urine, it was made as a basic proof of concept, no real scientific data here yet. The good data will be coming from the growing competition.

    I was unable to have a full spectrum carried out on the proof of concept human urine test and lacked a decent standard I could compare too, but here are some basic measurements compared to a natural healthy pond:

    Readout

    There is little concrete data I can pull from these readings apart from:

    >I really need to keep a closer eye on the PH of my system [looks like yet another broken probe, these things are making me poor]

    >The carbon water Filter is working well and stopping chlorine from entering the system

    For the competition grow [starting in two weeks] there will be two identical systems for comparison and access to a full spectrum analysis of the water samples. One pure human urine and the other a commercial nutrient, from this comparison we should be able to make more confident proof's.

    There will be a few blogs to carry on this topic, mainly:

    >What is in Human urine and why it is a good idea to use it

    >How and Why to pasteurise/sterilise the urine before use

    >Automated self learning Doser [also suited to general hydroponics]

    >The layout for the final grow test, what we will be measuring and why

  • Self Optimising Automated Arduino Nutrient Doser

    Michael Ratcliffe09/21/2015 at 06:08 14 comments

    This Blog is about making a nutrient dosing system for hydroponics that is plug and play, I didnt quite get it to the full stage of plug and play with this version. But it is almost there. Because the change of nutrient strength of our systems can be modelled as a linear system with respect to nutrient delivery it should be possible to implement a very simple self tuning control system based on the system model. Why a Self Learning system:

    >System only needs to be roughly defined

    >Adapt for pump wear

    >Adapt for a change in nutrient source strength

    >Plug and Play for a wide variate of Systems

    >No problem dealing with the Lag between delivery and stable reading

    I made this control system with Urine as a nutrient source and because the concentration of urine can vary we need a system that can take this into account. A traditional PID controller will struggle here [Or at least I would struggle to implement a good one] because of the large lag between input and output measurement due to the mixing of nutrients in the system [Tank mixing+Grow beds fill+drain time]. It will also work for traditional liquid fertalizer.

    Main Variables in the script

    >Tank size in L

    >Nutient Strength [Stick with 100 or follow hints in the code]

    >Pump Size [L.Second-1]

    Variables input by LCD Screen:

    >EC Set point

    >Probe Calibration

    The only real choices hardware wise:

    Pump sizing

    Although this is a self learning system we still need to choose a nutrient pump of a suitable size so the pumping interval is quite large to reduce the effect of pump priming and post pumping discharge [Fancy words for the pump acts weirdly when we first turn it on and just after we turn it off].

    I have not included the maths here to fine tune your pump size because it doesnt matter that much, just pick a pump with a flow rate of less than 10% of your main tank volume per minute.

    EC Probe

    Using the Cheap DIY Probe: Pick a plug as a probe that isnt used in your country [currently supports EU and USA two prong]

    [This will also work with a comercial ec probe, just change the getec() to your Ec meter]

    Pinout:


    Code:

    /*
       ElCheapo Arduino EC-PPM measurments and Nutrient Doser Script
       
       This scrip uses a common USA two prong plug and a 1Kohm Resistor to measure the EC/PPM of a Aquaponics/Hydroponics Sytem.
       Then It Increases the Nutrient content until the set point is reached 
       It Also Estimates the EC of the nutrient Source [For when you are using Urine/ unknown Nutrient EC]
      
       
       28/8/2015  Michael Ratcliffe  Mike@MichaelRatcliffe.com
         
         
              This program is free software: you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
        the Free Software Foundation, either version 3 of the License, or
        (at your option) any later version.
    
    
        This program is distributed in the hope that it will be useful,
        but WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        GNU General Public License for more details.
    
    
        You should have received a copy of the GNU General Public License
        along with this program.  If not, see .
        
        Parts:
        -Arduino - Uno/Mega
        -Standard American two prong plug 
        -1 kohm resistor
        -DS18B20 Waterproof Temperature Sensor
        -FluidPump [Smaller is better];
        
        Limitations: 
        -Cell Constant [K] and ECSetpoint must be less than 5.0 or it will Mess with the way we save values in EEPROM
        -A reset will change your set point and kell constant slightly, but not to a great extent
        -EEPROM seems to survive a reflash, so changing values in the code will not change them in the flashed software. you will need to do it via the LCD
        
        See www.MichaelRatcliffe.com/Projects for a Pinout and user guide or consult the Zip you got this code from
     
     */
    
    
    //************************** Libraries Needed To Compile The Script [See Read me In Download] ***************//
    // Both below Library are custom ones [ SEE READ ME In Downloaded Zip If You Dont Know how To install] Use them or add a pull up resistor to the temp...
    Read more »

  • When Things Go Wrong: NFT vs Media Bed Hydroponics

    Michael Ratcliffe09/20/2015 at 18:08 0 comments

    The last test comparison has come to an end and it gave a chance to simulate a water system failure. The video below shows the effects of water loss for 24 hours both immediately and after a 48 hour period for NFT and media beds. You may be surprised at how fast the plants recover from the drought.

    The humidity misters were still operational keeping the relative humidity at 60-70%, so results may vary depending on air humidity, temperature and sun intensity. If it is in a well stocked aquaponics system you will need to act fast to oxygenate the water tank the fish are in, and reduce feeding to stop ammonia spikes until you have fixed the water flow problem.

  • Update Code For Three Dollar EC PPM Meter for MCU [Arduino]

    Michael Ratcliffe09/19/2015 at 19:29 3 comments

    This code is a slight update of the last one, updated:

    >Better Uptime Counter

    >LCD Shield

    >New Pin out Diagram

    >Restart Protected Calibration Details

    >EU and US Plug Calibrated Probe

    Also a quick update to the code so the calibration value will survive a power cut, we are storing the cell constant K [a float] in EEPROM as a scaled int, so there may be a slight change in the value following a reboot [but that small it wont make much difference].

    Cell Constants

    I Recommend Calibrating your probe but if that is not an option at this time the following cell constants [K] will give a good estimated readout:

    EU plug: K= 1.76

    US Plug K= 2.88

    Calibration

    If it needs instructions to be operated someone engineered it wrong, the lcd should explain itself to you at start up. If you are still stuck watch the youtube video to see how I calibrate it.

    Calibrate with an EC of about 50% your maximum expected reading for best results.

    The NEW Pinout:


    /*
       ElCheapo Arduino EC-PPM measurments
      
       This scrip uses a common USA two prong plug and a 47Kohm Resistor to measure the EC/PPM of a Aquaponics/Hydroponics Sytem.
       You could modift this code to Measure other liquids if you change the resitor and values at the top of the code.
      
       This Program will give you a temperature based feed controller. See Read me in download file for more info.
      
       28/8/2015  Michael Ratcliffe  Mike@MichaelRatcliffe.com
        
        
              This program is free software: you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
        the Free Software Foundation, either version 3 of the License, or
        (at your option) any later version.
     
     
        This program is distributed in the hope that it will be useful,
        but WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        GNU General Public License for more details.
     
     
        You should have received a copy of the GNU General Public License
        along with this program.  If not, see .
       
        Parts:
        -Arduino - Uno/Mega
        -Standard American two prong plug
        -1 kohm resistor
        -DS18B20 Waterproof Temperature Sensor
       
        Limitations:
        -Cell Constant [K]  must be less than 5.0 or it will Mess with the way we save values in EEPROM
        -A reset will change your kell constant slightly, but not to a great extent
        -EEPROM seems to survive a reflash, so changing values in the code will not change them in the flashed software. you will need to do it via the LCD
       
        See www.MichaelRatcliffe.com/Projects for a Pinout and user guide or consult the Zip you got this code from
     
    */
     
     
    //************************** Libraries Needed To Compile The Script [See Read me In Download] ***************//
    // Both below Library are custom ones [ SEE READ ME In Downloaded Zip If You Dont Know how To install] Use them or add a pull up resistor to the temp probe
     
     
    #include <OneWire.h>
    #include <DallasTemperature.h>
    #include <LiquidCrystal.h> //Standard LCD Lbrary
    #include <EEPROM.h> //Standard EEPROM Library
     
     
     
     
    //************************* User Defined Variables ********************************************************//
     
     
    //##################################################################################
    //-----------  Do not Replace R1 with a resistor lower than 300 ohms    ------------
    //##################################################################################
     
     
    int R1= 1000;
    int Ra=25; //Resitance of Digital Pin, 25 ohms for mega/uno
    int ECPin= A15;
    int ECGround=A14;
    int ECPower =A11;
     
     
    //************************* User Defined Variables ********************************************************//
     
     
    float CalibrationEC=1.38; //EC value of Calibration solution is s/cm
     
     
    //*********** Converting to ppm [Learn to use EC it is much better**************//
    // Hana      [USA]         PPMconverion:   0.5
    // Eutech    [EU]          PPMconversion:  0.64
    //Tranchen   [Australia]   PPMconversion:  0.7
    // Why didnt anyone standardise this?
     
     
    float PPMconversion=0.5;
     
     
    //*************Compensating for temperature ************************************//...
    Read more »

View all 28 project logs

  • 1
    Step 1

    Choose the Type of feeder to build [Or buy a Feeder if you have a massive lake]

  • 2
    Step 2

    Chose the type of Control System to build:

    -Vision is suited to well defined ponds less than 20mx20m using floating Food

    -Temperature is suited to any size Pond with any type of food

  • 3
    Step 3

    Calculate the Feed-Rate of your Feeder

View all 7 instructions

Enjoy this project?

Share

Discussions

Trevor wrote 04/26/2018 at 10:46 point

Hey man, nothing since 2015?

How is the project going? I'm beginning something that ties in with what you are doing. My focus right now is remote monitoring the AP system, and advising on how to operate the system.

Problem, aquaponics is a lot of time, education and effort, owners are tied to their systems and are unable to care for it on holiday or when working long hours. Some people need information spoon fed at the correct time.

Something like this: people enter the parameters of their system, climate, GB and fish tank volumes. The app will advise fish type, stock density, optimal temperature and PH. Then monitor and notify owner with a suggested course of action if something is amiss.

I am currently getting familiar with RasPi and learning about the probes and my options.

I've got 2 years teaching myself programming and web dev.

Let me know if you're interested in chatting.

Trev

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates