Abstract:
The present invention is directed to methods and apparatuses for environmental management using a smart alarm comprising, receiving one or more readings from one or more sensors, wherein the sensors are of at least one or more distinct logical types, generating one or more derived points representing the one or more readings from the sensors and alerting one or more alarm units when the derived points satisfy an alarm condition

Description:
BACKGROUND OF THE INVENTION 
       [0001]    1. Field of the Invention 
         [0002]    Embodiments of the present invention generally relate to environmental management of data centers and, more particularly, to a method and apparatus for providing environmental management using smart alarms. 
         [0003]    2. Description of the Related Art 
         [0004]    Typical environmental alarms are based on two types of alarm events: 1) level-crossing events such as temperature crossing above an alarm level, and 2) status alarms such as a mismatch between a binary command (e.g., “ON”) and a status indicator providing binary feedback about whether or not the commanded unit has turned “ON”. There are three problems with these types of alarms. The first is that for some systems, such as the cooling and temperature management system in a data center, there may be hundreds or thousands of the same logical sensor type or status indicators in the same managed space. 
         [0005]    For example, in a typical 10,000 square foot data center, an environmental management system may have more than 200 sensor points, where most of them are rack inlet air temperature points measuring temperature at a particular cluster of sensors. Many sites with an environmental management system are up to 100,000 square feet with over a thousand sensor points and over one hundred cooling units each with status indicator sensor points. Upon a cooling failure event at a large site, hundreds of level-crossing (high-temperature) alarms and dozens of status alarms occur, flooding notification systems such as email and text messaging systems, making it difficult for operators to determine the extent and scope of a problem. Even in regular temperature conditions, the system has many sensors and indicators, significantly increasing the chances of false-alarms from a single sensor or indicator failure. 
         [0006]    The second problem is that level-crossing alarms, such as high-temperature alarms, are a lagging indicator of a problem. For example, if a temperature sensor is high, then the elapsed time between the root-cause event of the high temperature condition and the alarm notification time is lost. In some applications, such as a cooling failure in a high-density data center, this lost time may force a service interruption that could have been prevented if the time between root cause and alarm notification had not been lost. Low level-crossing thresholds may be selected in order to preemptively compensate for this lost time, but low thresholds can result in false alarms. 
         [0007]    In some instances, the time between root cause and level-crossing alarm notification can be avoided if an alarm is directly coupled to the root cause event. For example, if the root cause event is a cooling unit failure and if an alarm can be raised on the mismatch between the unit command and the unit status, then the status alarm can be a leading indicator of a high-temperature condition. However, this leads to the third problem, which is that not all status alarms indicate high-priority conditions, but some do. For data center cooling management this is because there is normally redundant cooling so that even if one unit or a small number of units fail, the temperature in the data center should remain under control. But sometimes a single unit failure can cause a severe problem due to lack of redundancy. For example, a partial failure of the cooling system may cause local temperatures in the data center to rise high enough to trip a fire suppression system, which may potentially shut down the remainder of the cooling units causing temperatures in the data center to exceed 130° F. 
         [0008]    Therefore, there is a need in the art for improved environmental management alarms. 
       SUMMARY OF THE INVENTION 
       [0009]    An apparatus and/or method for environmental management using a smart alarm comprising receiving one or more readings from one or more sensors, wherein the sensors are of at least one or more distinct logical types, generating one or more derived points representing the one or more readings from the sensors; and alerting one or more alarm units when the derived points satisfy an alarm condition. 
         [0010]    Various advantages, aspects and features of the present disclosure, as well as details of an illustrated embodiment thereof, are more fully understood from the following description and drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0011]    So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments. 
           [0012]      FIG. 1  depicts a functional block diagram of a smart alarm module for providing environmental management in accordance with at least one embodiment; 
           [0013]      FIG. 2  depicts a block diagram of a computer system in accordance with at least one embodiment of the present invention; and 
           [0014]      FIG. 3  depicts a flow diagram of a method for environmental management using a smart alarm in accordance with at least one embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0015]    Embodiments of the present invention generally relate to environmental management using smart alarms. According to one embodiment, 
         [0016]      FIG. 1  depicts a functional block diagram of a smart alarm module  100  for providing environmental management in accordance with at least one embodiment. The smart alarm module  100  comprises a derived points module  102 , a monitoring module  104 , a statistical analysis module  106 , an alert module  110  and a prediction module  108 . The smart alarm module  100  further comprises a database  512  and various sensor groups A, B and C. 
         [0017]    As an example, sensor group A comprises sensors  103 A,  105 A and  107 A, where sensors  103 A,  105 A and  107 A are, according to one embodiment, a particular logical type of sensors, for example, temperature sensors. The sensor groups A, B, C monitor equipment facilities, such as server rooms and the like, and measure environmental changes in the facility. Often the equipment housed in the facilities is computer servers which generate large amounts of heat and must remain below a particular temperature in order to operate at a functional capacity. In order to ensure that the equipment maintains a regular temperature, sensors such as  103 - 107  are used to monitor fluctuations and changes. 
         [0018]    According to some embodiments, sensor groups A, B and C are distinct groups of types of sensors. In other embodiments, one or more of the sensor groups may have the same type of logical sensors and the remaining sensor groups have different logical types. According to an exemplary embodiment, sensor types comprise at least: rack inlet air temperature sensors, humidity sensors, return air temperature sensors, rack discharge air temperature sensors, floor differential pressure sensors, AHU discharge air temperature sensors, duct differential pressure sensors, power consumption monitor sensors, vibration sensors, gas and smoke sensors or the like. Optionally, the smart alarm module  100  can be located remote from the sensor groups A, B and C and the sensors upload data through a network to the smart alarm module  100 . In other embodiment, the smart alarm module  100  can be located locally and coupled directly to the sensors via a wired and/or wireless communication network. 
         [0019]    The smart alarm module  100  receives sensor readings from sensor groups A, B and C for the equipment and communicatively couples the readings to the derived points module  102 . In a preferred embodiment, the derived points module  102  stores the raw sensor readings in  132  in the database  130 . According to some embodiments, the readings are also stored in the database  130 , or other similar storage medium, as derived point readings  134   
         [0020]    The derived points module  102  generates one or more derived points that represent properties or aspects of raw sensor data or status data to be monitored in lieu of the raw sensor data. For example, the number (or fraction) of sensor points of the same logical type that exceed a high-temperature alarm level can be a derived point that represent the temperatures themselves as the monitored variable, as opposed to directly monitoring each temperature sensor. In this example, there may be one or more alarm levels for the number (or fraction) of temperatures that exceed the sensors group A&#39;s high-temperature alarm threshold. 
         [0021]    For example, if there are 200 temperature sensors, there may be three alarm levels: a first alarm level for when 25 temperature sensors exceed a high temperature alarm level, a second alarm level for when 100 temperature sensors exceed a high temperature alarm level, and a third alarm level for when 150 temperature sensors exceed a high temperature alarm level. Accordingly, information about temperatures exceeding a threshold will be known when as little as 25 temperature sensors (in this example) detect a higher than normal temperature, providing a “leading” indication regarding an arising emergency. In the described example, there will be, for example, three derived points: derived point  1 , indicating the status of 25 temperature sensors, derived point  2 , indicating the status of 100 temperature sensors, and derived point  3 , indicating the status of 150 temperature sensors. Alternatively, the derived points may be set as a fraction of the total of number of temperature sensors instead of a defined number of temperature sensors. 
         [0022]    Other derived points could comprise other descriptive statistics or mathematical operations, performed by the coupled statistical analysis module  106  on sensor group B, such as the mode or the average of a collection of sensor readings in sensor group B, in addition to points constructed from a state estimator such as a Kalman filter and further derived points that represent these constructed points. A state estimator such as a Kalman filter uses a series of sensor readings to produce (in the case of Kalman filters, statistically optimal) estimates of unknown variables for which there may be no direct sensor readings in the system. They can also produce estimates of actual values of variables whose sensor readings are noisy when noise-induced spikes could trigger spurious alert conditions. 
         [0023]    According to some embodiments, descriptive statistics that reflect the scale or shape of a distribution of sensor readings  132 , instead of the location of the sensor groups A, B and C are used. Examples comprise the range and the difference between a location parameter, such as the mean or median, and extreme (high or low) quantiles, where quantiles are points taken at regular intervals from the estimated cumulative distribution function (CDF) of a random variable. 
         [0024]    In other embodiments, other derived metrics replace sensor values for alarming. For example, cooling redundancy at each sensor location may be used as a derived point, after which the statistical analysis module  106  apples descriptive statistics to the derived points. If the statistics indicate an alarm should be set, the alert module  110  signals the alarm units  115  for alarming. A measure of cooling redundancy could be the number of cooling units that substantially affect a sensor location. 
         [0025]    The prediction module  108  provides a predictive capability regarding the sensor groups A, B, and C and their future states. Predictions may be made using a transfer function, a lumped-parameter model, a Computational Fluid Dynamics type model, or any other predictive method. According to some embodiments, possible model types comprise lumped parameter (ODEs) or distributed parameter (PDEs), which may include continuous states, discrete states, or a combination of the two. Models may be generated analytically, computationally, or experimentally, and may include expressions of human knowledge of, or insights into, the behavior of a specific monitored facility (such as an expert system). The prediction module  108  uses logical models of cooling equipment, or other mathematical expressions of their behavior, to predict the impact of events such as cooling unit failures. If a unit or piece of equipment in a monitored facility has a status alarm indicating that cooling has failed, then the prediction module  108  determines a forward prediction based on this failure being persistent, and further based on any predetermined sequence of events that is known to follow such a failure. Such a predetermined sequence of events may comprise the start-up of a backup-system that exists to address such a failure. According to one embodiment, the backup system includes an electric generator or another chilled or cold-water source. A predetermined sequence of events also comprises, for example, specifications of how facility operators or other facility safety systems are supposed to react in the case of such an event. For example, if these specifications call for the operator to turn off heat load (e.g., heat generated by electronics) on one specific rack within a certain period of time, then a prediction could be made based on the assumption that the operator will indeed turn off the heat load on that rack at some specified time in the future, or, alternatively, on the assumption that the operator will not turn off the heat load. 
         [0026]    In the prediction module  108 , the predicted values of a derived point, such as the number or fraction of “exceedances” or threshold violations, is computed based on the predicted state of the sensor readings at one or more future points in time. The predicted state is determined, directly or indirectly, by previous and/or current sensor readings  130  and current and/or previous derived points  132  stored in the database  130  by the monitoring module  104 . According to other embodiments, the predicted state may be factory or user configured. The predictive capability may comprise measures of confidence in the predicted states, which result in measures of confidence in the predicted value of a derived point. One example of such a measure is when the statistical analysis module  106  produces the statistical confidence interval that is based, in part, on the variability of past states of the system, but other measures are possible. 
         [0027]    In another embodiment, the prediction module  108  predicts a time until a numerical or fractional count of derived points exceed a threshold (referred to as an “exceedance”), and then uses that predicted time as a monitored variable by the monitoring module  104 , for level-crossing alarms. For example, if the individual temperature sensor point thresholds for 500 temperature points from 500 sensors are all 100° F., and if a low-priority fractional count is 1%, and if a time interval threshold is set at three (3) hours, then the alert module  110  will signal the low-priority exceedance count alarm when the prediction module  108  indicates that five (5) of the temperatures will exceed 100° F. in less than three (3) hours. In the context of confidence measures, the alert module  110  will signal the same alarm when the prediction module  108  indicates that five (5) of the temperatures will exceed 100° F. in less than three (3) hours, where the predicted indication has a confidence level that exceeds a selected confidence threshold. 
         [0028]      FIG. 2  depicts a block diagram of a computer system in accordance with at least one embodiment of the present invention. In some embodiments, the alarm module  100  may be implemented using a one or more of such computers, for example a group of servers. The computer  200  may be used to implement the functionality of the smart alarm module  100  as the smart alarm module  205 . The computer  200  includes a processor  202 , various support circuits  206 , and memory  204 . The processor  202  may include one or more microprocessors known in the art. The support circuits  206  for the processor  202  include conventional cache, power supplies, clock circuits, data registers, I/O interface  207 , and the like. The I/O interface  207  may be directly coupled to the memory  204  or coupled through the supporting circuits  206 . The I/O interface  207  may also be configured for communication with input devices and/or output devices such as network devices, various storage devices, mouse, keyboard, display, and the like. 
         [0029]    The memory  204 , or computer readable medium, stores non-transient processor-executable instructions and/or data that may be executed by and/or used by the processor  202 . These processor-executable instructions may comprise firmware, software, and the like, or some combination thereof. Modules having processor-executable instructions that are stored in the memory  204  comprise a smart alarm module  205 , which further comprises a derived points module  207 , a monitoring module  206 , a prediction module  208 , a statistical analysis module  210  and an alert module  212 . The memory  204  also stores a database  212 . The memory  204  may include one or more of the following random access memory, read only memory, magneto-resistive read/write memory, optical read/write memory, cache memory, magnetic read/write memory, and the like, as well as signal-bearing media as described below. 
         [0030]      FIG. 3  depicts a flow diagram of a method  300  for environmental management using smart alarms in accordance with at least one embodiment of the present invention. The method  300  represents the execution of the smart alarm module  100  implemented as the smart alarm module  205 , stored in memory  204  and executed by processor  202 . The method  300  begins at step  302  and proceeds to step  304 . 
         [0031]    At step  304 , the method smart alarm module  205  configures upper and lower limits of the various sensors located in an equipment housing facility currently being monitored. The smart alarm module  205  also configures for each sensor, or for each derived point, the number or fraction of allowable exceedances, i.e., the number of sensors that can go above or below, respectively, the upper and lower limit previously configured. Time limits for exceedances are also initiated optionally along with a prediction time horizon (i.e., a limit on how far into the future a prediction is made). The smart alarm module  205  further configures an initial polling rate for each sensor or measured alarm and the rate or conditions at which alarm predictions will be made. 
         [0032]    According to some embodiments, the method  300  branches after step  304  and performs steps  306  and  322 , and their subsequent steps substantially in parallel. At step  306 , the monitoring module  206  determines whether there is newly measured data. If there is no newly measured data, the method ends at step  350 . If newly measured data is available to the monitoring module  206 , the monitoring module  206  compares the data with limits set on the sensors or the derived points at step  308 . 
         [0033]    The monitoring module  206  further counts the number of exceedances of the limits initially set, by the sensors. At step  310 , the monitoring module  206  determines whether the count of exceedances is greater than a high-priority level (a predetermined value), and if the count is not greater, then the monitoring module  206  signals to the alert module  212  that there is no high priority alarm at step  314  and the method returns to step  306 . If the count of exceedances exceeds the high priority value, the monitoring module  206  signals the alert module  212  to initiate the alarm units  115  signifying a high priority event has occurred at step  312 . 
         [0034]    Similarly, if the exceedance count is greater than a low priority level (yet lower than the high priority level) at step  316 , the monitoring module  206  signals the alert module  212  to initiate the alarm units  115  signifying a low priority event has occurred at step  318 . If the exceedances do not exceed the low-priority level then the monitoring module  206  signals to the alert module  212  that there is no low priority alarm at step  320  and the method returns to step  306 . 
         [0035]    According to other embodiments of the present invention, the monitoring module  206  may signal the alert module  212  to initiate the alarm units  115  when any number of exceedances is observed. For example, a medium priority level may be met and the alarm units  115  are signaled accordingly. In the general case, the derived point exceedances can be monitored for N levels of exceedances corresponding to N priority levels. 
         [0036]    At parallel step  322 , the monitoring module  206  determines whether the calculation timer has expired, or a status alarm has been reported. If neither of these is true, the method ends at step  350 . If either the calculation time is expired or a status alarm has been reported, the method  300  proceeds to step  324 , where the predicted time (as predicted by the prediction module  208 ) is compared with limits and the number of exceedances is counted. 
         [0037]    At step  326 , the monitoring module  206  determines whether the predicted time to exceedance limit is less than a low priority level. If it is determined that the predicted time to exceedance limit is less than the low priority level, the monitoring module  206  signals the alert module  212  that there is a low-priority alarm that must propagate to the alarm units  115  at step  328 . If it is determined that the predicted time to exceedance limit is not less than the low priority level, the monitoring module  206  signals the alert module  212  that there is no low-priority alarm to propagate to the alarm units  115  at step  331 , and the method returns to step  322 . 
         [0038]    At step  329 , the monitoring module  206  determines whether the predicted time to exceedance limit is less than a high priority level. If it is determined that the predicted time to exceedance limit is less than the high priority level, the monitoring module  206  signals the alert module  110  that there is a high-priority alarm that must propagate to the alarm units  115  at step  330 . If it is determined that the predicted time to exceedance limit is not less than the high priority level, the monitoring module  206  signals the alert module  212  that there is no high-priority alarm to propagate to the alarm units  115  at step  332 , and the method returns to step  322 . The method terminates at step  350  after there is no more measurement data, and the calculation timer has expired or there are no status alarms. 
         [0039]    Various elements, devices, modules and circuits are described above in association with their respective functions. These elements, devices, modules and circuits are considered means for performing their respective functions as described herein. While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.