Rating: 1.33/5 (3 Votes)


Smart Greenhouse by NetLab

An Intelligent environment can be defined as an environment in which intelligent devices are trying to make the life of the inhabitants of the environment more comfortable. In the present case, a device's intelligence means its ability to independently process information obtained from the surrounding environment. According to the intelligent house concept, maximum comfort should be created for the inhabitants of the house while economizing on resources. A similar concept can be applied to growing plants in a greenhouse, where the smart house concept is transformed into the smart greenhouse concept that aims to optimize growth conditions for plants and automate the growing process.


Design Task

There are a lot of work and activities around a greenhouse, but some of these activities are routine and relatively easy to automate. As day and night temperatures vary considerably in our climate, the greenhouse has to close hatches in the evening and reopen them in the morning, so that the plants would not be too cold in the night and not harmed by the sun in daytime. Besides air temperature, air and soil moisture also have to be kept under control in the greenhouse. The following recommended activities can be listed for a greenhouse and need to be solved in a systematic manner:

  • adjusting inner climate parameters on the basis of the readings of outer and

inner climate sensors,

  • moisturizing soil on the basis of the readings of soil moisture sensors,
  • collecting sensor readings and controlling regulators,
  • logging sensor readings into a database and displaying them graphically,
  • wireless interconnection of modules,
  • using alternative energy (solar and wind energy) for heating the irrigation water and recharging the batteries,
  • feeding the plants and adjusting the lighting,
  • auxiliary functions related to power supply, computer communication, security.


Design Process


  1. Find similar solution and study theory or working principles.
  2. Sketch a drawing of the system with all of the input and output devices to get overall picture of what is needed.
  3. Determine the environmental parameters and control conditions required for growing the plant. Then choose the sensors according to the parameters.
  4. Choose the actuator devices required for opening the greenhouse hatches and ventilation.
  5. Choose a pump that will be able to water the plants in the greenhouse with a sufficient amount of water.
  6. Choose microcontroller board for input output control and smart controller board for monitoring.
  7. Determine the data exchange protocol used by sensors that were chosen and find out how to actuate these data exchange protocols on a microcontroller and if/which existing software libraries can be used.
  8. Choose a communication solution between smart greenhouse controller and server. Give the reasons for your choice and draw the corresponding schemes.
  9. Make electrical schematic to connect all sensors and actuators
  10. Make wiring to connect sensors, actuators and controller board according to schematic
  11. Check if all devices are connected right
  12. Connect controller to start programming


  1. Install a programming environment which is suitable for chosen controller
  2. Check if connection is established between PC and microcontroller board
  3. Draw a program algorithm flow chart
  4. Implement a program according to the algorithm
  5. Establish communication between microcontroller board and Smart Controller Board
  6. Write program to collect data and send commands to microcontroller board.
  7. Debug and eliminate programming and logic errors
  8. Check if program and entire solution meets requirements


Make documentations and user manuals



Automatic greenhouse is a complex system which needs a lot of sensors and actuators to maintain near perfect environment for the plants. The most time consuming part is writing a smart algorithm to deal with all kinds of situations that can occur. Failure to do so might end up even worse than regular greenhouse conditions. Given smart greenhouse project is only meant to control small greenhouse, but can be scaled up by adding more microcontroller boards (aka Nodes). The smart controller board does not need to be multiplied cause all of the microcontroller boards can communicate wirelessly to one device. The system can also be made better by monitoring the greenhouse for longer periods from which adjustments can be made to control algorithm.

Expected Learning Outcomes

  • To know various subsystems of a shared system
  • To know the interrelations of the subsystems
  • To know various environment measuring sensors
  • To know various actuators
  • To be able to compile communication software between a controller and a computer
  • To be able to compile a control program for the autonomous work of a smart greenhouse



Warning: file_get_contents(): http:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home3/fidgetg1/roboticsforschools.eu/plugins/system/sourcerer/helper.php(628) : runtime-created function on line 7

Warning: file_get_contents(http://youtube.com/get_video_info?video_id=QB7DEcn1IuI): failed to open stream: no suitable wrapper could be found in /home3/fidgetg1/roboticsforschools.eu/plugins/system/sourcerer/helper.php(628) : runtime-created function on line 7

Warning: file_get_contents(): http:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home3/fidgetg1/roboticsforschools.eu/plugins/system/sourcerer/helper.php(628) : runtime-created function on line 7

Warning: file_get_contents(http://youtube.com/get_video_info?video_id=2JtErnMt368): failed to open stream: no suitable wrapper could be found in /home3/fidgetg1/roboticsforschools.eu/plugins/system/sourcerer/helper.php(628) : runtime-created function on line 7