CROSS REFERENCE TO RELATED APPLICATIONSThis application claims priority to U.S. Provisional Patent Application No. 61/917,529, entitled “SYSTEMS AND METHODS FOR DETERMINING OR MODIFYING A TEMPERATURE PROGRAM BASED ON OCCUPANT ACTIVITY,” filed Dec. 18, 2013, which is herein incorporated by reference in its entirety for all purposes.
BACKGROUNDThe present disclosure relates generally to heating, ventilation, and cooling (HVAC) systems that are communicatively coupled to, and controlled by, programmable thermostats. Such programmable thermostats generally include a memory that stores instructions, as well as a processor that executes the stored instructions, in which the instructions dictate suitable control signals that should be supplied to the HVAC system to implement a particular temperature program. More specifically, the present disclosure relates to temporarily or permanently modifying a time-based temperature program of a programmable thermostat based on changes in the type or degree of observed or anticipated occupant activity. Additionally, the present disclosure relates to determining and implementing an activity-based temperature program that a programmable thermostat may use to control a HVAC system based on a type or degree of observed or anticipated occupant activity, rather than according to a time-based schedule.
This section is intended to introduce the reader to various aspects of art that may be related to various aspects of the present disclosure, which are described and/or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present disclosure. Accordingly, it should be understood that these statements are to be read in this light, and not as admissions of prior art.
Thermostatically controlled HVAC systems are ubiquitous in both residential and commercial structures. Classical non-programmable thermostats generally allow a user to specify a single setpoint temperature, for example, using a dial of an analog thermostat or the pushbuttons of a digital thermostat. In operation, the thermostat controls the HVAC system in a manner that maintains the current ambient temperature within a predetermined maintenance band around the setpoint temperature. This maintenance band usually includes a lower maintenance band temperature equal to the setpoint temperature minus about one degree Fahrenheit and an upper maintenance band temperature equal to the setpoint temperature plus about one degree Fahrenheit. In a heating mode of operation, the thermostat may activate the HVAC system heating function to heat the structure when the ambient temperature falls below the lower maintenance band temperature, and then may deactivate the HVAC system heating function once the ambient temperature rises above the upper maintenance band temperature. In a cooling mode of operation, the thermostat may activate the HVAC system cooling function to cool the structure when the ambient temperature rises above the upper maintenance band temperature, and then may deactivate the HVAC system cooling function once the ambient temperature falls below the lower maintenance band temperature.
Certain programmable digital thermostats may include a clock element and may provide an interface to enable a user to provide a particular schedule for operating the HVAC system. For example, certain programmable digital thermostats may allow a user to specify temperature settings directed more toward occupant comfort during certain parts of the day (e.g., between 7:00 AM-9:00 AM and between 5:00 PM-10:00 PM), and to specify temperature settings directed more toward energy savings during other parts of the day (e.g., between 9:00 AM-5:00 PM and 10:00 PM-7:00 AM). By way of example, such a programmable digital thermostat may allow a user to specify, for the winter season, a heat setpoint temperature of 75 degrees Fahrenheit (° F.) between 7:00 AM-9:00 AM (e.g., for greater occupant comfort while the occupant gets out of bed and gets ready for work), a heat setpoint temperature of 62° F. between 9:00 AM-5:00 PM (e.g., for greater energy savings while the occupant is away at work), a heat setpoint temperature of 73° F. between 5:00 PM-10:00 PM (e.g., for greater occupant comfort as the occupant is at home during the evening), and a heat setpoint temperature of 66° F. between 10:00 PM-7:00 AM (e.g., for greater energy savings while the occupant is asleep).
Additionally, HVAC systems may be generally responsible for a substantial portion of the power consumption of a residential or commercial structure, especially in locales with extreme hot or cool environments. In certain situations, this power consumption may be further exacerbated when an occupant persistently adjusts the thermostat based on his or her perception of the internal temperature of the structure. Accordingly, it may be desirable to reduce an amount of time that the HVAC system is actively heating or cooling the structure in order to reduce power consumption of the HVAC system while still addressing the temperature preferences of the occupant.
SUMMARYCertain embodiments commensurate in scope with the originally claimed subject matter are summarized below. These embodiments are not intended to limit the scope of the claimed invention, but rather these embodiments are intended only to provide a brief summary of possible forms of the invention. Indeed, the present disclosure may encompass a variety of forms that may be similar to or different from the embodiments set forth below.
Present embodiments are directed toward systems and methods for thermostatically controlling a heating, ventilation, and cooling (HVAC) system of a structure according to a temperature program. More specifically, present embodiment enable the creation or modification of a temperature program based on types or degrees of occupant activity. In certain embodiments, the temperature program may be a temperature setpoint schedule, while in other embodiments the temperature program may be an occupant activity-based temperature program or a hybrid temperature program having both time-based and activity-based temperature setpoints. Accordingly, present embodiments enable the collection occupant activity data that is indicative of types or degrees of occupant activity in the structure based on inputs from sensors installed within the structure, activities of various devices within the structure, and/or occupant information gleaned from a processing device (e.g., a computer or smart phone) and/or online data resources.
In certain embodiments, a processor of a thermostat may control a HVAC system according to temperature program that includes a number of time-based temperature setpoints. As such, the processor may process collected occupant activity data in conjunction with the temperature setpoints to identify a particular temperature setpoint that is associated with a statistically detectable change between a first type or degree of occupant activity and a second type or degree of occupant activity. Accordingly, during a time window that includes (e.g., extends before, extends after, or both) the time associated with the identified temperature setpoint, if the processor detects the change between the first type or degree of occupant activity and the second type or degree of occupant activity in the occupant activity data, the processor may responsively implement the temperature associated with the temperature setpoint, regardless of whether the current time is prior to, the same as, or subsequent to the time associated with the temperature setpoint. Further, in certain embodiments, once the processor has responsively implemented the temperature associated with the identified temperature setpoint at a different time on more than one day (e.g., two, three, or four days), the processor may modify the identified temperature setpoint to be associated with the different time (i.e., permanently modify the temperature program).
In certain embodiments, a processor of a thermostat may control a HVAC system according to a temperature program that includes a plurality of time-based temperature setpoints. Further, the processor may divide a period of time (e.g., a day, a week) into a number of time windows that each begin at an occurrence of a statistically different occupant activity type or degree in the occupant activity data. Accordingly, the processor may process the occupant activity data in conjunction with the temperature setpoints to identify a temperature setpoint that has an associated time that falls within an associated time window. Accordingly, during the associated time window, when the processor detects a change from a first type or degree of occupant activity to a statistically different second type or degree of occupant activity in the occupant activity data, the processor may responsively implement the temperature associated with the identified temperature setpoint regardless of whether the current time is prior to, the same as, or subsequent to the time associated with the identified temperature setpoint.
In certain embodiments, a processor of a thermostat may control a HVAC system according to temperature program that includes a plurality of occupant activity-based temperature setpoints. For example, each occupant activity-based temperature setpoint may be associated with both a temperature and a change between a first type or degree of occupant activity and a statistically different second type or degree of occupant activity. While collecting occupant activity data describing occupant activity types or degrees, the processor may detect the change from the first type or degree of occupant activity to the second type or degree of occupant activity. In response, the processor may implement the temperature associated with the occupant activity-based temperature setpoint, regardless of the current time.
DRAWINGSThese and other features, aspects, and advantages of the present disclosure will become better understood when the following detailed description is read with reference to the accompanying drawings in which like characters represent like parts throughout the drawings, wherein:
FIG. 1 is a schematic of a structure having a heating, ventilation, and cooling (HVAC) system, in accordance with an embodiment of the present approach;
FIG. 2 is a schematic of an embodiment of a HVAC system;
FIG. 3 is a diagram illustrating certain internal components and certain data inputs of a thermostat of the HVAC system, in accordance with an embodiment of the present approach;
FIG. 4 is a flow diagram illustrating an embodiment of a process whereby the thermostat may generate a time-based temperature program;
FIG. 5 is an embodiment of the time-based temperature program generated by the thermostat according to the process ofFIG. 4;
FIG. 6 is a diagram illustrating an exception time window extending before a time associated with a particular temperature setpoint, in accordance with an embodiment of the present approach;
FIG. 7 is a diagram illustrating an exception time window extending after a time associated with a particular temperature setpoint, in accordance with an embodiment of the present approach;
FIG. 8 is a diagram illustrating a symmetrical exception time window extending an equal amount of time before and after a time associated with a particular temperature setpoint, in accordance with an embodiment of the present approach;
FIG. 9 is a diagram illustrating an unsymmetrical exception time window extending an unequal amount of time before and after a time associated with a particular temperature setpoint, in accordance with an embodiment of the present approach;
FIG. 10 is a diagram illustrating a statistical exception time window that enables different weights to be applied to different occupant activities occurring at different times before and after a time associated with a particular temperature setpoint, in accordance with an embodiment of the present approach;
FIG. 11 is a flow diagram illustrating an embodiment of a process whereby the thermostat may permanently modify a temperature setpoint schedule based on one or more exceptions to the temperature setpoint schedule;
FIG. 12 is a diagram illustrating an embodiment of an activity-based temperature program that is based on a level or occupant activity;
FIG. 13 is a flow diagram illustrating an embodiment of a process whereby the thermostat may receive inputs defining one or more occupant activities and generate an activity-based temperature program that is based on the defined occupant activities;
FIG. 14 is a diagram illustrating an embodiment of an activity-based temperature program that is based on defined occupant activities;
FIG. 15 is a flow diagram illustrating an embodiment of a process whereby thethermostat16 may implement an activity-based temperature program;
FIG. 16 is a timeline of an example in which the thermostat implements an embodiment of an activity-based temperature program that is based on a level of occupant activity;
FIG. 17 is a timeline of an example in which the thermostat implements an embodiment of an activity-based temperature program that is based on defined occupant activities;
FIG. 18 is a timeline of an example in which the thermostat implements an embodiment of an time-based temperature program that includes exceptions that are based on occupant activity or occupant activity level; and
FIG. 19 is a timeline of an example in which the thermostat implements an embodiment of a hybrid temperature program that includes time-based temperature setpoints (with exceptions based on occupant activity) as well as activity-based temperature setpoints.
DETAILED DESCRIPTIONOne or more specific embodiments will be described below. In an effort to provide a concise description of these embodiments, not all features of an actual implementation are described in the specification. It should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous implementation-specific decisions must be made to achieve the developers' specific goals, such as compliance with system-related and business-related constraints, which may vary from one implementation to another. Moreover, it should be appreciated that such a development effort might be complex and time consuming, but would nevertheless be a routine undertaking of design, fabrication, and manufacture for those of ordinary skill having the benefit of this disclosure. The subject matter of the instant disclosure is related to the subject matter of the following commonly assigned applications, each of which is incorporated by reference herein: U.S. Ser. No. 13/632,041 filed Sep. 30, 2012 (Ref. No. NES0162-US); U.S. Ser. No. 13/632,070 filed Sep. 30, 2012 (Ref. No. NES0234-US); and U.S. Ser. No. 13/864,929 filed Apr. 17, 2013 (Ref. No. NES0334-US).
When introducing elements of various embodiments of the present disclosure, the articles “a,” “an,” and “the” are intended to mean that there are one or more of the elements. The terms “comprising,” “including,” and “having” are intended to be inclusive and mean that there may be additional elements other than the listed elements. Additionally, it should be understood that references to “one embodiment” or “an embodiment” of the present disclosure are not intended to be interpreted as excluding the existence of additional embodiments that also incorporate the recited features.
As used herein the term “HVAC” includes systems providing both heating and cooling, heating only, cooling only, as well as systems that provide other occupant comfort and/or conditioning functionality such as humidification, dehumidification and ventilation. As used herein the term “residential” when referring to an HVAC system means a type of HVAC system that is suitable to heat, cool and/or otherwise condition the interior of a building that is primarily used as a single family dwelling. An example of a cooling system that would be considered residential would have a cooling capacity of less than about 5 tons of refrigeration (1 ton of refrigeration=12,000 Btu/h). As used herein the term “light commercial” when referring to an HVAC system means a type of HVAC system that is suitable to heat, cool and/or otherwise condition the interior of a building that is primarily used for commercial purposes, but is of a size and construction that a residential HVAC system is considered suitable. An example of a cooling system that would be considered residential would have a cooling capacity of less than about 5 tons of refrigeration. As used herein the term “thermostat” means a device or system for regulating parameters such as temperature and/or humidity within at least a part of an enclosure. The term “thermostat” may include a control unit for a heating and/or cooling system or a component part of a heater or air conditioner. As used herein the term “thermostat” can also refer generally to a versatile sensing and control unit (VSCU unit) that is configured and adapted to provide sophisticated, customized, energy-saving HVAC control functionality while at the same time being visually appealing.
Additionally, as used herein in the context of thermostat schedules, the term “temperature setpoint” is used to describe piece of data stored in a memory of the thermostat that has an associated temperature (e.g., the temperature that the thermostat seeks to provide) and an associated time (e.g., the time at which the temperature setpoint should take effect). As such, the term “implement”, as used herein with respect to a temperature setpoint, generally refers to the thermostat controlling the HVAC system (e.g., activating or deactivating one or more heating or cooling stages of the HVAC system) in a suitable manner to provide the temperature associated with the temperature setpoint.
As mentioned above, it may be generally desirable to reduce power consumption of a HVAC system of a particular structure. One way of generally achieving this reduction is to limit operation of the HVAC system to particular times based on the needs of an occupant of the structure. As set forth in detail below, present embodiments provide systems and methods for controlling a HVAC system in response to detected or predicted occupant activity. The embodiments discussed below include examples of making temporary exceptions to a time-based temperature setpoint schedule of the HVAC system based on occupant activity, as well as methods for permanently modifying the temperature setpoint schedule based on the occurrence of one or more exceptions. Additionally, the embodiments discussed below include examples of activity-based temperature programs that may enable the HVAC system to implement particular activity-based temperature setpoints in response to detecting or predicting particular occupant activities or activity levels (e.g., particular types or degrees of occupant activity and/or changes between different types or degrees of occupant activity). Further, present embodiments enable a hybrid temperature program that may include, for example, a combination of both time-based temperature setpoints (e.g., with occupant activity-based exceptions) and activity-based temperature setpoints. Accordingly, the embodiments discussed below enable more efficient control of the HVAC system, which may reduce power consumption by the HVAC system, extend the life of the HVAC system, and provide an environment within the structure that may be better tuned to particular activities and preferences of the occupant.
With the foregoing in mind,FIG. 1 illustrates an example of astructure10 having aHVAC system20, in accordance with embodiments of the present approach. In particular, thestructure10 illustrated inFIG. 1 is a “smart” residential dwelling that includes a number of “smart” features (e.g., sensors, processors, automation devices, and so forth) that may enable devices (e.g., lights, door locks, appliances, etc.) of thestructure10 to operate in an automated manner. For example, thestructure10 may include acontroller15, which may be part of a home automation system for controlling one or more features of thestructure10. For example, the illustrated “smart”structure10 includes a plurality of sensors12 (e.g.,sensors12A-J, discussed in greater detail below) and a plurality of light fixtures14 (e.g.,light fixtures14A-14I) that may be communicatively coupled to thecontroller15. Further, thecontroller15 may include a processor programmed to utilize the inputs from the plurality ofsensors12 to determine occupancy of a particular portion of thestructure10 and programmed to only activate a portion of the plurality oflight fixtures14 that are positioned in the occupied portion of thestructure10. It may be appreciated that thelight fixtures14 are merely provided as an example, and that, in certain embodiments, thecontroller15 may be programmed to control any feature (e.g., lighting, sound systems, window shades, appliances, etc.) of thestructure10 in an automated fashion. In certain embodiments, thecontroller15 may be implemented on a portable computing device, such as a tablet or a smart phone. In certain embodiments, thecontroller15 may be implemented by a wall-mounted device (e.g., like thecontroller15 ofFIG. 1), in part, and by a portable computing device, such as a tablet of smart phone, in part. As set forth below, in certain embodiments,thermostats16A-B that control theHVAC system20 may be communicatively coupled to or integrated with one or more features of the “smart”structure10, such as thesensors12A-J and/or thecontroller15, to receive information regarding different types or levels of occupant activity for thestructure10. For example, in certain embodiments, thethermostats16 may determine how to control theHVAC system20 based in part on input from thecontroller15, while, in other embodiments, thethermostats16 and thecontroller15 may cooperate to jointly decide how to control theHVAC system20 of thestructure10. In certain embodiments, the presently disclosed approach may be implemented in commercial and residential structures that lack one or more of the described “smart” features (e.g.,sensors12A-J, controller15). For such embodiments, as discussed below, the thermostats (e.g.,thermostats16A and/or16B) may themselves include one or more sensors (e.g., passive infra-red sensors, ultrasound sensors, vibration sensors, etc.) that are able to detect or measure different types or levels of occupant activity for thestructure10. Examples of thermostats including such sensors for detecting occupant activity are disclosed in U.S. Pat. No. 8,622,314, which is incorporated by reference herein in its entirety for all purposes.
TheHVAC system20 illustrated inFIG. 1 includes aninterior unit22 and anexterior unit24 and is controlled by thethermostats16A and16B, which are illustrated as wall-mounted devices. As discussed in detail below with respect toFIG. 2, theinterior unit22 and theexterior unit24 of theHVAC system20 include a number of components that cooperate to condition (e.g., cool, heat, humidify, dehumidify, ventilate, etc.) interior portions of thestructure10 based on control signals supplied by thethermostats16A and16B. It should be appreciated that theHVAC system20 illustrated inFIG. 1 is merely provided as an example, and the present approach is also applicable to more complicated HVAC systems having any suitable numberinterior units22 andexterior units24 to manage the temperature of thestructure10. Further, it should be appreciated that, while certain descriptions and examples set forth below may describe the activities of a single occupant for simplicity sake, embodiments of the present approach are applicable to anystructure10 having one or more occupants at particular times.
In addition to theHVAC system20, the “smart”residential structure10 illustrated inFIG. 1 may include other systems (e.g., automation systems, security systems, power management systems, and so forth) that may be communicatively coupled to theHVAC system20 to better manage the temperature of thestructure10. For example, as set forth above, in certain embodiments, thecontroller15 may be a controller for a home automation system that may manage the lighting (e.g., light fixtures14) throughout thestructure10. The home automation systems may, additionally or alternatively, include other “smart” appliances (e.g., anautomated pool heater25, an automatedgarage door system26, and automatedlawn watering system27, an automated frontdoor locking device28, and so forth) to allow an occupant to monitor, manage, or control systems and components of thestructure10. In other embodiments, thecontroller15 may, additionally or alternatively, be a controller for a home security system that may include thesensors12 as well as other security features (e.g.,window sensors30,door entry sensors32, and so forth) to allow an occupant to manage security features of thestructure10. Additionally, in certain embodiments, thecontroller15 may be communicatively coupled to thethermostats16A and16B to exchange information about activities of occupants and/or devices of thestructure10.
Further, the “smart”residential structure10 illustrated inFIG. 1 has a power management system that includes the “smart”power meter34, which may provide information to the “smart” appliances associated with the structure10 (e.g., thethermostats16,refrigerator36,dishwasher38, electric vehicle (EV)39,EV charging station40,water heater42,exercise equipment43,washer44,dryer46,television47, or any other suitable “smart” appliance of the structure10) regarding the current price of power, the current load on the power grid, power usage statistics of thestructure10, and so forth, such that the “smart” appliances may operate only at particular times to reduce power costs and/or improve overall efficiency of thestructure10. Accordingly, one or more components of each of the described control systems (e.g., a home automation system, a home security system, etc.) of thestructure10 may be communicatively coupled (e.g., via a wireless or wired networking interface, discussed in detail below) to at least onethermostat16 of theHVAC system20 and provide data inputs to the processor of thethermostat16 for use in determining and implementing temperature setpoints, as discussed in detail below. It may be appreciated that, in certain embodiments, one or more of the components of thestructure10, such as thesensors12 discussed in detail below, may be directly coupled to, or part of, the HVAC system20 (e.g., rather than being part of another system of thestructure10 that is indirectly coupled to the HVAC system20).
With the foregoing in mind, thesensors12 distributed throughout thestructure10 illustrated inFIG. 1 may each include a number (e.g., 1, 2, 3, 4, 5, or more) sensing devices capable of performing one or more measurements of the surrounding environment in and around thestructure10. As set forth in detail below, the measurements performed by thesesensors12 provide inputs (e.g., directly or indirectly) to theHVAC system20, and potentially other systems (e.g., automation systems, security systems, etc.) of thestructure10, that may be used to determine how many occupants may be in thestructure10, where occupants may be located within thestructure10, and what types and/or levels of activity these occupants may be performing For example, in certain embodiments, thesensors12 may include a thermal or acoustic motion sensing device capable of detecting occupancy (e.g., presence of one or more occupants) and/or occupant activities (e.g., movement or actions of the one or more occupants). By further example, in certain embodiments, thesensors12 may include an acoustic monitoring device, such as a microphone, capable of measuring sounds of different intensities and/or frequencies as a measure of occupancy and/or particular occupant activities within portions of thestructure10. In certain embodiments, the acoustic monitoring device of thesensors12 may be paired with an ultrasonic emitter to enable the acoustic monitoring device to perform sonar measurements as a measure of occupancy and/or occupant activities within portions of thestructure10.
By further example, in certain embodiments, thesensors12 may include visible or infra-red (IR) light sensing devices (e.g., passive IR sensors) capable of measuring occupancy and/or occupant activity within portions of thestructure10.
For example, in certain embodiments, thesensors12 may include an IR sensing device that is capable of measuring a temperature of an occupant to provide indication of a level of activity of the occupant. In certain embodiments, thesensors12 may include cameras (e.g., visible light and/or IR cameras, such as cameras of a security system) capable of capturing visual images of the occupant that may analyzed (e.g., by thecontroller15 or the thermostats16) to determine occupancy and/or occupant activities in portions of thestructure10. For example, in certain embodiments, video or image data from such visible light orIR camera sensors12 may be analyzed using any number of facial, voice, and/or gait recognition algorithms or techniques.
In certain embodiments, thesensors12 may include vibration sensing devices capable of subtle movements within thestructure10 as an indication of occupancy and/or occupant activity within portions of thestructure10. Thesensors12 may, in certain embodiments, include air pressure sensors capable of measuring air pressure changes (e.g., caused by opening and closing of doors of thestructure10, caused by respiration and/or motion of the occupants) as an indication of occupancy and/or occupant activity within portions of thestructure10. In certain embodiments, thesensors12 may include gas analysis devices capable of detecting presence or levels of smoke, carbon monoxide, water vapor, methane, and/or carbon dioxide, which may provide a measure of occupancy and/or particular occupant activities (e.g., cooking, exercising, smoking, etc.) within portions of thestructure10. Additionally, in certain embodiments, thesensors12 may include temperature sensing devices (e.g., thermocouples or IR sensors) capable of measuring one or more temperatures within thestructure10, which may also provide a measure of occupancy and/or occupant activity within portions of thestructure10.
Additionally, in certain embodiments, thesensors12 may include flow sensing devices that may, for example, be coupled to the plumbing ofshower54, thebathroom sink56, thewashing machine44, thedishwasher38, thekitchen sink58, thewater heater42, toilets (not shown), and so forth, to provide a measure of occupancy and/or occupant activities (e.g., bathing, washing dishes, washing clothes, flushing toilets, etc.) within particular portions of thestructure10. Similarly, in certain embodiments, thesensors12 may include flow sensing devices coupled to one or more natural gas conduits of the structure10 (not show) that, for example, may be coupled to therange60, thewater heater42, thedryer46, and or other components of thestructure10. Such flow sensors may also provide a measure of occupancy and/or certain occupant activities (e.g., bathing, washing dishes, cooking, etc.) within particular portions of thestructure10
In certain embodiments, thesensors12 may include electromagnetic sensing devices that are capable of measuring electromagnetic signals. For example, in certain embodiments, an electromagnetic sensing device of thesensors12 may measure the electrical magnetic interference (EMI) or electrical noise generated by the operation of electronic devices, which may provide a measure of occupancy and/or occupant activities (e.g., drying hair with a hair dryer, preparing toast using a toaster oven, heating coffee in a microwave, and so forth) in a portion of thestructure10. In certain embodiments, the electromagnetic sensing device may measure an EMI signal generated in free space (e.g., through the air) or an EMI signal generated within the electrical circuit (e.g., electrical noise on the circuit being used) a result of the operation of the electrical device in a portion of thestructure10. In certain embodiments, thesensors12 may include electromagnetic sensing devices capable of measuring the load on an electrical circuit of the structure, which may provide another measure of occupancy and/or occupant activities (e.g., activation of thedryer46, activation of thedishwasher38, activation or deactivation of the EV charging station40) in a portion of thestructure10.
By further example, in certain embodiments, the electromagnetic sensing devices of thesensors12 may measure one or more attributes of a wireless communication signal, such as a wireless signal generated by acellular phone48, acomputer50, and/or a router52 (e.g., a wireless router or wireless access point). By specific example, thesensors12 may detect movement of thecellular phone48 throughout the structure10 (e.g., in the pocket or purse of the occupant) by measuring a progressively changing intensity of one or more wireless communication signals (e.g., cellular signals, WiFi data signals, Bluetooth® signals, etc.) emitted by thecellular phone48 as it is carried through thestructure10 by the occupant. In certain embodiments, thesensors12 may instead measure the totality of wireless communication signals currently being generated as an indication of occupancy and/or occupant activities (e.g., checking email, web surfing, streaming media, etc.) within a portion of thestructure10. In still other embodiments, thesensors12 may continually or intermittently monitor one or more wireless communication signals (e.g., wireless signals generated by the router52) and may provide a measure of occupancy and/or occupant activity based on distortions to these signals that are caused by the motion or activity of the occupant. In another embodiment, thesensors12 may instead measure a total wireless signal or a total wireless signal of a particular channel of a wireless network (e.g., 802.11 WiFi channel 6) as an indication of occupancy or occupant activity within thestructure10. It may be appreciated that such an embodiment may enable a level of wireless network traffic to be gauged bysensors12 that are not necessarily attached to (e.g., authenticated with) the wireless network.
As mentioned above, theHVAC system20 may generally function to control the environment, such as the temperature and humidity, inside thestructure10.FIG. 2 is a schematic illustrating certain components of an embodiment of theHVAC system20, which may be a residential or light commercialstructure HVAC system20. As discussed above, one or more thermostats (e.g.,thermostat16A andthermostat16B) are coupled directly or indirectly to theHVAC system20 to control its operation. By specific example, each of thethermostats16A and16B may be a Learning Thermostat™ available from Nest Labs of Palo Alto, Calif. As illustrated inFIG. 2, a first orprimary thermostat16A may be directly coupled to acontrol unit70 of theinternal unit22 of the HVAC system20 (e.g., via one or more signal wires72), such that thethermostat16A may provide control signals to thecontrol unit70 to initiate heating or cooling by the illustratedHVAC system20. Additionally, the embodiment of theHVAC system20 illustrated inFIG. 2 includes a second orsecondary thermostat16B that may be communicatively coupled to theprimary thermostat16A (e.g., via wireless communication link74) such that the primary andsecondary thermostats16A and16B may cooperate to determine the appropriate control signals to be provided to thecontrol unit70 to affect heating or cooling of thestructure10.
Additionally, for embodiment of theHVAC system20 illustrated inFIG. 2, theinterior unit22 of theHVAC system20 includes cooling coils76, heating coils78, as well as afan80. During operation, thefan80 directs anair flow82 to enter theHVAC system20 via thereturn air duct84 and to traverse thefilter86. From there, thefan80 directs theair flow82 into theinterior unit22, across the heating coils78 and cooling coils76, and out of theinterior unit22, where theairflow82 is subsequently distributed throughout thestructure10 byducts88 and registers90. In the case of heating, theairflow82 may be warmed when moving across the heating coils78 of theinterior unit22 of theHVAC system20.
In the case of cooling, heat may be removed from theairflow82 by the cooling coils76 of theinterior unit22 and transferred to a coolant disposed inside of the cooling coils76. The coolant may subsequently be directed to aheat exchanger92 of theexterior unit24 of theHVAC system20 via afirst conduit94. After cooling within theheat exchanger92, the coolant may subsequently be directed to thecompressor96 of theexterior unit24 of theHVAC system20 for compression. Then, the compressed coolant may be directed back to the cooling coils76 of theinterior unit22 via theconduit98 to once again cool theairflow82. It should be appreciated that theHVAC system20 illustrated inFIG. 2 is provided merely as an example and that other embodiments may include additional components (e.g., humidifiers/dehumidifiers, furnaces, air handlers, fans, and so forth) and/or additional features (e.g., multi-stage heating and/or cooling) without negating the effect of the present approach.
As set forth above, the measurements performed by thesensors12 may be consumed by thethermostats16 of theHVAC system20 to determine occupancy and/or occupant activities within portions of thestructure10. As set forth in detail below, thethermostats16 may use this sensor data, as well as other measurements or observations, to determine occupancy and/or occupant activity information and then to modify (e.g., temporarily or permanently) a temperature setpoint schedule for thestructure10 based on this occupancy and/or occupant activity information. With the foregoing in mindFIG. 3 is a schematic illustrating certain internal components of an embodiment of athermostat16 as well ascertain data inputs110 that may be used by thethermostat16.
The illustrated embodiment of thethermostat16 ofFIG. 3 includes aprocessor112 configured to execute instructions (e.g., software or firmware) stored in amemory114 to control operation of thethermostat16 and to generally manage the temperature of thestructure10 according to the preferences of the occupant. Thethermostat16 illustrated inFIG. 3 also includes communication circuitry116 (e.g., network interface circuitry) that, as discussed in detail below, is configured to enable thethermostat16 to communicate with other devices and systems. The illustrated embodiment of thethermostat16 also includes input devices118 (e.g., knobs, wheels, touchscreens, buttons, dials, or other suitable input devices) to enable a user to directly interface with thethermostat16 to provide, for example, occupant temperature preferences. The illustratedthermostat16 further includesdisplay circuitry120 capable of presenting a graphical user interface (GUI) to display information to the user. Further, the illustratedthermostat16 also includes a number of (e.g., 1, 2, 3, 4, or more)sensors122, which may, in certain embodiments, include any combination of thesensors12 discussed above that may be disposed on or coupled to thethermostat16. For example, in certain embodiments, thesensors122 may include one or more of the temperature sensing devices, acoustic sensing devices, visible or IR sensing devices, vibration sensing devices, air pressure sensing devices, or EMI sensing devices discussed above.
Thecommunication circuitry116 of thethermostat16 may include various wired and/or wireless networking interfaces that enable thethermostat16 to receivevarious data inputs110. For example, thecommunication circuitry116 may include 802.xx (e.g., 802.11 a/b/g/n/ac) wireless networking interface to enable thethermostat16 to communicatively couple to therouter52, which may be the central internet communication hub for thestructure10. That is, therouter52 may host the computer network of thestructure10 and may provide wired and/or wireless access to the network as well as the internet for the devices of thestructure10. Accordingly, thecommunication circuitry116 may enable thethermostat16 to interact with certain online resources124 (e.g., online thermostat management resources, online temperature setpoint schedule backup resources, historical temperature profile information for thestructure10, and so forth) via its connection to therouter52. It may be appreciated that the network illustrated inFIG. 3 is merely provided as an example and that, in other embodiments, thethermostat16 may directly communicate with the illustrated devices without the router52 (e.g., in a wireless mesh network, or similar topology).
Additionally, being coupled to the computer network of the structure10 (e.g., hosted by the router52) may enable thethermostat16 interact with certain data inputs110 (e.g., data sources) also coupled to therouter52 in order to detect or determine occupancy and/or occupant activity in thestructure10. For example, as discussed above with respect toFIG. 1, in certain embodiments thethermostat16 may receive information fromautomation systems126,security systems128, and/orpower management systems130 to determine information relevant to occupancy and/or occupant activity within portions of thestructure10. Also, as mentioned above, in certain embodiments thethermostat16 may receive information directly fromsensors12 positioned throughout thestructure10 relevant to occupancy and/or occupant activity within portions of thestructure10. Further, one or more of the “smart”appliances132 of thestructure10 discussed above may be also coupled to therouter52, which may enable thethermostat16 to determine information (e.g., modes of operation, operation schedules, access or usage schedules, maintenance schedules, and so forth) for these appliances, which may be used to determine or predict occupancy and/or occupant activity within portions of thestructure10.
Further, as illustrated inFIG. 3, since thethermostat16 is coupled to therouter52, thethermostat16 may also detect the presence or activity of certain devices communicating on the computer network hosted by therouter52. For example, in certain embodiments, thethermostat16 may be able to detect network traffic being generated by acomputer50,cell phone48,television47, video game consoles136, streamingmedia devices138, or any other networked device of thestructure10, which may be used as a measure of occupancy and/or occupant activity within portions of thestructure10. By specific example, in certain embodiments, a spike in network traffic by one or more of the devices listed above may indicate that an occupant is actively using a device (e.g., television47) that may be associated with a particular portion of the structure10 (e.g., the living room or den). Further, in certain embodiments, thethermostat16 may receive information regarding the current location (e.g., global positioning system (GPS) coordinates or cellular phone location coordinates) of the occupant from one or more data inputs110 (e.g., thecellular phone48, thecomputer50, a navigation system of the EV39), which may be use to determine present activity and predict future activity of the occupant. For example, thethermostat16 may determine that the occupant is present or away or to predict when the occupant may arrive at thestructure10 based on such occupant location information.
Furthermore, being coupled to the computer network of thestructure10 may also enable thethermostat16 to interact withcertain data inputs110 to predict future occupancy and/or occupant activities in thestructure10. For example, in certain embodiments, an occupant may enable thethermostat16 to access occupant schedule information from one ormore data inputs110. By specific example, an occupant may maintain an agenda or schedule on thecomputer50, on thecellular phone48, or using anonline resource124, and the occupant may further grant thethermostat116 access to the occupant's schedule on one or more of these devices or resources. In certain embodiments, thethermostat16 may be able to access other occupant information from thecomputer50,cellular phone48, and/oronline resources124, such as, for example, the occupant's e-mails, notes, instant messages, to-do lists, or any other suitable data source storing information relevant to predicting future activities of the occupant. For example, in certain embodiments, thethermostat16 may access a Passbook® app, or another suitable app or application of thecellular phone48 storing event and travel ticket information , to glean information about future outings and/or travels of the occupant. By further example, in certain embodiments, the thermostat may access one or more scheduled alarms of an alarm app or application of thecellular phone48 to glean information useful in predicting when the occupant may wake the following day. Accordingly, thethermostat16 may utilize one or more of these resources to predict future occupancy and/or occupant activity in thestructure10. Specific examples of such embodiments are set forth in greater detail below.
As mentioned above, thethermostat16 is capable of receiving occupant temperature preferences to construct a temperature setpoint schedule for thestructure10.FIG. 4 is a flow diagram illustrating an embodiment of aprocess150 by which theprocessor112 of thethermostat16 may determine a temperature setpoint schedule based on a combination of occupant temperature preferences and collected occupant activity data. It should be appreciated that the illustratedprocess150 represents one possibility for how a temperature setpoint schedule may be constructed and, in other embodiments, other methods may be used without negating the effect of the present approach. In certain embodiments, theprocess150 may incorporate one or more features of the methods for automated control-schedule acquisition set forth in U.S. Pat. No. 8,630,740, which is incorporated by reference herein in its entirety for all purposes.
With the foregoing in mind, the illustratedprocess150 ofFIG. 4 begins with theprocessor112 of thethermostat16 activating learning mode (block152). In certain embodiments, theprocessor112 may activate learning mode in response to user input (e.g., received from input devices118). In certain embodiments, theprocessor112 of thethermostat16 may be preprogrammed to begin operation in learning mode by default after installation. While learning mode is activated, theprocessor112 may receive (block154) user input at a particular time requesting a particular temperature. In response, theprocessor112 of thethermostat16 provides control signals (block156) theHVAC system20 to adjust a temperature ofstructure10 according to the occupant temperature preference. Further, theprocessor112 stores (block158) both the temperature and the time associated with the user input in thememory114 for trend analysis. Additionally, in certain embodiments, theprocessor112 may also collect and store (block160) occupant activity data around the time associated with the user input for trend analysis.
Throughout learning mode operation, after each user input is received, theprocessor112 of thethermostat16 analyzes (block162) the time, temperature, and occupant activity data associated with the current user input relative to the time, temperature, and occupant activity data associated with previous user inputs and attempt to identify trends. If theprocessor112 identifies (block164) a trend or correlation between the time, temperature, and occupant activity data associated with the current user input and the time, temperature, and occupant activity data associated with previous user inputs, theprocessor112 may create (block166) or modify a temperature setpoint of the temperature setpoint schedule based on the correlation. For example, when theprocessor112 identifies that the occupant has a tendency to request a temperature of about 70° F. at 4:30 PM every Monday, then theprocessor112 may create a temperature setpoint having an associated temperature of 70° F. and an associated time of 4:30 PM on Monday. Furthermore, in creating the temperature setpoint, in certain embodiments, theprocessor112 may utilize the occupant activity data to identify occupant activity types or degrees that occur around the time (e.g., just prior and just after the time) associated with the temperature setpoint. As discussed in greater detail below, this occupant activity data may be used to define the parameters (e.g., exception time windows, occupant activity indicators) for occupant activity-based exceptions for the created temperature setpoint, as discussed in greater detail below. As indicated by thearrows165 and167, blocks152 through166 may be repeated with every user input that occurs while thethermostat16 is in learning mode.
It may be appreciated that, in certain embodiments, the learning mode of theprocessor112 may be more aggressive for an initial period of time in order for an initial temperature setpoint schedule to be generated. For example, theprocessor112 may initially add a temperature setpoint or change a temperature setpoint of the temperature program after only two instances of a user requesting a particular temperature near the same time of day. Then, after an initial temperature program is generated, the learning mode of theprocessor112 may be less aggressive and only modify the temperature setpoint schedule after several deviations (e.g., four or more deviations) from the current temperature program are observed in the user inputs and/or the occupant activity data. In certain embodiments, thethermostat16 may remain in learning mode and may continue learning the temperature preferences of the occupant throughout operation, albeit in a less aggressive manner than when the learning mode was initially activated. In other embodiments, after a period of time (e.g., a day, week, fortnight, or month) has passed, theprocessor112 may deactivate the learning mode of thethermostat16. In still other embodiments, theprocessor112 may deactivate the learning mode of thethermostat16 in response to user input requesting such deactivation.
FIG. 5 depicts a visual representation of an embodiment of atemperature setpoint schedule170 such as may be generated as an output of theprocess150 illustrated inFIG. 4. Thetemperature setpoint schedule170 illustrated inFIG. 5 includes the days of theweek172 on the vertical axis and includes the hours of theday174 on the horizontal axis. Additionally, thetemperature setpoint schedule170 includes a number oftemperature setpoints176 indicating a particular time and a particular temperature associated with each of thetemperature setpoints176. That is, as illustrated inFIG. 5, thetemperature setpoints176 indicate particular times using their respective positions in thetemperature setpoint schedule170 and indicate particular temperatures using the numerical values respectively displayed by each of the illustratedtemperature setpoints176. Accordingly, as thethermostat16 is trained according to the temperature preferences of the occupant during learning mode, thethermostat16 may generate thetemperature setpoint schedule170 and may control operation of theHVAC system20 to implement thetemperature setpoint schedule170 in an efficient manner.
Additionally, in certain embodiments, thethermostat16 may also accommodate occupant activity-based exceptions to thetemperature setpoint schedule170. For example, as set forth above, in certain embodiments thethermostat16 may collect and store occupant activity data from one or more sensors (e.g.,sensors12 and/orsensors122 discussed above) and/or data sources (e.g., data inputs110), which may be used by theprocessor112 to determine where in thestructure10 occupants may be located and/or what type or degree of activity these occupants may be performing As set forth above with respect toFIG. 4, when theprocessor112 creates or modifies a particular temperature setpoint based on user input, theprocessor112 may associate the time and temperature of the user input with a particular occupant activity data collected around the time of the user. For example, the occupant activity data may be indicative of a first type or degree of occupant activity that occurs before the user input, and may be indicative of a second type or degree of occupant activity (different from the first in a statistically detectable manner) that occurs after the user input. Accordingly, when theprocessor112 creates or modifies a temperature setpoint based on the user input, theprocessor112 may define an exception time window around (e.g., before, after, or both before and after) a temperature setpoint, and an exception may be triggered by a statistically detectable change in the type or degree of occupant activity within the exception time window (e.g., from a first type or degree of occupant activity occurring prior to the time associated with a temperature setpoint to a second type or degree of occupant activity occurring subsequent to the time associated with the temperature setpoint) to cause the early or late implementation of the temperature associated with the temperature setpoint.
By specific example, a sensor associated with thethermostat16 may identify a pattern in which an occupant tends to move at particular times (e.g., Monday evenings around 6:00 PM) to a particular portion of the structure10 (e.g., a home gym) just prior to providing a user input requesting a cooler temperature (e.g., 70° F.). As such, in addition to creating a temperature setpoint for Monday evening at 6:00 PM, theprocessor112 may associate the occupant's movement to the home gym area with the created temperature setpoint. Further, in certain embodiments, theprocessor112 may continue to collect occupant activity data around the time of the temperature setpoint for a period of time (e.g., during the more aggressive portion of learning mode) to determine how much the workout time may vary in order to define an exception time window for the temperature setpoint, as discussed below. Once the exception window has been defined, when theprocessor112 detects or predicts the change in the type or degree of occupant activity (e.g., the occupant's movement to the home gym area) during the exception window, the processor may implement the temperature associated with the temperature setpoint (i.e., 70° F.) early or late, relative to the 6:00 PM time associated with the temperature setpoint, in response to the detected or predicted change.
In another example, a sensor associated with thethermostat16 may identify a pattern in which an occupant tends request a warmer temperature (e.g., 78° F.) immediately after rising from bed around 5:00 AM on weekdays. As such, in addition to creating temperature setpoints for weekday mornings at 5:00 AM, theprocessor112 may associate the low level of occupant activity before the user input and/or the higher level of occupant activity after the user input with each of the created temperature setpoints. Further, in certain embodiments, theprocessor112 may continue to collect occupant activity data around the times of the temperature setpoints for a period of time (e.g., during the more aggressive portion of learning mode) to determine how much the wake time of the occupant may vary in order to define exception time windows around the temperature setpoints, as discussed below. Once the exception window has been defined, when theprocessor112 detects or predicts the change in the type or degree of occupant activity (e.g., the occupant's waking and rising from bed) during the exception window, the processor may implement the temperature associated with the temperature setpoint (i.e., 78° F.) early or late, relative to the 5:00 AM time associated with the temperature setpoint, in response to the detected or predicted change.
At some point after learning trends between the user inputs and the occupant activity data, theprocessor112 may be capable of determining if exceptions should be made to the implemented temperature setpoint schedule based on observed or predicted occupant activity types or degrees. For example, in certain embodiments, after the aggressive portion of learning mode is completed, thememory114 of thethermostat16 may store sufficient trends between the user inputs and the occupant activity data that theprocessor112 may be able to determine if particular temperature setpoint, associated with a particular occupant activity type or degree or associated with a change from a first type or degree of occupant activity to a second type or degree of occupant activity, should be implemented early or late based on an observation or a prediction of the change in the particular occupant activity type or degree. Accordingly, theprocessor112 may make an exception to thetemperature setpoint schedule170 and implement a temperature setpoint at a time different (e.g., earlier or later) than the time associated with the temperature setpoint based on detected or predicted types or degrees of occupant activity (e.g., a statistically detectable change in the type or degree of occupant activity). As discussed below with respect toFIG. 11, in certain embodiments, theprocessor112 of thethermostat16 may also be capable of permanently modifying thetemperature setpoint schedule170 after multiple occurrences of such occupant activity-based exceptions to the schedule.
In certain embodiments, thethermostat16 may monitor inputs fromsensors12 and/or122, user inputs, and/orother data inputs110 for some period or window of time (e.g., an exception time window) extending before and/or after a particular temperature setpoint to determine if an occupant activity-based exception has occurred. As mentioned above, in certain embodiments, the position and duration of an exception time window of a temperature setpoint may be determined based on how the occupant activity data varies during the period of time that theprocessor112 of thethermostat16 is actively learning the relationship between the occupant temperature preference and the occupant activity (e.g., during an aggressive portion of learning mode). For example, while actively or aggressively learning the relationship between occupant temperature preference and the occupant activity, theprocessor112 may be able to determine, for example, variation in the start time of the occupant activity (e.g., the occupant generally exercises at 6:00 PM, but may start as early as 5:00 AM or as late as 6:30 PM), variation in the duration of the occupant activity (e.g., the occupant generally exercises for between 30 minutes to 1 hour), variation in the location of the occupant activity within the structure10 (e.g., the occupant generally exercises in a home gym, but occasionally exercises in basement instead), and/or variation in the level or degree of the occupant activity (e.g., the occupant generally has a high to a medium level of activity while exercising). Based on the determined variations in occupant activity data around a temperature setpoint, theprocessor112 may determine an exception time window extending before, after, or before and after the temperature setpoint should be used. Once theprocessor112 has determined the appropriate exception window and the changes in the types and/or degrees of occupant activity that will trigger an exception, theprocessor112 may implement the temperature associated with the temperature setpoint earlier or later in response to the changes in the types and/or levels of occupant activity being observed or predicted to occur within the exception time window.
With this in mind,FIGS. 6-10 illustrate examples of exception time windows surrounding aparticular temperature setpoint176, which has an associated temperature of 68° F. and an associated time of 5:00 AM on Monday morning. Additionally, for the examples discussed below, thetemperature setpoint176 illustrated inFIGS. 6-10 is associated with a particular occupant activity, namely waking and rising from bed. As discussed in detail below, the time windows illustrated inFIGS. 6-10 are intended to demonstrate different periods of time in which theprocessor112 of thethermostat16 may respond to a detected or predicted activity of an occupant to temporarily modify the time associated with thetemperature setpoint176. Further, it may be appreciated that the time windows ofFIGS. 6-10 are merely provided as non-limiting examples. As set forth above, the exception time windows illustrated inFIGS. 6-10 may be automatically defined by theprocessor112 of thethermostat16 based on variations in the occupant activity data occurring around the time associated with the particular temperature setpoint176 (e.g., collected during an aggressive learning portion of learning mode). In other embodiments, these exception windows may be created and/or modified based on user input received from an occupant.
With the forgoing in mind,FIG. 6 illustrates an example of anexception time window180 that extends before the time associated with thetemperature setpoint176. In particular, thetime window180 illustrated inFIG. 6 begins an hour and a half prior to the 5:00 AM time associated with thetemperature setpoint176. Accordingly, if theprocessor112 of thethermostat16 determines or predicts the occurrence of an associated occupant activity or activity level during thetime window180, theprocessor112 may implement thetemperature setpoint176 early (e.g., prior to the normal time associated with the temperature setpoint176) to provide the 68° F. temperature associated with thetemperature setpoint176 sooner. That is, for example, if thesensors12 and/or122 provide theprocessor112 with indications that the occupant is active (e.g., indications of a change in occupant activity type or degree) during theexception time window180, theprocessor112 may make an exception and temporarily move up the time associated with thetemperature setpoint176 to accommodate the occupant's early rise. It may be appreciated that the hour and ahalf time window180 illustrated inFIG. 6 is merely an example and that, in other embodiments, other suitable lengths of time may be used.
FIG. 7 illustrates an example of anexception time window182 that extends after the time associated with thetemperature setpoint176. Theexception time window182 illustrated inFIG. 7 extends an hour and a half after the 5:00 AM time associated with thetemperature setpoint176. Accordingly, if theprocessor112 of thethermostat16 determines or predicts the occurrence of an associated occupant activity or activity level during theexception time window182, theprocessor112 may delay implementing thetemperature setpoint176. That is, if thesensors12 and/or122 provide theprocessor112 with indications that the occupant is not active at the 5:00 AM time associated with thetemperature setpoint176, theprocessor112 may make an exception and temporarily move back the time associated with thetemperature setpoint176 to accommodate the occupant sleeping late. For this example, the end of the illustrated exception time window182 (e.g., at 6:30 AM) represents the latest time that theprocessor112 may implement thetemperature setpoint176, regardless of occupant activity. It may be appreciated that the hour and a half timeexception time window182 illustrated inFIG. 7 is merely an example and that, in other embodiments, other suitable lengths of time may be used. In other embodiments, theprocessor112 may implement thetemperature setpoint176 at the time associated with thetemperature setpoint176 instead of the end of theexception time window182 when the change in occupant activity has not been observed or predicted.
FIG. 8 illustrates an example of a symmetricexception time window184 that extends an equal amount of time before and after the time associated with thetemperature setpoint176. In particular, theexception time window184 illustrated inFIG. 8 begins an hour and a half before and extends an hour and a half after the 5:00 AM time associated with thetemperature setpoint176. Accordingly, theexception time window184 affords features of both theexception time window180 and theexception time window182 discussed above. That is, theexception time window184 enables theprocessor112 of thethermostat16 to either implement thetemperature setpoint176 earlier or later, depending on a change in the type or degree of occupant activity. It may be appreciated that the three hourexception time window184 illustrated inFIG. 8 is merely an example and that, in other embodiments, other suitable lengths of time may be used.
FIG. 9 illustrates an example of an asymmetricexception time window186 that extends an unequal amount of time before and after the time associated with thetemperature setpoint176. Theexception time window186 illustrated inFIG. 9 begins an hour and a half before and extends half an hour after the 5:00 AM time associated with thetemperature setpoint176. Like thesymmetric time window184 discussed above, thetime window186 enables theprocessor112 of thethermostat16 to either implement thetemperature setpoint176 earlier or later, based on a change in the type or degree of occupant activity. However, unlike theexception time window184, theexception time window186 illustrated inFIG. 9 allows for, at most, a 30 minute delay in the implementation of thetemperature setpoint176. It may be appreciated that the two hourexception time window186 illustrated inFIG. 7 is merely an example and that, in other embodiments, other suitable lengths of time may be used.
FIG. 10 is an illustration of a statisticalexception time window188 extending before and after atemperature setpoint176. The statisticalexception time window188 ofFIG. 10 is illustrated using a gradient that is darker at times closer to the 5:00 AM time associated with thetemperature setpoint176 and lighter at times farther away from the 5:00 AM time associated with thetemperature setpoint176. Accordingly, the shading of thestatistical time window188 represents a relative importance of or weight given to occupant activities determined or predicted to occur within the statisticalexception time window188, wherein events occurring closer to the 5:00 AM time associated with thetemperature setpoint176 are considered more important and/or are given higher weight. This may be useful, for example, when theprocessor112 is trying to determine whether the occupant is getting up early for work or merely getting up in the middle of the night to use the restroom. Accordingly, in certain embodiments, a certain amount of occupant activity (e.g., motion sensors detect movement of the occupant, flow sensors detect activity within the plumbing, acoustic sensors detecting occupant noises, vibration sensors detecting vibrations in thestructure10 as a result of occupant movement or activity, and/or similar measurements of thesensors12 and/or122) may only be given sufficient weight by theprocessor112 to trigger early or delayed implementation of thetemperature setpoint176 when the activity occurs sufficiently close to the time associated with the temperature setpoint176 (e.g., within 1 hour of 5:00 AM). However, if the level of occupant activity is high at a time that is distant from the 5:00 AM time associated with thetemperature setpoint176, then theprocessor112 may determine whether or not the combination of the high-level of occupant activity and the weight of the time of the occupant activity together is sufficiently great (e.g., exceeds a particular threshold value) to warrant early or delayed implementation of thetemperature setpoint176. Similarly, it may be appreciated that, in certain embodiments, thestatistical time window188 may extend a certain amount of time before and extend a certain amount of time after the time associated with thetemperature setpoint176.
Accordingly,FIGS. 6-10 illustrate examples of different types of exception time windows that may be used by theprocessor112 of thethermostat16 to determine when it is appropriate to temporarily move up or move back the implementation of aparticular temperature setpoint176 of atemperature setpoint schedule170 based on changes in observed or predicted occupant activity. As mentioned above, in certain embodiments, theprocessor112 of thethermostat16 may actually modify the time associated with a temperature setpoint schedule after multiple occupant activity-based exceptions have occurred. For example, in certain embodiments, theprocessor112 may store in thememory114 details (e.g., exception time, exception temperature, and associated temperature setpoint) for each exception that occurs while implementing the temperature setpoint schedule. In this example, after the number of exceptions associated with a temperature setpoint rises beyond a threshold value (e.g., 4 or more exceptions), then theprocessor112 may modify the time associated with the temperature setpoint to be the exception time.
In certain embodiments, theprocessor112 may not modify the temperature setpoint schedule as a result of occupant activity-based exceptions unless thethermostat16 is operating in an exception learning mode. For example,FIG. 11 illustrates an embodiment of aprocess190 whereby theprocessor112 of thethermostat16 may permanently modify thetemperature setpoint schedule170 based on one or more determined exceptions to thetemperature setpoint schedule170 using an exception learning mode. In certain embodiments, exception learning mode may be a mode of operation of thethermostat16 that may be activated after atemperature setpoint schedule170 has been generated. In certain embodiments, the exception learning mode may be manually activated by a user or automatically activated by theprocessor112 at a particular time (e.g., immediately after generation of thetemperature setpoint schedule170, three weeks after generation of thetemperature setpoint schedule170, every six months after generation of the temperature setpoint schedule170) or based on a set of conditions (e.g., a particular number of exceptions or a number of exceptions per unit time after generation of the temperature setpoint schedule170). In general, while activated, the exception learning mode of thethermostat16 may enable theprocessor112 to store in thememory114 relevant information regarding exceptions to thetemperature setpoint schedule170. Subsequently, in certain embodiments, theprocessor112 may permanently modify thetemperature setpoint schedule170 immediately (e.g., throughout the time exception learning mode is activated) or upon deactivation of the exception learning mode.
Theprocess190 illustrated inFIG. 11 begins with theprocessor112 of thethermostat16 receiving (block192) user input to activate exception learning mode after determining or generating the temperature setpoint schedule170 (e.g., as set forth above with respect toFIG. 4). Theprocessor112 may then activate (block194) the exception learning mode of thethermostat16. As mentioned above, in certain embodiments, theprocessor112 may automatically activate exception learning mode at a particular time or based on a set of conditions. Once exception learning mode has been activated, theprocessor112 may determine (block196) and store exceptions to thetemperature setpoint schedule170 based on user input (e.g., user input of a new temperature setpoint) and/or based on an occupant activity or an occupant activity level at particular times. For example, as discussed above with respect toFIG. 6, if theprocessor112 of thethermostat16 determines or predicts a certain change in occupant activity during thetime window180, theprocessor112 may make a temporary modification to thetemperature setpoint schedule170 to implement the temperature associated with thetemperature setpoint176 early based on the determined or predicted occupant activity. Furthermore, if thethermostat16 is an exception learning mode, theprocessor112 may also store information regarding the exception (e.g., in the memory114) for eventual permanent modification of thetemperature setpoint schedule170.
Continuing through theprocess190 illustrated inFIG. 11, theprocessor112 may deactivate (block198) the exception learning mode of thethermostat16 after a predetermined period of time (e.g., 1 day, 1 week, or 1 month) or in response to user input requesting the deactivation. In certain embodiments, after deactivation of the exception learning mode, theprocessor112 of thethermostat16 may determine (block200) a modifiedtemperature setpoint schedule170 based on the exceptions determined and stored when exception learning mode was active (e.g., in block196). For example, in certain embodiments, theprocessor112 may modify thetemperature setpoint schedule170 using the stored exceptions in the order received such that exceptions that would lead to conflicting changes in the temperature setpoint schedule170 (e.g., a first Monday the occupant began the day an hour early, a second Monday the occupant began the day an hour late) may be given preference based on order received (e.g., newest or oldest takes priority), may be averaged together to determine the appropriate time and temperature to be associated with the modified temperature setpoint, or may be eliminated altogether. Further, in certain embodiments, theprocessor112 may only permanently modify aparticular temperature setpoint176 when a number of exceptions of theparticular temperature setpoint176 exceeds a predetermined threshold value (e.g., 1, 2, 3, 4, 5, or more exceptions).
Furthermore, in certain embodiments, thethermostat16 may also be capable of providing a temperature program for thestructure10 that is based primarily or entirely on occupant activity or occupant activity level (e.g., an activity-based temperature program) rather than a temperature program based primarily on time (e.g., thetemperature setpoint schedule170 illustrated inFIG. 5). As set forth in detail below, in certain embodiments, theprocessor112 of thethermostat16 may determine a level of occupant activity within thestructure10 and may implement a corresponding temperature setpoint regardless of the time of day, or with time of day being a secondary consideration after occupant activity. For example, in certain embodiments, theprocessor112 may divide the length of a day into a number of intervals or windows based on statistically detectable changes in occupant activity types or degrees occurring within each window. Accordingly, theprocessor112 may create an occupant activity-based setpoint that associates a temperature requested by the occupant during a window with the statistically detectable change in an occupant activity type or degree that defines the window. Subsequently, theprocessor112 may determine that the statistically detectable change in occupant activity type or degree has occurred and implement the occupant activity-based setpoint accordingly. It may be appreciated that, in certain embodiments, such occupant activity-based temperature setpoints may coexist with time-based temperature setpoints within a single hybrid temperature program. In other embodiments, the occupant activity-based temperature setpoints may be part of an entirely occupant activity-based temperature program (e.g., a responsive temperature program) dependent entirely on occupant activity (e.g., does not consider time of day as a factor).
In certain embodiments discussed below, a user may utilize an activity learning mode of thethermostat16 to define particular occupant activities as well as occupant temperature preferences for each of these activities. Accordingly, in such embodiments, theprocessor112 of thethermostat16 may subsequently use measurements of one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 to identify the particular activity and provide a suitable temperature in thestructure10 based on the occupant temperature preference for that particular activity. With the foregoing in mind,FIG. 12 illustrates an example of an activity-basedtemperature program210 that is based on a level of occupant activity within thestructure10. As illustrated inFIG. 12, the activity-basedtemperature program210 indicatestemperature setpoints212A-D that respectively correspondoccupant activities214A-D. For the activity-basedtemperature program210 embodiment illustrated inFIG. 12, an activity level that corresponds to no occupant activity (e.g., represented byblock214A) is associated with thetemperature setpoint212A, corresponding to a temperature of 55° F. Additionally, a minimal level of occupant activity (e.g., represented byblock214B) is associated with thetemperature setpoint212B, corresponding to a temperature of 75° F. As illustrated, a median level of occupant activity (e.g., represented byblock214C) is associated with thetemperature setpoint212C, corresponding to a temperature of 70° F. Further, a high level of occupant activity (e.g., represented by theblock214D) is associated with thetemperature setpoint212D, corresponding to a temperature of 65° F.
It should be appreciated that, for embodiments of activity-basedtemperature program210 illustrated inFIG. 12, since thethermostat16 need not identify particular activities of the occupant, the activity-basedtemperature program210 illustrated inFIG. 12 may be generated and implemented with little or no user training. For example, in certain embodiments, a user activating the activity-basedtemperature program210 may be prompted to provide a temperature or a temperature range for each of the illustrated levels of occupant activity (e.g., no occupant activity, a minimal level occupant activity, a median level occupant activity, and a high level of occupant activity). As set forth below with respect toFIG. 15, after the activity-basedtemperature program210 has been generated, upon detecting or predicting an appropriate level of occupant activity from the sensors (e.g.,sensors12 and/or122) and/orother data inputs110, theprocessor112 of thethermostat16 may implement the corresponding temperature setpoint to provide a temperature or temperature range previously specified by the user. In other embodiments, upon activation of the activity-basedtemperature program210, the user may be prompted to provide only a temperature range (e.g., a temperature floor and a temperature ceiling) for all occupant activities within thestructure10, and theprocessor112 of thethermostat16 may automatically determinesuitable setpoint temperatures212A-D for different levels ofoccupant activity214A-D based on percentages of the temperature range. For example, in such embodiments, a minimal level of occupant activity may be associated with a temperature setpoint equal to the temperature ceiling minus 10% of the temperature range. By further example, in such embodiments, a median occupant activity may be associated with a temperature setpoint equal to the temperature floor plus approximately 50% of the temperature range.
In other embodiments, a user may desire thethermostat16 to recognize particular occupant activities and learn occupant temperature preferences for each of these activities. Accordingly, in certain embodiments, theprocessor112 of thethermostat16 may enable a user to construct an activity-based temperature program using an activity learning mode. When operating in activity learning mode, thethermostat16 may receive sensor data (e.g., fromsensors12 and/or122), user inputs (e.g., from input devices118), and orother data inputs110 that define particular occupant activities as well as occupant temperature preferences for these activities. With the foregoing in mind,FIG. 13 illustrates an embodiment of aprocess240 whereby theprocessor112 of thethermostat16 may determine an activity-based temperature program using activity learning mode. Theprocess240 illustrated inFIG. 13 begins when theprocessor112 of thethermostat16 receives (block242) user input requesting activation of the activity learning mode of thethermostat16. Subsequently, theprocessor112 may activate (block244) the activity learning mode of thethermostat16.
For the embodiment of theprocess240 illustrated inFIG. 13, once activity learning mode has been activated, theprocessor112 may receive and store (block246) information provided by the users, information provided by the sensors (e.g.,sensors12 and/or122), and potentially information from other data inputs (e.g., the detection of the network traffic of a particular device on the computer network), which may be used by theprocessor112 to define or characterize one or more types or degrees of occupant activity. It may be appreciated that the aforementioned activity learning mode may be implemented in a number of ways. For example, in certain embodiments, once activity learning mode has been activated, theprocessor112 may initially receive and store (e.g., in the memory114) information provided by the associated sensors (e.g.,sensors12 and/or122), user inputs (e.g., occupant temperature preferences), and/or other data inputs. Subsequently, theprocessor112 may group portions of the sensor and/or data inputs together to define generic activities (e.g., “Activity 1”, “Activity 2”, and so forth, based on statistically detectable differences in occupant activity types or degrees) paired with occupant temperature preferences received around the time of each occupant activity or in between statistically different types or degrees of occupant activity. Then, the user may subsequently provide user input to the processor112 (e.g., viainput devices118 and/or a software user interface communicatively coupled to the thermostat16) to provide more descriptive names (e.g., “Away”, “Sleeping”, “Cooking”, “Watching TV”, etc.) either through manual entry or by selecting names from a pre-populated list.
In other embodiments, once activity learning mode has been activated, before beginning an activity, a user may provide user input to the processor112 (e.g., viainput devices118 and/or a software user interface communicatively coupled to the thermostat16) naming a particular occupant activity (e.g., “Exercising”) and providing a desired setpoint temperature or temperature range for the occupant activity. Further, in certain embodiments, the user input may also inform theprocessor112 that the named occupant activity is about to begin or, alternatively, an expected time and duration for the occupant activity. As such, based on this user input, theprocessor112 may begin collecting sensor inputs (e.g., fromsensors12 and/or122) and/orother data inputs110 that may be used to define or characterize the named occupant activity. In certain embodiments, after completion of the activity, the user may provide user input to inform theprocessor112 that the occupant activity is complete. Furthermore, in certain embodiments, the user may provide user input to theprocessor112 to name the occupant activity and provide a setpoint temperature or temperature range for the occupant activity upon termination (rather than the onset) of the occupant activity.
Continuing through theprocess240 illustrated inFIG. 13, theprocessor112 of thethermostat16 may deactivate (block248) activity learning mode in response to user input or after a predetermined period of time (e.g., an hour, a day, a week, or a month) has passed. In certain embodiments, activity learning mode may enable thethermostat16 to learn only one occupant activity, and, therefore, activity learning mode may be successively activated/deactivated a particular number of times in order to teach the thermostat16 a particular number of occupant activities. In the final step of the illustratedprocess240, theprocessor112 may determine (block250) an activity-based temperature program for the one or more occupant activities based on the user inputs, sensor inputs, and/or other data inputs received and stored while activity learning mode was active.
FIG. 14 illustrates an embodiment of an activity-basedtemperature program260 such as may be generated via execution (e.g., one or more times) of theprocess240. The illustrated embodiment of the activity-basedtemperature program260 includes sevendifferent temperature setpoints262A-G, each of which are respectively associated with aparticular occupant activity264A-G. For example, theoccupant activity264C (e.g., “Exercising”) is associated with thetemperature setpoint262C (e.g., 60° F.). By further example, theoccupant activity264F (e.g., “Watching TV”) is associated with thetemperature setpoint262F (e.g., 70° F.). As such, it may be appreciated that thetemperature setpoints262A-G, as well as the names of theoccupant activities264A-G, may be based on user input provided to the thermostat16 (e.g., block246 of theprocess240 illustrated inFIG. 13). It may also be appreciated that each of theoccupant activities264A-G illustrated inFIG. 14 are also associated with sensor inputs and/or data inputs received and stored by thethermostat16 during activity learning mode (e.g., block246 of the process240).
Once an activity-based temperature program (e.g., activity-basedtemperature program210 or260) has been constructed, in certain embodiments, theprocessor112 of thethermostat16 may perform an embodiment of theprocess280 illustrated inFIG. 15 to implement the activity-based temperature program. The illustratedprocess280 begins when theprocessor112 receives (block282) user input requesting activation of an activity mode of thethermostat16. In certain embodiments, upon activation of activity mode, thethermostat16 may prompt the user to provide a minimum temperature (e.g., a temperature floor) and a maximum temperature (e.g., a temperature ceiling), and theprocessor112 may respect these limits throughout activation of activity mode, regardless of occupant activity.
Subsequently, as illustrated inFIG. 15, theprocessor112 may activate (block284) the activity mode of thethermostat16. In other embodiments, thethermostat16 may automatically enter activity mode after being trained in activity learning mode (e.g., using theprocess240 illustrated inFIG. 13). Once the activity mode of thethermostat16 has been activated, theprocessor112 of thethermostat16 may detect (block286) or predict an occupant performance of a defined activity using one or more of user input (e.g., the user informs thethermostat16 of a particular occupant activity), sensor input (e.g., fromsensors12 and/or122), andother data inputs110. In certain embodiments, theprocessor112 may utilize combinations of inputs (e.g., sensor input and other data inputs) to correctly detect and identify the occupant activity or occupant activity level. For example, in certain embodiments, theprocessor112 may receive weak indications of occupant movement from one or more vibration, acoustic, and/ormotion sensors12 of thestructure10. In this example, these weak indications alone may be insufficient for theprocessor112 to conclusively identify a defined occupant activity (e.g., rising from bed). However, in certain embodiments, theprocessor112 may consider other data inputs110 (e.g., a detected level of network activity on the computer network hosted by therouter52, activation of one or moresmart appliances132, or another suitable data input) in combination with the measurements of thesensors12. As such, theprocessor112 may determine that the weak indications from thesensors12, when considered in combination with theother data inputs110, are sufficient (e.g., beyond a threshold value) for theprocessor112 to conclusively identify the defined occupant activity or occupant activity level.
Additionally, as set forth inblock286 ofFIG. 15, theprocessor112 may also predict the occurrence of a defined occupant activity or activity level based on one or more of user inputs, sensor inputs, and other data inputs. For example, as set forth above with respect toFIG. 3, in certain embodiments theprocessor112 of thethermostat16 may be configured to interact with one or more devices or systems (e.g.,computer50,cellular phone48, and/or online resources124) to glean information regarding future activities of the occupant. By specific example, theprocessor112 of thethermostat16 may access a schedule of the occupant (e.g., calendar, agenda, and/or to-do list management applications) stored on thecomputer50 to predict when the occupant may perform one or more of the defined activities (e.g., cooking, cleaning, arriving home, waking up, and so forth). In another example, theprocessor112 may access the e-mail of the occupant (e.g., stored on thecellular phone48 or the computer50) to determine that the occupant is hosting a party in thestructure10 at a particular time. Accordingly, theprocessor112 may predict a high level of future occupant activity at the particular time of the party.
Continuing through theprocess280 illustrated inFIG. 15, after detecting or predicting a defined occupant activity, theprocessor112 may determine (block290) a temperature setpoint for theHVAC system20 based on the detected or predicted occupant activity or activity level. In certain embodiments, as set forth inFIG. 12, theprocessor112 may determine a desired temperature or temperature range based on the detected or predicted level of occupant activity. In other embodiments, as set forth above with respect toFIG. 13, the user may provide thethermostat16 with user inputs that define occupant temperatures preferences for each learned occupant activity. These occupant temperature preferences may be stored in thememory114 of thethermostat16 and later recalled upon detection or prediction of the occupant activity or activity level. Subsequently, theprocessor112 may control theHVAC system20 to implement (block292) the determined temperature setpoint. As indicated by thearrow294, the steps illustrated inblocks286,290, and292 may be repeated (e.g., continually or intermittently) to detect subsequent activities of the occupant. Further, in certain embodiments, at some point during the execution ofblocks286,290, or292, theprocessor112 may receive (block296) user input requesting deactivation of activity mode, and, in response, theprocessor112 may deactivate (block298) the activity mode of thethermostat16.
As discussed in detail below,FIGS. 16-19 illustrate a number of examples describing how embodiments of thethermostat16 may implement a time-based temperature program (e.g., the temperature setpoint schedule170) with exceptions based on predicted or determined occupant activity, implement an activity-based temperature program (e.g., the activity-basedtemperature programs210 or260) based on a predicted or determined occupant activity or activity level, and implement a hybrid temperature program that is a combination of both a time-based temperature program and an activity-based temperature program. Accordingly, it may be appreciated that the examples illustrated inFIGS. 16-19 are merely provided as examples and are not intended to limit the scope of the present approach.
EXAMPLE 1Activity-Based Temperature Program Based on a Level of Activity of the OccupantFIG. 16 is atimeline300 illustrating an example in which the thermostat16 (e.g., in activity mode, as discussed inFIG. 15) implements the embodiment of the activity-basedtemperature program210 set forth inFIG. 12. That is, thetimeline300 illustrates theactivities302 of theprocessor112 of thethermostat16 in response to a level of activity associated with each of theoccupant activities304. The example illustrated in thetimeline300 begins between 2:30 PM and 5:30 PM while the occupant is away at work (as indicated by block306). Accordingly, based on data from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110, theprocessor112 of thethermostat16 may determine (block308) that no occupant activity is occurring in a portion of thestructure10 and may implement thecorresponding temperature setpoint212A, which has an associated temperature of 55° F. In certain embodiments, the temperature associated with thetemperature setpoint212A may represent a temperature floor for the activity-basedtemperature program210 and/or the activity mode that may be based on user input.
Thetimeline300 illustrated inFIG. 16 continues as the occupant arrives home and immediately begins cooking (as indicated by block310) at 5:30 PM. Accordingly, theprocessor112 of thethermostat16 may receive inputs from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the activity of the occupant. For example,acoustic sensors12 may detect noises generated by the movement of pots and pans within the kitchen,vibration sensors12 may detect vibrations generated by movement of the occupant in the kitchen,temperature sensors12 may detect heating of the kitchen by therange60, and/or flowsensors12 may detect activity in the plumbing or natural gas system of thestructure10. As such, theprocessor112 may determine (block312) a median level of occupant activity is occurring in thestructure10 and may accordingly implement thetemperature setpoint212C, which has an associated temperature of 70° F.
The illustratedtimeline300 continues as the occupant begins exercising (as indicated by block314) at 8:00 PM. Accordingly, theprocessor112 of thethermostat16 may receive measurements from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the activity of the occupant. For example,motion sensors12 and/or122 may detect motion from the exercise of the occupant,acoustic sensors12 and/or122 may detect noises generated by the exercise of occupant,vibration sensors12 and/or122 may detect vibrations generated by movement of the occupant,temperature sensors12 and/or122 may detect heating of one or more rooms thestructure10, and/orIR sensors12 and/or122 may detect an increased temperature of the occupant. As such, theprocessor112 may determine (block316) that a high level of occupant activity is occurring and may implement thetemperature setpoint212D, which has an associated temperature of 65° F.
Then, as illustrated inFIG. 16, the occupant begins watching television (as indicated by block318) at 10:30 PM. Accordingly, theprocessor112 of thethermostat16 may receive measurements from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the activity of the occupant. For example,acoustic sensors12 and/or122 may detect noises generated by thetelevision47,visible light sensors12 and/or122 may detect light generated by thetelevision47,EMI sensors12 and/or122 may detect the activation or operation of thetelevision47, and/orwireless communication sensors12 and/or122 may detect an increase in wireless communication near thetelevision47. By specific example, in certain embodiments, thethermostat16 may detect thetelevision47 connecting to and/or communicating over the computer network hosted by therouter52. As such, theprocessor112 may determine (block320) that a minimal level of occupant activity is occurring and may, accordingly, implement thetemperature setpoint212B, which has an associated temperature of 75° F. Further, theprocessor112 of thethermostat16 may continue implementing the temperature setpoint212 until theprocessor112 determines that the occupant activity level has once again changed. For example, when the occupant falls asleep (as indicated by block322) around 12:30 AM, theprocessor112 may determine that a minimal level of occupant activity is still occurring and may, therefore, continue implementing thetemperature setpoint212B.
EXAMPLE 2Activity-Based Temperature Program Based on Defined Activities of the OccupantFIG. 17 is atimeline330 illustrating an example in which the thermostat16 (e.g., in activity mode, as discussed inFIG. 15) implements an embodiment of the activity-basedtemperature program260 set forth inFIG. 14. In particular, thetimeline330 illustrates theactivities302 of theprocessor112 of thethermostat16 in response to detectedoccupant activities304, which happen to be the same occupant activities as illustrated inFIG. 16. The example illustrated in thetimeline330 begins between 2:30 PM and 5:30 PM while the occupant is away at work (as indicated by block306). Accordingly, based on data from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110, theprocessor112 of thethermostat16 may determine (block332) that the defined occupant activity “Away”264A is occurring and may implement thecorresponding temperature setpoint262A, which has an associated temperature of 55° F.
Thetimeline330 illustrated inFIG. 17 continues as the occupant arrives home and immediately begins cooking (as indicated by block310) at 5:30 PM. Accordingly, theprocessor112 of thethermostat16 may receive inputs from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the activity of the occupant. As such, theprocessor112 may determine (block334) that a different defined occupant activity, “Cooking or Cleaning”264D, is occurring in thestructure10 and may accordingly implement thecorresponding temperature setpoint262D, which has an associated temperature of 65° F. Then, as the occupant begins exercising (as indicated by block314) at 8:00 PM, theprocessor112 of thethermostat16 may receive measurements from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the activity of the occupant. As such, theprocessor112 may determine (block336) that a different defined occupant activity, “Exercising”264C, is occurring, and may accordingly implement thecorresponding temperature setpoint262C, which has an associated temperature of 60° F.
Then, as illustrated inFIG. 17, the occupant begins watching television (as indicated by block318) at 10:30 PM. Accordingly, theprocessor112 of thethermostat16 may receive measurements from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the activity of the occupant. As such, theprocessor112 may determine (block338) that a different defined occupant activity, “Watching TV”264F, is occurring and may implement thecorresponding temperature setpoint262F, which has an associated temperature of 70° F. Additionally, unlike the example discussed inFIG. 16, when the occupant falls asleep around 12:30 AM (as indicated by block322), theprocessor112 may determine (block340) that the defined occupant activity “Sleeping”264B is occurring and may, therefore, implement thecorresponding temperature setpoint262B, which has an associated temperature of 60° F.
EXAMPLE 3Time-based Temperature Program Including Exceptions for Occupant ActivityFIG. 18 is atimeline350 illustrating an example in which thethermostat16 implements a time-based temperature program (e.g., a temperature setpoint schedule) that provides for exceptions based on changes in occupant activity. In particular, for the example illustrated inFIG. 18, theprocessor112 of thethermostat16 may initially be implementing atemperature setpoint schedule352, a portion of which is illustrated on thetimeline350. Specifically, the illustrated portion of thetemperature setpoint schedule352 includes two temperature setpoints:temperature setpoint176A andtemperature setpoint176B.Temperature setpoint176A has an associated time of 5:00 AM and an associated temperature of 68° F., whiletemperature setpoint176B has an associated time of 7:00 AM and an associated temperature of 60° F. Additionally, thetimeline350 also illustratesexception time windows354 that are associated with temperature setpoints of thetemperature setpoint schedule352. In particular, thetemperature setpoint176A is associated with theexception time window356 and thetemperature setpoint176B is associated with theexception time window358.
As illustrated inFIG. 18, theexception time window356 begins an hour and a half before the 5:00 AM time associated with thetemperature setpoint176A. As such, when theprocessor112 of thethermostat16 determines that a certain change in occupant activity type or degree is occurring within theexception time window356, theprocessor112 may respond by implementing of thetemperature setpoint176A that is associated with theexception time window356. By specific example, in certain embodiments, theexception time window356 illustrated inFIG. 18 is configured to respond to a particular change in occupant activity level (e.g., a greater than minimal occupant activity level or a significant increase in the degree of occupant activity) to trigger the early implementation of thetemperature setpoint176A. In other embodiments, theexception time window356 may be configured to respond to a particular defined occupant activity (e.g., occupant activity “Showering and Dressing”264G, as set forth inFIG. 14) to trigger the early implementation of thetemperature setpoint176A.
Theexception time window358 illustrated inFIG. 18 begins an hour and a half before and concludes an hour and a half after the 7:00 AM time associated with thetemperature setpoint176B. Furthermore, when theprocessor112 of thethermostat16 determines that a certain occupant activity or activity level is occurring within theexception time window358, theprocessor112 may respond with early implementation of thetemperature setpoint176B that is associated with theexception time window358. By specific example, in certain embodiments, theexception time window358 illustrated inFIG. 18 may be configured to respond to a particular changes in occupant activity level (e.g., no occupant activity or a significant decrease in the degree of occupant activity) to trigger the early implementation of thetemperature setpoint176B. In other embodiments, theexception time window358 may be configured to respond to a particular defined occupant activity (e.g., occupant activity “Away”264A, as set forth inFIG. 14) to trigger the early implementation of thetemperature setpoint176B.
With the foregoing in mind, thetimeline350 also includes theactivities360 of the occupant as well asactivities362 of thethermostat16. For the example illustrated inFIG. 18, thetimeline350 begins with the occupant sleeping (block364), during which time thethermostat16 may implement a temperature setpoint corresponding to a temperature floor (e.g., 55° F.). At 4:00 AM, the occupant arises from bed and begins preparing (block366) for work. Accordingly, theprocessor112 of thethermostat16 may receive inputs from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the changing levels activity of the occupant. As mentioned above, thetemperature setpoint176A has an associated time of 5:00 AM, but also has an associatedexception time window356 that begins at 3:30 AM. As such, at or near 4:00 AM theprocessor112 of thethermostat16 may determine (block368) thatoccupant activity366 is occurring during theexception time window356 and immediately implement thecorresponding temperature setpoint176A. In certain embodiments, instead of implementing thetemperature setpoint176A, theprocessor112 of thethermostat16 may implement the exception temperature setpoint369 (e.g., having the same associated temperature as thetemperature setpoint176A but with an earlier associated time) upon detection of the appropriate occupant activity or activity level. Further, as set forth above, in certain embodiments, after multiple occurrences of theexception temperature setpoint369, theprocessor112 may modify thetemperature setpoint schedule352 to remove theoriginal temperature setpoint176A and to add theexception temperature setpoint369. In other embodiments, thetemperature setpoint176A may be modified to be associated with the exception time after multiple occurrences of the exception.
Thetimeline350 illustrated inFIG. 18 continues with the occupant leaving for work, as illustrated by the “Away”block370, about 5:45 AM. Accordingly, theprocessor112 of thethermostat16 may receive inputs from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the activity of the occupant. As mentioned above, thetemperature setpoint176B has an associated time of 7:00 AM, but also has an associatedexception time window358 that begins at 5:30 AM. As such, at or near 5:45 AM theprocessor112 of thethermostat16 may determine (block372) that occupant activity “Away”370 is occurring (e.g., that occupant activity has ceased or the degree of occupant activity has significantly decreased) during theexception time window358 and immediately implement thecorresponding temperature setpoint176B. In certain embodiments, as illustrated inFIG. 18, instead of implementing thetemperature setpoint176B, theprocessor112 of thethermostat16 may implement the exception temperature setpoint373 (e.g., having the same associated temperature as thetemperature setpoint176B but with an earlier associated time) upon detection of the appropriate occupant activity or activity level.
By specific example, in certain embodiments, theprocessor112 may determine that there is a lack of occupant activity within portions of the structure10 (e.g., usingsensors12 and122 and/or other data inputs110) during theexception window358, which may trigger implementation of theexception temperature setpoint373. Further, as set forth above, in certain embodiments, after one or more occurrences of theexception temperature setpoint373, theprocessor112 may modify thetemperature setpoint schedule352 to remove theoriginal temperature setpoint176B and to add theexception temperature setpoint373, or may modify theoriginal temperature setpoint176B to be associated with the exception time.
EXAMPLE 4A Hybrid Temperature Program Including Both Time-Based Temperature Setpoints (with Exceptions for Occupant Activity) and Activity-Based Temperature SetpointsFIG. 19 is atimeline380 illustrating an example in which thethermostat16 implements an embodiment of a hybrid temperature program having both time-based and activity-based temperature setpoints. In particular, for the example illustrated inFIG. 19, theprocessor112 of thethermostat16 may initially be implementing atemperature setpoint schedule382 includes two time-based temperature setpoints:temperature setpoint176A andtemperature setpoint176B.Temperature setpoint176A has an associated time of 5:00 PM and an associated temperature of 68° F., whiletemperature setpoint176B has an associated time of 11:00 PM and an associated temperature of 55° F. Additionally, thetemperature setpoint176A is associated with the illustratedexception time window386 and thetemperature setpoint176B is associated with the illustratedexception time window388.
Theexception time window386 is asymmetric, beginning an hour and a half before and extending an hour after the 5:00 PM time associated with thetemperature setpoint176A. As such, if theprocessor112 of thethermostat16 predicts or determines an early or a late change in the type or degree of occupant activity within the exception time window386 (or determines an early or a late achievement of an occupant activity level within the exception time window386), theprocessor112 may implement thetemperature setpoint176A at an appropriate time (e.g., before or after the 5:00 PM time associated with thetemperature setpoint176A) based on the occupant activity. By specific example, in certain embodiments, theexception time window386 illustrated inFIG. 19 is configured to respond to a particular change in the occupant activity level (e.g., a significant increase in the degree of occupant activity) to trigger early or late implementation of thetemperature setpoint176A. In other embodiments, during theexception time window386, theprocessor112 may be configured to respond to a particular defined occupant activity (e.g., occupant activity “Arriving Home”264E, as set forth inFIG. 14) to trigger early or late implementation of thetemperature setpoint176A. By specific example, in certain embodiments, theprocessor112 may be configured to predict future occupant activity based, for example, on occupant schedule information gleaned from certain data inputs110 (e.g.,cellular phone48,computer50,online resources124 discussed inFIG. 3) to predict when the occupant may be expected to arrive at thestructure10.
As illustrated inFIG. 19, theexception time window388 extends three and a half hours after the 11:00 PM time associated with thetemperature setpoint176B. Furthermore, like theexception time window188 discussed above with respect toFIG. 10, theexception time window388 is a statistical exception time window. As such, thedarker region390 of theexception time window388 indicates the portion of theexception time window388 when certain predicted or detected occupant activities may be given higher weight to delay implementation of the associatedtemperature setpoint176B. For example, in certain embodiments, until theprocessor112 of thethermostat16 determines that a certain change in occupant activity (e.g., a change to “Sleeping”414) or a change in occupant activity level (e.g., a change to a minimal occupant activity level) is occurring within theexception time window388, theprocessor112 may not implement thecorresponding temperature setpoint176B. In other embodiments, theprocessor112 of thethermostat16 may delay implementation of thetemperature setpoint176B within theexception time window388 until after a particular occupant activity (e.g., “Watching TV”412) has ceased or after the occupant activity level drops below a particular threshold (e.g., a change to a median level of occupant activity).
Additionally, as illustrated inFIG. 19, thetimeline380 also includes activity-basedtemperature setpoints392 and394. As set forth above with respect toFIG. 14, the activity-basedtemperature setpoints392 and394 are respectively associated with defined occupant activities “Exercising”264C and “Watching TV”264F and are respectively associated with temperatures of 60° F. and 70° F. As such, for this example, it may be appreciated that thetemperature setpoints392 and394 are activity-based (e.g., not time-based temperature setpoints liketemperature setpoints176A and176B), and these occupant activities and associated temperature preferences may be defined by the user using the activity learning mode of the thermostat16 (e.g., theprocess240 illustrated inFIG. 13).
With the foregoing in mind, thetimeline380 illustrated inFIG. 19 also includesactivities396 of the occupant as well asactivities398 of theprocessor112 of thethermostat16. The illustratedtimeline380 begins with the occupant away, as indicated byblock400. Throughout theexception time window386, theprocessor112 for thethermostat16 may attempt to determine (or predict) when an occupant is performing (or will perform) a particular occupant activity or achieve a particular level of occupant activity that may trigger early or late implementation of thetemperature setpoint176A. For example, theprocessor112 may receive inputs from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the activity of the occupant to determine when to implement thetemperature setpoint176A. By further example, in certain embodiments, theprocessor112 may collect occupant schedule information from certain data inputs110 (e.g.,cellular phone48,computer50,online resources124 discussed inFIG. 3) to determine when to implement thetemperature setpoint176A.
In the illustrated example ofFIG. 19, theprocessor112 determines or predicts (block402) that the occupant has not arrived or will not arrive during the exception time window (e.g., based on a combination of data fromsensors12 and from data inputs110). Accordingly, as set forth above, theprocessor112 may delay implementing thecorresponding temperature setpoint176A until the end of theexception time window386. That is, as mentioned above, theprocessor112 may implement thetemperature setpoint176 at the end of theexception time window386, even if the occupant has not arrived. In certain embodiments, instead of implementing thetemperature setpoint176A, theprocessor112 may implement theexception temperature setpoint404, which has the same associated temperature as thetemperature setpoint176A and a different associated time. Further, as set forth above, in certain embodiments, after one or more occurrences of theexception temperature setpoint404, theprocessor112 may modify the time-based portion of the temperature program to remove theoriginal temperature setpoint176 and to add theexception temperature setpoint404.
Continuing through thetimeline380 illustrated inFIG. 19, the occupant may arrive home at 6:30 PM, as indicated byblock406. At approximately 7:20 PM, the occupant may begin exercising as indicated byblock408. Theprocessor112 of thethermostat16 may receive inputs from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the activity of the occupant. Accordingly, theprocessor112 may determine (block410) that a defined occupant activity (e.g., “Exercising”264C set forth inFIG. 14) is occurring and may implement the corresponding activity-based temperature setpoint392 (e.g., based on thetemperature setpoint262C set forth inFIG. 14).
Next in thetimeline380, at approximately 9:00 PM, the occupant may begin watching television (as indicated by block412) until the occupant falls asleep around 1:20 AM (as indicated by block414). Once again, theprocessor112 of thethermostat16 may receive inputs from one or more sensors (e.g.,sensors12 and/or122) and/orother data inputs110 regarding the activities of the occupant. Accordingly, theprocessor112 may determine (block416) that a defined occupant activity (e.g., “Watching TV”264F set forth inFIG. 14) is occurring and may implement the corresponding activity-based temperature setpoint394 (e.g., based on thetemperature setpoint262F set forth inFIG. 14).
Continuing through thetimeline380, at 11:00 PM theprocessor112 may determine that the time associated with the time-basedtemperature setpoint176B has been reached. However, since the occupant is still watching television (as indicated by block412), theprocessor112 may determine (block418) that an occupant activity is occurring and delay implementing thecorresponding temperature setpoint176B. In certain embodiments, theprocessor112 may delay implementing thetemperature setpoint176B until a particular occupant activity (e.g., “Watching TV”412) is no longer occurring, until another particular occupant activity (e.g., “Sleeping”414) is determined to be occurring, or until a particular level of occupant activity (e.g., a minimal occupant activity level) is achieved. In certain embodiments, instead of implementing thetemperature setpoint176B, theprocessor112 may implement theexception temperature setpoint420, which has the same associated temperature as thetemperature setpoint176B and a different associated time. Further, as set forth above, in certain embodiments, after one or more occurrences of theexception temperature setpoint420, theprocessor112 may modify the time-based portion of the temperature program to remove theoriginal temperature setpoint176B and to add theexception temperature setpoint420.
One or more of the disclosed embodiments, alone or on combination, may provide one or more technical effects useful for creating or modifying a temperature program of a structure based on observed or predicted change in the types or degrees of occupant activity. Present embodiment enable a thermostat to make temporary exceptions to a time-based temperature setpoint schedule of the HVAC system based on predicted or observed changes in the types or degrees of occupant activity, as well as methods for permanently modifying the temperature setpoint schedule based on the occurrence of one or more exceptions. Additionally, present embodiments enable the creation and use of activity-based temperature programs that implement particular activity-based temperature setpoints in response to detecting or predicting particular occupant activities or changes in the type or degree of occupant activity. Accordingly, present embodiments may provide more efficient control of the HVAC system, reducing power consumption of the HVAC system, extending the life of the HVAC system, and providing an environment within the structure that may be better tuned to particular activities and preferences of the occupant. However, it should be understood that the technical effects and technical problems described in the specification are examples and are not limiting. Indeed, the disclosed embodiments may have other technical effects and/or address other technical problems.
While only certain features and embodiments of the invention have been illustrated and described, many modifications and changes may occur to those skilled in the art (e.g., variations in sizes, dimensions, structures, shapes and proportions of the various elements, values of parameters (e.g., temperatures, pressures, etc.), mounting arrangements, use of materials, colors, orientations, etc.) without materially departing from the novel teachings and advantages of the subject matter recited in the claims. The order or sequence of any process or method steps may be varied or re-sequenced according to alternative embodiments. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the invention. Furthermore, in an effort to provide a concise description of the exemplary embodiments, all features of an actual implementation may not have been described (i.e., those unrelated to the presently contemplated best mode of carrying out the invention, or those unrelated to enabling the claimed invention). It should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous implementation specific decisions may be made. Such a development effort might be complex and time consuming, but would nevertheless be a routine undertaking of design, fabrication, and manufacture for those of ordinary skill having the benefit of this disclosure, without undue experimentation.