Announcement

Collapse
No announcement yet.

Confusion with Measurement based watering strategy

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Confusion with Measurement based watering strategy

    Michael,

    I've recently changed one Area over to Measure operation using Ecowitt soil moisture sensors, 1 in each of the 2 Zones in the Area. I have time of day inhibit configured from sunset to 1 hour after sunrise. One of the 2 zones, R10, ran last night for about 90 minutes unexpectedly. I have maximum days between watering set for 3 days and thought that might have been the issue, but 1) it ran during an inhibited time, 2) why didn't the other zone run, and 3) per the log it had actually been 5 days since that zone had run [also should note that I had the system manually inhibited with Stop for Today and Don't Run Tomorrow during that period]. The associated soil moisture sensor, ref ID 6459, would have had a value of ~54 when watering started, so that should not have triggered it. It currently reads 70 the morning after the watering cycle.

    Two questions:
    1. Is there an obvious reason I'm missing that the zone ran just after midnight?
    2. What determined how much / how long the zone watered? The soil moisture sensor should not have triggered it. Soil moisture chart is below for that sensor.

    One more thing: the plugin has created a soil moisture sensor device in HS for each Area, but none for the zones I have configured for individual sensors--in case that is unusual.

    Unfortunately I did not have debug logging turned. I've included several clips below from various plugin screens.

    Thank you.


    Area Setup:
    Click image for larger version  Name:	Capture.JPG Views:	0 Size:	157.5 KB ID:	1519034


    Click image for larger version  Name:	Capture2.JPG Views:	0 Size:	121.5 KB ID:	1519035

    Run Log:

    Click image for larger version  Name:	Capture3.JPG Views:	0 Size:	267.3 KB ID:	1519036

    Ecowitt soil sensor for R10:
    Click image for larger version

Name:	capture7.JPG
Views:	82
Size:	42.9 KB
ID:	1519042
    Sensor values last night:

    Click image for larger version  Name:	capture4.JPG Views:	0 Size:	21.6 KB ID:	1519037

    Zone Status:

    Click image for larger version  Name:	capture5.JPG Views:	0 Size:	80.8 KB ID:	1519038

    I noticed in General Status that only the R14 soil moisture sensor is included and not R10.

    Click image for larger versionName:	capture6.JPGViews:	0Size:	80.3 KBID:	1519039
    Attached Files
    -Wade

    #2
    You have setup 100% soil moisture to be 55 on Ecowitt, while the Ecowitt graph show 85 to be the max so the 100% on the scale likely should be 85. The trigger threshold of 53 is likely what triggered it. I do not see device 6458 values, but I would guess it was not reading above 53 so did not run that second Zone.

    The time inhibit seems like it should have been enforced. The 10:00 start time is not a consideration because the setting above it is to start immediately.

    The log also shows a toggling every minute on OFF/ON which looks like an issue with status not being updated, but only a guess. The debug log would be needed for this, inhibit time, and 3 day max days settings.

    Soil moisture by Zone was a relatively recent addition. I will need to look at the code about showing only one zone moisture sensor. Originally it was only Area for this status display.

    Comment


      #3
      Originally posted by Michael McSharry View Post
      You have setup 100% soil moisture to be 55 on Ecowitt, while the Ecowitt graph show 85 to be the max so the 100% on the scale likely should be 85. The trigger threshold of 53 is likely what triggered it. I do not see device 6458 values, but I would guess it was not reading above 53 so did not run that second Zone.
      I misinterpreted the 100% (wet) setting to mean the percentage at which the soil is considered fully saturated. I.e., when it reaches 55%, consider the soil at 100% saturation and stop watering. I interpreted trigger to be the percentage at which watering starts. So I expected it to start when moisture sensor reported <=53% and stop when it reported >=55%. I wasn't able to discern the meaning of the 0% (dry) setting. [I actually did consult the manual but didn't locate explanation of the fields.] Would you mind giving a me primer on how each field is used or point me where to look in the manual?

      I suspect you're right that the 53% trigger started the watering. What stopped it, and how do I configure a max/target moisture percentage?

      Associated question: Does the round robin setting have any effect? The vegetable garden is such that it needs to be watered in multiple rounds to avoid run-off, so it would be great if round-robin were respected. Although I can guess that the implementation likely requires a fixed watering time period so may it not be feasible.

      The ecowitt graph shows 85% as max because that's the recent/local max for the chart period. It would likely go higher--it read 100% in bench testing in water. Device 6458 has been around 58% throughout.

      Originally posted by Michael McSharry View Post
      The log also shows a toggling every minute on OFF/ON which looks like an issue with status not being updated, but only a guess. The debug log would be needed for this, inhibit time, and 3 day max days settings.

      Soil moisture by Zone was a relatively recent addition. I will need to look at the code about showing only one zone moisture sensor. Originally it was only Area for this status display.
      I've enabled debug and will forward the log after the next watering period.

      Thank you.
      -Wade

      Comment


        #4
        Would you mind giving a me primer on how each field is used or point me where to look in the manual?
        The basis of all irrigation scheduling in mcsSprinklers is that optimal plant health is achieve when roots are encouraged to go deep to get water so rapidly changing surface conditions do not adversely affect the plant. The trigger level, be it moisture content or some time interval, is when the roots are dry and are encouraged to extend further into the ground to find moisture.

        If you have sandy soil then there is not much moisture retained at any level so your frequency of irrigation needs to be increased.

        For a soil moisture sensor the min and max settings are the range of the sensor from in-air to in-water. The trigger represents the nominal 1" depth of moisture still in the soil. Above 1" it is dry and below is wet. If you have a crop other than grass where 1" is not the appropriate setting then adjust appropriately.

        The rate of moisture change over time is used by the prediction algorithm to guestimate when the next irrigation cycle should start. I do not think it matters what the min moisture content value of the sensor it, because rate is determined by historical measurements vs. time. What it does provide is the ability to set the trigger threshold as a percentage of full scale.

        mcsSprinklers is a tool to allow tweaking of irrigation schedules. By itself it does not know what to do, but once the user understands the parameters it should be an effective tool.

        Comment


          #5
          Irrigation ran for Area 3 again last night beginning at exactly the same time as the night before (12:04:07 AM). This time it was zone R14 that ran, and it cycled on/off for a few hours. Its soil sensor minimum reading for several hours prior to watering was 57%. The trigger was still set at 53%.

          This morning I changed the Soil Sensor Scale min and max to 0% and 100% to match the sensors' readings in bench testing with air and water. Since I've adjusted those parameters, I will hold off sending you the debug log until after the area has been through another watering cycle.

          Click image for larger version  Name:	Capture.JPG Views:	0 Size:	286.4 KB ID:	1519219

          Device 6458 (A3:R14 sensor):

          Click image for larger version  Name:	Capture1.JPG Views:	0 Size:	29.5 KB ID:	1519220
          -Wade

          Comment


            #6
            Originally posted by Michael McSharry View Post

            The basis of all irrigation scheduling in mcsSprinklers is that optimal plant health is achieve when roots are encouraged to go deep to get water so rapidly changing surface conditions do not adversely affect the plant. The trigger level, be it moisture content or some time interval, is when the roots are dry and are encouraged to extend further into the ground to find moisture.

            If you have sandy soil then there is not much moisture retained at any level so your frequency of irrigation needs to be increased.

            For a soil moisture sensor the min and max settings are the range of the sensor from in-air to in-water. The trigger represents the nominal 1" depth of moisture still in the soil. Above 1" it is dry and below is wet. If you have a crop other than grass where 1" is not the appropriate setting then adjust appropriately.

            The rate of moisture change over time is used by the prediction algorithm to guestimate when the next irrigation cycle should start. I do not think it matters what the min moisture content value of the sensor it, because rate is determined by historical measurements vs. time. What it does provide is the ability to set the trigger threshold as a percentage of full scale.

            mcsSprinklers is a tool to allow tweaking of irrigation schedules. By itself it does not know what to do, but once the user understands the parameters it should be an effective tool.
            Thank you for the detailed reply. I think I'm starting to grasp the concept but am struggling in particular with how the plugin targets it's maximum moisture content--or more specifically, when it turns off the zone. It may be that I'm asking the plugin to do something it's not designed to do, but consider the following scenario. Say, I know from observation that when one of the sensors reads 55% that area of the vegetable garden is at optimum moisture. I would like to keep the soil within a reasonable range of 55%. I could set the trigger for, say, 50%, and expect the zone to start watering when the moisture drops to that point. I would like for the zone to stop watering when moisture reaches 60%. How do I achieve this? Or is it not how the plugin works? Is it always trying to achieve something near 100%? If so, that's much too wet in my case.
            -Wade

            Comment


              #7
              mcsSprinklers design intent it to run a zone when the zone has become sufficiently dry that moisture in the top 1" of soil has been lost. A zone that has 0% moisture means that the top 1" of soil is dry. It is the user's responsibility to know how long a zone needs to run to restore moisture to fully saturated at the top 1" of soil. It essentially depends upon the flow rate of the valve and the area that the valve covers. Practically speaking it is an experiment to find out how long it takes.

              mcsSprinklers modulates the duration between irrigation days. It does not modulate the duration of an irrigation cycle. This design philosophy is based upon giving the roots encouragement to grow deep to find moisture. If mcsSprinklers irrigated a small amount every day to keep the moisture level within a narrow range then the roots would not grow deep and the plant would die out if water was not applied soon.

              If you do have a crop that has a need for a relatively constant amount of moisture then you would set the trigger threshold to be close to the 100% soil moisture reading. For example if the max reading is 85, min reading is 20 for your sensor then the dynamic range is 65. 10% (i.e. 0.1") of moisture is a delta of 6.5 on the sensor. If you set the trigger at 85-6.5=78.5 then mcsSprinklers will schedule an irrigation cycle when 0.1" of soil moisture has been lost. The duration set by the user is the time it takes for 0.1" of soil moisture to be restored.

              A design constraint of mcsSprinklers using scheduling based upon measured or computed soil mositure content is that automatic irrigation will occur no more than once per day. For timed irrigation the design constraint is 24 times per day.

              My observation is that most users tend to irrigate too often and not for long enough. Those which have sand for soil don't have an alternative. They see stress on the plants so want to give them water. Plants, just like people, will do the minimum necessary to sustain their health. It is good to exercise, but it is easier to be lazy. If water is readily available all the time, then no need to grow roots and all plant energy can be focused on growing foliage. In the short term this appears successful, but in the long term the roots will not be able to support the needs of what is above the ground.

              Comment


                #8
                Michael, thank you again for the patient and detailed responses. I have a number of questions about your last reply, but to be honest I'm more the plumber--married to the gardner--and don't fully grasp the science you're detailing. I will say that the vegetable garden, throughout the growing seasons (long here in South Texas) has a range of plants from newly planted to well established on the same zone. The soil is sandy silt and does drain rapidly, but from your POV we may well be watering too often. As I investigate this further with the gardener, I have one pressing issue that I need to solve now:

                Originally posted by Michael McSharry View Post
                It is the user's responsibility to know how long a zone needs to run to restore moisture to fully saturated at the top 1" of soil.
                How does the user select the time? The "auto" time configured for the zone doesn't appear to have any bearing on duration of watering. E.g., zone R10 in my original post upthread is set for 10 minutes automatic. Night before last it ran 24 cycles of 3 minutes. Is this a bug, or perhaps a mistake in my configuration, or is there somewhere else to configure it?

                Thank you.
                -Wade

                Comment


                  #9
                  How does the user select the time? The "auto" time configured for the zone doesn't appear to have any bearing on duration of watering. E.g., zone R10 in my original post upthread is set for 10 minutes automatic. Night before last it ran 24 cycles of 3 minutes. Is this a bug, or perhaps a mistake in my configuration, or is there somewhere else to configure it?
                  The autotime is the critical setting. If set for 10 minutes then it should run for a total of 10 minutes in an irrigation cycle. If round robin is selected then this may be multiple cycles in a day, but the total time should be 10 minutes. If your soil is somewhat sandy then there should be no need to use round robin, Round robin is designed for soil conditions that are like clay where water absorption is very slow. 24 cycles at 3 minutes each looks to be an issue. Could it have been the issue that was experienced before the last update where the timing between a command and the acknowledge for the GoContol was an issue?

                  Based upon soil that is able to accept the irrigation without runoff then I recommend that round robin is not used. It just complicates things. It was an addition after the original mcsSprinklers design and has resulted in several special case logic paths that could fail if your special case is not one of the ones already accommodated.

                  In my situation I have soil conditions that are not clay, but also not sandy. In general, my soil retains moisture, but I do not have runoff conditions. A typical zone will run for about an hour using calculated moisture strategy and during at the peak of summer the cycle will occur every three days. Spring and Fall cycles will be much less frequent. This is especially true as Spring and Fall bring rainfall while Summer is pretty dry. My environment is a classic case for using weather-based irrigation to optimize water consumption. At my other location in the desert I use a mechanical timer. The weather is so constant that a fixed-time irrigation schedule is preferred over one that relies upon sensors and upon an internet connection to collect sensor data. This is especially true when I am not present to deal with computer/sensor failures.

                  For my garden, most beds are using a drip system that runs for a several hours at night and with trigger thresholds that are slightly higher than the lawn (i.e. 20% vs. 0%). My lawn areas are scheduled to run in early morning to minimize the fungus that can occur if the grass is wet for long periods of time. Early morning allows the water to penetrate the soil, but also allows the sun to burn off any surface water from the grass. I am constrained by a well with limited pressure and volume, so I need to be sensitive to when each Area is running. I have 22 zones and 7 Areas. Not because of the amount that needs to be irrigated, but because of the well constraint that allows me to only open a few valves at a time.

                  Comment


                    #10
                    Originally posted by Michael McSharry View Post
                    Based upon soil that is able to accept the irrigation without runoff then I recommend that round robin is not used. It just complicates things. It was an addition after the original mcsSprinklers design and has resulted in several special case logic paths that could fail if your special case is not one of the ones already accommodated.
                    Brief update. Following your suggestion, 4 days ago I removed the round robin watering setting for the Area using moisture sensor control. I *think* the only other change I made was to reduce the trigger to 50%. At that time the Area was over-watered due to the very long, unintended watering cycles, and since then, the midnight watering hasn't happened again. The two zone sensors are currently reading 53% and 54%, so perhaps all is working as expected. I'll report back after one or both zones reach the 50% trigger and an expected irrigation cycle occurs.
                    -Wade

                    Comment


                      #11
                      Looking positive. I have not yet looked into the status reporting showing only zone sensor.

                      Comment

                      Working...
                      X