To define the parameters for an experiment the data has to be defined in a spreadsheet with a CSV formatting. The spreadsheet consists of two main areas a header and an irrigation program. The header area defined general configurations for the experiment whereas the irrigation program defines the behaviour of each plant in the experiment. The two regions are divided by using a Tag similar to an HTML tag. The header region is surrounded by <header> and </header> while the irrigation program is surrounded by <irrigation_program> and </irrigation_program>

To follow all details of this tutorial please download the program_Demo_multiple-modes.csv and open it in excel or some other spreadsheet tool. Please make sure to use semicolon as a delimiter.

The Header

The header section contains as mentioned multiple parameters that define the general behaviour in the experiment. Please note that some of the parameters are only used in certain irrigation modes. Read the Irrigation Modes Overview to find out more details on the 5 different irrigation modes. The parameter names are listed in the first column of the spreadsheet whereas the corresponding values are in the second column. Some parameters can have multiple values. For parameters with multiple values write the first value in column 2, the second value in column 3 and so on. The following parameters can be set:

  • Experiment_name Defines the name of the experiment which is used throughout the interface of the DroughtSpotter system. Each experiment name must be unique
  • Irrigation_times_hold Defines the times at which an irrigation should be started for hold mode. The time format is HH:MM (H = hour and M = minute) using the 24-hour clock. Multiple values are allows (one per hold mode in the program is needed)
  • Irrigation_times_fixed Defines the times at which an irrigation should be started for fixed mode. The time format is HH:MM (H = hour and M = minute) using the 24-hour clock. Multiple values are allows (one per fix mode in the program is needed)
  • Irrigation_interval_hold (days) defines the number of days between hold irrigation events. In hold irrigation mode, you can decide to not apply the water dosage every day. For instance you want to apply 200ml every third day you can set this value to 3. If you want to water every day set the value to 1. Multiple values are needed for each irrigation_times_hold you have defined. If you have an irrigation at 12:00 and 18:00 as shown in the example file you have to define the interval for both time points.
  • Irrigation_times_copy Defines the times at which an irrigation should be started for copy mode. The time format is HH:MM (H = hour and M = minute) using the 24-hour clock. Multiple values are allows (one per column)
  • Irrigation_interval_fixed (days) defines the number of days between fixed irrigation events. In fixed irrigation mode, you can decide to not apply the water dosage every day. For instance you want to apply 200ml every third day you can set this value to 3. If you want to water every day set the value to 1. Multiple values are needed for each irrigation_times_fixed you have defined. If you have an irrigation at 12:00 and 18:00 as shown in the example file you have to define the interval for both time points.
  • Irrigation_at_deviation_from_target (%) defines the percentage deviation from the target weight at which plants will be re-watered up to target weight in deviation mode. i.e. when you define a target weight of 1000g and a deviation of 5% the deviation mode will rewater as soon as the weight value is below 950g (independent of time)
  • Error_tolerance_for_irrigation (g) defines the error tolerance for an irrigation. The web interface will show the status of the last irrigation. It will show OK if the difference between actual weight and target weight is less than the error tolerance. i.e. when the plant weight was 900g and a fixed irrigation with 100ml was applied the web interface will show the last irrigation as OK as long as the weight after irrigation is between 1002g and 998g (with error tolerance set to 2g). This setting is for all irrigation modes.
  • Max_weight_fixed_or_copy (g) defines the maximum weight for fixed and copy irrigation mode. It is used in fixed and copy irrigation to prevent that water accumulates over time and floods the pot. i.e. a 1L pot is placed on the system for 10 days and receives a fixed dosage of 200ml water per day. If there is no transpiration it will be full after 5 days. if the max weight is set to 1000g the irrigation will be skipped after the pot is filled to avoid over flooding
  • Max_water_per_irrigation_step (g) provides control over how much water is refilled as a maximum per irrigation step. An irrigation even can be split into several irrigation steps of the amount specified here. 
  • Max_irrigation_steps Specifies the maximum number of steps that can be performed in one irrigation event
  • Interval_irrigation_steps (minutes) defines the time in minutes the system should wait before starting the next irrigation step. The time format is MM (M= minute). Please note that the number of steps and the interval between steps define together with the amount of water the total length of one irrigation event. 

The irrigation program

The irrigation program itself consists of the starting time of the program in the first row and then the definition of the behaviour for each cell in a table format. In this table each row represents a cell of the system and the columns represent different irrigation modes and how long they will be applied. The value in a row cell combination then gives the value for this specific irrigation mode. Before going into the table let's define the starting time for the program with:

Starting_time_program This setting defines the date and the time at which the experiment program should start to be executed. The format is YYYY.MM.DD HH:MM. For instance 2014.05.20 08:20.

After the starting time comes the table to define the irrigation program itself. It consists of three main parts. To illustrate further we have coloured them in the image blow.

The cells in the experiment (green) are specified by their ROW and COLUMN as labelled in the system. You can have any combination of cells in the experiment. Each cell can only occur once per experiment.

The irrigation modes (orange) or program sections are specified in the column headers. You can have as many different irrigation modes after another as you want. Each irrigation mode is specified with a duration for that section in hours and the abbreviation of the irrigation mode itself (f FIX; h HOLD; c COPY; d DEVIATION; n NO IRRIGATION). The program will do all section after another. In the example below it will start with 48 hours of FIX mode, followed by 24 hours of HOLD mode, 1 hour of COPY mode, 1 hour of FIX mode and then 4800 hours of NO IRRIGATION mode. The total length of the program is therefore 4874 hours.

The irrigation modes have to be closed with the Duration_program_section and irrigation_mode flags as shown in the image below. Please just cut and paste those flags after your last program section.



Last there is the values for each cell and section (blue) that define the irrigation behaviour for this specific combination. Each different irrigation mode has it's own values to define.
  • In FIX mode the value given represents the fixed amount of water in ml the plant will receive. 
  • in HOLD mode the value represents the target weight for each plant in grams that will be used as a watering target.
  • in COPY mode there are two options. Either the values are 0 which means that the plant will not receive water and is a 'template' plant. If the value is the abbreviation of another cell in the experiment (e.g. A1) this plant will use the weight of A1 as target weight in copy mode
  • in DEVIATION mode the value represents the target weight for each plant in grams that will be used as a watering target. Other than in HOLD mode the plant will get rewatered as soon as the threshold is reached
  • in NO irrigation mode the value has to be set to 0 (same as FIX with 0 irrigation)