Improved adaptive flow controller

Abstract: An adaptive airflow control system for positioning damper systems or controlling air units utilized in an environment control system is provided. The system is based on a fixed-gain, proportional-only feedback design to provide stable operation given the nonlinear behavior of flow through a valve or damper. A time-dependent deadzone of nonlinearity Is used to reject measurement noise. The deadzone of nonlinearity is adjusted by an adaptively calculated proportionality constant which is capable of switching the control system between various operating modes for adjusting the performance of the system.

Description: The present invention is related to an airflow control apparatus for an environmental control system. More particularly, the present invention is related to an adaptive control system for positioning damper systems or controlling air units utilized in an environment control system. Environment control networks, facility management systems, and damper systems are employed in office buildings, manufacturing facilities, and appliances for controlling the internal environment of the facility. For example, in a heating, ventilating, and air conditioning (HVAC) system, controlled air units (e.g., variable air volume (VAV) boxes, unitary devices (UNT) or damper systems) are located throughout the facility and provide environmentally controlled air to the internal environment of the facility. The controlled air is provided at a particular temperature or humidity so that a comfortable internal environment is established. The air flow rate of the controlled air is preferably measured in cubic feet (metric equivalent metre) per minute (CFM). The VAV boxes are coupled to an air source which supplies the controlled air to the VAV box via duct work. VAV boxes and unitary devices provide the controlled air through a damper. The damper regulates the amount of the controlled air provided to the internal environment. The damper is coupled to an actuator which preferably positions the damper so that appropriate air flow (in CFM) is provided to the internal environment. A controller is generally associated with at least one actuator and damper. The controller receives information related to the air flow and temperature in the internal environment and appropriately positions the actuator so that the appropriate air flow is provided to the internal environment. The controller may include sophisticated feedback mechanisms such as proportional integral (PI) control algorithms. Sophisticated feedback mechanisms allow the actuator to be positioned more precisely. More particularly, the controller generally includes a flow control system for positioning the actuator so that the damper provides a desired amount of air flow. The flow control system typically measures the actual air flow across the damper and adjusts the position of the actuator until the desired amount of air flow is provided by the controlled air unit. In such systems, the performance of the flow control system (e.g. the accuracy or precision of the position of the system damper) is critical to reliability, energy efficiency, and overall performance of the HVAC system and controlled air unit. Poor flow control often leads to degraded temperature control performance, decreased efficiency for the controlled air unit, and premature mechanical failures for the actuator and damper system associated with the unit. Heretofore, flow controllers or flow control systems in HVAC systems are prone to slow response and poor disturbance rejection due to the inherent non-linear behaviour and measurement noise associated with controlled air units such as VAV boxes. The measurement of actual air flow is strongly affected by turbulence. Additionally, friction, hysteresis, and non-linear relationships between the flow rate and damper position complicate the control of damper systems. A traditional approach to solving these problems involves the use of proportional, (P), proportional-integral (PI), or proportional-integral-derivative (PID) positioning algorithms for the damper. It is also known to combine a feedforward control with the more traditional feedback control (e.g. P, PI or PID control). For example, US Patent No 4,698,745 discloses an adaptive control system for outputting a PID feedback control signal which is computed by comparing and adjusting a set value and a process variable, and a feedforward control system for outputting a disturbance compensation signal by detecting and compensating for the disturbance based on a feedforward control model. The gain of the feedback control signal is corrected in response to the magnitude of the disturbance variations, and the gain of the feedforward control model is controlled by supplying a correction signal which compares and equalizes the disturbance compensation signal and a manipulated variable obtained by adding the disturbance compensation signal and the gain-corrected feedback signal. Thus, there is a need for a flow controller which is less prone to sluggishness and oscillatory behaviour. There is also a need for a flow controller which can be set to have a low duty cycle and yet provide acceptable setpoint tracking. Finally, it is desirable to provide a flow controller that can quickly switch back and forth between two or more operating modes which adaptively control the setpoint tracking performance. The present invention relates to an environment control system including and air unit for providing air flow to an environment, the air unit being operatively associated with a controller and controlling an amount of the air flow in accordance with a flow setpoint signal from the controller, the controller comprising a flow sensor exposed to the air flow provided by the unit, the flow sensor generating a flow signal representative of an amount of the air flow provided to the environment; a processor connected to the flow sensor, the processor configured to cyclically receive the flow signal and generate a controller output signal in response to the flow signal and the flow setpoint signal, the controller output signal being provided to the air unit to cause the air unit to provide the amount of the air flow represented by the flow setpoint signal, the processor calculating the controller output signal in accordance with a setpoint error signal, a proportionality constant, and a deadzone of nonlinearity, whereby the processor calculates the deadzone of nonlinearity in accordance with a variance of the flow signal; the processor switching the controller between a first operating mode and a second operating mode in response to a set of conditions associated with the flow setpoint signal, said first operating mode being a default mode; wherein the processor changes the proportionality constant stepwise from a first predetermined constant to a second predetermined constant thereby instantaneously switching the environment control system from the first operating mode to the second operating mode in response to a predetermined change in the setpoint signal for closely tracking changes in the setpoint error signal; and wherein the processor exponentially changes the proportionality constant from the second predetermined constant to the first predetermined constant thereby gradually switching the environment control system from the second operating mode to the first operating mode in response to a predetermined change in the flow signal for normally tracking changes in the setpoint error signal. The present invention also relates to a controller for use in an environment control system including an air duct including a damper operatively associated with an actuator, the actuator positioning the damper so that the damper provides a rate of air flow to an environment in response to an actuator control signal, the actuator being operatively coupled to the controller, the controller comprising sensor means for generating an actual flow signal representative of the rate of the air flow provided across the damper; and processor means connected the sensor means for cyclically receiving the actual flow signal from the sensor means, and for cyclically generating the actuator control signal in response to the actual flow signal, wherein the actuator control signal is related to a desired rate for the rate of the air flow provided across the damper, the processor means calculating the actuator control signal in accordance with a setpoint error signal and a deadzone of nonlinearity, wherein the deadzone of nonlinearity is calculated in accordance with an estimate of the standard deviation of a noise signal associated with the actual flow signal; the processor means switching the controller between a first. operating mode and a second operating mode in response to a set of conditions associated with the flow setpoint signal; wherein the processor means changes the proportionality constant stepwise from a first predetermined constant to a second predetermined constant thereby instantaneously switching the controller from the first operating mode to the second operating mode in response to a predetermined change in the setpoint signal for closely tracking changes in the setpoint error signal; and wherein the processor means exponentially changes the proportionality constant from the second predetermined constant to the first predetermined constant thereby gradually switching the controller from the second operating mode to the first operating mode in response to a predetermined change in the flow signal for normally tracking changes in the setpoint error signal. The present invention also relates further to a method of controlling a control system including a unit for providing a flow fluid, a controller for providing a controller output signal, and a flow sensor for providing an actual flow signal, the unit being operatively associated with a controller and controlling an amount of the flow in accordance with a controller output signal from the controller, the flow sensor being exposed to the flow provided by the unit, the flow sensor generating the actual flow signal representative of the amount of flow provided, the method comprising the steps of receiving the actual flow signal from the flow sensor; determining a setpoint error signal based on a flow setpoint signal and the actual flow signal; calculating a proportionality constant for switching the control system between a first operating mode and a second operating mode in response to a set of conditions associated with the flow setpoint signal; calculating a deadzone of nonlinearity in accordance with a variance of the flow signal due to noise, and in accordance with the proportionality constant; applying the deadzone of nonlinearity to the setpoint error signal to develop the controller output signal; and providing the controller output signal to the unit. The processor may switch the controller between a first operating mode and a second operating mode in response to a set of conditions associated with the flow setpoint signal. The first operating mode is a default mode. The controller can be designed to change the proportionality constant stepwise from a first predetermined constant to a second predetermined constant thereby instantaneously switching the environment control system from the first operating mode to the second operating mode in response to a predetermined change in the setpoint signal (for closely tracking changes in the setpoint error signal). Additionally, the controller can be designed to exponentially change the proportionality constant from the second predetermined constant to the first predetermined constant thereby gradually switching the environment control system from the second operating mode to the first operating mode in response to a predetermined change in the flow signal normally tracking changes in the setpoint error signal. The deadzone of nonlinearity can operate to dampen small adjustments to the actuator control signal, thereby reducing the actuator duty cycle. The flow controller of the present invention advantageously requires few computations and does not require tuning. In another aspect of the invention, the flow controller is coupled to a memory which receives the deadzone of nonlinearity and recalculates the deadzone of nonlinearity data after each cycle. The flow controller is preferably implemented in a software program. BRIEF DESCRIPTION OF THE DRAWINGS The invention will hereafter be described with reference to the accompanying drawings, wherein like numerals denote like elements, and: Figure 1 is a simplified schematic block diagram of an environment control system; Figure 2 is a more detailed schematic block diagram of a controller and a VAV box for use in the environment control system illustrated in Figure 1; Figure 3 is a more detailed schematic block diagram of the controller illustrated in Figure 2; Figure 4 is a block diagram of the software-based control algorithm for the controller shown in Figure 3; Figure 5 is a diagram illustrating the calculation of the pulse width signal based on the pulse width modulation function for the controller shown in Figure 3; Figure 6 is a diagram illustrating the calculation of the controller error signal based on the setpoint error signal and the deadzone of nonlinearity for the controller shown in Figure 3; Figures 7A - 7B show pseudo code in accordance with an exemplary aspect of the present invention; Figure 8 is a block diagram of the software-based control algorithm associated with an alternative preferred embodiment of the present invention which is also compatible with the controller shown in Figure 3; Figures 9A - 9B show the pseudo code of an exemplary software algorithm which implements the control algorithm of Figure 8 in accordance with the alternate preferred embodiment of the present invention; and Figure 10 shows the graph of an exemplary proportionality constant versus discrete time. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT Referring to Figure 1, the present invention may be utilized in an environment control network or system 10. Although the present invention is described below for use in an HVAC environment, the flow controller of the present Invention may be utilized in any fluid flow application. For example, the flow controller of the present invention may be used in liquid supply systems such as those used in petroleum or chemical processing industries or other flow applications such as those in food preparation, material treatment plants or any industry utilizing controlled flow of material. Environment control system 10 includes a work station 12, a station 14, a station 16, a controller 20, a controller 24, and a controller or module 30. Controllers 20, 24 and module 30 are coupled with station 14 via a communication bus 32. Work station 12, station 14 and station 16 are coupled together via a communication bus 18. Station 16 is also coupled to a communication bus 17. Communication bus 17 may be coupled to additional sections or additional controllers, as well as other components utilized in environment control system 10. Preferably, environment control system 10 is a facilities management system such as the Metasys™ system as manufactured by Johnson Controls, Inc. (JCI) for use with VAV boxes 38 and 40. Alternatively, system 10 can be a unitary system having roof-top units or other damper systems. Stations 14 and 16 are preferably an NCU station manufactured by JCI, and controllers 20 and 24 are VAV 100-0™ controllers manufactured by JCI or other controllers known in the art. Controller or module 30 is preferably an air handler control unit (AHU) such as a AHU 102-0™ unit manufactured by JCI for monitoring and effecting the operation of an air handler (not shown) which provides forced air for system 10. Communication buses 17 and 32 are N2 buses preferably comprised of a twisted pair of conductors, and communication bus 18 is a LAN (NI) bus for high level communications. Bus 18 is a high speed bus using ARCNET™ or Ethernet protocol. Work station 12 and stations 14 and 16 include Ethemet or ARCNET communication hardware. Buses 17 and 32 utilize the RS485 protocol. Controllers 20 and 24, module 30, and stations 14 and 16 include RS485 communication hardware. Preferably, controllers 20 and 24, stations 14 and 16, and work station 12 include communication software for transmitting and receiving data and messages on buses 17, 18 and 32. Controller 20 is operatively associated with a controlled air unit such as VAV box 38, and controller 24 is operatively associated with a controlled air unit such as VAV box 40. Controller 20 communicates with work station 12 via communication bus 32 through station 14 and communication bus 18. Preferably, station 14 multiplexes data over communication bus 32 to communication bus 18. Station 14 operates to receive data on communication bus 32, provide data to communication bus 18, receive data on communication bus 18, and provide data to communication bus 32. Station 14 preferably is capable of other functions useful in environment control system 10. Work station 12 is preferably, but not limited to, a PC/AT computer or may be a portable computer which is coupled to communication bus 18. The following is a more detailed description of controller 20 and VAV box 38 with reference to Figure 2. Controller 20 is preferably a direct digital control (DDC) which includes a communication port 34 coupled with communication bus 32 (Figure 1). Controller 20 preferably includes an air flow input 56, a temperature input 54, and an actuator output 74. VAV box 38 may also advantageously include heating or cooling units for treating an air flow 64. Inputs 54 and 56 are preferably analog inputs received by an A/D converter (not shown) in controller 20. Controller 20 preferably includes circuitry and software for conditioning and interpreting the signals on inputs 54 and 56. VAV control box 38 preferably includes a damper 68, an air flow sensor 52, and an actuator 72. Actuator 72 positions damper 68 and is preferably an electric motor based actuator. Many controllers use synchronous AC motors with dual winding as actuator 72. Alternatively, actuator 72 and controller 20 may be a stepper motor, solenoid, pneumatic device or any other type of device for controlling and positioning damper 68. Actuator 72 is preferably an EDA-2040™ motor manufactured by JCI having a full stroke time (T stroke ) of 1, 2, or 5.5 minutes for a 90° stroke. The position of damper 68 controls the amount of air flow 64 provided to environment 66. Environment 66 is preferably a room, hallway, building, or portion thereof or other internal environment. Air flow sensor 52 preferably provides an air flow parameter across conductor 58 to air flow input 56. The airflow parameter represents the amount of air flow 64 provided through damper 68 to an environment 66. Controller 20 provides an actuator output signal to actuator 72 from actuator output 74 via a conductor 76. Controller 20 receives a temperature signal from a temperature sensor 50 across a conductor 60 at temperature input 54. Temperature sensor 50 is generally a resistive sensor located in environment 66. Air flow sensor 52 is preferably a differential pressure (ΔP) sensor which provides a Δ P factor related to airflow (volume/unit time, hereinafter CFM airflow). CFM airflow may be calculated by the following equation: where: Δ P is the differential pressure from air flow sensor 52; Box Area is the inlet supply cross-section area in square feet (metric equivalent metre); and K is a CFM multiplier representing the pickup gain of the air flow. The value K and value of box area are stored in a memory (not shown) in controller 20 when controller 20 is initialised or coupled with VAV box 38. The value of box area is generally in the range of 0.0074 to 0.2919 sq m (0.08 to 3.142 feet squared), and the value of K is generally between 0.58 and 13.08. The value of box area and K may be advantageously communicated from controller 20 to work station 12 so that service people do not have to otherwise obtain these values from paper data sheets and files. Air flow sensor 56 is preferably a diaphragm-based pressure sensor. With reference to Figures 1 and 2, the operation of environment control system 10 is described as follows. Controllers 20 and 24 are configured to appropriately position actuator 72 in accordance with a cyclically executed control algorithm. In accordance with the algorithm, controller 20 receives the air flow signal at input 56, the temperature signal at input 54, and other data (if any) from bus 32 and port 34 every cycle, preferably every 1.5 seconds or, alternatively, 1.0 seconds, depending on the controller algorithm. Controller 20 provides the actuator output signal at the actuator output 74 every cycle to accurately position damper 68 so that environment 66 is appropriately controlled (heated, cooled, or otherwise conditioned). Thus, controller 20 cyclically responds to the air flow signal and the temperature signal and cyclically provides the actuator output signal to appropriately control internal environment 66. Preferably, the actuator output signals are pulse width signals which cause actuator 72 to move forward, backward, or stay in the same position, and controller 20 internally keeps track of the position of actuator 72 as it is moved. Alternatively, actuator 72 may provide feedback indicative of its position, or the actuator signal may indicate the particular position to which actuator 72 should be moved. Figure 3 is a more detailed block diagram of controller 20 in accordance with an exemplary aspect of the present invention. Controller 20 includes a processor 100 coupled with actuator output 74, temperature input 54, air flow input 56, and communication port 34. Processor 100 is preferably an 8OC652 processor and communication port 34 is coupled with a twisted pair of conductors comprising communication bus 32 (Figure 1). Controller 20 also includes a memory 102. Memory 102 may be any storage device including but not limited to a disc drive (hard or floppy), a RAM, EPROM, EEPROM, flash memory, static RAM, or any other device for storing information. Preferably, memory 102 includes RAM and an EEPROM for storing air flow control algorithm data. Memory 102 is coupled to the processor via an internal bus 106. In operation, processor 100 cyclically samples signals at temperature input 56, actuator output 74, and air flow input 56 and performs mathematical operations on these signals. The mathematical operations generate parameter values representative of the signals at inputs 54 and 56 and output 74. With reference to Figure 4, the operation of system 10 in a dynamic environment 137 is represented in a flow control diagram. Controller 20 is programmed to operate as a flow controller circuit 125 which generates an actuator output signal u(t) to position damper 68 (Figure 2). Circuit 125 includes an anti-aliasing filter 128, a sampler 130, a controller error circuit 132, a controller output circuit 134 and a timer 136. Air flow sensor 52 (Figure 2) generates a continuous time measurement signal z(t). A flow signal f(t) is representative of the amount of air flow to environment 137, and is typically corrupted by noise which is represented by n(t). The combination of the measurement noise signal n(t) and the flow signal f(t) is represented by the continuous time measurement signal z(t) provided by sensor 52. An analog low-pass anti-aliasing filter 128 receives and filters the continuous time measurement signal z(t) so noise at frequencies higher than the Nyquist frequency of sampler 130 is rejected. Sampler 130 receives the filtered continuous time measurement signal z(t) and provides the filtered signal z(t) to controller error circuit 132 as a discrete air flow signal z(k) which represents the measured air flow signal from flow sensor 52 at the kth instant in time. Controller error circuit 132 receives the discrete air flow signal z(k) from sampler 130 and computes a controller error signal e c (k) based on a previously-stored flow setpoint signal f sp (k), the discrete air flow signal z(k), and a deadzone of nonlinearity. Controller output circuit 134 receives the controller error signal e c (k) from controller error circuit 132 and computes a pulse signal τ d (k) to timer 136 based on a desired pulse width τ(k), a minimum pulse width τ min , a maximum pulse width τ max , a decay rate ζ, a system gain g max and the controller error signal e c (k). The pulse width signal τ(k) represents the change in position for actuator 72. Timer 136 receives the pulse width signal τ(k) and issues the actuator output signal u(t) to actuator 72 (Figure 2). Actuator 72 receives the actuator output signal u(t) from actuator output 74 via conductor 76 and adjusts the position of damper 68 so that environment 66 is appropriately controlled. The operation of flow controller circuit 125 is discussed in more detail as follows. Sampler 130 converts the continuous time measurement signal z(t) to a discrete air flow signal z(k). Controller error circuit 132 receives the discrete air flow signal z(k) and computes the controller error signal e c (k). Controller error circuit 132 includes a deadzone circuit 138, a controller error signal circuit 142, and a summer 144. Summer 144 calculates a setpoint tracking error signal e sp (k) based on the difference between the discrete air flow signal z(k) and the flow setpoint signal f sp (k). The flow setpoint signal f sp (k) is related to the position to which actuator 72 should have been moved (the desired air flow rate) in the previous cycle and may be user input or calculated by the controller algorithm or other hardware or software components in system 10. The flow setpoint signal f sp (k) is calculated in response to temperature, air flow or other system parameters. More specifically, the setpoint tracking error signal e sp (k) is calculated by summer 144 as follows: e sp ( k ) = f sp ( k ) - z ( k ) Deadzone circuit 138 also receives the discrete air flow signal z(k) and computes the deadzone of nonlinearity. The deadzone of nonlinearity is dependent on the amount, variance and standard deviation of noise in the discrete air flow signal z(k). It is adaptively calculated and adaptively related to the setpoint tracking error signal e sp (k) insofar as memory 102 stores the deadzone of nonlinearity which was calculated in the previous cycle of flow controller circuit 125. The deadzone of nonlinearity depends on the chosen system feedback gain g max and the chosen decay rate ζ for circuit 134. Controller error signal circuit 142 receives the setpoint tracking error signal e sp (k) from summer 144, the deadzone of nonlinearity from deadzone circuit 138, and calculates the controller error signal e c (k) by applying the deadzone of nonlinearity to the setpoint tracking error signal e sp (k) to reject measurement noise. Therefore, the controller error signal e c (k) is not necessarily the setpoint error. It is the value calculated by controller error signal circuit 142 after the setpoint tracking error signal e sp (k) has been processed to eliminate noise. Thus, the user can adjust the performance of flow controller circuit 125 by selecting a parameter that affects the tradeoff between tracking capability and noise rejection. Controller output circuit 134 receives the controller error signal e c (k) from controller error signal circuit 142 and generates the new pulse width signal τ(k) representative of the desired air flow or desired position of actuator 72. Controller output circuit 134 includes a desired pulse width circuit 150 and a pulse width modulation logic circuit 152. Pulse width circuit 150 receives the controller error signal e c (k) and initially calculates the desired pulse width τ d (k) based on the following equation: τ d ( k ) = e c ( k ) g max wherein g max represents the maximum system gain. The discrete-time integrator is stable only if the system feedback gain is greater than zero and less than approximately two times the inverse of the gain of flow controller circuit 125. Therefore, a preferable stability range for Equation 5 is calculated as follows: 0< K < 2 g max where K is the proportional gain of controller 20. In order to guarantee flow controller circuit 125 is stable under all operating conditions, the system feedback gain g max used in Equation 6 is derived from the worst-case (maximum) gain of the time-varying integrator. Preferably, the following estimate of the worst-case system gain g max is used in Equation 5: g max =5 3 f rated T The factor of 5 accounts for the effects of the position of actuator 72 and the pressure ratio on the gain. The term f rated is the flow rate at a nominal static pressure (e.g., one inch of water) when damper 68 is completely open. The factor of 3 accounts for the fact that the static pressure encountered In practice may be larger than the nominal static pressure by a factor of 3. The term T denotes the stroke time of actuator 72. Typically, g max is within a range from 5.77 to 1371 CFM/sec. Pulse width modulation circuit 134 receives the desired pulse width signal τ d (k) and issues the pulse signal τ(k) to timer 136 based on the following relationship: where τ min is the minimum pulse width, τ max is the maximum pulse width and ζ is the decay rate under worst case conditions. Therefore, pulse width modulation circuit 134 provides timer 136 with the maximum pulse width τ max when the controller error signal e c (k) is large, the minimum pulse width τ min when the controller error signal e c (k) is small, 0 when the controller error signal e c (k) is very small and the desired pulse width τ d (k) when the desired pulse width τ d (k) is greater than the minimum pulse width τ min and less than or equal to the maximum pulse width τ max . Referring to Figure 5 and Equation 6, the pulse width signal τ(k) drives actuator 72 for the maximum amount of time when the controller error signal e c (k) is very large as represented by a τ max point 154 (Fig. 5). When the controller error signal e c (k) is small (i.e., τ min < |τ d (k) |≤τ max ), actuator 72 is driven the desired amount of time (i.e. τ(k) = τ d (k)) as represented by the linear portion of the graph between τ max point 154 and a τ min point 156. Actuator 72 is driven for a minimum amount of time when the controller error signal e c (k) is smaller as represented by τ min point 156. As previously described in conjunction with controller error circuit 132, a pulse-width modulated device with high-gain feedback, such as constant-rate actuator 72, is susceptible to measurement noise which results In an increase in the average duty cycle of actuator 72. Therefore, controller 20 needs some ability to reject measurement noise. During every cycle of operation of flow controller circuit 125, the deadzone of nonlinearity is applied to the setpoint tracking error signal e sp (k) to reject measurement noise and results in the controller error signal e c (k). The deadzone of nonlinearity depends on the magnitude of the measurement noise and the acceptable probability controller 20 will issue a pulse width switching signal u(t) that moves the flow signal f(t) away from the flow setpoint signal f sp (k) when the flow signal f(t) is exactly equal to the flow setpoint signal f sp (k). This probability is represented by p. The deadzone of nonlinearity also depends on the system feedback gain g max and the decay rate ζ in Equations 5 and 8. Referring to Figure 6, the pulse signal τ(k) and the deadzone of nonlinearity have a direct effect on the setpoint tracking error signal e sp (k). The minimum setpoint tracking error signal e sp (k) causes a pulse to be issued by controller output circuit 134 and is dependent on the deadzone of nonlinearity, the system gain g max , and the decay rate ζ. Assuming the measurement noise is normally distributed and there is an acceptable value of p, deadzone circuit 138 preferably calculates the deadzone of nonlinearity as follows: Δ = max [ Z p 2 R ( k ) - e t , 0] wherein: e t = g max τ min (1- ζ 2 ) where Z p/2 is the upper p/2 percentage point of the standard normal distribution, R(k) is the variance of the measurement noise, and e, is the minimum magnitude of the controller error such that a pulse is issued. The parameter p is preferably any number between 0 and 1 and can be specified by the user to achieve a tradeoff between setpoint tracking and duty cycle. For most applications involving cascaded flow and zone temperature control, p is small (for example, preferably 0.01): However, there are some applications, such as zone balancing, in which the user may make p large (e.g., 0.2 - 0.3) so that a rapid response with a minimal steady-state error is achieved. Generally, the variance of the measurement noise changes with time so it is estimated as controller 20 operates. The following equation estimates the variance of the measurement noise: R ( k ) = (1- w ) R ( k -1) + w 1 6 ( z ( k -2) -2 z ( k -1) + z ( k )) 2 wherein w represents the filter factor which is calculated as follows: w = t s T where T is the stroke time of actuator 72 and t s is the sampling interval. Timer 136 receives the pulse signal τ(k) from pulse width modulation logic circuit 152 and issues the actuator output slgnal u(t) to actuator 72 from actuator output 74 via conductor 76 which adjusts the position of damper 68 so that environment 66 is appropriately controlled. A pulse width switching signal of 1,0 or -1 represents positive movement, no movement or negative movement, respectively, of actuator 72, and is issued by timer 136 during each cycle of operation of flow controller circuit 125. As illustrated in Figure 4, this cyclical operation of the software-based control algorithm used in flow controller circuit 125 then begins again by air flow sensor 52 generating the continuous time measurement signal z(t) based on the flow signal f(t) and the measurement noise signal n(t). Preferably, controller 20 is configured by controller executed software. Exemplary controller executed software is provided in Figures 7A - B and configures controller 20 for the operations discussed with reference to Figures 4-7. The software shows basic data collection operations and signal calculations for controller 20. Alternatively, a hardware control circuit, or other software may be utilized to calculate the deadzone of nonlinearity, the flow setpoint signal f sp (k) and the actuator output signal u(t) for actuator 72 and controller 20. In an alternative preferred embodiment, the algorithm executed by the controller 20 has been improved to enhance the environment control system 10. These improvements are represented in Figures 8 - 10, which disclose the components of flow controller circuit 125'. The improvements to the algorithm include reducing the number of variables which must be manually set, and replacing these manually set variables with a series of functions which are cyclically performed by the algorithm for automatically selecting and updating these variables. This improvement allows the algorithm to switch the controller 20 back and forth between one mode which adjusts the flow control very quickly in response to set point changes, and a second mode in which the flow control is adjusted more slowty. The improved algorithm also provides a flow control system with more robust noise rejection capabilities which further enhances the control and operation of the flow controller 20. Finally, the algorithm has been redesigned to provide greater and more accurate set-point tracking while reducing the duty cyde or load placed upon the actuator 72. The duty cyde refers to the motion required by the actuator, which could include stepper motors, synchronous motors, or solenoids, for moving a damper. This improvement serves to increase the lifespan of the actuator 72 by reducing the amount of unwanted movement by the actuator in responding to changes caused by noise, as opposed to necessary movement by the actuator for adjusting the flow control. Accordingly, one skilled in the art will appreciate the benefits provided by the improvements to the flow control algorithm of the alternative preferred embodiment of the present invention. As discussed above, the previous algorithm implemented a time-varying deadzone of nonlinearity that is a function of the variance of the measurement noise. This previous algorithm provides excellent set-point tracking and disturbance rejection for situations where a high actuator duty-cyde is acceptable by choosing higher values for p (p = 0.1 - 0.5). Further, an acceptable setpoint tracking performance and disturbance rejection can be achieved with an extremely low actuator duty-cycle by choosing significantly lower values for p (p = 0.01). The previous algorithm also relies upon manually setting a proportionality constant that does not change with time, or change in response to switching between various operating modes. Thus, the previous algorithm provided a trade-off between set-point tracking and actual duty-cycle. However, situations exist where significantly higher set-point tracking performance and disturbance rejection performance is desirable along with a low actuator duty-cycle. It is also desirable to provide an environment control system 10 which is capable of switching between various operating modes for adjusting the set-point tracking performance. Accordingly, the goal of the alternative embodiment of the present invention is to optimize the set-point tracking and disturbance rejection performance along with the actuator duty-cycle performance, rather than providing a trade off between the two. This is achieved by automatically changing and adjusting the proportionality constant within a predetermined range of values. Such an optimized algorithm provides for a significantly more efficient control system while also reducing the operational requirements placed upon the flow control actuator 72. The previously preferred embodiment requires that the proportionality constant be set manually as a function of the probability p that controller 20 will issue a pulse width switching signal u(t) that moves the now signal f(t) away from the flow setpoint signal f sp (k) when the flow signal f(t) is exactly equal to the flow setpoint signal f sp (k). As set forth above, the proportionality constant Z p/2 is the p/2 percentage point of the standard normal distribution. As discussed, the preferred fixed value for Z p/2 is 2.58. In the alternative preferred embodiment, a method for automatically calculating and changing the proportionality constant has been developed. In this embodiment, the proportionality constant is represented by C(k). This method involves setting the proportionality constant C(k) equal to zero after a substantial change in the flow setpoint signal f sp (k), then returning the proportionality constant C(k) to a conservative setting using an exponential function after the flow rate signal f(t) has overtaken the flow setpoint signal f sp (k). The result of this method is that the controller 20 can be switched back and forth between a first operating mode and a second operating mode. Preferably, the first and second operating modes are defined by a conservative mode and an aggressive mode, respectively. More specifically, the algorithm provides a function which can instantly switch from the first mode to the second mode for aggressively and more accurately controlling the set-point tracking. When logic within the algorithm detects a substantial change in the flow setpoint signal f sp (k), the proportionality constant C(k) is set to zero, which instantly switches from the first mode, or default mode, into the second mode. As the algorithm logic detects that the flow rate signal f(t) has overtaken the flow set-point signal f sp (k), the proportionality constant C(k) is increased exponentially from zero to a maximum value, preferably 2.58 if p=0.01, which gradually, albeit exponentially over time, changes the controller 20 from the second (aggressive) operating mode back into the first (conservative) operating mode. The algorithm will then remain in the first (conservative) operating mode until a substantial change in the flow setpoint signal f sp (k) is detected. This exponential change of the proportionality constant C(k) is shown in Figure 10 where the axis 220 represents the proportionality constant range, and the axis 222 represents discrete time. Figure 10 further illustrates exemplary areas on the graph which represent the first operating mode 224 and the second operating mode 226. The algorithm and functions associated with adjusting the proportionality constant C(k) for implementing automatic mode switching are discussed in more detail below. The benefits provided by this improvement to the algorithm are a faster controller response time, less actuator motion, fewer actuator start-stops, and a simplification to the user interface. This simplification is achieved because the proportionality constant C(k) does not have to be manually set within the algorithm. The design of a control algorithm should take into account the behavior of the system and the desired performance objectives. Under normal operation, the most important control performance metrics are good disturbance rejection and high reliability. However, during commissioning and manual troubleshooting, a fast response to setpoint changes is the most important control performance metric. It has already been shown that the flow system may be modeled as a purely integrating system. As such, a proportional-only controller is recommended for purely integrating systems. The control algorithm described below and associated with the alternative preferred embodiment is a proportional-only controller that is tuned to provide deadbeat control when the system gain is largest. Referring now to Figure 8, a modified block diagram is shown which illustrates the controller circuit 125' for implementing this alternative preferred embodiment of the present invention. In this alternate embodiment, controller circuit 125' has been modified to include an additional function represented by the proportionality constant circuit 200, which is part of modified controller error circuit 132', and is responsible for cyclically computing the proportionality constant C(k). However, it should be understood that while proportionality constant circuit 200 provides additional functionality to controller circuit 125', the deadzone circuit 138 and the controller error signal circuit 142 of controller circuit 125' operate in substantially the same manner as described above. Thus, in this alternative embodiment, controller 20 is programmed to operate as a flow controller circuit 125' which generates an actuator output signal u(t) to position damper 68 (Figure 2). Accordingly, it should be understood that controller circuit 125' also includes an anti-aliasing filter 128, a sampler 130, a controller output circuit 134, and a timer 136 which operate in substantially the same manner as with the components of controller circuit 125 described above (with respect to Figure 4). With continued reference to Figure 8, the continuous-time measurement signal, z( t ), is first filtered with an analog low-pass filter 128 so that noise at frequencies higher than the Nyquist frequency of the sampler is rejected. Sampler 130 receives the filtered continuous time measurement signal z(t) and provides the filtered signal z(t) to controller error circuit 132° as a discrete time air flow signal z(k) which represents the measured airflow signal from flow sensor 52 at the kth instant in time. Controller error circuit 132' receives the discrete airflow signal z(k) from sampler 130, and computes a controller error signal e c (k) based on a previously stored flow setpoint signal f sp (k), the discrete airflow signal z(k) and a deadzone of nonlinearity. As the output of sampler 130, the discrete time air flow signal z(k) is compared to the flow setpoint signal f sp (k) by summer 144 to generate the setpoint error e sp (k). The proportionality constant C(k), which controls the operating mode of controller 20, is computed during each cyde as a function of the flow setpoint signal f sp (k) and the discrete time air flow signal z(k) by proportionality constant circuit 200. The proportionality constant C(k) produced by proportionality constant circuit 200 is then used by deadzone circuit 138 for computing the deadzone of nonlinearity as previously disclosed. Accordingly, the proportionality constant circuit 200 is primarily responsible for implementing the mode switching logic associated with the alternative embodiment of the present invention. The logic and functions executed by proportionality constant circuit 200 are described in more detail below. The controller error e c (k) is computed from the setpoint error e sp (k) by passing the setpoint error e sp (k) through the deadzone of nonlinearity produced by block 138. As disclosed above, this computation is performed by the controller error signal circuit 142. In this alternative embodiment, the magnitude of the deadzone is determined from an estimate of the absolute value of the noise, and logic within the algorithm to detect a large setpoint change. The desired pulse width τ d (k) is computed based on the controller error by pulse width circuit 150. The actual pulse width τ(k) is computed by passing the desired pulse width τ d (k) through the pulse-width modulation logic circuit 152. Finally, the actuator 72 is rotated by sending the pulse width command τ(k) to a timer 136 that operates the actuator 72 (Figure 2). Prior to executing the mode switching logic and computing the proportionality constant C(k), the standard deviation σ(k) of the noise must be calculated. This function is also preferably performed by proportionality constant circuit 200. Also as set forth above, in the previously preferred embodiment, a heuristic method for estimating the variance of the measurement noise was utilized (equation 9). As can be seen form a brief review of equation 9, forming part of the previous algorithm, the standard deviation was determined from the square root of an exponentially weighted average of the square of a noise variable. However, as an enhancement to the design of the algorithm associated with the alternative preferred embodiment, the standard deviation may be estimated directly from an exponentially weighted average of the absolute value of the same noise variable. The advantage to this improvement is a lower computational effort, and this method provides robustness to outliers which may be present in the noise signal. The absolute value of the noise is computed by passing the flow signal f ( t ) first through a high-pass filter, then through a magnitude nonlinearity, and finally through a low-pass fitter. The highpass filter is chosen as follows: e n ( k ) = 1 6 ( f ( k ) - 2 f ( k -1) + f ( k -2)) This filter is used because the flow rate will ramp nearly linearly after a large setpoint change whenever t s << T, and this filter cancels such a ramp. The square root of six makes the standard deviation of e n equal the standard deviation of the noise when the noise is uncorrelated. The standard deviation of the noise is then estimated as follows: σ( k ) =(1- w )σ( k -1) + 1.25 w e n ( k ) The factor of 1.25 makes the expected value of o equal the standard deviation of e n when e n is normally distributed. The parameter w is a filter weight which is specific to the performance of the individual system. The following choice will make the noise estimator faster when the actuator is faster: w = t s T where t s is the sample period and T Is the stroke time of the actuator. Accordingly, this value of σ(k) which estimates the noise within the measured flow signal f(t) is used to compute the magnitude of the deadzone of nonlinearity, and is discussed In more detail below. Flow measurements, especially air flow measurements, are prone to high levels of noise because of turbulence. Therefore, the controller 20 should have some ability to reject this noise. A preferred method for rejecting noise is to use a deadzone of nonlinearity in the control algorithm. The logic for the deadzone nonlinearity is as follows: where Δ is the magnitude of the deadzone of nonlinearity. The choice of the deadzone magnitude should depend on the absolute value of the measurement noise (computed above), and on the acceptable probability p that the controller 20 will issue a pulse u(t) that moves the flow rate signal f(t) away from the flow setpoint signal f sp (k) when the flow rate f(t) is exactly equal to the flow setpoint f sp (k). The magnitude of the deadzone Δ should also be modulated after a large setpoint change so that it will not impede the response when the controller is being operated manually. This is accomplished by switching between two control modes; preferably a conservative mode and an aggressive mode. The mode switching logic decides that if there is a large flow setpoint change f sp (k), and if this change results in a large error, then the magnitude of the deadzone is zero. This condition (Δ=0) defines the switch from the conservative mode to the aggressive mode. This condition persists until the flow rate f(t) overtakes the flow setpoint f sp (k). After the flow rate f(t) overtakes the flow setpoint f sp (k), the deadzone gradually, albeit exponentially over time, recovers from zero to its conservative steady-state value. This condition defines the automatic switch from the aggressive mode to the conservative mode. As previously discussed, the automatic switch from the aggressive mode to the conservative mode occurs exponentially over a period of time, preferably 15 seconds. In the conservative mode, the magnitude of the deadzone is calculated as follows: C ( k ) = (1- w ) C ( k -1)+ wZ p 2 Δ( k ) = max[ C ( k )σ( k )- e t , 0] where Z p 2 is the p/2 percentage point of the standard normal deviate, and e, is the smallest value of the controller error that will produce a pulse. As disclosed above, C(k) is the proportionality constant. In the pseudo code shown in Figure 9A and 98, the proportionality constant C(k) is represented by Z. In the aggressive mode, C(k) = 0 and Δ(k) = 0. The event that triggers a change in the control algorithm from the first (conservative) operating mode to the second (aggressive) operating mode is as follows: f sp ( k )- f sp ( k -1) > Z p 2 σ( k ) and e sp ( k ) > Z p 2 σ( k ) This change is preferably instantaneous or nearly instantaneous. The event that triggers a change In the control algorithm from the second (aggressive) mode to the first (conservative mode) is as follows: sign [ e sp ( k )] ≠ sign [ e sp ( k -1)] and | f ( k )- f ( k -1)|> f sp ( k )- f sp ( k -1) Preferably, this change occurs exponentially over time. Finally, as set forth above, the algorithm associated with the previously preferred embodiment utilized a worse-case stability margin that varies with the control error. This previously preferred design is beneficial when the controller implemented thereby is used with a synchronous electric motor activated with triacs. In the algorithm associated with the alternative preferred embodiment, this stability margin has been made a constant for all controller errors because the improved algorithm is preferably used in conjunction with a stepper motor. The implementation of this uniform stability margin is shown as bracketed element 210 in the pseudo code shown in Figure 9B. The most significant benefit of this enhancement to the algorithm associated with this alternative preferred embodiment is a simplification of the control logic. It is understood, that while the detailed drawings and specific examples given describe a preferred exemplary embodiment of the present invention, they are for the purpose of illustration only. The invention is not limited to the precise details and conditions disclosed. For example, although a particular application is discussed, other applications may utilize the flow controller of the present invention. Also, although particular facility management systems and components are suggested, the system may be configured for various other HVAC systems. The system may easily be configured to utilize metric units. Also, single lines in the various Figures may represent multiple conductors. Various changes may be made to the details disclosed without departing from the spirit of the invention which is defined by the following claims.

