The present invention relates to home, office and building automation systems generally and to a self-learning home, office and building automation control system in particular.
Home automation generally refers to the automation of the home and of activities associated with the home. It may include automatic control of lighting and blinds, HVAC (heating, ventilation and air conditioning), electrical appliances and electronic devices, security systems including alarms and door locks, health care, sprinkler system, pet feeding, houseplants, pool systems, among other systems which may be found in a home. The control may be at the level of simple remote control of appliances to complex computer/micro-controller based networks with varying degrees of intelligence and automation.
Some of these home activities may be simple activities such as turning on a light in a room at the same time every day, while others may be much more complex such as sensing the presence of a person in a room and adjusting lighting, temperature and music volume in the room taking into consideration factors such as the day of the week and the time of day. Home automation systems may additionally provide increased quality of life for elderly and disabled persons who might otherwise require caregivers for assistance in carrying out home activities, or in some cases even require institutional care.
The elements of a home automation system may include sensors, such as temperature sensors, light sensors, humidity sensors, CO2 sensors, motion detectors, smoke detectors and others; actuators which may include electronic valves, switches, relays, and motors; and a controller which may be a centralized controller and/or multiple intelligent devices installed around the home.
The controller(s) may be preprogrammed to control the actuators responsive to information received from the sensors or may learn to control the actuators by associating real-time human interactions with the system with information received from the sensors. One or more human-machine interface devices may be required so that the residents of the home may interact with the system for monitoring and control. The interface devices may include a specialized terminal or may be a computerized device having display capabilities such as a personal computer or a laptop computer, or may include an application running on a smart phone or tablet computer. Communication between the different elements of the home automation system may be over dedicated wiring, a wired network, a wireless network, or a combination of any of the former.
A home automation system including multiple intelligent devices distributed around the home is described in U.S. Pat. No. 6,865,428 B2, “METHOD AND APPARATUS FOR PROVIDING DISTRIBUTED CONTROL OF A HOME AUTOMATION SYSTEM” to Gonzales et al. Described therein is “a method and apparatus for providing distributed control of a home automation system is provided. Each device participating in a home automation system is equipped with control logic for providing distributed control. Through the control logic, each device maintains scene definitions describing the state of the device for each scene in which it participates. When any device in the system receives a request to launch a scene, such as a button press on one of the devices, the device broadcasts a scene state change message to all devices within the home automation system. The scene state change message identifies to each device a particular scene that should be launched. Each device in the system receives the message and determines whether the device is a participant in the scene. If the device is a participant in the scene, the device adjusts its state according to a scene definition stored in the device associated with the scene. The device may adjust a controlled electrical load, such as a light, according to the scene definition by turning the load on, off, or setting the load to some intermediate value”.
Home automation systems may be self-learning and may include a controller which, based on environmental changes may autonomously make decisions regarding monitoring and controlling conditions in one or more rooms within a home. Such a home automation system is described in US Patent Application Publication No. US 2012/0310415 A1, “CONTROL PANEL FOR CONTROL SYSTEM AND A CONTROL SYSTEM”, to Raestik et al. Described therein is “a control panel and controlling system for adjusting environmental conditions of at least one location, wherein the location has desired environmental conditions. The system comprises equipments controlled by controlling means for changing and/or maintaining the environmental condition of the locations. The controlling means is adapted to provide controlling parameters to equipments for adjusting the environmental condition of said location. The system includes a control panel including at least one sensor, whereby the environmental condition is controlled on the basis of the signal received from the sensor”.
There is therefore provided, in accordance with a preferred embodiment of the present invention, a neural cognitive premises automation unit for controlling and/or monitoring one or more pieces of equipment in at least one room in a premises. The premises automation unit includes at least one resolver and an event resolver. The at least one resolver includes a neural network to activate the pieces of equipment in response to at least one sensor. The event resolver controls the pieces of equipment at least in response to events. The event resolver includes a data base, a self-learning module, and a cognitive module. The data base stores at least recorded events per controlled equipment with at least an indication of whether or not one of the events was a scenario-generated event from a pre-determined scenario defining which piece or pieces of equipment to operate. The self-learning module finds clusters of events in the data base. The cognitive module analyzes the clusters and modifies an associated scenario for at least one piece of equipment.
Further, in accordance with a preferred embodiment of the present invention, the neural cognitive premises automation unit also includes a communication unit to communicate with at least one neural cognitive premises automation unit or other automation unit in a network for controlling and/or monitoring the at least one piece of equipment.
Moreover, in accordance with a preferred embodiment of the present invention, at least one resolver includes a cognitive unit to learn from at least data from the at least one sensor and to modify parameters of operation of the at least one resolver.
Further, in accordance with a preferred embodiment of the present invention, the event resolver includes an orienting element to determine a priority for responding, wherein the priority is at least normal, immediate and urgent.
Still further, in accordance with a preferred embodiment of the present invention, the at least one resolver is an alarm resolver, a presence resolver, a climate resolver or a voice resolver.
Moreover, in accordance with a preferred embodiment of the present invention, the at least one sensor is one or more of: a movement sensor for detecting movement of a mammal in the at least one room, an acoustic sensor for sensing sound in the at least one room, a thermometer for sensing an ambient temperature in the at least one room, a light sensor for sensing a level of illumination in the at least one room, a humidity sensor for sensing a humidity level in the at least one room, a CO2 sensor for sensing a CO2 level in the at least one room, and an image sensor for imaging the at least one room.
Moreover, in accordance with a preferred embodiment of the present invention, the premises is a building, a home, or an office.
Alternatively, the at least one resolver is an alarm resolver, a presence resolver, a climate resolver and a voice resolver and the at least one sensor is a movement sensor for detecting movement of a mammal in the at least one room, an acoustic sensor for sensing sound in the at least one room, a thermometer for sensing an ambient temperature in the at least one room, a light sensor for sensing a level of illumination in the at least one room, a humidity sensor for sensing a humidity level in the at least one room, a CO2 sensor for sensing a CO2 level in the at least one room, and an image sensor for imaging the at least one room. The alarm resolver is connected to the movement sensor, the acoustic sensor, the light sensor, the CO2 sensor, and the image sensor, the presence resolver is connected to the movement sensor, the acoustic sensor, the light sensor, the CO2 sensor, and the image sensor, the climate resolver is connected to the thermometer, the humidity sensor and the CO2 sensor, and the voice resolver is connected to the acoustic sensor.
There is also provided, in accordance with a preferred embodiment of the present invention, a neural proactive premises automation unit for controlling and/or monitoring one or more pieces of equipment in at least one room in a premises. The neural proactive premises automation unit includes at least one resolver and an event resolver. The at least one resolver includes a neural network to activate the pieces of equipment in response to at least one sensor. The event resolver controls the pieces of equipment at least in response to events. The event resolver includes a data base, a self-learning module and a proactive module. The data base stores at least recorded events per controlled equipment with at least an indication of whether or not one of the events was a scenario-generated event from a pre-determined scenario defining which piece or pieces of equipment to operate. The self-learning module finds clusters of events in the data base. The proactive module analyzes the clusters and creates at least one new scenario for at least one piece of equipment.
Further, in accordance with a preferred embodiment of the present invention, the premises automation unit also includes a communication unit to communicate with at least one neural proactive premises automation unit or other automation unit in a network for controlling and/or monitoring the at least one piece of equipment.
Still further, in accordance with a preferred embodiment of the present invention, the at least one resolver is an alarm resolver, a presence resolver, a climate resolver or a voice resolver.
Moreover, in accordance with a preferred embodiment of the present invention, the at least one sensor is one or more of: a movement sensor for detecting movement of a mammal in the at least one room, an acoustic sensor for sensing sound in the at least one room, a thermometer for sensing an ambient temperature in the at least one room, a light sensor for sensing a level of illumination in the at least one room, a humidity sensor for sensing a humidity level in the at least one room, a CO2 sensor for sensing a CO2 level in the at least one room, and an image sensor for imaging the at least one room.
Moreover, in accordance with a preferred embodiment of the present invention, at least one resolver includes a cognitive unit to learn from at least data from the at least one sensor and to modify parameters of operation of the at least one resolver.
Still further, in accordance with a preferred embodiment of the present invention, the premises is a building, a home, or an office.
There is also provided, in accordance with a preferred embodiment of the present invention, a neural cognitive method for controlling and/or monitoring one or more pieces of equipment in at least one room in a premises. The method includes, using neural network methods, activating the pieces of equipment in response to at least one sensor and controlling the pieces of equipment at least in response to events. The controlling includes storing in a data base at least recorded events per controlled equipment with at least an indication of whether or not the event was a scenario-generated event from a pre-determined scenario defining which piece or pieces of equipment to operate, using a self-learning module finding clusters of events of the equipment in the data base, and analyzing the clusters to modify the associated scenario for at least one piece of equipment.
Moreover, in accordance with a preferred embodiment of the present invention, the activating includes learning from at least data from the at least one sensor and modifying parameters of operation of the activating.
Moreover, in accordance with a preferred embodiment of the present invention, the at least one resolving is one of the following: alarm resolving, presence resolving, climate resolving and
Further, in accordance with a preferred embodiment of the present invention, the controlling includes determining a priority for responding, wherein the priority is at least normal, immediate and urgent.
Still further, in accordance with a preferred embodiment of the present invention, the method also includes communicating with an automation unit also performing the method.
Still further, in accordance with a preferred embodiment of the present invention, the premises is a building, a home, or an office.
There is also provided, in accordance with a preferred embodiment of the present invention, a neural proactive method for controlling and/or monitoring one or more pieces of equipment in at least one room in a premises. The method includes using neural network methods, activating the pieces of equipment in response to the at least one sensor and controlling the pieces of equipment at least in response to events. The controlling includes storing in a data base at least recorded events per controlled equipment with at least an indication of whether or not the event was a scenario-generated event from a pre-determined scenario defining which piece or pieces of equipment to operate, using a self-learning module, finding clusters of events of the equipment in the data base and proactively analyzing the clusters to create at least one new scenario for at least one piece of equipment based on the analysis.
Moreover, in accordance with a preferred embodiment of the present invention, the activating includes learning from at least data from the at least one sensor and modifying parameters of operation of the activating.
Moreover, in accordance with a preferred embodiment of the present invention, the at least one resolving is one of the following: alarm resolving, presence resolving, climate resolving and
Moreover, in accordance with a preferred embodiment of the present invention, the method also includes communicating with an automation unit also performing the method.
Finally, in accordance with a preferred embodiment of the present invention, the premises is a building, a home, or an office.
The subject matter regarded as the invention is particularly pointed out and distinctly claimed in the concluding portion of the specification. The invention, however, both as to organization and method of operation, together with objects, features, and advantages thereof, may best be understood by reference to the following detailed description when read with the accompanying drawings in which:
It will be appreciated that for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity. Further, where considered appropriate, reference numerals may be repeated among the figures to indicate corresponding or analogous elements.
In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the invention. However, it will be understood by those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, and components have not been described in detail so as not to obscure the present invention.
Applicant has realized that the many building automation systems do not handle the entirety of activities which occur within a room or a given space. Many automation systems handle environmental activities (like climate and lighting) while others handle security, yet none of them handle the entire range of activities that a person may want to do within a room of a house or a building.
Moreover, Applicant has realized that, with only a few sensors and a few resolvers, the entire range of activities of a room may be handled, where the activities may include changes to the climate and/or lighting of the room, and/or activation of entertainment systems (stereo, TV, computer, games, etc.) and/or other appliances (coffee machine, refrigerator, etc.), and/or detecting of an intrusion.
Applicant has further realized that the quality of detection for many of the activities of a room may be improved if at least one of the sensors is an acoustic sensor or an image sensor. For example, both types of sensors may provide differentiation between types of mammals in a room (humans vs. pets) and may improve intrusion detection.
Still further, Applicant has realized that home automation systems may carry out relatively complex home activities if, instead of a controller directly associating a sensor with one or more particular actuators, the controller processes the data received from a plurality of different sensors and responsively operates one or more actuators which may or may not be directly associated with the sensors.
Reference is now made to
In accordance with a first preferred embodiment of the present invention, the elements of unit 10 may be housed together in a single unit, with sensors 20-32 arranged on the outer surface of the unit or inside of it, thereby to sense the room. In an alternative embodiment, some or all of sensors 20-32 may be external sensors, communicating via a wired or wireless connection.
Sensors 20-32 may comprise a movement detector 20, an acoustic sensor 22, a thermometer 24, a light sensor 26, a humidity sensor 28, a CO2 sensor 30 and an image sensor 32. While it is believed that this is a sufficient list of sensors, it is possible that the present invention may be implemented with fewer or more sensors.
Equipment 50-56 may comprise an alarm system 50, appliances and electrical devices 52, entertainment equipment 54 and HVAC elements 56. Alarm system 50 may be any suitable alarm system, such as an alarm device that gives an audible, visual or other form of alarm signal about a problem or condition and which is equipped with a communication module. Appliances and electrical devices 52 may be any suitable devices which may or may not be in the room and/or may affect the room, such as window blinds, curtains, lights, coffee machines, refrigerators, etc. Entertainment system 54 may be any entertainment device, such as a radio, a computing device, a home entertainment system, a projector, a mobile device, an electronic game device, etc. HVAC elements 56 may be any climate control device, such as an air conditioner, heater, humidifier, cooler, etc.
Smart home controller 36 may comprise an alarm resolver 40, a presence resolver 42, a climate resolver 44, a voice resolver 46 and an event resolver 48.
Alarm resolver 40 may receive input indicating a break-in and/or the presence of a person in the room, which person is either a stranger or is in the room at an abnormal time. For this purpose, alarm resolver 40 may receive input from movement detector 20, from acoustic sensor 22 (such as for detection of a loud noise caused by the intrusion and for the sounds of a stranger in the room), from light sensor 26, from CO2 sensor 30 and from image sensor 32. Each of these sensors may be utilized to provide a different aspect of the intrusion or intruder to alarm resolver 40. When an intrusion is determined, alarm resolver 40 may indicate to alarm system 50 to activate an alarm, and may also indicate to event resolver 48 to actuate other equipment in the building.
Presence resolver 42 may determine the presence of a human and/or a pet in the room and, in accordance with a preferred embodiment of the present invention, may receive input from movement detector 20, acoustic sensor 22, light sensor 26, CO2 sensor 30 and image sensor 32. While any of these sensors may be utilized by itself to indicate the presence of a body in the room, their combination, wholly or in part, may raise the possibility that the indication will be accurate, since each sensor, on its own, has its own sources of error. A movement detector may detect all movement, including that of a small mammal running across the floor. A CO2 sensor may similarly provide inaccurate information. Yet their combination, together with acoustic sensor 22 (which may be processed for human sounds) and/or image sensor 32 (whose output may be processed to find a human shape) may greatly increase the accuracy of the presence detection.
Presence resolver 42 may store therein instructions of which appliances and electrical devices 52 to activate or to change their state upon detecting the presence of a human in the room. Presence resolver 42 may also provide its instructions and events, or lack thereof, to event resolver 48 and to climate resolver 44 so that they may incorporate presence information into their decision processes.
Climate resolver 44 may determine the current climate of the room and may provide instructions to appliances and electrical devices 52 and/or to HVAC 56 to change the climate to that requested by the user. To this end, climate resolver 44 may receive sensed input from thermometer 24, humidity sensor 28 and CO2 sensor 30 and presence information from the presence resolver 42. Once again, the input from multiple types of sensors may provide a more accurate picture of the climate allowing finer control of the climate of the room, either by actuating the HVAC 56 elements and/or by instructing other appliances and electrical devices 52, such as window blinds or other climate affecting actuators.
Climate resolver 44 may also include the presence information from presence resolver 42 to determine the climate to be achieved. For example, climate resolver 44 may attempt to achieve a more desired climate only when presence resolver 42 may indicate the presence of a human in the room. Climate resolver 44 may also provide its instructions and events to event resolver 48.
Voice resolver 46 may include a voice recognition engine and may receive input from acoustic sensor 22. Voice resolver 46 may, after recognizing the spoken words, provide instructions to any of appliances and electrical devices 52, entertainment devices 54, alarm system 50, HVAC elements 56 and/or others. Voice resolver 46 may also provide its instructions and events to event resolver 48.
Event resolver 48 may receive instructions from the user via user input module 49, which may operate with any type of an input element or input interface, such as a touch screen display, a keyboard, a remote controller, a mobile device or other, which may define when and/or under what conditions the various equipment 50-56 are to be operated. Event resolver 48 may receive instructions through user input module 49 or may receive instructions from resolvers 40-46. Event resolver 48 may then operate the appropriate equipment, with or without a schedule. One such activation may be to arm alarm resolver 40 to look for intrusions.
As can be seen, each sensor may provide input to more than one resolver and each resolver may receive input from more than one sensor. Thus, with a relatively small set of sensors, the present invention may be able to carry out relatively complex home activities.
In accordance with a preferred embodiment of the present invention and as shown in
Each sensor processor and scorer 60 may be implemented using decision methods, such as fuzzy logic, fuzzy sets and neural network methods. For example, fuzzy logic and fuzzy sets deal with reasoning that is approximate rather than exact. Fuzzy logic and fuzzy sets use the concept of partial truth, in which an object or a variable is not necessarily either true or false (i.e. an object or variable may be true, but only to some degree). The implementation may be viewed as combining a number of inputs in order to make a decision, by utilizing possibility or probability scores rather than hard thresholds to determine if a particular state (such as the presence of an intruder) has occurred.
Fuzzy logic, fuzzy sets and their techniques are described in FUZZY SETS AND FUZZY LOGIC Theory and Applications by George J. Klir and Bo Yuan, Prentice Hall P T R (1995).
Each sensor processor and scorer 60 may sample its sensors, process its inputs, compare the processed inputs to the relevant models of its models module 62 and provide a set of scores, one or more per model. Thus, presence resolver 42 may comprise a presence sensor processor and scorer 60A, alarm resolver 40 may comprise an alarm sensor processor and scorer 60B, climate resolver 44 may comprise a climate sensor processor and scorer 60C and voice resolver 46 may comprise voice sensor processor and scorer 60D.
For example, presence resolver 42 (
It will be appreciated that there may be a variety of detection intensity and scores. Presence sensor processor and scorer 60A may score the output of movement detector 20 against each model.
Similarly, presence resolver 42 may have models for human sounds and pet sounds for the output of acoustic sensor 22. An exemplary model for human sound may utilize the voice activity detection of a voice recognition engine, known in the art. The voice activity detector may produce one type of signal when a human voice is detected and other types of signals when other types of sounds are detected, such as a pet sound or continuous noise such as a HVAC fan.
Presence resolver 42 may comprise an environmental noise detection and cancellation module 65A, such as those known in the art. Module 65A may operate on the output of acoustic sensor 22, to improve the quality and definition of the sounds that may be received. Module 65A may determine and cancel continuous noises from the output of acoustic sensor 22. Such continuous noises may be characterized with constant amplitudes and frequencies (such as a computer fan, etc.).
Presence resolver 42 may include an acoustic and audio analyzer 63A to generate an analysis of the spectrum, pitch and tempo in the acoustic signal. Presence resolver 42 may have a model for music detection which may define a spectral range, and a range of pitches and tempos. Moreover, the model may include a time element, such that the score may degrade after a predefined length of time.
Presence resolver 42 may have models for types of lighting for light sensor 26 (generally whether or not artificial light is on or off), and models for the ranges of CO2 levels (e.g. above 600 ppm), for CO2 sensor 30. Finally, presence resolver 42 may have models of human and pet shapes for image sensor 32.
For image sensor 32, presence sensor processor and scorer 60A may utilize various image processing methods, known in the art, to understand each received image frame. As is known in image compression, elements of the images which don't change (i.e. the fixed items in the room) can easily be determined. Image processing can include the determination of body parts, and of faces. Image processing can additionally include dividing the field of view into sections, such as upper, middle and lower, where movement detection in all sections may indicate human movement, while detection of movement in the lower section may indicate pet movement.
The output of each section may be provided to a different model in presence sensor processor and scorer 60A whose score may indicate the presence or absence of a mammal. It will be appreciated that movement detection based on image sensor 32 may be more accurate in the presence of light than movement detection based on movement sensor 20. However, movement detection based on movement sensor 20, which utilizes IR (heat), has advantages when the room is dark.
The set of parameters may then be provided to be compared to each of the models that presence sensor processor and scorer 60A may have which indicate the presence of a mammal in the room.
Presence resolver 42 may score the output of each of its models and may provide them to its multifunctional processor 70A, described in more detail herein below.
Alarm resolver 40 (
Climate resolver 44 (
Voice resolver 46 (
When scorer 60D generates a score which indicates voice, scorer 60D may provide the improved acoustic signal to a voice recognition engine 64 which may recognize voice commands to change the state of the relevant appliances and electrical devices 52, alarm system 50, entertainment systems 54, HVAC elements 56 etc.
It will be appreciated that, while the various resolvers 40-46 may receive input from the same sensors, they each compare the data to different models, based on the type of information they need in order to determine if their type of event has happened and, of course, to respond accordingly. For example, the acoustic model for alarm resolver 40 is significantly different than the acoustic model for presence resolver 42 and the CO2 model for presence resolver 42 may be significantly different than the CO2 model for climate resolver 44. This enables the present invention to utilize the same sensors for multiple purposes.
The processor and scorers 60 may operate to define each sensor output as a vector. Some sensor outputs may be one-dimensional, such as the output of light sensor 26 or thermometer 24, while others may be N-dimensional, such as the output of acoustic sensor 22, movement sensor 20 or image sensor 32.
Similarly, each model may be defined as an N-dimensional vector, and processor and scorers 60 may determine the distance between the sensor output vector and the model vector. The distance may be utilized as the score for that model, where a close distance may provide a high score while a far distance may provide a low score. One such distance calculation may be:
D=Σ
i=1
N
|Mi−Si| Equation 1
Where D is the overall calculated distance and |Mi−Si| is the distance for the ith vector element.
Multifunctional processors 70A, 70B and 70C respectively, may combine information (as scores) from different disciplines into a decision process, producing an overall score. Since the information comes from different disciplines, the scores are normalized to enable the combination.
Each processor 70 may combine multiple scores and statuses, weighted either by default weights or learned weights, generally according to their importance to the operation of the resolver, to generate an overall score P(P), which may be a weighted sum of the multiple scores.
The weights define how the various types of models combine together to indicate the goal of each resolver. For example, for presence resolver 42, there may be more weight given to the image score (as a function of the current light conditions) than to any of the other scores or all scores may be weighted evenly. Alarm resolver 40 may have different weights for the scores of acoustic sensor 22 and light sensor 26 than presence resolver 42. Moreover, alarm resolver 40 may also include a status indicating that alarm system 50 is armed. This status may be used with a corresponding weight or may operate a different set of weights if the alarm was armed or not. Similarly, climate resolver 44 may receive a status indicating that HVAC element 56 has been activated and may include an additional status for the output of presence resolver 42, so as to include in its calculations the fact that there is or isn't a person in the room.
Multifunctional processors 70 may determine the overall score, such as in the following equation:
P(P)=Σi=1NWPi*P(pi) Equation 2
Where P(pi) is the ith score or status from another resolver or a piece of equipment and Wpi is the weight for the ith score or status.
Each event definer 72 may have one or more instructions for each value of its P(P). For example, presence event definer 72A may instruct an automatic light to turn on if its value of P(P) is above a certain threshold, indicating the presence of a human in the room and that there isn't enough light in the room. Alarm event definer 72B may determine that an alarm situation has been detected for a given value of overall score P(P) and may activate alarm system 50 at that point.
Climate event definer 72C may turn on an air conditioning appliance if its overall score is above a certain value of P(P) and may instruct the relevant HVAC element 56 to work at a lower temperature if there is high humidity in the room. Furthermore, certain values of P(P) may be associated with applying ventilation due to a high level of CO2. Other values of P(P) may turn on a condensing appliance, add ventilation if humidity increases, etc. Furthermore, certain values of P(P) may indicate no presence in the room. When these are received, event definer 72C may indicate to HVAC elements 56 to change to “economic operation” or to shut down. By this operation, unit 10 may reduce energy consumption of HVAC elements 56 while maintaining the comfort of the user.
Thus, each resolver may have different instructions based on a range of values of its overall score P(P).
It will be appreciated that the weights Wpi may be initialized with default values and may be adaptive as the unit is utilized. Default values may be fixed or may vary according to specific hardware configurations. For example, there may be multiple types of movement detector 20, each with a different size lens. In this example, the initial weighting may be different depending on the structure and size of the lens.
Resolver analyzers 68 may adapt the weights for their respective resolver. To do so, each sensor processor and scorer 60 may store the sensor data, model parameters and score results in their associated database 69. If desired, each sensor processor and scorer 60 may review the data and store it when there is a predefined change in the sensor data (i.e. the immediate change is large enough or there is a significant change over a predetermined period of time). In addition, resolver analyzers 68 may store the weights Wpi and the overall scores P(P) from the multifunctional processors 70. All parameters and recorded data may have an associated time stamp. The resolver may also save all data and parameters periodically.
Resolver analyzers 68 may perform various statistical analyses on the data in databases 69 and may search for changes in the sensor outputs and in the scores, for example to determine its relevancy and effectiveness. For example, resolver analyzers 68 may determine a variance value Vpi for each type of data and may update the weight associated with the data by the variance. Specifically, all Wpi may be updated by:
Wpi=Wpi
0
*Vpi Equation 3
Where Wpi is the updated weight, Wpi0 is the previous value of the weight and Vpi is the variance normalized to the range 0 to 1, where 0 indicates no change and 1 indicates the maximal possible change in the associated signal.
Resolver analyzers 68 may then normalize their set of weights, for example, by requiring that the sum of the weights be 1:
Σi=1NWpi=1 Equation 4
For example, as described hereinabove, the field of view of image and movement sensors 32 and 20, respectively, was divided into 3 sections. In one room, for example, the lower section may be blocked by permanent furniture, so its output will be constant for a period of time.
For this embodiment, the output of each section may be stored in the database 69 and each section may have its own weight in the overall score for the resolver.
In this example, the data over a period of time, for example several days, may show that lower section value may be constant while other sections may have changes in their values. When resolver analyzer 68 may identify this situation (for example, by noticing that there was no change recorded for the lower sensor section), analyzer 68 may reduce or eliminate the influence of the lower sensor section by reducing the weight Wpi associated with the relevant section. At the same time, analyzer 68 may increase the weights associated with the other two sections (i.e. the middle and high field of view sections of the sensor) or may change all of the weights Wpi that appears at the related equation.
For other types of data, other types of changes may be important. For example, for CO2, a continuous change of 5 ppm per hour that may happen over several hours will be considered and recorded as an important change.
Recognition analyzer 71 may store the parameters of the voice acoustic model and the noise acoustic models 62D and any parameters utilized by voice recognition engine 64 in database 69D. It may also save the resultant instructions. For example, recognition analyzer 71 may store the instructions produced by voice recognition engine 64 when the user may provide a correction to the instructions, such as when recognition engine 64 misunderstood the user's speech. When this happens, recognition analyzer 71 may request that the user retrain engine 64 and recognition analyzer 71 may store the retrained signal in database 69.
Recognition analyzer 71 may also analyze the quality of the recognition, as a function of the scores of the various background ‘noises’. The scores determine what type of background noises there may currently be in the room. With this information, recognition analyzer 71 may determine for which type of noise(s), noise detection and cancellation module 65D should be activated or deactivated. The process may require a few iterations where in each iteration, recognition analyzer 71 may activate the cancellation of one or more noise type(s) and may determine its effect on the quality of the recognition of voice recognition engine 64.
As mentioned hereinabove, each event definer 72 may provide its event information, defined by type and time of occurrence as well as other parameters, to event resolver 48. In turn, event resolver 48 may analyze the events and may update the activations and/or the schedules of activation. Exemplary events may be a change in the temperature setting of an air conditioner, a change in state of a piece of equipment, an alarm event or an activation of the alarm, a change in the level of CO2, etc.
There may be multiple types of events. For example, there may be a user created event which may happen when the user changes the state of equipment 50-56 through user input module 49. This is an event which may be provided directly to event resolver 48.
A second type of event may be a resolver instruction defined by when one of resolvers 40-46 may provide instructions to change the state of its associated device(s).
A third type of event may be a resolver event defined by when the output of one of scorers 60 may be above a predefined level for one of its associated sensors, even if this doesn't cause the event definer 72 and the corresponding resolver to change the state of its associated equipment.
It will be appreciated that the resolver events may be particularly reliable since resolver events only occur if the preponderance of measurements measured by a resolver indicates that an event has occurred. Recall that most of the resolvers have more than one sensor and that the models of the sensor data for each resolver are defined to match the purpose of each resolver. Thus, a resolver event on the one hand is unlikely to provide a false activation and on the other hand will have a very high level of detection.
Each event definer 72 may generate instructions to equipment 50-56 and events, both of which are provided to event resolver 48.
As shown in
Event receiver 74 may receive input from the user, either to change the current state of a piece of equipment, or to provide a schedule of operations for the equipment in the room. In addition, event receiver 74 may receive events from resolvers 40-46, as they operate and generate events. Event receiver 74 may store all of the events in database 76, and may list, as described hereinbelow, the type of event, the time of the event and any relevant parameters of the event. Event database 76 may also store data that relates to events, instructions and scenarios, as described hereinbelow. A scenario may be a change of state (such as turning it on or off, raising or lowering it, changing its set point, etc.) of a piece of equipment with a specific schedule or changing the states of multiple pieces of equipment (with or without schedule).
Event receiver 74 may provide all immediate events and/or scenarios to activator 78 to change the state of one or more pieces of equipment. Event activator 78 may comprise a scheduler 79 which may utilize clock module 75. Scheduler 79 may receive a schedule of events and may instruct activator 78 to activate the relevant equipment according to the schedule and the time of day produced by clock module 75.
Some of the functionality within event receiver 74 and event activator 78 may be included in each resolver, operating resolver corresponding data and record it in the database.
Self-learning module 80 may comprise an event statistical analyzer 82, an event parameter updater 84 and a pro-active event synthesizer 86 and may adapt the operation of room automation unit 10 as the user uses the room. Using the data of database 76, analyzer 82 may analyze the statistics of the different types of events, using standard statistical tools. For example, analyzer 82 may cluster events, may use a sliding window technique, may determine any frequencies of occurrence, may generate histograms of the events to discover patterns, and may determine a mean and standard deviation for the occurrence of the event, typically on the timing of the event. Clustering may provide a range of times that events happened while tools as the mean and standard deviation may provide an event parameter update suggestion, based on the statistics, of a change to the timing of an event as part of the cognitive cycle.
Event parameter updater 84 and pro-active event synthesizer 86 may update database 76 with updated or new activations/changes of state and scenarios for activated equipment and if required, associated schedules. Event parameter updater 84 may suggest parameters updates such as schedule updates. Pro-active event synthesizer 86 may provide suggestions to activate equipment. These suggestions may operate with or without approval by the user. Where new equipment activations and/or changes in schedule are determined, pro-active event synthesizer 86 or event parameter updater 84 may update database 76 with the new schedules or the new changes of state and may update the event activator 78 and/or update scheduler 79 accordingly.
In addition, event parameter updater 84 may schedule multiple pieces of equipment within a scenario. For example, the following scenario may happen: light A off, light B off, and close blind A. Alternatively, a scenario may happen over a period of time, such as open light A and blind A by 8:00 followed by activate the HVAC by 8:18. Other scenarios may occur over a longer period of time, such as a 24 hour cycle or more.
Since resolver events may be very reliable due to the multiple sensor inputs and the operations of the resolvers 40-46, event statistical analyzer 82 may weight resolver events more highly than sensor events and may weight user events higher than resolver events. Given the general reliability of the events, the suggestions generated by updater 84 may be well matched to the operation of the room.
Reference is now made to
Given the data from event statistical analyzer 82, pro-active event synthesizer 86 may suggest a new activation of light A. In such a suggestion, the mean value of the activation time for the 20 minute period may be the suggested time to automatically turn on light A. This suggestion may be for specific day(s) or other periods. Optionally, by user approval, statistical analyzer 82 may add the event of turning on light A on specific time and days to the data base 76 as a new event. Analyzer 82 may also add the equipment operation and time to the event activator 78 and scheduler 79.
Analyzer 82 may analyze each piece of equipment separately and may analyze their data over periods of any appropriate length, which may be preset as desired. Moreover, database 76 may not be infinite. Therefore, data on daily events may be stored in the data base for a given period of time, such as three months, and data on weekly events may be stored for different period of time, such as one year period.
It will be appreciated that event statistical analyzer 82 may analyze the recorded data in order to find patterns of activities that may be the basis to form a new scenario, which may involve one or more different pieces of equipment.
Once a new event or a new scenario is established, event statistical analyzer 82 may analyze further user activations regarding the event or the scenario and may update the operation accordingly.
Reference is now made to
In an alternative embodiment, event analyzer 82 may further adapt the display for short-sighted people or for older people where it may provide only 4 devices but using larger icons, as shown in the display of
It will be appreciated that the present invention may be a cognitive automation unit and may follow a cognitive cycle, as shown in
It will be appreciated that the present invention is a proactive automation unit capable of suggesting new changes of state of pieces of equipment or new scenarios, all with or without schedules.
It will be appreciated that unit 10 may be an energy controller, able to reduce energy consumption, particularly via climate resolver 44. Climate resolver 44 may receive climate information (for example, via thermometer 24, humidity sensor 28 and CO2 sensor 30 and external sensors) and may compare the received information from the desired climate provided by the user. Climate resolver 44 may determine changes in the climate, such as may occur when a window or blind is opened, and may generate instructions accordingly, such as to suggest that the window or blind be closed, or that the HVAC system stop operating, in order to achieve the desired climate and save energy. In this way, unit 10 may be able to achieve a desired climate with a minimum of energy expended. Furthermore, the indications from presence resolver 42 with respect to the lack of a human in the room may be generally reliable and thus, when climate resolver 44 may instruct the HVAC system to operate in economy mode or to shut it down, these instructions are unlikely to be countered by a human in the room. This holds true for other instructions as well event resolver 48 may shut down lights or other unnecessary equipment when no presence is indicated, thereby further reducing energy consumption.
Reference is now made to
In accordance with a preferred embodiment of the present invention and as shown in
Recovery modules 102 may use different methods to implement this redundancy. For example, they may have a lookup table indicating which unit 11 is to take over for which non-functional unit.
Each automation unit 11 may periodically provide a ‘Keep alive and Status’ signal to the recovery modules of the other units 11, which may provide an indication that it is alive and may provide a functionality status for one or more of its modules. For example, one status may be the status of the touch screen. If it ceases to function, the recovery module 102 of the assigned unit may “activate” its copy of the database 104 of the non-functional unit, such that the user may use the touch screen of the assigned unit. If only the touch screen isn't functional, then the assigned unit may receive sensor data from the poorly functioning unit and may determine the events in the room.
If, on the other hand, a unit does not generate its ‘Keep alive and status’ signal at all, then the assigned unit may take control over the actuation of equipment and scenarios but without any sensor data from the non-functional unit to resolve.
It will be appreciated that each unit 11 may control its own room and any equipment in the building. Together, the set of automation units 11 throughout the building form a distributed control system, each controller is capable of operating by itself and there is no requirement for a central controller that will control or/and coordinate all units and activities. It will be appreciated that each unit 11 may manage and/or determine schedules of changes of state with the support of its own clock module 75. With communication modules 100, shared databases 104 and recovery modules 102, the set of automation units 11 throughout the building also have redundancy and thus can recover from failures of any unit 11.
In a further embodiment of the present invention, units 10 or 11 may utilize external sensors, such as a thermometer in a corridor between rooms and/or a rain detector outside of the house. The external sensors may comprise communication modules to transmit their sensor data and each resolver in each room unit 10 or 11 may have the appropriate sensor models for this data.
Similarly, units 10 or 11 may also control external appliances, where appropriate, even when there is no failure of a unit. For example, a user may instruct its unit 10 or 11 to turn on a coffee machine in the kitchen when the user begins to move around in his bedroom in the morning.
It will be appreciated that the present invention may provide an automation system for a premises which may be robust yet simple to use. The system may be a distributed automation system for a premises with cognitive abilities as well as pro-active abilities. Thus, the unit may learn from its operation and its environment and may generate or provide suggestions for improvements or for new changes of state or scenarios.
Unless specifically stated otherwise, as apparent from the preceding discussions, it is appreciated that, throughout the specification, discussions utilizing terms such as “processing”, “computing”, “calculating”, “determining”, “resolving” or the like, refer to the action and/or processes of a computer, computing system, micro-controller, processor, digital signal processor, FPGA or similar electronic computing device that manipulates and/or transforms data represented as physical, such as electronic, quantities within the computing system's registers and/or memories into other data similarly represented as physical quantities within the computing system's memories, registers or other such information storage, transmission or display devices.
Embodiments of the present invention may include apparatus for performing the operations herein. This apparatus may be specially constructed for the desired purposes, or it may comprise a general-purpose computer, processor, micro-controller selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of storage device, including floppy disks, optical disks, magnetic-optical disks, read-only memories (ROMs), compact disc read-only memories (CD-ROMs), random access memories (RAMs), electrically programmable read-only memories (EPROMs), electrically erasable and programmable read only memories (EEPROMs), magnetic or optical cards, Flash memory, disk on key, or any other type of media suitable for storing electronic instructions and capable of being coupled to a computer system bus.
The processes and displays presented herein are not inherently related to any particular computer or other apparatus. Various general-purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized apparatus to perform the desired method. The desired structure for a variety of these systems will appear from the description above. In addition, embodiments of the present invention are not described with reference to any particular programming language. It will be appreciated that a variety of programming languages and operating systems may be used to implement the teachings of the invention as described herein.
While certain features of the invention have been illustrated and described herein, many modifications, substitutions, changes, and equivalents will now occur to those of ordinary skill in the art. 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.
This application is a continuation application of U.S. application Ser. No. 17/717,256 filed Apr. 11, 2022, which is a continuation of U.S. application Ser. No. 16/805,943, filed Mar. 2, 2020, which is a continuation application of U.S. application Ser. No. 15/948,098, filed Apr. 9, 2018, which is a continuation application of U.S. application Ser. No. 14/296,561 filed Jun. 5, 2014, all of which are hereby incorporated in their entirety by reference.
Number | Date | Country | |
---|---|---|---|
Parent | 17717256 | Apr 2022 | US |
Child | 18542842 | US | |
Parent | 16805943 | Mar 2020 | US |
Child | 17717256 | US | |
Parent | 15948098 | Apr 2018 | US |
Child | 16805943 | US | |
Parent | 14296561 | Jun 2014 | US |
Child | 15948098 | US |