Announcement

Collapse
No announcement yet.

Feature Request: Average Temp

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

  • Feature Request: Average Temp

    Would it be possible to add a feature to allow you to select multiple sensors and use their average value as input.
    (I'm doing this with a virtual device and script today, but thought it would be nice as a built in feature)


    Bonus feature would be to have the ability of running different sets of sensors for different schedules.
    i.e. daytime = living room + upstairs, night time = beddrooms, frost= basement + attic (or wherever your frost-damage prone areas are).


    Many Thanks !


    // mrM

  • #2
    Originally posted by mr.Magoo View Post
    Would it be possible to add a feature to allow you to select multiple sensors and use their average value as input.
    (I'm doing this with a virtual device and script today, but thought it would be nice as a built in feature)


    Bonus feature would be to have the ability of running different sets of sensors for different schedules.
    i.e. daytime = living room + upstairs, night time = beddrooms, frost= basement + attic (or wherever your frost-damage prone areas are).


    Many Thanks !


    // mrM
    Hi mrM

    Multiple sensors is something that I am considering adding. It will be a lot of work but could be quite useful.
    I think I will probably also build in options to use the lowest, average or highest temperature of multiple sensors whilst I am about it.

    However, running different sets of sensors for different schedules I think would be too complicated. I separate my house into zones run by multiple VStats which rather negates the need for different sets of sensors for different schedules.

    I have some time over the Christmas break and this is one of the things I will probably work on.

    Steve

    Comment


    • #3
      Originally posted by SteveMSJ View Post
      Hi mrM

      Multiple sensors is something that I am considering adding. It will be a lot of work but could be quite useful.
      I think I will probably also build in options to use the lowest, average or highest temperature of multiple sensors whilst I am about it.
      I have this implemented now but I want to run it for a few days, at least, before releasing it as it is a fairly major upgrade with changes to the data structure stored in the root devices.
      Each VStat now has the following options on using Temperature Sensors:

      Single: Use single temp sensor as current temperature
      Multiple-Lowest: Use the lowest value of multiple temp sensors
      Multiple-Average: Use the average value of multiple temp sensors
      Multiple-Highest: Use the highest value of multiple temp sensors

      Click image for larger version  Name:	ScreenShot.JPG Views:	1 Size:	97.0 KB ID:	1269515
      Click image for larger version

Name:	Root.JPG
Views:	70
Size:	32.1 KB
ID:	1269517

      Steve

      Comment


      • #4
        Originally posted by SteveMSJ View Post

        I have this implemented now but I want to run it for a few days, at least, before releasing it as it is a fairly major upgrade with changes to the data structure stored in the root devices.
        Each VStat now has the following options on using Temperature Sensors:

        Single: Use single temp sensor as current temperature
        Multiple-Lowest: Use the lowest value of multiple temp sensors
        Multiple-Average: Use the average value of multiple temp sensors
        Multiple-Highest: Use the highest value of multiple temp sensors

        Steve
        The new release has been submitted to HS.

        Steve

        Comment


        • #5
          Thanks Steve for the quick turn-around on this request !
          For anyone who's wondering, I've run the "Beta" for about a week and it works flawlessly, much more convenient/cleaner than running your own averaging script and a virtual device.

          Thanks again !

          Comment


          • #6
            Hi Steve,

            Thinking along the lines of averaging temperatures. I have 2-3 rooms (zones) that due to shape, size, and location of windows and thermostat are great candidates for temperature averaging. (Comfortable at the thermostat, not so much nearer the opposite end of the room.) Currently, I have a script that collects the temperatures, averages them, and stuffs them into a variable. What I don't have is the ability to alter the thermostat setting so that the average temperature is used as a basis for setting the "correct" temperature. IOW, if the thermostat thinks it is 73 deg, but the room temperature average is 76, I'd like to set the thermostat to another setting, like 71-ish. These differentials are due to the angle of the sun as the day progresses and one side of the house is toasted by the morning sun, the other side by the setting sun. Another setting that might be desirable is that if the difference between the set temperature and the average temperature exceeds a given amount it would allow for toggling a fan (or something) on.

            Is this sort of thing doable?

            TIA,
            Gene
            HomeSeer Version: HS3 Pro Edition 3.0.0.500
            Operating System: Microsoft Windows 10 Pro - Work Station

            Enabled Plug-Ins:
            2.1.0.119: AmbientWeather | 3.0.21.0: BLLock | 2.0.24.0: BLUPS | 1.3.6.0: Device History | 3.0.0.56: EasyTrigger | 3.1.0.7: MeiHarmonyHub | 3.0.6681.34300: UltraCID3 | 3.0.6644.26753: UltraLog3 | 3.0.6554.33094: UltraMon3 | 3.0.0.91: weatherXML | 3.0.1.245: Z-Wave | 3.0.51: HS Touch Designer | 3.0.0.40 Z-Seer+

            Comment


            • #7
              Originally posted by ewkearns View Post
              Hi Steve,

              Thinking along the lines of averaging temperatures. I have 2-3 rooms (zones) that due to shape, size, and location of windows and thermostat are great candidates for temperature averaging. (Comfortable at the thermostat, not so much nearer the opposite end of the room.) Currently, I have a script that collects the temperatures, averages them, and stuffs them into a variable. What I don't have is the ability to alter the thermostat setting so that the average temperature is used as a basis for setting the "correct" temperature. IOW, if the thermostat thinks it is 73 deg, but the room temperature average is 76, I'd like to set the thermostat to another setting, like 71-ish. These differentials are due to the angle of the sun as the day progresses and one side of the house is toasted by the morning sun, the other side by the setting sun. Another setting that might be desirable is that if the difference between the set temperature and the average temperature exceeds a given amount it would allow for toggling a fan (or something) on.

              Is this sort of thing doable?

              TIA,
              Gene
              Hi Gene,

              Currently the PI allows you to assign any number of temperature sensors to each VStat and then use the average, lowest or highest temp of the sensors as the Current Temperature for the particular VStat.

              I'm probably misunderstanding, but are you requesting an offset between the measured temp (which could be a single sensor or an average of several sensors) and the Current Temp for the VStat? If so wouldn't you just set the Target Temperature (from the various SetPoints) to a value offset above or below what you desire? Or are you wanting the offset to vary depending on other factors?

              Another thought on this is that you can use the 'Open Windows' feature of each VStat as a temperature offset to apply. So if you wanted the Target Temperature of a VStat to be offset by say 2 degrees in certain circumstances you could set up events to do this.

              As for another control to turn, say, a fan on and off at a setting offset above the normal setting, it's an interesting idea but would be a fairly fundamental change to the PI. You can probably achieve this fairly easily be creating a duplicate VStat to control the fan with SetPoints slightly higher than its sibling. You can use the same sensors as inputs for more than one VStat and you can have up to 20 VStats running with the PI. It's also fairly easy to set up events to copy schedules between VStats.

              Steve

              Comment


              • #8
                Steve,

                I think, from your response, I am missing something. The answer to your question, "wouldn't you just set the Target Temperature (from the various SetPoints) to a value offset above or below what you desire" is "Yes!," but even using Easy Trigger, my attempts have failed and the thermostat has steadfastly ignored my changes. Can you point me in the right direction?
                HomeSeer Version: HS3 Pro Edition 3.0.0.500
                Operating System: Microsoft Windows 10 Pro - Work Station

                Enabled Plug-Ins:
                2.1.0.119: AmbientWeather | 3.0.21.0: BLLock | 2.0.24.0: BLUPS | 1.3.6.0: Device History | 3.0.0.56: EasyTrigger | 3.1.0.7: MeiHarmonyHub | 3.0.6681.34300: UltraCID3 | 3.0.6644.26753: UltraLog3 | 3.0.6554.33094: UltraMon3 | 3.0.0.91: weatherXML | 3.0.1.245: Z-Wave | 3.0.51: HS Touch Designer | 3.0.0.40 Z-Seer+

                Comment


                • #9
                  Originally posted by ewkearns View Post
                  Steve,

                  I think, from your response, I am missing something. The answer to your question, "wouldn't you just set the Target Temperature (from the various SetPoints) to a value offset above or below what you desire" is "Yes!," but even using Easy Trigger, my attempts have failed and the thermostat has steadfastly ignored my changes. Can you point me in the right direction?
                  Gene,

                  I guess I don't really understand what you are trying to do I think we are probably talking at cross purposes. Do you have VStats configured and running OK and are they running on schedules or in manual?

                  The guide is fairly comprehensive in describing the way the the VStats work and how they can be configured, but I'm not the best communicator

                  Each VStat has a Target Temperature. In Auto mode this will switch between the 2 SetPoints, High/Day and Low/Night. There is also a third SetPoint, Frost/Away.

                  Whilst the Target Temperature will switch on schedule between the SetPoints it can also be temporarily raised or lowered or set to any value. It will then revert back to the SetPoint at the next scheduled change, or stay at that value if not in Auto mode. So, the Target Temperature child for each VStat can be controlled manually, with events or from custom HSTouch screens. The Target Temperature devices have controls for Increase and Decrease as well as accepting any submitted value in range. The Increase and Decrease buttons raise or lower the temperature in 0.5 degree C steps (1 degree F). If you need to change the Target Temperature by an event there should be no issue with selecting that device as the action of an event. When you chose a Target Temperature child device in the Control a Device action there is a drop list of temperatures as well as Increase and Decrease to choose from. You can also change the device from a script using CAPI.

                  If you can be a bit more specific about what you are trying to do I might be able to help more.

                  Steve

                  Comment


                  • #10
                    OK, I'll describe the current situation. The physical thermostat/thermometer in the Kitchen/Living Room area (zone) says 73 degrees and with a setpoint of 73 degrees is not demanding any heating or cooling. The Kitchen thermometer is recording 82 degrees (just plain uncomfortably hot). That is an average temperature of 77.5 degrees for that zone. What I would like to do is something like changing the thermostat setpoint to ROUND(73-(82-77.5)) so that the entire space is more comfortable. My thoughts on exceeding a ▲T and performing an action is that I have 2 ceiling fams in that area that might help mix the diverse air temperatures.
                    HomeSeer Version: HS3 Pro Edition 3.0.0.500
                    Operating System: Microsoft Windows 10 Pro - Work Station

                    Enabled Plug-Ins:
                    2.1.0.119: AmbientWeather | 3.0.21.0: BLLock | 2.0.24.0: BLUPS | 1.3.6.0: Device History | 3.0.0.56: EasyTrigger | 3.1.0.7: MeiHarmonyHub | 3.0.6681.34300: UltraCID3 | 3.0.6644.26753: UltraLog3 | 3.0.6554.33094: UltraMon3 | 3.0.0.91: weatherXML | 3.0.1.245: Z-Wave | 3.0.51: HS Touch Designer | 3.0.0.40 Z-Seer+

                    Comment


                    • #11
                      Originally posted by ewkearns View Post
                      OK, I'll describe the current situation. The physical thermostat/thermometer in the Kitchen/Living Room area (zone) says 73 degrees and with a setpoint of 73 degrees is not demanding any heating or cooling. The Kitchen thermometer is recording 82 degrees (just plain uncomfortably hot). That is an average temperature of 77.5 degrees for that zone. What I would like to do is something like changing the thermostat setpoint to ROUND(73-(82-77.5)) so that the entire space is more comfortable. My thoughts on exceeding a ▲T and performing an action is that I have 2 ceiling fams in that area that might help mix the diverse air temperatures.
                      Just to get this straight are you saying you want to use SDJ-VStat, which is a virtual thermostat plug-in, to control some physical thermostats?

                      Steve

                      Comment


                      • #12
                        Yes.
                        HomeSeer Version: HS3 Pro Edition 3.0.0.500
                        Operating System: Microsoft Windows 10 Pro - Work Station

                        Enabled Plug-Ins:
                        2.1.0.119: AmbientWeather | 3.0.21.0: BLLock | 2.0.24.0: BLUPS | 1.3.6.0: Device History | 3.0.0.56: EasyTrigger | 3.1.0.7: MeiHarmonyHub | 3.0.6681.34300: UltraCID3 | 3.0.6644.26753: UltraLog3 | 3.0.6554.33094: UltraMon3 | 3.0.0.91: weatherXML | 3.0.1.245: Z-Wave | 3.0.51: HS Touch Designer | 3.0.0.40 Z-Seer+

                        Comment


                        • #13
                          Originally posted by ewkearns View Post
                          Yes.
                          Well, the PI is not designed to do that so it may not be possible, depending on how your physical thermostats are represented in HS3. The VStats are intended as fully independent virtual thermostats with 7 day schedules. They use any temperature sensors in HS3 as inputs and any switch like device in HS3 as the controlled output. It might be possible to effectively bypass the operation of your physical thermostats and just use them as the input and output of VStats but I doubt that is what you are wanting to do.

                          Steve

                          Comment


                          • #14
                            I think I have a solution - I'm currently controlling my physical thermostats with VSTAT.
                            My thermostats have two setpoints, one for "eco" and one for "comfort". I've set them very low (10 deg C) and high (27 deg C). I've then created a virtual device "ShouldHeat" with values "Yes" and "No". I've then set the VSTAT to use that device as its heaterdevice, that way that virtual device is switching yes/no based on the average temperature of the selected temp.sensors and the VSTATS target setpoint. Then I have two events - "heat on" and "heat off". They trigger when the "ShouldHeat"-device changes. If it is set to "no" the physical thermostat is set to "eco", if it changes to "yes" the physical thermostat is set to "comfort".

                            I'm running this setup on 4 physical thermostats and it works great!

                            Comment


                            • #15
                              Originally posted by ZoRaC View Post
                              I think I have a solution - I'm currently controlling my physical thermostats with VSTAT.
                              My thermostats have two setpoints, one for "eco" and one for "comfort". I've set them very low (10 deg C) and high (27 deg C). I've then created a virtual device "ShouldHeat" with values "Yes" and "No". I've then set the VSTAT to use that device as its heaterdevice, that way that virtual device is switching yes/no based on the average temperature of the selected temp.sensors and the VSTATS target setpoint. Then I have two events - "heat on" and "heat off". They trigger when the "ShouldHeat"-device changes. If it is set to "no" the physical thermostat is set to "eco", if it changes to "yes" the physical thermostat is set to "comfort".

                              I'm running this setup on 4 physical thermostats and it works great!
                              Yes, that works.
                              I suppose I could add an option where you could configure the On/Off values of each VStat Control device. So in your case you would set them to Comfort/Eco and control the physical thermostat directly and avoid the virtual device and events. Perhaps something for the HS4 version!

                              Steve

                              Comment

                              Working...
                              X