This application is related to U.S. Pat. No. 9,568,201, entitled “Environmental Control System Retrofittable with Multiple Types of Boiler-Based Heating Systems,” which is hereby incorporated by reference for all purposes.
This patent specification relates generally to communication between an actuator device for a boiler-based HVAC system and the boiler itself. More specifically, this disclosure describes circuits and methods for enabling devices powering, power stealing, and communication between the boiler and the actuator device to maintain compatibility with predetermined thresholds.
In certain situations, it may be beneficial to have a thermostat located a distance away from a location at which connection to heating, ventilation, and air conditioning (HVAC) control wires are accessible. For instance, HVAC control wires may be run from an HVAC system, behind a wall, and exposed in an inconvenient location, such as within a utility closet. Such a location may not be convenient to be accessed by a user or such a location may not be ideal for accurately sensing the temperature of a region of the structure in which occupants are typically present. Furthermore, when an actuator for controlling a boiler system and/or a thermostat are located away from the HVAC system, power for these devices may not be readily available.
In some embodiments, a circuit for stealing power from an external system without interfering with a communication protocol may include a plurality of wiring connectors configured to receive a plurality of wires. The plurality of wiring connectors may receive a plurality of current levels set by the external system according to the communication protocol. The circuit may also include a first voltage regulator to regulate a voltage on the plurality of wiring connectors at a plurality of voltage levels according to the communication protocol. The circuit may additionally include a current monitor to measure the plurality of current levels received through the plurality of wiring connectors, and a second voltage regulator that provides a current-limiting output. The circuit may further include a power converter that optimizes an amount of power stolen from the plurality of wiring connectors based on the current-limiting output.
In some embodiments, a method for stealing power from an external system without interfering with a communication protocol may include receiving a plurality of current levels set by the external system according to the communication protocol, where the plurality of current levels may be received through a plurality of wiring connectors configured to receive a plurality of wires. The method may also include regulating a voltage on the plurality of wiring connectors at a plurality of voltage levels according to the communication protocol using a first voltage regulator. The method may additionally include measuring the plurality of current levels received through the plurality of wiring connectors using a current monitor, and providing a current-limiting output from a second voltage regulator. The method may further include optimizing an amount of power stolen from the plurality of wiring connectors by a power converter based on the current-limiting output.
In any embodiments, one or more of the following features may be included in any combination and without limitation. The circuit may also include a bridge rectifier coupled between the plurality of wiring connectors and the first voltage regulator. The bridge rectifier may include a diode bridge rectifier. The bridge rectifier may include a FET bridge rectifier with Zener-resistor clamps at FET gates. The first voltage regulator may include a plurality of the Zener diode clamps, where regulated voltages of the plurality of Zener diode clamps may correspond to the plurality of voltage levels. The current monitor may include a resistor and a current-sense amplifier that measures a voltage differential across the resistor. The circuit may also include a resistive network coupled to the first voltage regulator and a switch controlled by a transmit signal from a processor, where the switch may change a resistance of the resistive network to control a regulated voltage output by the first voltage regulator. The circuit may also include a resistive network coupled to the second voltage regulator and a switch controlled by a transmit signal from a processor, where the switch may change a resistance of the resistive network to control a regulated voltage output by the second voltage regulator. The power converter may include an error amplifier that controls an output current of the power converter. The current-limiting output from the second voltage regulator may drop in voltage when the second voltage regulator drops out, thereby causing the power converter to use less current. Optimizing the amount of power stolen may include reducing an amount of power output by the power converter when the current-limiting output indicates that the second voltage regulator is dropping out. Optimizing the amount of power stolen may include reducing an amount of power output by the power converter when the current-limiting output indicates that the second voltage regulator is not dropping out. The method may also include decoding the plurality of current levels measured by the current monitor to determine a message sent from the external system. The method may also include encoding a message to be sent to the external system in the plurality of voltage levels. The method may also include receiving a command from a smart-home device to send the message to the external system. The method may also include using the power stolen by the power converter to power a system processor. The method may also include using the power stolen by the power converter to charge a rechargeable energy-storage device. The method may also include using the power stolen by the power converter to power a system processor. The external system may include an HVAC system comprising a boiler.
A further understanding of the nature and advantages of the present invention may be realized by reference to the remaining portions of the specification and the drawings. Also note that other embodiments may be described in the following disclosure and claims.
In the following detailed description, for purposes of explanation, numerous specific details are set forth to provide a thorough understanding of the various embodiments of the present invention. Those of ordinary skill in the art will realize that these various embodiments of the present invention are illustrative only and are not intended to be limiting in any way. Other embodiments of the present invention will readily suggest themselves to such skilled persons having the benefit of this disclosure. It will be apparent to one skilled in the art that the present invention may be practiced without some or all of these specific details. In other instances, well known details have not been described in detail in order not to unnecessarily obscure the present invention.
In addition, for clarity purposes, not all of the routine features of the embodiments described herein are shown or described. One of ordinary skill in the art would readily appreciate that in the development of any such actual embodiment, numerous embodiment-specific decisions may be required to achieve specific design objectives. These design objectives will vary from one embodiment to another and from one developer to another. Moreover, it will be appreciated that such a development effort might be complex and time-consuming but would nevertheless be a routine engineering undertaking for those of ordinary skill in the art having the benefit of this disclosure.
An actuator device (referred to as an “actuator”) may be connected with HVAC control wires. Such HVAC control wires may control operation of various HVAC components, including: a furnace, a boiler, a fan, an air conditioner, and/or a multi-stage heating or cooling system. The actuator unit may open and close circuits in order to control operation of components of the HVAC system. So as not to require an external power connection, the actuator unit may steal power from the HVAC system over the same wires used for communication with and control of the HVAC system. In order to not disrupt the communication protocol, the actuator may include a first voltage regulator that regulates an output voltage according to a transmit signal provided by the actuator. A current monitor can be placed in series with the first voltage regulator to measure the input current and decode a received signal. The output of the current monitor can be fed into a second voltage regulator that operates on the edge of its dropout mode. By receiving the transmit input provided to the first voltage regulator, the second voltage regulator can follow the output of the first regulator and provide a current limit signal to a system power converter. As the current limit signal increases proportional to an amount of current shunted through a resistive path, the system power converter can increase the amount of current stolen from the communication signal at the output of the current monitor to power the actuator and/or charge a rechargeable energy-storage device. As the current stolen by the system power converter reaches a maximum, the second regulator may enter its dropout mode, causing the system power converter to decrease the amount of current it steals. This feedback loop allows the system to steal the maximum out of current possible without interfering with the communication protocol.
Embodiments detailed herein are focused on various communication aspects between the actuator and the HVAC system. Such aspects can improve the efficiency and reliability with which the actuator can communicate and receive power from the HVAC system. It is to be appreciated that while one or more embodiments are described further herein in the context of a typical HVAC system used in a residential home, such as a single-family residential home, the scope of the present teachings is not so limited. More generally, intelligent thermostat systems according to one or more of the embodiments are applicable for a wide variety of enclosures having one or more HVAC systems including, without limitation, duplexes, townhomes, multi-unit apartment buildings, hotels, retail stores, office buildings, and industrial buildings. Further, it is to be appreciated that while the terms user, customer, installer, homeowner, occupant, guest, tenant, landlord, repair person, and/or the like may be used to refer to the person or persons who are interacting with the thermostat or other device or user interface in the context of one or more scenarios described herein, these references are by no means to be considered as limiting the scope of the present teachings with respect to the person or persons who are performing such actions.
Additionally, the communication between the HVAC system and the actuator is merely provided by way of example, and not meant to be limiting. The 2-wire communication techniques coupled with power stealing circuitry described herein can be used in any device communicating by way of a wired communication channel. Therefore, the actuator and the boiler control described below can be readily substituted for any master/slave communication devices where one device powers the other over the same channel. This includes any smart home device, such as hazard detectors, security system sensors, smart doorbells, cameras, child monitors, wearable technology, smart home assistants, microphones, speakers, smart appliances, televisions, and so forth.
It is to be appreciated that “smart home environments” may refer to smart environments for homes such as a single-family house, but the scope of the present teachings is not so limited, the present teachings being likewise applicable, without limitation, to duplexes, townhomes, multi-unit apartment buildings, hotels, retail stores, office buildings, industrial buildings, and more generally any living space or work space having one or more smart hazard detectors.
While embodiments detailed herein are focused on communication between actuators and HVAC systems, it should be understood that the embodiments detailed herein may be applicable to other smart home devices and/or sensor devices. For instance, aspects of the communication circuits described below may be applied to thermostats, smoke detectors, carbon monoxide detectors, doorbells, home assistants, video cameras, remote temperature sensors, or other smart devices that may be installed in a home, office, or other location.
In some embodiments, the HVAC system 130 may include a boiler-based HVAC system. For example, the HVAC system 130 may include a boiler device that includes a control interface with a wired communication port that may be coupled to, for example, the wired communication channel 162 with the actuator 110. As described below, the boiler device can provide power through the wired communication channel 162 to the actuator 110. The actuator 110 may include a rechargeable energy storage device 180, such as a super capacitor or a rechargeable battery. A power-stealing and communication circuit 182 in the actuator 110 can “steal” power from the boiler device through the wired communication channel 162 to provide operating power to the actuator 110 and/or recharge the energy storage device 180. Additionally, the actuator 110 and the boiler device may communicate with each other over the wired communication channel 162 using a 2-wire communication channel protocol, such as OpenTherm®.
The actuator device 110 may include a display 111, a user interface 112, a processing system 113, a wireless interface 114, and a control interface 115. The display 111, which may include one or more LEDs or other forms of lighting elements, an active display, an LCD display, a color display, and/or the like, may present information to a user regarding the operation of the actuator device 110, the status of the wired communication channel 162, the status of a wireless communication channel 160, and/or any other operational information. The display 111 may include a “dead front” display; such a display may appear to be a blank surface that is difficult to identify as a display when the one or more lighting elements are inactive. When active, the lighting elements may be visible on the blank surface. The user interface 112 may include one or more buttons or other forms of user input devices that allow a user to provide input directly to the actuator 110. For instance, the user interface 112 may be used to engage one or more components of the HVAC system 130 without a user being required to interact with the thermostat 140. The processing system 113 may include one or more processors that send/receive information via a wireless interface 114 to the thermostat 140. The processing system 113 may receive input from the user interface 112, output information that is presented via the display 111, and control actuation of various HVAC components and functions via the control interface 115. The wireless interface 114 may use one or more wireless communication protocols, such as: Wi-Fi® (IEEE 802.11), IEEE 802.15.4, Bluetooth®, Z-Wave®, ZigBee®, Thread®, or any other wireless communication protocol to communicate with the thermostat 140. Control interface 115 may open and close circuits that include HVAC control wires based on instructions from processing system 113 to control HVAC system 130.
The thermostat 140 may wirelessly communicate with the actuator 110 via the wireless communication channel 160. The thermostat 140 may transmit instructions, through one of the wireless communication protocols described above to instruct the actuator 110 to activate or deactivate one or more components of the HVAC system 130. The thermostat 140 may be removably coupled with a stand 150. The thermostat 140 may communicate via a wireless network (e.g., a Wi-Fi WLAN) with the Internet 141. Via the Internet 141, the thermostat 140 may transmit data to and receive data from a cloud-based server system 142. The cloud-based server system 142 may maintain a user account that stores data related to the thermostat 140 and may permit a user to remotely control and/or view data related to the thermostat 140. For example, a user may communicate with the cloud-based server system 142 to modify a setpoint schedule implemented by the thermostat 140 or may provide a real-time setpoint that is used to immediately control the HVAC system 130 by the thermostat 140 through the actuator 110.
The stand 150 may be placed on a surface and may include a power system 151 that powers the thermostat 140. The power system 151 may be connected to a power outlet (e.g., 120 V, 230 V) and may provide a constant voltage to thermostat 140. The stand 150 may have one or more on-board temperature sensors, such as a temperature and/or humidity sensor 152, that provides temperature and/or humidity measurements to thermostat 140.
In some embodiments, more complex communication protocols may be used over the wired communication channel 162. Most 2-wire communication protocols communicate by virtue of controlling the state of the voltage and/or current on the wired communication channel 162. Protocols may govern the rise/fall times, voltage thresholds for high and low states, current thresholds for high and low states, frequency of transactions, and so forth. Therefore, the voltage, current, and/or timing of any signals that are propagated on the wired communication channel 162 may need to be tightly controlled to prevent interference with the communication signal.
The specificity of most 2-wire communication protocols presents a technical problem for using the wired communication channel 162 to provide operating power for the actuator 110. In some embodiments, the actuator 110 may be co-located with the boiler control 310 and may receive direct line power through additional power wires that can be included in the wired communication channel 162. However, other embodiments may support configurations where the actuator 110 is not co-located with the boiler control 310. Instead, the actuator 310 can be located in another part of the smart-home environment, such as on a different floor, in a different room, more than 15 feet away, etc. In these configurations, the actuator 110 might only have access to wires specifically dedicated to communication and not have access to wires specifically dedicated to providing line power.
Prior to this disclosure, the actuator 110 would require an external power source, such as a line voltage connection, a USB cable, a plug into a wall outlet, and so forth. However, requiring an external power source would cause users to need to wire the actuator 110 to both the boiler control 310 and to the external power source separately. This not only led to wiring errors due to the number of connections that needed to be made, but often prevented users from locating the actuator 110 in an ideal position, opting instead to locate the actuator 110 close to the external power source. From a technical perspective, the actuator 110 was completely dependent upon the external power source, thus, when power outages occurred, the actuator 110 would lose power and the user would not be able to control the HVAC system 130 without installing backup batteries.
This technical problem can be further understood by examining one of the more popular 2-wire protocols that can be used to communicate between the boiler control 310 and the actuator 110.
In a similar fashion, the actuator 110 can control the voltage on the wired communication channel 162 in order to send encoded binary communications to the boiler control 310. For example, the actuator 110 may include a current sink that can be used to set the voltage on the wired communication channel 162. A low-voltage level can fall within state 502 or state 504 in graph 501 corresponding to a voltage range of between 0 V and 8 V. A high voltage-level can fall within state 506 or 508 on graph 501 corresponding to a voltage range of between 15 V and 18 V. This system allows the wired communication channel 162 to function by sending current signals from the boiler control 310 to the actuator 110, and voltage signals in the reverse direction from the actuator 110 to the boiler control 310.
In some embodiments, the physical idle state of the line may be a low-power consumption state using low voltage and low current, such as state 502. Some embodiments may hold the line current low when the voltage is used by the actuator 110 for signaling to reduce power consumption. Other embodiments may use state 508 in a high-power mode that allows the current to also be in a high state during voltage transitions.
These current and/or voltage ranges and requirements present a technical problem when it comes to powering the actuator 110 using the wired communication channel 162. Specifically, draining any power from the wired communication channel 162 would normally affect either the line current, the line voltage, or both. Interfering with any of these parameters may cause the boiler control 310 and/or the actuator 110 to misinterpret a communication signal, to detect a false communication signal, or to miss a communication signal altogether. For example, some communication protocols may use Manchester encoding or other binary encodings that detect signal transitions representing encoded binary data. Graph 521 illustrates an example of such encoding where high-to-low transitions are interpreted as a logical “1” and low-to-high transitions are interpreted as a logical “0”. Assuming that the actuator 110 begins stealing power at time 522 in graph 521, this may cause the voltage level to decrease below a lower threshold of the communication protocol, which may in turn appeared to be a logical “0” to the boiler control 310. This may result in inadvertently activating or deactivating functions of the HVAC system 130, which may result in user discomfort, wasted energy, or other similar problems.
Additionally, graph 511 illustrates the timing requirements for rise and fall times of signals on the wired communication channel 162. In this example, a maximum rise time 512 and a maximum fall time 514 may be approximately 50 μs with a typical value of around 20 μs. Simply tacking on a traditional power stealing circuit to the wired communication channel 162 would necessarily add additional capacitance to the channel, which will necessarily affect the rise and fall times of signals on the wired communication channel 162. Transition times that take too long may cause the actuator 110 and/or the boiler control 310 to miss a signal transition. These requirements and considerations illustrate that any power-stealing circuit that is designed to steal power from the boiler control 312 over the wired communication channel 162 should not interfere with the communication signal levels or dynamic timing characteristics of a 2-wired communication protocol.
The embodiments described herein solve these technical problems and improve the technologies of HVAC communication, device powering, discrete circuit design, battery charging, and low-power communication. These embodiments provide a method to supply a boiler control 310 (master) with power from an actuator or boiler control unit (slave), by maximizing its supplied current while providing master/slave communication without interfering with the chosen protocol.
The boiler controller 310 may be connected to the actuator 110 through a 2-wire connection using, for example, the OpenTherm communication protocol. Although the example of the boiler controller 310 is used for illustrative purposes in
At a top level, some embodiments may be divided into a first stage 620 and the second stage 622. The first stage 620 may include a switchable OT voltage regulator 602 that acts as a voltage clamp. Specifically, the voltage regulator 602 of the first stage 620 can switch to multiple voltage levels while maintaining a constant current. For example, the voltage regulator 602 of the first stage 620 may support at least two—and in some embodiments more—different output voltage levels that can be programmed to correspond to the voltage level requirements of the particular communication protocol. An input from a controller on the actuator 110, such as a microprocessor or microcontroller, can provide a transmit input 612 to the voltage regulator 602. This transmit input 612 can be used to switch and/or control the voltage level output of the voltage regulator 602. Thus, the first state 620 can use the voltage regular 602 to translate the transmit input 612 to the appropriate voltage level required for the communication protocol. Additionally, the first stage 620 can feed the vast majority of the current received from the wired communication channel into the second stage 622. In some embodiments, the voltage regulator 602 of the first stage 620 may require just a fraction of the received current, in some cases as little as between 1 μA and 20 μA to maintain regulation. Additionally, the first stage 620 shields the voltage transitions of the voltage regulator 602 from the parasitic capacitance of the rest of the circuit that may be added in the subsequent discussion.
The power-stealing communication circuit 182 of the actuator 110 may additionally comprise a second stage 622 in some embodiments. The second stage 622 may include a current monitor circuit 606 and a second voltage regulator 608. The current monitor 606 can produce a signal proportional to the current received by the wired communication channel. This signal can be compared to thresholds that are defined according to the specification of the communication protocol, and the digital receive signal 604 can be routed to a controller for the actuator 110, such as a microprocessor or microcontroller to interpret the digital communication. In some embodiments, the current monitor 606 may include a resistor and a high-side current sense amplifier that is fed into an analog-to-digital converter (ADC) or one or more comparators to decode the received signal 604. The current can be measured effectively by clamping the voltage using the first voltage regulator 602 and ensuring that nearly all of the current received from the boiler control 310 is routed through the current monitor 606. In one example, a small resistance value (e.g., 1 ohm) can be placed in series between the first stage 620 and the second stage 622, and the resulting voltage drop across the small resistance value can be measured using the ADC/comparators to read the current value transmitted by the boiler control 310. Depending on the range of the current value, the current monitor 606 can generate a binary 0/1 encoding to be sent to or determined by the controller of the actuator 110. Placing the current monitor circuit 606 in the location depicted in
Prior to this disclosure, diverting current for the power stealing function was very difficult to compensate for when generating the received signal 604 and sending a clear transmit signal 612 and led to communication interference. Specifically, stealing current away from the receive signal 604 to charge/power the actuator 110 would necessarily change the current of the received signal 604, possibly causing the processor of the actuator 110 to misinterpret the digital communication. To compensate for this, the second stage 622 may include a second voltage regulator 608 that provides the system power input and isolates the power stealing function from the communication function.
In some embodiments, the second voltage regulator 622 may either follow a scaled-down reference from the first stage 620 or the transmit input 612 can also be routed into the second voltage regulator 608 as an input. This allows the second voltage regulator 608 to know the operating voltage range of the first voltage regulator 602. This also allows the power-stealing communication circuit 182 to steal the maximum amount of power when the voltage level set by the first voltage regulator 602 switches to a higher voltage output. Without providing this real-time feedback of the output voltage of the first voltage regulator 602, the second stage 622 would have to operate at a constant level compatible with the lowest voltage output, thereby wasting the increased power that could be stolen or fed into the system power converter during high voltage output intervals. Allowing the second stage regulator to track the first stage regulator maximizes the power output from the current monitor 606 into the system power converter 610, which maximizes the current stolen by the actuator 110 to power its internal systems and/or charge an energy storage element.
The system power converter 610 converts the output of the second stage 622 into a system voltage used by the actuator 110 as the system power 614. The system power converter 610 may include a voltage regulator that supports an input current limiter 616 that is controlled by the second voltage regulator 608 of the second stage 622 through a current limit output/signal 624. The current limit output/signal 624 may indicate a dropout condition in the second voltage regulator 608. When the second voltage regulator 608 enters a dropout condition where it can no longer provide a regulated output because the power converter 614 is stealing a maximum amount of current, the current limit signal 624 can cause the input current limit of the system power converter 610 to decrease, thereby relaxing the dropout condition. With enough load demand, the system power converter 610 will therefore always pull the maximum current amount out of the second stage 622, keeping the second regulator 608 operating at the edge of its dropout condition. Some embodiments may further include an energy storage circuit in the system power block 614 that can max out the load demand. For example, this energy storage circuit may include a charger for a secondary battery, a super capacitor, and/or the like.
Based on the design describe above, an input current that is varied by the boiler control 310 can be traced through the power-stealing communication circuit 182 depicted in
If the system power converter 610 cannot consume all of the available current, the second stage 622 can sink any residual current after it flows through the current monitor 606 and the receive input 604 controls the proper current amount. For example, the second voltage regulator 608 can sink any residual current through a resistive pathway 625 to ground. Because this current is simply converted to heat, the embodiments described above provide a distinct technical advantage by limiting the amount of wasted current, unnecessary heat generation, and maximizing the power used by the actuator 110. Using both the first voltage regulator 602 and the second voltage regulator 608 also minimizes capacitance constraints. For example, the protection provided by the first voltage regulator 602 can allow a large input capacitance to be used on the system power converter 610 without slowing the rise/fall times that are mandated by the communication protocol.
A transistor 812 can act as a shunt regulator that is controlled by the voltage dictated by the Zener diode clamps 804. The output 850 is sent to a low-dropout (LDO) voltage regulator to generate the regulated voltage necessary for the microprocessor to run (e.g., 1.8 V). The first and second stage voltage regulators from
In some embodiments, a low-power microcontroller can also be included within the power domain of the power stealing circuit. This low-power microcontroller can have an operating current of less than 2 mA. This low level of power usage ensures that the low-power microcontroller will always operate below the current threshold of the communication protocol. Therefore, the low-power microcontroller can always be guaranteed operate so long as the boiler control 310 provides a current signal to the actuator 110. The low-power microcontroller can monitor the power stealing circuitry and provide keep alive messages for the communication channel. Some embodiments may also provide an alternate power path that bypasses the circuit described above in
During operation, the load output of the current monitor 814 will initially go high. This will raise the voltage on the top input of the regulator 1102 and of the transistor 1104, causing the transistor 1104 to begin conducting. When the transistor 1104 begins conducting, most of the current received from the current monitor 814 will be shunted through the shunt resistor 1114. As the current through the shunt resistor 1114 increases, the voltage at node 1118 will increase. Note some embodiments may include a diode 1116 to add a minimum voltage drop at node 1118. The voltage at node 1118 is fed into the current limiter 616 of the system power converter 610. As will be described below, as this input to the current limiter 616 increases, the system power converter 610 will increase the amount of current it steals from the second stage 622. Specifically, the system power converter 610 will continue increasing the amount of current that it steals until the voltage at node 1118 begins to decrease.
When a maximum amount of power is stolen from the second stage 622 by the system power converter 610, the regulator 1102 will begin to drop out and no longer regulate a voltage sufficient to cause the transistor 1104 to conduct. As the transistor 1104 stops conducting (i.e., drops out), the voltage on node 1118 sent to the current limiter 616 will drop. This in turn will cause the current limiter 616 to decrease the amount of current stolen by the system power converter 610. As the current stolen by the system power converter 610 decreases, the regulator 1102 will come out of its dropout mode and again regulate a voltage to cause the transistor 1104 to conduct. This will again cause the voltage on node 1118 to rise, and allow the system power converter 610 to increase the amount of current it pulls at its input. This cycle will continue, keeping the regulator 1102 operating on the edge of its dropout mode. This forms a feedback loop that ensures that the system power converter 610 steals as much power as possible from the second stage 622 without affecting the current/voltage used in the 2-wired communication protocol. This feedback loop process may also be referred to as optimizing an amount of power stolen, where the stolen power can be used to power the actuator and/or charge a rechargeable energy device.
In the foregoing description, for the purposes of explanation, numerous specific details were set forth in order to provide a thorough understanding of various embodiments of the present invention. It will be apparent, however, to one skilled in the art that embodiments of the present invention may be practiced without some of these specific details. In other instances, well-known structures and devices are shown in block diagram form.
The foregoing description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the foregoing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the invention as set forth in the appended claims.
Specific details are given in the foregoing description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, networks, processes, and other components may have been shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail. In other instances, well-known circuits, processes, algorithms, structures, and techniques may have been shown without unnecessary detail in order to avoid obscuring the embodiments.
Also, it is noted that individual embodiments may have been described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may have described the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed, but could have additional steps not included in a figure. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination can correspond to a return of the function to the calling function or the main function.
The term “computer-readable medium” includes, but is not limited to, portable or fixed storage devices, optical storage devices, wireless channels and various other mediums capable of storing, containing, or carrying instruction(s) and/or data. A code segment or machine-executable instructions may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and/or receiving information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, etc., may be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, token passing, network transmission, etc.
Furthermore, embodiments may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware or microcode, the program code or code segments to perform the necessary tasks may be stored in a machine readable medium. A processor(s) may perform the necessary tasks.
In the foregoing specification, aspects of the invention are described with reference to specific embodiments thereof, but those skilled in the art will recognize that the invention is not limited thereto. Various features and aspects of the above-described invention may be used individually or jointly. Further, embodiments can be utilized in any number of environments and applications beyond those described herein without departing from the broader spirit and scope of the specification. The specification and drawings are, accordingly, to be regarded as illustrative rather than restrictive.
Additionally, for the purposes of illustration, methods were described in a particular order. It should be appreciated that in alternate embodiments, the methods may be performed in a different order than that described. It should also be appreciated that the methods described above may be performed by hardware components or may be embodied in sequences of machine-executable instructions, which may be used to cause a machine, such as a general-purpose or special-purpose processor or logic circuits programmed with the instructions to perform the methods. These machine-executable instructions may be stored on one or more machine readable mediums, such as CD-ROMs or other type of optical disks, floppy diskettes, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, flash memory, or other types of machine-readable mediums suitable for storing electronic instructions. Alternatively, the methods may be performed by a combination of hardware and software.
Number | Name | Date | Kind |
---|---|---|---|
4528459 | Wiegel | Jul 1985 | A |
4898229 | Brown et al. | Feb 1990 | A |
4948040 | Kobayashi et al. | Aug 1990 | A |
5065813 | Berkeley et al. | Nov 1991 | A |
5107918 | McFarlane et al. | Apr 1992 | A |
5161606 | Berkeley et al. | Nov 1992 | A |
5181389 | Hanson et al. | Jan 1993 | A |
5251813 | Kniepkamp | Oct 1993 | A |
5381950 | Aldridge | Jan 1995 | A |
5422808 | Catanese, Jr. et al. | Jun 1995 | A |
5452762 | Zillner, Jr. | Sep 1995 | A |
5456407 | Stalsberg et al. | Oct 1995 | A |
5460327 | Hill et al. | Oct 1995 | A |
5462225 | Massara et al. | Oct 1995 | A |
5467921 | Shreeve et al. | Nov 1995 | A |
5570837 | Brown et al. | Nov 1996 | A |
5595342 | McNair et al. | Jan 1997 | A |
5611484 | Uhrich | Mar 1997 | A |
5635896 | Tinsley et al. | Jun 1997 | A |
5646349 | Twigg et al. | Jul 1997 | A |
5655709 | Garnett et al. | Aug 1997 | A |
5808294 | Neumann | Sep 1998 | A |
5918474 | Khanpara et al. | Jul 1999 | A |
5950709 | Krueger et al. | Sep 1999 | A |
6089310 | Toth et al. | Jul 2000 | A |
6102749 | Lynn et al. | Aug 2000 | A |
6213404 | Dushane et al. | Apr 2001 | B1 |
6315211 | Sartain et al. | Nov 2001 | B1 |
6336593 | Bhatnagar | Jan 2002 | B1 |
6356038 | Bishel | Mar 2002 | B2 |
6513723 | Mueller et al. | Feb 2003 | B1 |
6622925 | Carner et al. | Sep 2003 | B2 |
6623311 | Dehan | Sep 2003 | B1 |
6798341 | Eckel et al. | Sep 2004 | B1 |
6851621 | Wacker et al. | Feb 2005 | B1 |
6851967 | Miyoshi et al. | Feb 2005 | B2 |
6956463 | Crenella et al. | Oct 2005 | B2 |
6997390 | Alles | Feb 2006 | B2 |
7055759 | Wacker et al. | Jun 2006 | B2 |
7083109 | Pouchak | Aug 2006 | B2 |
7156318 | Rosen | Jan 2007 | B1 |
7167079 | Smyth et al. | Jan 2007 | B2 |
7174239 | Butler et al. | Feb 2007 | B2 |
7181317 | Amundson et al. | Feb 2007 | B2 |
7360370 | Shah et al. | Apr 2008 | B2 |
7476988 | Mulhouse et al. | Jan 2009 | B2 |
7510126 | Rossi et al. | Mar 2009 | B2 |
7537171 | Mueller et al. | May 2009 | B2 |
7562536 | Harrod et al. | Jul 2009 | B2 |
7571865 | Nicodem et al. | Aug 2009 | B2 |
7634504 | Amundson | Dec 2009 | B2 |
7648077 | Rossi et al. | Jan 2010 | B2 |
7673809 | Juntunen | Mar 2010 | B2 |
7748640 | Roher et al. | Jul 2010 | B2 |
7775452 | Shah et al. | Aug 2010 | B2 |
7841542 | Rosen | Nov 2010 | B1 |
7844764 | Williams | Nov 2010 | B2 |
7847681 | Singhal et al. | Dec 2010 | B2 |
7900849 | Barton et al. | Mar 2011 | B2 |
8067912 | Mullin | Nov 2011 | B2 |
8091375 | Crawford | Jan 2012 | B2 |
8659320 | Warren | Feb 2014 | B2 |
9568201 | Fadell et al. | Feb 2017 | B2 |
20030037555 | Street et al. | Feb 2003 | A1 |
20030090243 | Atherton | May 2003 | A1 |
20040130454 | Barton | Jul 2004 | A1 |
20040164238 | Xu et al. | Aug 2004 | A1 |
20040193324 | Hoog et al. | Sep 2004 | A1 |
20040238651 | Juntunen et al. | Dec 2004 | A1 |
20050040250 | Wruck | Feb 2005 | A1 |
20050043907 | Eckel et al. | Feb 2005 | A1 |
20050145705 | Shah et al. | Jul 2005 | A1 |
20050150967 | Chapman et al. | Jul 2005 | A1 |
20050159846 | Van Ostrand et al. | Jul 2005 | A1 |
20050270151 | Winick | Dec 2005 | A1 |
20060186214 | Simon et al. | Aug 2006 | A1 |
20070045432 | Juntunen | Mar 2007 | A1 |
20070045441 | Ashworth et al. | Mar 2007 | A1 |
20070095082 | Garrett et al. | May 2007 | A1 |
20070105252 | Lee et al. | May 2007 | A1 |
20070131787 | Rossi et al. | Jun 2007 | A1 |
20070132503 | Nordin | Jun 2007 | A1 |
20070157639 | Harrod | Jul 2007 | A1 |
20070183475 | Hutcherson | Aug 2007 | A1 |
20070208461 | Chase | Sep 2007 | A1 |
20070221741 | Wagner et al. | Sep 2007 | A1 |
20070228183 | Kennedy et al. | Oct 2007 | A1 |
20070241203 | Wagner et al. | Oct 2007 | A1 |
20080006708 | Gauger et al. | Jan 2008 | A1 |
20080015742 | Kulyk et al. | Jan 2008 | A1 |
20080054082 | Evans et al. | Mar 2008 | A1 |
20080094010 | Black | Apr 2008 | A1 |
20080128523 | Hoglund et al. | Jun 2008 | A1 |
20080161977 | Takach et al. | Jul 2008 | A1 |
20090057425 | Sullivan et al. | Mar 2009 | A1 |
20090099697 | Li et al. | Apr 2009 | A1 |
20090140056 | Leen | Jun 2009 | A1 |
20090140057 | Leen | Jun 2009 | A1 |
20090140064 | Schultz et al. | Jun 2009 | A1 |
20090140065 | Juntunen et al. | Jun 2009 | A1 |
20090143879 | Amundson et al. | Jun 2009 | A1 |
20090143880 | Amundson et al. | Jun 2009 | A1 |
20090194601 | Flohr | Aug 2009 | A1 |
20090236433 | Mueller et al. | Sep 2009 | A1 |
20090259713 | Blumrich et al. | Oct 2009 | A1 |
20100006660 | Leen et al. | Jan 2010 | A1 |
20100070099 | Watson et al. | Mar 2010 | A1 |
20100076605 | Harrod et al. | Mar 2010 | A1 |
20100084482 | Kennedy et al. | Apr 2010 | A1 |
20100114382 | Ha et al. | May 2010 | A1 |
20100131112 | Amundson et al. | May 2010 | A1 |
20100163635 | Ye | Jul 2010 | A1 |
20100182743 | Roher | Jul 2010 | A1 |
20100193592 | Simon et al. | Aug 2010 | A1 |
20100298985 | Hess et al. | Nov 2010 | A1 |
20110141782 | Sells | Jun 2011 | A1 |
20110253796 | Posa et al. | Oct 2011 | A1 |
20120017611 | Coffel et al. | Jan 2012 | A1 |
20120248211 | Warren et al. | Oct 2012 | A1 |
20120268085 | Lee | Oct 2012 | A1 |
20130221117 | Warren et al. | Aug 2013 | A1 |
20140031992 | Bergman | Jan 2014 | A1 |
20140041846 | Leen et al. | Feb 2014 | A1 |
20140088776 | Brandt | Mar 2014 | A1 |
20140321160 | Novotny et al. | Oct 2014 | A1 |
20140368036 | Houde | Dec 2014 | A1 |
20160018836 | Pawar | Jan 2016 | A1 |
20160252264 | Vogel et al. | Sep 2016 | A1 |
20190056131 | Warren | Feb 2019 | A1 |
20200028386 | Sexton | Jan 2020 | A1 |
Entry |
---|
International Search Report and Written Opinion dated Oct. 7, 2019 in International Patent Application No. PCT/US2019/037268, all pages. |
Written Opinion of the International Preliminary Examining Authority dated Mar. 10, 2020 in International Patent Application No. PCT/US2019/037268, 4 pages. |
Number | Date | Country | |
---|---|---|---|
20190384334 A1 | Dec 2019 | US |