1. Field of the Invention
This invention relates to optimal control of a system. More particularly, this invention relates to active vibration and active sound control systems for the interior of helicopters.
2. Background Art
Conventional active control systems consist of a number of sensors that measure the ambient variables of interest (e.g. sound or vibration), a number of actuators capable of generating an effect on these variables (e.g. by producing sound or vibration), and a computer which processes the information received from the sensors and sends commands to the actuators so as to reduce the amplitude of the sensor signals. The control algorithm is the scheme by which the decisions are made as to what commands to the actuators are appropriate.
A problem may arise in such a control scheme when the control decision yields a command that exceeds the physical capabilities of the system, for example, if the command to an actuator exceeds the actuator's physical limits.
The present invention constrains commands in a computationally efficient manner while eliminating performance penalties. In the present invention, the control algorithm generates a first command signal. If that first command signal includes a kth component (for the kth actuator) that exceeds a maximum allowable value, that component is scaled to or below the maximum allowable value. An anticipated residual vibration is then calculated based upon the change in the kth component. A second command signal is then generated to try to compensate for the residual vibration (ignoring the kth actuator, which is already at or near the maximum allowable signal). The first command signal (with the scaled kth component) and the second command signal (with a zero component for the kth actuator) are summed to yield a third command signal, the components of which may again be compared to the maximum allowable values, and the method performed iteratively before actually sending the command signal to the actuators.
Active vibration and sound control systems consist of a number of sensors which measure ambient vibration (or sound), actuators capable of generating vibration (or sound) at the sensor locations, and a computer which process information received from the sensors and sends commands to the actuators which generate a vibration (or sound) field to cancel ambient vibration (generated, for example by a disturbing force at the helicopter rotor). The controller algorithm is the scheme by which the decisions are made as to what the appropriate commands to the actuators are.
Filter 112 receives the sensed vibration signals from sensors 128 and performs filtering on the signals, eliminating information that is not relevant to vibration or sound control. The output from the filter 112 is transmitted to control unit 106 via interconnector 142. The control circuit 106 generates control signals that control force generators 104(a) . . . (n).
A plurality of force generators 104(a) . . . (n) (where n is any suitable number) are used to generate a force capable of affecting the sensed variables (e.g. by producing sound or vibration). Force generators 104(a) . . . (n) (generally 104) are typically speakers, shakers, or virtually any suitable actuators. Force generators 104 receive commands from the control unit 106 via interconnector 134 and output a force, as shown by lines 132(a) . . . (n) to compensate for the sensed vibration or sound produced by vibration or sound source 103.
The control unit 106 is typically a processing module with computing capabilities. Control unit 106 stores control algorithms control memory 105, or other suitable memory location. Memory module 105 is, for example, RAM, ROM, DVD, CD, a hard drive, or other electronic, optical, magnetic, or any other computer readable medium onto which is stored the control algorithms described herein. The control algorithms are the scheme by which the decisions are made as to what commands to the actuators 104 are appropriate. Control circuit 106 is, for example, a microprocessor.
Measurements of ambient vibration level at a given moment may be assembled in a vector of dimension Nsensors×1, designated z. The commands to the actuators may likewise be assembled in a vector of dimension Nactuators×1, designate u. The relationship between a change in actuator commands and the resulting change in sensor measurements may be expressed as the matrix equation Δz=T Δu, where T is a matrix of dimension Nsensors×Nactuators. The values of the elements of T are determined by the physical characteristics of the structure, for example: T11 is the response at sensor #1 due to unit command at actuator #1, T12 is the response at sensor #1 due to a unit command at actuator #2, etc. Many algorithms may be used for making control decisions based on this model. One such algorithm seeks to minimize the scalar performance index given by:
Jcost=zTWzz+uTWuu+ΔuTWΔuΔu
where
With this objective, the control decision for the ith step takes the form
Δui=D[Wuui-1+TTWz(zi-1)]
where
D=−(TTWzT+Wu+WΔu)−1 Equation (1)
and −1 indicates a matrix inversion.
A problem may arise in such a control scheme when the control decision yields a command that exceeds the physical capabilities of the system, for example, if the command to a force generating actuator exceeds the actuator's physical limits. The strategy for imposing constraints on the commands can dramatically affect control system performance.
One such strategy is to impose command constraints by scaling the commands to actuators by a constant which reduced the maximum command component to the maximum allowable. In other words, if a component of ui is greater than maximum allowable then setting ui=K ui where K is selected so that the largest component of ui is equal to the maximum allowable. While this approach was computationally efficient, it often results in a precipitous drop in system performance when constraints are imposed.
Another way in which command constraints may be imposed is by increasing the value of Wu, which increases the cost of commands in the performance index, and consequently drives down the command amplitudes. The problem with this approach is that when Wu is selected to keep commands within constraints during demanding operating conditions performance is degraded during less demanding operating conditions by unnecessarily suppressing command amplitude.
Compared to the first method, the performance of the vibration control system is much better for conditions requiring high actuator output, but much worse for conditions requiring lower actuator output, because the increased value of Wu unnecessarily constraints the actuator commands. An approach to overcoming this problem is to allow Wu to vary based on command levels, though this introduces additional complexity associated with stability of the control system used to schedule variation of Wu.
The present invention provides a means for constraining commands in a computationally efficient manner while eliminating performance penalties.
The controller algorithm is modified to do the following:
The change in command is calculated as before in accordance with:
Δui=D(Wuui-1+TTWz(zi-1)).
Before sending the command to the actuators, the magnitudes of the components of the resulting command ui=Δui+ui-1 are calculated and the component with maximum amplitude is identified. If that component for example, the kth component ui,k is greater than the maximum allowable, then that component is scaled by a constant to reduce its amplitude to the maximum allowable (ui,k)new=Cui,k, where C=|(ui)k|/Umax, and the change in the kth component in the command is calculated Δui,k=(ui,k)new−ui-1,k. The response to this component of the command is then calculated by:
(zi-1)new=(zi-1)+T Δui,k.
This quantity, (zi-1)new, is the residual vibration which remains after the constrained control component alone is applied to the system. Now a new controller weighting matrix Wu,new is created which is identical to Wu except that the element associated with weighting the constrained control component, Wu,new,k,k=Wu,k,k+A where A is a very large number. By modifying Wu,new in this way, the participation of the kth control component is suppressed in attacking this residual vibration. A new command change is calculated with
Dnew=−(TTWzT+Wu,new+WΔu)−1 Equation (2)
and
Δui,new=Dnew(Wu,newui-1+TTWz(zi-1)new).
The kth component of Δui,new will be 0 because of increased value of Wu,new,k,k. Finally, the command to be sent to the actuators is constructed:
Δui,to actuators=Δui,new+Δui,k.
The procedure can be applied iteratively in case another component of Δui,to actuators exceeds maximum allowable command amplitude. Compared to the previous methods, performance is very good at both high and low speed.
The procedure can be rendered computationally efficient if the matrix inversion in Equation (2) can be eliminated. Noting that matrix which is inverted in Equation (1) differs only in one element from the matrix inverted in Equation (2) (the k,k element), and the elements of Dnew can be determined without matrix inversion using the relationship:
Dnew 1,m=D1,m−A D1,kDk,m/(1+A Dk,k)
where Wu,new k,k=Wu k,k+A.
The present invention has been described in detail by way of examples and illustrations for purposes of clarity and understanding, and not to in any way limit the scope of what is claimed. Those skilled in the art will understand that certain changes and modifications may be made without departing from the scope of the invention. Alphanumeric identifiers for steps in the method claims are for ease of reference by dependent claims, and do not indicate a required sequence, unless otherwise indicated.
This application claims priority to U.S. Provisional Application Ser. No. 60/271,792, Filed Feb. 27, 2001.
Number | Name | Date | Kind |
---|---|---|---|
4715559 | Fuller | Dec 1987 | A |
5267320 | Fukumizu | Nov 1993 | A |
5347586 | Hill et al. | Sep 1994 | A |
5365594 | Ross et al. | Nov 1994 | A |
5386472 | Pfaff et al. | Jan 1995 | A |
5526292 | Hodgson et al. | Jun 1996 | A |
5558298 | Pla et al. | Sep 1996 | A |
5627896 | Southward et al. | May 1997 | A |
5629986 | Shoureshi | May 1997 | A |
5838802 | Swinbanks | Nov 1998 | A |
5845236 | Jolly et al. | Dec 1998 | A |
5940519 | Kuo | Aug 1999 | A |
6094601 | Popovich | Jul 2000 | A |
6138947 | Welsh et al. | Oct 2000 | A |
6229898 | Goodman | May 2001 | B1 |
6772074 | Millott et al. | Aug 2004 | B1 |
6856920 | Millott et al. | Feb 2005 | B1 |
7003380 | MacMartin et al. | Feb 2006 | B1 |
Number | Date | Country |
---|---|---|
0773531 | May 1997 | EP |
Number | Date | Country | |
---|---|---|---|
20020120366 A1 | Aug 2002 | US |
Number | Date | Country | |
---|---|---|---|
60271792 | Feb 2001 | US |