The present disclosure relates generally to heating, ventilation, and air conditioning (HVAC) systems and more particularly, but not by way of limitation, to control systems and methods for preventing evaporator coil freeze.
HVAC systems are used to regulate environmental conditions within an enclosed space. Typically, HVAC systems have a circulation fan that pulls air from the enclosed space through ducts and pushes the air back into the enclosed space through additional ducts after conditioning the air (e.g., heating, cooling, humidifying, or dehumidifying the air). To direct operation of the circulation fan and other components, HVAC systems include a controller. In addition to directing operation of the HVAC system, the controller may be used to monitor various components, (i.e. equipment) of the HVAC system to determine if the components are functioning properly.
A system of one or more computers can be configured to perform particular operations or actions by virtue of having software, firmware, hardware, or a combination of them installed on the system that in operation causes or cause the system to perform the actions. One or more computer programs can be configured to perform particular operations or actions by virtue of including instructions that, when executed by data processing apparatus, cause the apparatus to perform the actions.
In an embodiment, one general aspect includes a method of preventing evaporator coil freeze in a heating, ventilation and air conditioning (HVAC) system. The method is performed by a controller in the HVAC system. The method includes determining a reference saturated suction temperature (SST) via a sensor disposed in relation to an evaporator coil in the HVAC system. The method also includes determining whether the reference SST is below a minimum SST threshold. The method also includes, responsive to a determination that the reference SST is below the minimum SST threshold, increasing a discharge air temperature (DAT) setpoint. Other embodiments of this aspect include corresponding computer systems, apparatus, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the methods.
In an embodiment, another general aspect includes a heating, ventilation and air conditioning (HVAC) system. The HVAC system includes an evaporator coil, a sensor disposed in relation to the evaporator coil, and a compressor fluidly coupled to a condenser coil and the evaporator coil. The HVAC system also includes a controller operatively coupled to the compressor, where the controller is operable to perform a method. The method includes determining a reference saturated suction temperature (SST) via a sensor disposed in relation to an evaporator coil in the HVAC system. The method also includes determining whether the reference SST is below a minimum SST threshold. The method also includes, responsive to a determination that the reference SST is below the minimum SST threshold, increasing a discharge air temperature (DAT) setpoint.
In an embodiment, another general aspect includes a computer-program product that includes a non-transitory computer-usable medium having computer-readable program code embodied therein. The computer-readable program code is adapted to be executed to implement a method. The method includes determining a reference saturated suction temperature (SST) via a sensor disposed in relation to an evaporator coil in the HVAC system. The method also includes determining whether the reference SST is below a minimum SST threshold. The method also includes, responsive to a determination that the reference SST is below the minimum SST threshold, increasing a discharge air temperature (DAT) setpoint.
For a more complete understanding of the present invention and for further objects and advantages thereof, reference may now be had to the following description taken in conjunction with the accompanying drawings in which:
Various embodiments of the present disclosure will now be described more fully with reference to the accompanying drawings. The invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein.
HVAC systems are frequently utilized to adjust both temperature of conditioned air as well as relative humidity of the conditioned air. A cooling capacity of an HVAC system is a combination of the HVAC system's sensible cooling capacity and latent cooling capacity. Sensible cooling capacity refers to an ability of the HVAC system to remove sensible heat from conditioned air. Latent cooling capacity refers to an ability of the HVAC system to remove latent heat from conditioned air. In a typical embodiment, sensible cooling capacity and latent cooling capacity vary with environmental conditions. Sensible heat refers to heat that, when added to or removed from the conditioned air, results in a temperature change of the conditioned air. Latent heat refers to heat that, when added to or removed from the conditioned air, results in a phase change of, for example, water within the conditioned air. Sensible-to-total ratio (“S/T ratio”) is a ratio of sensible heat to total heat (sensible heat+latent heat). The lower the S/T ratio, the higher the latent cooling capacity of the HVAC system for given environmental conditions.
Sensible cooling load refers to an amount of heat that must be removed from the enclosed space to accomplish a desired temperature change of the air within the enclosed space. The sensible cooling load is reflected by a temperature within the enclosed space as read, for example, on a dry-bulb thermometer. Latent cooling load refers to an amount of heat that must be removed from the enclosed space to accomplish a desired change in humidity of the air within the enclosed space. The latent cooling load is reflected by a temperature within the enclosed space as read, for example, on a wet-bulb thermometer. Setpoint or temperature setpoint refers to a target temperature setting of the HVAC system as set by a user or automatically based on a pre-defined schedule. Discharge air temperature (DAT) refers to a temperature of air leaving an evaporator coil. Typically, DAT is maintained at a constant pre-set level. DAT varies with indoor dry-bulb air temperature, indoor wet-bulb air temperature, indoor air flow rate, cooling capacity of the HVAC system, and other design parameters.
When there is a high sensible cooling load such as, for example, when outside-air temperature is significantly warmer than an inside-air temperature setpoint, the HVAC system will continue to operate in an effort to effectively cool and dehumidify the conditioned air. Such operation is commonly referred to as “cooling mode.” When there is a low sensible cooling load but high relative humidity such as, for example, when the outside air temperature is relatively close to the inside air temperature setpoint, but the outside air is considerably more humid than the inside air, additional steps must be undertaken to increase the moisture-removal capability of the HVAC system to avoid occupant discomfort. This is commonly referred to as “dehumidification mode.” Additionally, limiting indoor blower speed to a speed below Normal cooling cubic feet per minute (CFM) ensures that the S/T ratio does not rise above, for example, 0.8. Maintaining the S/T ratio below, for example, 0.8 maintains latent capacity of the HVAC system. Additionally, when there is a low sensible cooling load, lowering the DAT according to the temperature of the enclosed space lowers the S/T ratio and increases the latent capacity of the HVAC system.
While lowering DAT can be advantageous in many respects, it generally has the effect of lowering saturation suction temperature. Saturation suction temperature (SST) refers to saturated refrigerant temperature at suction pressure leaving an evaporator, or any measurement used as a proxy for such temperature. If the SST approaches a freezing point of the refrigerant, frost will begin to form on the evaporator coil. This situation is often referred to as evaporator coil freeze. Evaporator coil freeze causes an increased risk of damage to the evaporator coil and other components of the HVAC system. This problem can be particularly common in HVAC systems that include more than compressor, as the presence of multiple circuits in the evaporator coil, some of which are more downstream than others, can result in wide variation in SST throughout the evaporator coil.
The present disclosure describes examples of control systems and methods that enable DAT to be safely modulated, for example, during dehumidification mode, with a greatly reduced risk of evaporator coil freeze. In various embodiments, a controller of an HVAC system monitors SST and causes a DAT setpoint to be algorithmically adjusted based, at least in part, on the SST. For example, the DAT setpoint can be algorithmically increased as the SST falls beneath a configurable minimum temperature, or whenever the SST indicates a trend towards evaporator coil freeze. Afterwards, the DAT setpoint can be algorithmically decreased towards its previous level as the SST moves toward or exceeds the configurable minimum temperature, or whenever the SST indicates a trend away from evaporator coil freeze. Examples will be described below with reference to the Drawings.
The HVAC system 100 includes a variable-speed circulation fan 110, a gas heat 120, electric heat 122 typically associated with the variable-speed circulation fan 110, and a refrigerant evaporator coil 130, also typically associated with the variable-speed circulation fan 110. The variable-speed circulation fan 110, the gas heat 120, the electric heat 122, and the refrigerant evaporator coil 130 are collectively referred to as an “indoor unit” 148. In a typical embodiment, the indoor unit 148 is located within, or in close proximity to, the enclosed space 101. The HVAC system 100 also includes a variable-speed compressor 140 and an associated condenser coil 142, which are typically referred to as an “outdoor unit” 144. In various embodiments, the outdoor unit 144 is, for example, a rooftop unit or a ground-level unit. The variable-speed compressor 140 and the associated condenser coil 142 are connected to an associated evaporator coil 130 by a refrigerant line 146. In a typical embodiment, the variable-speed compressor 140 is, for example, a single-stage compressor, a multi-stage compressor, a single-speed compressor, or a variable-speed compressor. The variable-speed circulation fan 110, sometimes referred to as a blower, is configured to operate at different capacities (i.e., variable motor speeds) to circulate air through the HVAC system 100, whereby the circulated air is conditioned and supplied to the enclosed space 101.
In various embodiments, as described in greater relative to
In embodiments in which the variable-speed compressor 140 is representative of multiple compressors, the evaporator coil 130 may include a plurality of evaporator circuits that are apportioned among the compressors according to a suitable circuiting arrangement, where each compressor operates off of the evaporator circuits apportioned thereto. For example, in various embodiments, the evaporator coil 130 may implement a row-split or intertwined circuiting arrangement. Although the variable-speed compressor 140 can be representative of multiple compressors as described above, for simplicity of description and illustration, the variable-speed compressor 140 will be illustrated and described singly.
Still referring to
The HVAC controller 150 may be an integrated controller or a distributed controller that directs operation of the HVAC system 100. In a typical embodiment, the HVAC controller 150 includes an interface to receive, for example, thermostat calls, temperature setpoints, blower control signals, environmental conditions, and operating mode status for various zones of the HVAC system 100. For example, in a typical embodiment, the environmental conditions may include indoor temperature and relative humidity of the enclosed space 101. In a typical embodiment, the HVAC controller 150 also includes a processor and a memory to direct operation of the HVAC system 100 including, for example, a speed of the variable-speed circulation fan 110.
Still referring to
In a typical embodiment, the HVAC system 100 is configured to communicate with a plurality of devices such as, for example, a communication device 155, a monitoring device 156, and the like. In a typical embodiment, the monitoring device 156 is not part of the HVAC system. For example, the monitoring device 156 is a server or computer of a third party such as, for example, a manufacturer, a support entity, a service provider, and the like. In other embodiments, the monitoring device 156 is located at an office of, for example, the manufacturer, the support entity, the service provider, and the like.
In a typical embodiment, the communication device 155 is a non-HVAC device having a primary function that is not associated with HVAC systems. For example, non-HVAC devices include mobile-computing devices that are configured to interact with the HVAC system 100 to monitor and modify at least some of the operating parameters of the HVAC system 100. Mobile computing devices may be, for example, a personal computer (e.g., desktop or laptop), a tablet computer, a mobile device (e.g., smart phone), and the like. In a typical embodiment, the communication device 155 includes at least one processor, memory and a user interface, such as a display. One skilled in the art will also understand that the communication device 155 disclosed herein includes other components that are typically included in such devices including, for example, a power supply, a communications interface, and the like.
The zone controller 180 is configured to manage movement of conditioned air to designated zones of the enclosed space 101. Each of the designated zones include at least one conditioning or demand unit such as, for example, the gas heat 120 and at least one user interface 170 such as, for example, the thermostat. The zone-controlled HVAC system 100 allows the user to independently control the temperature in the designated zones. In a typical embodiment, the zone controller 180 operates electronic dampers 185 to control air flow to the zones of the enclosed space 101.
In some embodiments, a data bus 190, which in the illustrated embodiment is a serial bus, couples various components of the HVAC system 100 together such that data is communicated therebetween. In a typical embodiment, the data bus 190 may include, for example, any combination of hardware, software embedded in a computer readable medium, or encoded logic incorporated in hardware or otherwise stored (e.g., firmware) to couple components of the HVAC system 100 to each other. As an example and not by way of limitation, the data bus 190 may include an Accelerated Graphics Port (AGP) or other graphics bus, a Controller Area Network (CAN) bus, a front-side bus (FSB), a HYPERTRANSPORT (HT) interconnect, an INFINIBAND interconnect, a low-pin-count (LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a serial advanced technology attachment (SATA) bus, a Video Electronics Standards Association local (VLB) bus, or any other suitable bus or a combination of two or more of these. In various embodiments, the data bus 190 may include any number, type, or configuration of data buses 190, where appropriate. In particular embodiments, one or more data buses 190 (which may each include an address bus and a data bus) may couple the HVAC controller 150 to other components of the HVAC system 100. In other embodiments, connections between various components of the HVAC system 100 are wired. For example, conventional cable and contacts may be used to couple the HVAC controller 150 to the various components. In some embodiments, a wireless connection is employed to provide at least some of the connections between components of the HVAC system such as, for example, a connection between the HVAC controller 150 and the variable-speed circulation fan 110, the variable-speed compressor 140, or the plurality of environment sensors 160.
Still referring to
The low-pressure, low-temperature, super-heated vapor refrigerant is introduced into the variable-speed compressor 140 via the suction line 204. In a typical embodiment, the variable-speed compressor 140 increases the pressure of the low-pressure, low-temperature, super-heated vapor refrigerant and, by operation of the ideal gas law, also increases the temperature of the low-pressure, low-temperature, super-heated vapor refrigerant to form a high-pressure, high-temperature, superheated vapor refrigerant. The high-pressure, high-temperature, superheated vapor refrigerant enters the condenser coil 142.
Outside air is circulated around the condenser coil 142 by a variable-speed condenser fan 210. The outside air is typically cooler than the high-pressure, high-temperature, superheated vapor refrigerant present in the condenser coil 142. Thus, heat is transferred from the high-pressure, high-temperature, superheated vapor refrigerant to the outside air. Removal of heat from the high-pressure, high-temperature, superheated vapor refrigerant causes the high-pressure, high-temperature, superheated vapor refrigerant to condense and change from a vapor state to a high-pressure, high-temperature, sub-cooled liquid state. The high-pressure, high-temperature, sub-cooled liquid refrigerant leaves the condenser coil 142 via the liquid line 208 and enters the metering device 202.
In the metering device 202, the pressure of the high-pressure, high-temperature, sub-cooled liquid refrigerant is abruptly reduced. In various embodiments where the metering device 202 is, for example, a thermostatic expansion valve, the metering device 202 reduces the pressure of the high-pressure, high-temperature, sub-cooled liquid refrigerant by regulating an amount of refrigerant that travels to the refrigerant evaporator coil 130. Abrupt reduction of the pressure of the high-pressure, high-temperature, sub-cooled liquid refrigerant causes rapid evaporation of a portion of the high-pressure, high-temperature, sub-cooled liquid refrigerant, commonly known as flash evaporation. The flash evaporation lowers the temperature of the resulting liquid/vapor refrigerant mixture to a temperature lower than a temperature of the air in the enclosed space 101. The liquid/vapor refrigerant mixture leaves the metering device 202 and returns to the refrigerant evaporator coil 130.
Referring to
A second temperature sensor 229 is disposed in the enclosed space 101. In a typical embodiment, the second temperature sensor 229 is a thermocouple, a thermometer, a thermistor, or other appropriate temperature-measuring device. The second temperature sensor 229 measures an air temperature within the enclosed space 101. In various embodiments, the second temperature sensor 229 and the HVAC controller 150 are integral; however, in other embodiments, the second temperature sensor 229 and the HVAC controller 150 are separate devices thereby allowing the HVAC controller to be located outside of the enclosed space 101. In a typical embodiment, the second temperature sensor 229 continuously measures the temperature of the enclosed space 101; however, in other embodiments, the second temperature sensor 229 measures the temperature of the enclosed space 101 at periodic time intervals such as, for example, every five seconds. In a typical embodiment, the second temperature sensor 229 is electrically coupled to the HVAC controller 150 via a wired connection; however, in other embodiments, the second temperature sensor 229 is connected to the HVAC controller 150 via a wireless connection. Communication between the second temperature sensor 229 and the HVAC controller 150 is illustrated graphically in
A third temperature sensor 232 is disposed within or in relation to the evaporator coil 130. In various embodiments, the third temperature sensor 232 may be, for example, a thermocouple, a thermometer, a pressure transducer, a thermostat, a thermistor, or any other appropriate sensor. The third temperature sensor 232 measures SST and transmits the SST to the HVAC controller 150. In some embodiments, the third temperature sensor 232 may be disposed on an exterior surface of the evaporator coil 130 thereby using an evaporator coil 130 surface temperature as a proxy measurement for the SST. Communication between the third temperature sensor 232 and the HVAC controller 150 is illustrated graphically in
In various embodiments, the HVAC controller 150 can use the second temperature sensor 229 to establish a DAT setpoint. As mentioned previously, the second temperature sensor 229 transmits the temperature of the enclosed space 101 to the HVAC controller 150. When the temperature of the enclosed space 101 is at or above a maximum threshold such as, for example, 80° F., the HVAC controller 150 establishes the DAT setpoint at a first setpoint temperature such as, for example, approximately 50° F. When the temperature of the enclosed space 101 is at or below a minimum threshold such as, for example, 70° F., the HVAC controller 150 establishes the DAT setpoint at a second setpoint temperature such as, for example, 45° F., thereby lowering the DAT setpoint from the first setpoint temperature to the second setpoint temperature as the temperature of the enclosed space 101 falls. In a typical embodiment, the minimum threshold, the maximum threshold, the first setpoint temperature, and the second setpoint temperature may be adjusted according to the preferences of an occupant of the enclosed space 101. When the temperature of the enclosed space 101 is between the maximum threshold and the minimum threshold such as, for example, between 70° F. and 80° F., the HVAC controller 150 establishes the DAT setpoint at a value between the first setpoint temperature and the second setpoint temperature in a linear fashion relative to the temperature of the enclosed space 101.
In various embodiments, the HVAC controller 150 can use the third temperature sensor 232 to adapt an established DAT setpoint, when deemed appropriate, to prevent evaporator coil freeze. In various embodiments, the HVAC controller 150 can monitor the third temperature sensor 232. When the SST is less than a minimum SST threshold, the HVAC controller can adapt or adjust the established DAT setpoint in accordance with a configurable algorithm. Examples of adapting the DAT setpoint will be described relative to
In a typical embodiment, the HVAC controller 150 modulates the variable-speed compressor 140 and/or the variable-speed circulation fan 110 to vary the DAT in response to changes in the DAT setpoint. For example, the DAT can be increased by reducing a speed of the variable-speed compressor 140 or by increasing a speed of the variable-speed circulation fan 110. Similarly, the DAT can be decreased by increasing a speed of the variable-speed compressor 140 or by decreasing a speed of the variable-speed circulation fan 110. Signaling of the variable-speed compressor 140 by the HVAC controller 150 is illustrated in
At decision block 410, the HVAC controller 150 determines if the temperature of the enclosed space 101 is at or below a minimum threshold such as, for example, approximately 70° F. If it is determined at decision block 410 that the temperature of the enclosed space 101 is below the minimum threshold, the process 400 proceeds to block 412. At block 412, the HVAC controller establishes the DAT setpoint at a second setpoint temperature such as, for example, approximately 45° F. After block 412, the process 400 ends. However, if it is determined at decision block 410 that the temperature of the enclosed space 101 is between the minimum threshold and the maximum threshold, the process 400 proceeds to block 414.
At block 414, the HVAC controller 150 establishes the DAT setpoint at a temperature between the first temperature setpoint and the second temperature setpoint. In some cases, the HVAC controller 150 can vary the DAT setpoint with the temperature of the enclosed space 101 in a linear fashion. Thus, in such cases, the DAT can vary proportionally with the temperature of the enclosed space 101 when the temperature of the enclosed space 101 is between the maximum threshold and the minimum threshold such as, for example, 70° F. and 80° F. In a typical embodiment, the minimum threshold, the maximum threshold, the first setpoint temperature, and the second setpoint temperature may be adjusted according to the preferences of an occupant of the enclosed space 101. After block 414, the process 400 ends.
At block 504, the HVAC controller 150 determines a reference SST (SSTREF) via each third temperature sensor 232. In general, SSTREF can be any value deemed to represent SST for all or part of the evaporator coil 130. In various embodiments, SSTREF can be a result of an automated analysis or computation using SSTs transmitted by each third temperature sensor 232. For example, block 504 can involve the HVAC controller 150 determining a plurality of SSTs (e.g., a most recent SST for each third temperature sensor 232) and determining a minimum SST of the plurality of SSTs, where the minimum SST serves as SSTREF. In embodiments in which the third temperature sensor 232 represents only a single SST sensor, SSTREF can be the most recent SST provided by that single SST sensor.
At decision block 506, the HVAC controller 150 determines whether SSTREF is below a configurable minimum SST threshold (SSTThresh). In various embodiments, SSTThresh can be set to a value that is configurably above an applicable freezing point. In various examples in which the applicable freezing point is 32° F., SSTThresh may be set to 33° F., 34° F., 36° F., 38° F. or any other suitable temperature. If it is determined at decision block 506 that SSTREF is not below SSTThresh, the process 500 proceeds to block 510. At block 510, the HVAC controller 150 uses a previously established or default DAT setpoint. The previously established or default DAT setpoint may correspond to a setpoint that would otherwise be used in the absence of the process 500, such as a setpoint established via the process 400 of
If it is determined at the decision block 506 that SSTREF is below SSTThresh, the process 500 proceeds to block 508. At block 508, the HVAC controller 150 adapts the DAT setpoint based on SSTREF. For example, the block 508 can include determining an adapted setpoint value (DAT_SPAdapt) using SSTREF and setting the DAT setpoint to DAT_SPAdapt. In some embodiments, DAT_SPAdapt can vary with SSTREF between a minimum value (DAT_SPLow) and a maximum value (DAT_SPHigh). In a typical embodiment, if SSTREF is decreasing and the DAT setpoint is less than DAT_SPHigh, block 508 will amount to increasing the DAT setpoint. Conversely, in a typical embodiment, if SSTREF is increasing, although remaining below SSTThresh, block 508 will amount to decreasing the DAT setpoint. In this fashion, the HVAC controller 150 can adjust the DAT setpoint in each iteration through the block 508 in response to a then-existing SSTREF. After block 508, the process 500 returns to block 502 and executes as described previously. In various embodiments, the process 500 can continue to execute until terminated by a user or administrator or until other suitable stop criteria is satisfied.
Equation 1 and Equation 2 below provide examples of how to determine DAT_SPAdapt, for example, during the block 508 of the process 500 of
Although examples of linear functions are provided above for simplicity of description, one skilled in the art will appreciate that DAT_SPAdapt can also vary non-linearly with SSTREF between DAT_SPLow and DAT_SPHigh. For example, DAT_SPAdapt can be established using a polynomial function. Non-linear variation, such as by way of a polynomial function, can be advantageous to provide more significant and responsive change depending on a value of SSTREF. According to this example, in cases where the DAT setpoint is being algorithmically increased as described previously, relatively lower values of SSTREF (e.g., values close to an applicable freezing point) can result in a steeper increase to DAT_SPAdapt than relatively higher values according to a polynomial curve. Similarly, in cases where the DAT setpoint is being algorithmically decreased as described previously, relatively higher values of SSTREF (e.g., values closer to SSTThresh) can result in a steeper decrease to DAT_SPAdapt than relatively lower values according to the polynomial curve.
In some embodiments, a process for configurably adapting an established DAT setpoint, such as the process 500 of
For purposes of this patent application, the term computer-readable storage medium encompasses one or more tangible computer-readable storage media possessing structures. As an example and not by way of limitation, a computer-readable storage medium may include a semiconductor-based or other integrated circuit (IC) (such as, for example, a field-programmable gate array (FPGA) or an application-specific IC (ASIC)), a hard disk, an HDD, a hybrid hard drive (HHD), an optical disc, an optical disc drive (ODD), a magneto-optical disc, a magneto-optical drive, a floppy disk, a floppy disk drive (FDD), magnetic tape, a holographic storage medium, a solid-state drive (SSD), a RAM-drive, a SECURE DIGITAL card, a SECURE DIGITAL drive, a flash memory card, a flash memory drive, or any other suitable tangible computer-readable storage medium or a combination of two or more of these, where appropriate.
Particular embodiments may include one or more computer-readable storage media implementing any suitable storage. In particular embodiments, a computer-readable storage medium implements one or more portions of the HVAC controller 150, one or more portions of the user interface 170, one or more portions of the zone controller 180, or a combination of these, where appropriate. In particular embodiments, a computer-readable storage medium implements RAM or ROM. In particular embodiments, a computer-readable storage medium implements volatile or persistent memory. In particular embodiments, one or more computer-readable storage media embody encoded software.
In this patent application, reference to encoded software may encompass one or more applications, bytecode, one or more computer programs, one or more executables, one or more instructions, logic, machine code, one or more scripts, or source code, and vice versa, where appropriate, that have been stored or encoded in a computer-readable storage medium. In particular embodiments, encoded software includes one or more application programming interfaces (APIs) stored or encoded in a computer-readable storage medium. Particular embodiments may use any suitable encoded software written or otherwise expressed in any suitable programming language or combination of programming languages stored or encoded in any suitable type or number of computer-readable storage media. In particular embodiments, encoded software may be expressed as source code or object code. In particular embodiments, encoded software is expressed in a higher-level programming language, such as, for example, C, Python, Java, or a suitable extension thereof. In particular embodiments, encoded software is expressed in a lower-level programming language, such as assembly language (or machine code). In particular embodiments, encoded software is expressed in JAVA. In particular embodiments, encoded software is expressed in Hyper Text Markup Language (HTML), Extensible Markup Language (XML), or other suitable markup language.
Depending on the embodiment, certain acts, events, or functions of any of the algorithms described herein can be performed in a different sequence, can be added, merged, or left out altogether (e.g., not all described acts or events are necessary for the practice of the algorithms). Moreover, in certain embodiments, acts or events can be performed concurrently, e.g., through multi-threaded processing, interrupt processing, or multiple processors or processor cores or on other parallel architectures, rather than sequentially. Although certain computer-implemented tasks are described as being performed by a particular entity, other embodiments are possible in which these tasks are performed by a different entity.
Conditional language used herein, such as, among others, “can,” “might,” “may,” “e.g.,” and the like, unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements and/or states. Thus, such conditional language is not generally intended to imply that features, elements and/or states are in any way required for one or more embodiments or that one or more embodiments necessarily include logic for deciding, with or without author input or prompting, whether these features, elements and/or states are included or are to be performed in any particular embodiment.
While the above detailed description has shown, described, and pointed out novel features as applied to various embodiments, it will be understood that various omissions, substitutions, and changes in the form and details of the devices or algorithms illustrated can be made without departing from the spirit of the disclosure. As will be recognized, the processes described herein can be embodied within a form that does not provide all of the features and benefits set forth herein, as some features can be used or practiced separately from others. The scope of protection is defined by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
This application is a continuation of U.S. patent application Ser. No. 17/123,702, filed on Dec. 16, 2020, and now granted as U.S. Pat. No. 11,781,793. U.S. patent application Ser. No. 17/123,702 is incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
4003729 | McGrath | Jan 1977 | A |
4189929 | Russell | Feb 1980 | A |
4825662 | Alsenz | May 1989 | A |
5062276 | Dudley | Nov 1991 | A |
5551250 | Yingst et al. | Sep 1996 | A |
5628201 | Bahel et al. | May 1997 | A |
7975495 | Voorhis et al. | Jul 2011 | B2 |
9772124 | Wintemute et al. | Sep 2017 | B2 |
10066860 | Downie et al. | Sep 2018 | B2 |
10295217 | Goel | May 2019 | B2 |
10386089 | Goel et al. | Aug 2019 | B2 |
11561015 | Goel | Jan 2023 | B2 |
11781793 | Goel | Oct 2023 | B2 |
20020017107 | Bailey et al. | Feb 2002 | A1 |
20050235666 | Springer et al. | Oct 2005 | A1 |
20090173091 | Hu | Jul 2009 | A1 |
20090277193 | Springer et al. | Nov 2009 | A1 |
20100082161 | Patch | Apr 2010 | A1 |
20100269521 | Moore | Oct 2010 | A1 |
20130014521 | Lukasse | Jan 2013 | A1 |
20140260368 | Wintemute et al. | Sep 2014 | A1 |
20140262130 | Yenni et al. | Sep 2014 | A1 |
20140262134 | Arensmeier et al. | Sep 2014 | A1 |
20140266755 | Arensmeier et al. | Sep 2014 | A1 |
20150285526 | Smith | Oct 2015 | A1 |
20150292985 | Yenni et al. | Oct 2015 | A1 |
20150337831 | Zhou et al. | Nov 2015 | A1 |
20160273815 | Downie et al. | Sep 2016 | A1 |
20160327323 | Goel | Nov 2016 | A1 |
20170010032 | Goel et al. | Jan 2017 | A1 |
20170153037 | Goel et al. | Jun 2017 | A1 |
20170176072 | Gokhale et al. | Jun 2017 | A1 |
20170227246 | Rajan et al. | Aug 2017 | A1 |
20170234564 | Goel et al. | Aug 2017 | A1 |
20170292725 | Conley et al. | Oct 2017 | A1 |
20170356668 | Goel | Dec 2017 | A1 |
20170356671 | Goel | Dec 2017 | A1 |
20180031267 | Hern et al. | Feb 2018 | A1 |
20180372359 | Goel | Dec 2018 | A1 |
20190226706 | Liu et al. | Jul 2019 | A1 |
20190264945 | Goel | Aug 2019 | A1 |
20190277533 | Goel et al. | Sep 2019 | A1 |
20190323722 | Goel et al. | Oct 2019 | A1 |
20200056804 | Benefield et al. | Feb 2020 | A1 |
20200096236 | Rajan et al. | Mar 2020 | A1 |
20200173683 | Goel et al. | Jun 2020 | A1 |
20200240692 | Gokhale et al. | Jul 2020 | A1 |
20200355418 | Najafifard | Nov 2020 | A1 |
20220186996 | Goel et al. | Jun 2022 | A1 |
Number | Date | Country | |
---|---|---|---|
20230400237 A1 | Dec 2023 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 17123702 | Dec 2020 | US |
Child | 18238675 | US |