The interaction of sloshing fuel in a vehicle and vehicle motion directly impacts vehicle performance and may lead to system instability. In addition, space vehicles often involve simultaneous motion of multiple rigid bodies. A controller designed for the simpler single rigid body model of a space vehicle when implemented on the actual multiple rigid body vehicle can destabilize the system, if appropriate caution is not exercised during design/implementation.
It is possible to minimize the effect of sloshing fuel with the aid of baffles in fuel tanks, although at the expense of adding unnecessary weight to the vehicle and hence cost to the mission. The effect of multiple rigid body dynamics can also be minimized by linearizing about each operating condition and designing a controller, although this leads to unnecessary lines of code whose verification and validation will only increase the cost of development.
Previous research has focused on either control of space vehicles as a single rigid body or modeling of space vehicles as multi-rigid bodies with fuel slosh. Moreover, it has also been generally assumed that the dynamics under consideration were fully actuated.
For example, controllers have been developed for space vehicles in the ascent or descent phases. In some of these, it is assumed that the space vehicle can be modeled as a single rigid body and the controllers are operated on the axial torques of a rigid body. Adaptive guidance laws have also been proposed to aid in the entry of a class of space vehicles. The guidance laws used point mass dynamics of a space vehicle.
In considering the effect of fuel slosh on space vehicles for control design, a space craft itself has been modeled as a single rigid body with constant axial thrust, pitching moment, and side gas jet thrusters. A controller was designed which operated on the gas jet thrusters and pitching moment to regulate fuel slosh. However, the control problem of simultaneous sloshing fuel and multi-rigid body motion of the space vehicle was not considered. In another case, stability analysis of a launch vehicle modeled as a single rigid body with fuel slosh modeled as a pendulum was considered. However, no systematic control design procedure was proposed. The effect of a gimbaled engine and fuel slosh on the motion of a booster at launch has also been considered. A dynamic inversion controller was proposed, but the design of the controller was not presented. Although the controller incorporated the effect of fuel slosh dynamics, it did not minimize fuel slosh.
Features of the present invention will become apparent to those skilled in the art from the following description with reference to the drawings. Understanding that the drawings depict only typical embodiments of the invention and are not therefore to be considered limiting in scope, the invention will be described with additional specificity and detail through the use of the accompanying drawings, in which:
In the following detailed description, embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. It is to be understood that other embodiments may be utilized without departing from the scope of the present invention. The following detailed description is, therefore, not to be taken in a limiting sense.
The present invention relates to methods and systems for controlling multi-body vehicles with fuel slosh. One aspect of the invention includes a systematic output feedback design procedure for decoupled control of multiple rigid body systems, especially for those that are under-actuated, such as inner loop control of multi-body launch vehicles with fuel slosh. The control design procedure can also accommodate additional controls to actively damp slosh. Typical applications for the present methods may include ascent or descent of a class of space vehicles, in-orbit vehicles whose tasks include simultaneous motion of multiple rigid bodies, and the like.
The dynamics considered herein are that of a critically underactuated system. The dynamic inversion-based control provided by the present invention exploits an isometric transformation to maintain the stability properties of the uncontrolled dynamics. A dynamic inversion-based nonlinear control algorithm accounts for the coupled dynamics of interconnected rigid bodies. Specifically, the controller regulates engine pitch angle for a vehicle by operating on the engine gimbal torque in the presence of fuel slosh. The controller can use an estimate of the slosh dynamics provided by a reduced-order slosh observer in the likely event that the slosh states cannot be measured.
While the present invention is discussed primarily with respect to controlling a launch vehicle such as a rocket or other spacecraft, it should be understood that the invention can be applied to other vehicle types where fuel slosh needs to be considered such as airships.
As described more fully hereafter, the dynamics of a launch vehicle (such as a rocket) include a booster (rigid body #1), a gimballed engine (rigid body #2), and fuel slosh (rigid body #3) that is modeled as a normal pendulum attached to the booster-vehicle. The dynamics are restricted to evolve in a vertical plane and only the longitudinal dynamics of the launch vehicle are considered. The attitude dynamics of the launch vehicle are critically underactuated, meaning that the number of control inputs (e.g., 1—engine gimbal torque) is less than the number of rigid bodies (e.g., 2—angular velocities) to be controlled.
The methods and techniques described herein may be implemented in digital electronic circuitry, or with a programmable processor (for example, a special-purpose processor or a general-purpose processor such as a computer), firmware, software, or in combinations thereof. Apparatus embodying these method and techniques may include appropriate input and output devices, a programmable processor, and a storage medium tangibly embodying program instructions for execution by the programmable processor. A process embodying these techniques may be performed by a programmable processor executing a program of instructions to perform desired functions by operating on input data and generating appropriate output.
The method and techniques may advantageously be implemented in one or more programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device. Generally, a processor will receive instructions and data from a read-only memory and/or a random access memory. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD disks, DVD disks, and the like. Any of the foregoing may be supplemented by, or incorporated in, specially-designed application-specific integrated circuits (ASICs). Table 1 below lists the nomenclature used in the following description, indicating various symbols and their corresponding meaning as used in the equations hereafter.
cgl
aelb
Control Model
In presenting the modeling of a controller for the present invention, the motion of a launch vehicle is restricted to the vertical plane. The methodology, as explained herein, can be as well applied to the 6 degrees of freedom of a rigid body.
The longitudinal dynamics of launch vehicle 100 are presented in equation (Eq.) (1) below. Hereafter, the dynamics given in Eq. (1) will be referred to as the “high-fidelity” model of the vehicle.
It should be noted that in the above equation, the engine thrust (TH) is lumped with the disturbance vector (gd(•)). This is because engine thrust is not considered as an input to the launch vehicle. It is assumed that TH will be given by some thrust profile. In the absence of wind, the angle of attack is given by α=tan−1(νz/νx). The values for the physical parameters in the model are given in Table 2.
A “low-fidelity” model of the launch vehicle is considered as follows. The low-fidelity model is a two rigid body model simplification of launch vehicle 100 and is given in Eq. (2) below. The model was derived by assuming that the slosh pendulum is constrained with respect to the booster, for example, welded to the body.
Controller and Observer Design
The following describes a systematic control design procedure for inner loop control which is applicable to both the low and high fidelity models described above. This procedure is generic enough to design an inversion based controller for various underactuated systems. For example, the procedure can handle single or multiple rigid body models or models with multiple fuel tanks and hence multiple slosh modes. For the purposes of the following description, the arguments of most functions (matrices or vectors) will be dropped to avoid clutter; an explicit reference will be made only when it may eliminate confusion.
It should be noted from Eq. (1) that the engine gimbal torque input τ affects the booster relative engine angular acceleration ({dot over (ω)}w−{dot over (ω)}b={umlaut over (θ)}eb), thus making τ a natural choice to regulate thrust angle relative to the booster, θeb. However, the inertia matrix M(ξ) is coupled which might lead to complications in closed loop stability analysis. The representation of the dynamics (Eq. (1)) can be simplified by transforming the coordinates {dot over (ξ)}. Isometric transformations are a natural way of transforming the coordinate representation of the dynamics of rigid bodies while retaining their physical properties. Another benefit of using appropriate isometric transformations is their ability to represent equations of motion of connected rigid bodies in a set of coordinates with decoupled accelerations.
A. Isometric Transformation
The high-fidelity model dynamics (Eq. (1)) of the launch vehicle can be partitioned as follows:
where {dot over (ξ)}1={umlaut over (θ)}eb and {dot over (ξ)}2=[ωb, ωs, νx, νz]T.
The rationale for choosing θeb as the control variable is so that the thrust produced by the engine can be directed in a desired direction (subject to hardware constraints). This will result in a controllable moment on the launch vehicle that can be used to regulate the attitude of the booster. Hence the engine gimbal angle θeb is chosen as the control variable (CV).
If standard nonlinear control design approaches are used such as dynamic inversion applied to the dynamics (Eq. 7), the stability of the zero-dynamics of the closed-loop system needs to be addressed. This, given the structure of the inertia matrix, M(ξ), can be an arduous task. Analysis of the closed loop launch vehicle system can be greatly simplified if the dynamics (Eq. 7) can be expressed in a coordinate system which decouples the engine gimbal accelerations ({dot over (ω)}e−{dot over (ω)}b) from the other accelerations. Designing a feedback linearizing controller is then much simpler. Consider the following transformation S−1(ξ):
The transformation S(ξ) is well-defined for all ξ as M22(ξ) is positive definite for all ξ, hence invertible. Using the above transformation, the dynamics Eq. (1)≡Eq. (7) can be transformed as follows:
STM(ξ)S{umlaut over (η)}+ST(C(ξ,{dot over (η)})S+M(ξ){dot over (S)}){dot over (η)}=STgd(ξ,d)+STBτ,
where {dot over (S)} is the time derivative of the elements of S. Upon substituting Eq. (8) in the above equation and doing the necessary algebraic computations, the transformed dynamics can be represented as the following system:
where Meq=M11−M12M22−1MT12. From Eq. (9) it should be noted that the transformation (8) decouples the engine gimbal acceleration, {umlaut over (θ)}eb from the other states. The additional advantage is that the control input τ only affects the engine gimbal acceleration, hence, making the task of design and subsequent closed loop analysis of a controller much simpler.
B. Controller
Based on Eq. (9), the control input τ can be chosen as follows:
where the state θieb is introduced to ensure integral action on the error signal. This choice of τ ensures the following closed loop dynamics of the engine gimbal:
Integral action ensures that steady state errors due to step disturbances or specific model inaccuracies will be driven to 0 asymptotically.
The most significant advantage of the present control design procedure is that the control law (given in Eq. (10)) does not affect the unactuated dynamics of the launch vehicle. This implies that the zero dynamics of the closed loop system are not affected by the choice of the control law. The zero dynamics of the closed loop launch vehicle are the same as the unactuated dynamics of the uncontrolled launch vehicle given in Eq. (9) and written below:
Hence, the zero dynamics are as stable (or unstable) as the open loop unactuated dynamics. If the launch vehicle is structurally designed such that the unactuated dynamics are unstable (but stabilizable), the control variable (CV) will have to be modified to include the unstable states. Naturally, this will affect the performance of the engine gimbal attitude control system.
One of the disadvantages of implementing the control law described in Eq. (10) is that it needs a measurement of deflection and deflection rate of the slosh pendulum, θsb,ωsb. These states are not usually measured on a launch vehicle. Generally, in order to stabilize a marginally stable rigid body, an estimate or measurement of its position, attitude and velocity, and angular rate are required. A solution to this problem is the nonlinear observer for the slosh pendulum states discussed below.
In summary, the method for designing and providing a controller for a multi-body assembly includes using vehicle configuration and velocity as states of a rigid body and writing equations of motion for the multi-body assembly. The velocity states that are unactuated are then determined, and this is used to define a decoupling transformation. The decoupling transformation is used to transform the equations of motion such that unactuated states are decoupled from actuated states.
C. Slosh Observer
In order to make the above control design practical (since slosh measurements do not generally exist), an estimate of the slosh states ωsb, θsb is required. Initially, it is necessary to determine the observability properties of the launch vehicle. Consider the transformed launch vehicle dynamics (Eq. (1)) with the output defined as in Eq. (12):
where N,EεR5×5, hdhuεR5, ωsb=ωs−ωb, {dot over (ξ)}4=[ωb;ωe−ωb, νx, νz]T, 1=[0, 1, 0, 0]T and C=[04×1I4×4]. By inverting the inertia matrix N, we get Eq. (13).
where
In Eq. 12, E captures the coriolis forces acting between the interconnected rigid bodies of the launch vehicle. These forces are a function of the relative velocities of various interconnected rigid bodies. Hence, if the launch vehicle is such that the booster, engine, and slosh pendulum are in a fixed configuration with respect to each other, then E=0. From Eq. (14) we can infer that E=0→F=0. If F=0, observability grammian of the system Eq. (13) is rank deficient and the slosh states cannot be observed. Hence, if the relative angular velocities of the interconnected rigid bodies are such that |E|→0, the observer would perform poorly.
A schematic diagram of a closed loop nonlinear slosh state estimator 200 is shown in
where {dot over ({circumflex over (ξ)}4=[{circumflex over (ω)}sb, yT]T. The constant matrix observer gain LεR1×8 is used to tune the observer performance.
The slosh state estimator 200 includes a reduced order observer module 202 that has a first input 204 in operative communication with a controller 206 for a vehicle 208. The term “reduced order” refers to the fact that the observer has fewer states than the model of the launch vehicle being used. The observer module 202 also has at least one observer output 210 in operative communication with controller 206. A summing device 212 is in operative communication with observer output 210 and a vehicle output 214 from vehicle 208. An observer gain module 216 is in operative communication with summing device 212. A second input 218 to observer module 202 is in operative communication with gain module 216. The outputs 210 and 214 can be in operative communication with respective signal selectors 220 and 224. The signal selectors can be used to choose one signal for use when multiple potential outputs are present. The output 210 can also be in operative communication with an integrator 226 that communicates with controller 206.
During operation of slosh state estimator 200, one or more control signals are delivered from controller 206 to observer module 202 via input 204. For example, the control signals can be an engine gimbal torque values. To estimate the angular velocity of the slosh of a liquid, observer module 202 uses the control signals and signals from vehicle output 214 to mathematically approximate the angular velocity of the slosh. A comparison of the approximated angular velocity from observer module 202 and vehicle output 214 is done by summing device 212. The summing device 212 computes the difference value between the vehicle output 214 and observer output 210 and sends the difference value to gain module 216, which transmits a signal to observer module 202 via input 218 that correlates with the difference value. The observer module 202 then calculates a new angular velocity approximation based on the signals from input 204 and input 218. This angular velocity is then sent through output 210 to integrator 226, which computes the angular distance of the slosh by talking the integral of the angular velocity. The resulting value is then sent to controller 206 to be used in stabilizing the vehicle. The above operation of slosh state estimator 200 is performed continuously in a loop to provide stability control for the vehicle.
In summary, the method for designing a slosh state estimator for a multi-body assembly includes using vehicle configuration and velocity as states of a rigid body and writing equations of motion for the multi-body assembly. A determination is made of the velocity state that needs to be observed. This determination is used to define a decoupling transformation. The decoupling transformation is used to transform the equations of motion such that the observer state is decoupled from the other measured states. The transformed equations of motion can then be used to design the observer discussed above with respect to
Using the above design procedures, a control system for stabilizing a vehicle with fuel slosh can be implemented such as shown in the schematic block diagram of
During operation, control system 250 first receives a command signal via control input 262. In one example, the command signal can be a doublet wave that directs the engine to move with a certain magnitude, such as 0.5 degrees. In a launch vehicle, the engine is causally connected to both a booster and the slosh such that when the engine moves, the booster and slosh are affected. The slosh is observed by estimator 270 and the positions of the booster, engine, and observed slosh are then output back to controller 260. The controller uses this data to relay a new command signal to the engine, thereby taking into account the slosh position.
Slosh Damping Using Mimo Designs
In the previous design, controlling the vehicle motion is limited to the torque on the single engine. The controller of the present invention may also be implemented in a MIMO (multiple-input multiple-output) design to actively damp slosh via use of additional auxiliary thrusts acting on a booster body. For example, auxiliary engines or gas-jet thrusters are two ways to implement the additional thrusts.
While the same design process can be used as outlined above, the control dimension is increased by one to accommodate the angle of the additional thrusts. The set of controlled states includes the angle rate of the slosh relative to the booster, ωsb. Further, the slosh state ωsb is not commanded with respect to any particular reference, but rather, damping is injected via proportional and integral gains. In this case, the isometric transformation (equivalent to Eq. (8)) cannot ensure the fortuitous result that the uncontrolled states are unaffected by the control inputs (τ, μ2).
The following examples are given to illustrate the present invention, and are not intended to limit the scope of the invention.
The control design procedures described previously were applied to closed-loop, time domain simulations for a launch vehicle. Unless otherwise stated, the controller in every simulation used an observed value of the states ({circumflex over (θ)}sb, {circumflex over (ω)}sb).
For the control design, the following gain selections were made: λ2=3ωn, λ1=3ω2n and λ0=ω3n, where ωn=6.28 rad/s. Further, since the control law used was dynamic inversion-based, the vehicle model parameters were explicit. The model parameters used by the control law were those used by the launch vehicle model (given in Table 2 above). With the assumption of “perfect inversion” (i.e., no model mismatch), the above choice for the λs yield the following closed-loop transfer function:
In each of the simulations in the following examples, actuator and sensor dynamics were neglected as well as sensor noise. Each simulation started with the launch vehicle at rest in a vertical attitude (θb=90 degrees). The external command was to the engine gimbal angle, θeb. Its command, θcmdeb, was a 0.5 degree amplitude doublet whose period was 4 seconds. The doublet command entered at t=5 seconds. Each simulation lasted for 20 seconds.
For this simulation, it was assumed that the controller was designed for the high-fidelity model of the launch vehicle, which includes the effect of slosh dynamics. The dynamic inversion control law will ‘invert’ the slosh motion based on the estimates from the slosh state observer. The plots of the simulation are shown in the graphs of
The curve in
For this simulation, the control law did not account for the dynamics and estimates of the slosh states during inversion. The control law did, however, still consider the engine and booster as separate bodies with coupled dynamics. This particular design follows the procedure outlined above with respect to the low-fidelity dynamic equation (Eq. (2)). The graphs of
The graphs of
The graph of
The graph of
The simulations described in the above examples indicate that if slosh dynamics are not actively accounted for in the design of a controller, vehicle instability may result.
The present invention may be embodied in other specific forms without departing from its essential characteristics. The described embodiments and methods are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is therefore indicated by the appended claims rather than by the foregoing description. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.
This application claims the benefit of priority to U.S. Provisional Application No. 60/693,358, filed on Jun. 23, 2005, the disclosure of which is herein incorporated by reference.
Number | Name | Date | Kind |
---|---|---|---|
5452869 | Basuthakur et al. | Sep 1995 | A |
5791598 | Rodden et al. | Aug 1998 | A |
6246929 | Kaloust | Jun 2001 | B1 |
6643569 | Miller et al. | Nov 2003 | B2 |
Number | Date | Country |
---|---|---|
0119810 | Sep 1984 | EP |
1128247 | Aug 2001 | EP |
Number | Date | Country | |
---|---|---|---|
20090076669 A1 | Mar 2009 | US |
Number | Date | Country | |
---|---|---|---|
60693358 | Jun 2005 | US |