Claims
- 1. A method for controlling a multivariable system including the steps of:
a) Receiving a plurality of sensor signals indicating current conditions of the system which are periodically sampled; b) Receiving a plurality of commands; c) Determining a desired change in output of the system for one or more of the next controller samples based upon the commands and sensor signals; d) Formulating the problem of determining actuator commands to achieve the change in output by the next, and possibly more future, controller sample(s) as a quadratic programming problem that includes physical limits or constraints of the system.
- 2. The method of claim 1 wherein said step c) further includes the steps of
i) determining how a nominal system output should change in the next controller sample(s), ii) specifying the physical limits and constraints, and iii) determining the actuator commands to achieve the change.
- 3. The method of claim 1 further including the step of formulating the problem into a part that determines how a nominal system output should change in the next controller sample(s), a part that determines the physical limits and constraints, and a part that determines the actuator commands to achieve this change.
- 4. The method of claim 3 wherein the change requested for the next controller sample(s) is specified in terms of the next output value, a rate of change of the output, acceleration of the output, or net generalized forces and moments on the system.
- 5. The method of claim 3 wherein the part determining the change in system output required in the next controller sample(s), in order to achieve a desired command response trajectory, is accomplished using feedback control, feedforward control, explicit use of a model of the desired response or neural networks.
- 6. The method of claim 1 where the physical constraints are directly included.
- 7. The method of claim 1 where the physical constraints are indirectly included in terms of the fastest approach to the limit allowed.
- 8. The method of claim 1 further including the step of:
e) Solving the quadratic programming problem to determine effector commands that will cause the desired change in output.
- 9. The method of claim 8 wherein the desired dynamic response includes a plurality of outputs.
- 10. The method of claim 9 wherein the multivariable system is cross-coupled, such that each of the effector commands affects each of the outputs.
- 11. The method of claim 10 further including the step of enforcing effector limits.
- 12. The method of claim 11 further including the step of enforcing a prioritization of the commands and physical limits, when not all commands can be accomplished.
- 13. The method of claim 12 wherein the step of enforcing a prioritization further including the step of turning off feedback control integrators associated with lower priority outputs, if all outputs can not be achieved.
- 14. The method of claim 13 wherein the step of enforcing a prioritization further includes setting higher performance index weights on the desired change of the higher priority outputs.
- 15. The method of claim 14 further including the step of changing a weighting on each of a plurality of the commands and physical limits.
- 16. A multivariable control system comprising:
A plurality of sensors indicating current conditions of the system; A plurality of effectors for changing dynamics of the system in response to effector commands; A dynamic feed forward module determining how a system output should change in a subsequent sample period; A dynamic model follower comparing desired and actual system responses to adjust an output change command as needed; and A dynamic inversion module determining the effector commands in order to change the system output based upon the determination by the dynamic feed forward and dynamic model follower modules by formulating a quadratic programming problem to include physical limits of the system.
- 17. The multivariable control system of claim 16 wherein the dynamic inversion module includes a constraint formation module for transforming the physical limits of the system into a form of linear inequality equations with the effector commands as independent variables.
- 18. The method of claim 17 where the linear inequality equations express the fastest dynamic trajectory with which the limits can be approached.
- 19. The multivariable system of claim 16 wherein the dynamic inversion module further includes a performance index formation module formulating the effector commands as a solution of the quadratic programming problem.
- 20. The multivariable system of claim 19 wherein the dynamic inversion block further includes a quadratic programming block for solving the quadratic optimization problem and linear equality equations.
- 21. A computer readable medium storing a computer program, which when executed by a computer performs the steps of:
a) Receiving a plurality of sensor signals indicating current conditions of the system which are periodically sampled; b) Receiving a plurality of commands; c) Determining a desired change in output of the system for a next controller sample based upon the commands and sensor signals; d) Formulating the problem of determining actuator commands to achieve the change in output by the next controller sample as a quadratic programming problem that includes physical limits or constraints of the system.
- 22. The computer readable medium of claim 21 which when executed by a computer further performs the steps of solving the quadratic programming problem to determine effector commands.
- 23. The computer readable medium of claim 22 wherein the desired dynamic response includes a plurality of outputs.
- 24. The computer readable medium of claim 23 wherein the multivariable system is cross-coupled, such that each of the effector commands affects each of the outputs.
- 25. The computer readable medium of claim 24 further performing the step of enforcing effector limits.
- 26. The computer readable medium of claim 25 further performing the step of prioritizing the commands and physical limits.
- 27. The computer readable medium of claim 26 further performing the step of changing a weighting on each of a plurality of the commands and physical limits.
Government Interests
[0001] This invention was conceived in performance of work under U.S. Government Contract N00421-01-2-0131.