Using machine learning control methods in hydroponics


Properly controlling the hydroponic environment is perhaps one of the most challenging tasks the modern grower must face. Either with a small grow room or a big green house, it is difficult to properly control variables such as temperature, humidity, pH and nutrient concentration, ensuring they are all kept in tight ranges with the proper controlling actions always being applied. Today we’re going to talk about some of the research done into advanced control systems and how using these could help you boost your crop yields.

Control flow algorithm taken from this paper
Crop result comparison taken from this paper

Hydroponic crops are dynamic systems, with plants continuously affecting their environment and demanding control actions in order to keep conditions constant. For example plants will tend to transpire water and absorb carbon dioxide during their light cycle, so in order to keep humidity and carbon dioxide concentrations constant you might need to turn on humidifiers, dehumidifiers, carbon dioxide generators, etc. Knowing what action needs to be taken is not trivial and naive control implementations – like turning on humidifiers, AC systems, etc when some thresholds are reached – can cause problems where sensors fight each other (for example a sensor trying to increase ambient humidity and another trying to raise temperature) or even fail to trigger.

In order to provide better control, researchers have created systems that rely on machine learning – systems that can learn from examples – in order to learn what control actions are needed and execute them in order to provide ideal control to a hydroponic setup. A machine learning system will be able to anticipate things like the lag between turning an AC unit on and the temperature decreasing, so it will be able to be both more efficient and more accurate in the way it controls your environment. This use of automated control guided by machine learning is also known as “smart hydroponics”.

Control flow diagram from this article

For example you can read this paper where growers were able to increase the yield of a crop by 66% just by ensuring they could maintain proper environmental conditions the entire time using machine learning. In this case the researchers use a probabilistic method where the system determines the probability of an action – like triggering a sensor – will cause a desired effect. As data is accumulated the system basically executes whichever action has the highest probability to lead to the desired outcome.

There are other papers on the subject. In this one a deep learning neural network is used to perform a similar control role, although the quantification of improvements in this paper is not sufficient to claim that the control method would have been an improvement over a traditionally managed hydroponic setup, as the comparison is made between a soil control, not a hydroponic control with no automated environmental management.

This paper uses a simple IoT sensor control system and a multivariate regression approach in order to control the environment in a hydroponic greenhouse, this system was created with the aim to be cheap and usable in developing countries.

Although there are now several different demonstrations of this being done in the literature there still does not seem to be a commercially mature technology to carry out this task and the implementations seem to still be tailor made to each particular situation. However the modeling techniques used are not exceedingly complex and even modest commercial growers could – nowadays – afford to setup something of this nature.

With a computer, some arduinos, raspberry pi computers, sensors and time and effort a grower could definitely setup a very nice, machine learning based control system to benefit from the above described technologies.



  • Skybound
    September 2, 2019 @ 8:25 am

    I spent a few years learning to code and developing an all inclusive hydro controller. It works great for maintaining scheduled events like lighting and feed times. I also coded in for 8 peristaltic pumps, 3 temp/humidity sensors and 8 AC outlets. I wasn’t aware of VPD at the time, but I presume a dedicated AC unit could be controlled from the Arduino boards I was using. I reached an impassable crux in that for my hydro controller to become all it was intended to be, I NEEDED plastic 2 way valves to efficiently use reservoir water pumps to move nutrients through a probing rail or a dosing rail, or into the waste line. Sadly, there is no product on the market to fit this bill. I then bought a 3D printer and designed my own. Sadly the 3D printer doesn’t produce prints with fine resolution and the printed valves just leaked and were unreliable.

    The future is still bright and soon hydroponics will be autonomous.

    • April 1, 2020 @ 1:52 am

      Hi Skybound,
      It sounds as if a 24 volt actuator might be what you’re after. Belimo make a number of different models. You could have it driven from a relay. I’m not sure what the outputs of the arduino deliver -5 volts maybe?

Leave a Reply to Robert Lindsay Cancel reply

Your email address will not be published.

Subscribe Today!
Receive our FREE blog post updates and monthly newsletter
Thanks for signing up. You must confirm your email address before we can send you. Please check your email and follow the instructions.
We respect your privacy. Your information is safe and will never be shared.
Don't miss out. Subscribe today.
WordPress Popup Plugin