Claims: An environment control system (10) including an air unit (38) for providing air flow to an environment (66), the air unit being operatively associated with a controller (20) and controlling an amount of the air flow in accordance with a flow setpoint signal from the controller, the controller comprising: a flow sensor (52) exposed to the air flow provided by the unit, the flow sensor generating a flow signal representative of an amount of the air flow provided to the environment; a processor (100) connected to the flow sensor, the processor configured to cyclically receive the flow signal and generate a controller output signal in response to the flow signal and the flow setpoint signal, the controller output signal being provided to the air unit to cause the air unit to provide the amount of the air flow represented by the flow setpoint signal, the processor calculating the controller output signal in accordance with a setpoint error signal, a proportionality constant, and a deadzone of nonlinearity, whereby the processor calculates the deadzone of nonlinearity in accordance with a variance of the flow signal; the processor switching the controller between a first operating mode and a second operating mode in response to a set of conditions associated with the flow setpoint signal, said first operating mode being a default mode; wherein the processor changes the proportionality constant stepwise from a first predetermined constant to a second predetermined constant thereby instantaneously switching the environment control system from the first operating mode to the second operating mode in response to a predetermined change in the setpoint signal for closely tracking changes in the setpoint error signal; and wherein the processor exponentially changes the proportionality constant from the second predetermined constant to the first predetermined constant thereby gradually switching the environment control system from the second operating mode to the first operating mode in response to a predetermined change in the flow signal for normally tracking changes in the setpoint error signal. The controller (20) of Claim 1, wherein the first operating mode is a conservative operating mode and the second mode is an aggressive operating mode. The controller (20) of Claim 1, wherein the setpoint error signal is related to the difference between a previous flow setpoint signal and the flow signal. The controller (20) of Claim 1, including a memory (102) for storing a software-based control algorithm executed by the processor (100) for generating the flow setpoint signal in accordance with the software-based control algorithm. The controller (20) of Claim 3, including a memory (102) for storing a software-based control algorithm and the processor (100) cyclically generates the controller output signal in accordance with cyclical operation of the software-based control algorithm, and wherein the previous flow setpoint is from a most recent previous cycle of operation of the control algorithm. The controller (20) of Claim 4, wherein the deadzone of nonlinearity is stored in the memory (102) and recalculated each cycle of operation of the control algorithm. The controller (20) of Claim 6, wherein the deadzone of nonlinearity is adaptively adjusted by the standard deviation of a noise signal associated with the flow signal or by the standard deviation of the absolute value of a noise signal associates with the flow signal. A controller (20) for use in an environment control system (10) including an air duct including a damper (68) operatively associated with an actuator (72), the actuator positioning the damper so that the damper provides a rate of air flow to an environment (66) in response to an actuator control signal, the actuator being operatively coupled to the controller, the controller comprising: sensor means (52) for generating an actual flow signal representative of the rate of the air flow provided across the damper; and processor means (100) connected the sensor means for cyclically receiving the actual flow signal from the sensor means, and for cyclically generating the actuator control signal in response to the actual flow signal, wherein the actuator control signal is related to a desired rate for the rate of the air flow provided across the damper, the processor means calculating the actuator control signal in accordance with a setpoint error signal and a deadzone of nonlinearity, wherein the deadzone of nonlinearity is calculated in accordance with an estimate of the standard deviation of a noise signal associated with the actual flow signal; the processor means switching the controller between a first operating mode and a second operating mode in response to a set of conditions associated with the flow setpoint signal; wherein the processor means changes the proportionality constant stepwise from a first predetermined constant to a second predetermined constant thereby instantaneously switching the controller from the first operating mode to the second operating mode in response to a predetermined change in the setpoint signal for closely tracking changes in the setpoint error signal; and wherein the processor means exponentially changes the proportionality constant from the second predetermined constant to the first predetermined constant thereby gradually switching the controller from the second operating mode to the first operating mode in response to a predetermined change in the flow signal for normally tracking changes in the setpoint error signal. The controller (20) of Claim 8, wherein the first operating mode is a conservative operating mode and the second operating mode is an aggressive operating mode. The controller (20) of Claim 8, wherein the setpoint error signal is related to a difference between a flow setpoint signal generated in a previous cycle of operation of the processing means (100) and the actual flow signal received in a current cycle of operation of the processing means. The controller (20) of Claim 8, including memory means (102) for storing a software-based control algorithm and wherein the processor means (100) generates the actuator output signal in accordance with the software-based control algorithm. The controller (20) of Claim 9, including memory means (102) for storing a software-based control algorithm and the processor means (100) cyclically generates the flow setpoint signal in accordance with cyclical operation of the software-based control algorithm, and wherein the previous cycle is from a most recent previous cycle of operation of the control algorithm. The controller (20) of Claim 12, wherein the deadzone of nonlinearity is related to a previous deadzone of nonlinearity calculated in a previous cycle. The controller (20) of Claim 8, including memory means (102) for storing a software-based control algorithm and the processor means (100) cyclically generates the flow setpoint signal in accordance with cyclical operation of the software-based control algorithm, and wherein the deadzone of nonlinearity is stored in the memory means and recalculated each cycle of operation of the control algorithm. The controller (20) of Claim 14, wherein the deadzone of nonlinearity is adaptively related to the variance. A method of controlling of the flow provided by a unit (38) for providing a flow fluid, included in a control system (10) including a controller (20) for providing a controller output signal, and a flow sensor (52) for providing an actual flow signal, the unit being operatively associated with a controller and controlling an amount of the flow in accordance with a controller output signal from the controller, the flow sensor being exposed to the flow provided by the unit, the flow sensor generating the actual flow signal representative of the amount of flow provided, the method comprising steps of: receiving the actual flow signal from the flow sensor; determining a setpoint error signal based on a flow setpoint signal and the actual flow signal; calculating a proportionality constant for switching the control system between a first operating mode and a second operating mode in response to a set of conditions associated with the flow setpoint signal; calculating a deadzone of nonlinearity in accordance with a variance of the flow signal due to noise, and in accordance with the proportionality constant; applying the deadzone of nonlinearity to the setpoint error signal to develop the controller output signal; and providing the controller output signal to the unit. The method of Claim 16, wherein the first operating mode is a conservative operating mode and the second operating mode is an aggressive operating mode. The method of Claim 16, wherein the controller (20) changes the proportionality constant stepwise from a first predetermined constant to a second predetermined constant thereby instantaneously switching the control system (10) from the first operating mode to the second operating mode in response to a predetermined change in the setpoint signal for closely tracking changes in the setpoint error signal. The method of Claim 16, wherein the controller (20) exponentially changes the proportionality constant from a second predetermined constant to a first predetermined constant thereby gradually switching the control system (10) from the second operating mode to the first operating mode in response to a predetermined change in the flow signal for normally tracking changes in the setpoint error signal. The method of Claim 16, wherein the step of calculating the deadzone of nonlinearity includes calculating the standard deviation of the absolute value of a noise signal associated with the flow signal. The method of Claim 16, including the step of high pass filtering the flow signal for rejecting ramping attributes associated with the actual flow signal. The method of Claim 16, wherein the controller (20) includes a memory (102) and a processor (100), the memory including a software-based control algorithm and the processor generating the actuator output signal in accordance with the software-based control algorithm. The method of Claim 16, wherein the deadzone of nonlinearity is adaptively calculated, whereby the deadzone of nonlinearity is related to previous values of the deadzone of nonlinearity.

Inventors: FEDERSPIEL CLIFFORD C, FEDERSPIEL, CLIFFORD C.
Applicants: JOHNSON SERVICE CO, JOHNSON SERVICE COMPANY
Application year: 1998
Main classification: F24F11
IPC codes: G05B7, G05B11, F24F11, G05B13, G05D7, G05B15