ES2259931B1 - PROCEDURE FOR OBTAINING A QUASI-OPTIMAL PREDICTIVE DIGITAL CONTR0L SYSTEM WITH REDUCED COMPUTATIONAL REQUIREMENTS. - Google Patents

PROCEDURE FOR OBTAINING A QUASI-OPTIMAL PREDICTIVE DIGITAL CONTR0L SYSTEM WITH REDUCED COMPUTATIONAL REQUIREMENTS. Download PDF

Info

Publication number
ES2259931B1
ES2259931B1 ES200500862A ES200500862A ES2259931B1 ES 2259931 B1 ES2259931 B1 ES 2259931B1 ES 200500862 A ES200500862 A ES 200500862A ES 200500862 A ES200500862 A ES 200500862A ES 2259931 B1 ES2259931 B1 ES 2259931B1
Authority
ES
Spain
Prior art keywords
control
plant
quasi
digital
procedure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
ES200500862A
Other languages
Spanish (es)
Other versions
ES2259931A1 (en
Inventor
Jesus Garcia Garcia
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Model Predictive Control S L
MODEL PREDICTIVE CONTROL SL
Original Assignee
Model Predictive Control S L
MODEL PREDICTIVE CONTROL SL
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Model Predictive Control S L, MODEL PREDICTIVE CONTROL SL filed Critical Model Predictive Control S L
Priority to ES200500862A priority Critical patent/ES2259931B1/en
Publication of ES2259931A1 publication Critical patent/ES2259931A1/en
Application granted granted Critical
Publication of ES2259931B1 publication Critical patent/ES2259931B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor

Abstract

La invención consiste en un procedimiento que permite obtener, para un determinado problema de control de proceso en el dominio temporal, un sistema de control digital predictivo a medida, con unos requisitos computacionales reducidos. El proceso comienza con un análisis del problema de control, orientado a obtener la información necesaria para definir una serie de parámetros de diseño en un algoritmo de control predictivo cuasi-óptimo. Realizados dichos ajustes, se proporcionan fórmulas para calcular las características computacionales (como número de operaciones por segundo y memoria necesaria) que la implementación en un sistema digital requiere. Con dichos requisitos se procede a una descripción de los elementos que implementarán el algoritmo y sus interconexiones, junto con las especificaciones de cada uno de dichos elementos. Se obtiene así un sistema de control adaptado al problema en cuestión.The invention consists of a method that allows a customized predictive digital control system to be obtained for a specific process control problem in the time domain, with reduced computational requirements. The process begins with an analysis of the control problem, aimed at obtaining the necessary information to define a series of design parameters in a quasi-optimal predictive control algorithm. Once these adjustments have been made, formulas are provided to calculate the computational characteristics (such as number of operations per second and memory required) that the implementation in a digital system requires. With these requirements we proceed to a description of the elements that will implement the algorithm and its interconnections, together with the specifications of each of said elements. A control system adapted to the problem in question is thus obtained.

Description

Procedimiento para obtener un sistema de control digital predictivo cuasi-óptimo con requisitos computacionales reducidos.Procedure to obtain a control system Quasi-optimal predictive digital with computational requirements reduced

Objeto de la invenciónObject of the invention

La presente invención se refiere a un procedimiento que tiene como finalidad la obtención de un sistema de control predictivo y las especificaciones del hardware requerido para implementarlo, para problemas multi-variables, que resulta aplicable tanto a plantas lineales como no lineales y donde los modelos de la planta pueden ser tan variados como en un control predictivo típico, incluyendo pero no limitándose a modelos de respuesta a pulso, respuesta a escalón, y otras formas de modelo de espacio de estado.The present invention relates to a procedure that aims to obtain a system Predictive control and required hardware specifications to implement it, for multi-variable problems, which is applicable to both linear and non-linear plants and where the plant models can be as varied as in a typical predictive control, including but not limited to models Pulse response, step response, and other model forms of state space.

La invención resulta de aplicación prácticamente en todos los campos de la industria donde sea preciso implementar un control predictivo con optimización en tiempo real, pero pequeño y de bajo coste.The invention is practically applicable in all fields of industry where it is necessary to implement a predictive control with real-time optimization, but small and low cost.

Antecedentes de la invenciónBackground of the invention

El control predictivo (Model Predictive Control, en adelante MPC) es reconocido por la industria de control de procesos como la más versátil de las alternativas de control en el dominio del tiempo (ver E.F. Camacho and C. Bordons, Model Predictive Control. New York: Springer, 1999). MPC permite controlar desde sistemas muy simples, hasta aquellos con dinámicas más complejas, multivariable, no lineales, y/o con grandes retardos en la planta. Así mismo, integra control óptimo con restricciones en las entradas y salidas de forma explícita.Predictive control ( Model Predictive Control , hereinafter MPC) is recognized by the process control industry as the most versatile of control alternatives in the time domain (see EF Camacho and C. Bordons, Model Predictive Control. New York : Springer, 1999). MPC allows to control from very simple systems, to those with more complex dynamics, multivariable, nonlinear, and / or with large delays in the plant. It also integrates optimal control with restrictions on inputs and outputs explicitly.

Un control MPC se caracteriza por la estructura reflejada en la Figura 1. El control consta de dos bloques fundamentales, un Modelo (1) dinámico de la planta (2) a controlar, y un Optimizador (3). Usando las salidas (4) de la planta (o medidas) en el pasado que definen el estado de la planta, y las entradas futuras (5) que se presume se aplicarán a la planta, el modelo puede predecir las futuras salidas (6) de la planta. Estas salidas predichas se comparan con la trayectoria de referencia (7) (valores deseados actuales y futuros de las salidas de la planta), obteniéndose los errores futuros (8). La labor del optimizador es minimizar una función de coste (9) basada en dichos errores. La función de coste consiste frecuentemente en una suma ponderada de los cuadrados de los errores. También es frecuente incluir la suma ponderada de los cuadrados del valor de las actuaciones (entradas a la planta), para minimizar la energía empleada por el sistema de control. El optimizador selecciona las futuras entradas a la planta que originen en el Modelo unas salidas predichas que minimizan el coste. Típicamente existen Restricciones (10) en las entradas futuras que se pueden seleccionar, tanto atendiendo al valor de las propias entradas (11) (valores máximo y mínimo de cada actuador, o elemento físico que transforma la orden de entrada en una interacción sobre la planta), como al valor de las salidas (p.e., límites de seguridad para los valores de las salidas). Este procedimiento se ejecuta cada ciclo de control. Al final del ciclo de control, sólo las entradas calculadas para el próximo instante de tiempo son realmente enviadas a los actuadores de la planta; el resto son descartadas. En el siguiente ciclo de control, el proceso se repite, actualizando el estado del Modelo con las nuevas medidas de las salidas de la planta obtenidas. Así se cierra el lazo de realimentación.An MPC control is characterized by the structure reflected in Figure 1. The control consists of two fundamental blocks, a dynamic Model (1) of the plant (2) to be controlled, and an Optimizer (3). Using the outputs (4) of the plant (or measurements) in the past that define the state of the plant, and future inputs (5) that are presumed to be applied to the plant, the model can predict future outputs (6) of the plant. These predicted outputs are compared with the reference path (7) (current and future desired values of the plant outputs), obtaining future errors (8). The optimizer's job is to minimize a cost function (9) based on these errors. The cost function often consists of a weighted sum of the squares of the errors. It is also common to include the weighted sum of the squares of the value of the actions (entrances to the plant), to minimize the energy used by the control system. The optimizer selects future inputs to the plant that originate predicted outputs in the Model that minimize cost. Typically there are restrictions (10) on future entries that can be selected, both according to the value of the inputs themselves (11) (maximum and minimum values of each actuator, or physical element that transforms the input order into an interaction on the floor ), as to the value of the outputs (eg, safety limits for the values of the outputs). This procedure is executed every control cycle. At the end of the control cycle, only the inputs calculated for the next instant of time are actually sent to the actuators of the plant; The rest are discarded. In the next control cycle, the process is repeated, updating the status of the Model with the new measurements of the plant outputs obtained. This closes the feedback loop.

Si bien el control MPC ha tenido un gran éxito en el mundo académico, su implantación en el mundo industrial es mucho más limitada. Las razones generalmente aducidas son una mayor dificultad para obtener resultados matemáticos de robustez y estabilidad (si bien en la práctica estos controles resultan ser muy robustos y estables), y sobre todo la complejidad matemática que el proceso de optimización requiere. El número de operaciones necesarias para calcular la solución óptima es muy elevado, y por lo tanto no es sencillo obtener resultados en tiempo real para sistemas de control rápidos. Y fundamentalmente, no existe una cuantificación de los requisitos computacionales en función del problema de control a resolver. El control MPC está extendido ampliamente en la industria química, en particular petrolera, donde la lentitud de los procesos permite periodos de control largos, y además no existe inconveniente en dedicar un sistema de computación muy potente a controlar el proceso. El problema surge cuando se quiere aplicar este sistema de control a un proceso rápido, y se requiere que la implementación física tenga un tamaño pequeño. Esta situación, extremadamente frecuente en multitud de aplicaciones de control (en especial en aplicaciones embebidas) impide la utilización de un sistema de computación tan potente como requiere la alta frecuencia con que se tiene que resolver un problema de optimización. La ausencia de una relación entre las especificaciones del problema de control y las especificaciones del sistema digital necesario para resolverlo en tiempo real dificulta el desarrollo de un sistema a medida. Es por tanto de gran interés para la industria la aparición de algoritmos de control predictivo con menores requisitos computacionales, y las especificaciones precisas del hardware que requieren para ser implementados a medida eficientemente.While the MPC control has been very successful in the academic world, its implantation in the industrial world is much more limited. The reasons generally cited are greater difficulty obtaining robust mathematical results and stability (although in practice these controls turn out to be very robust and stable), and especially the mathematical complexity that the optimization process requires. The number of operations necessary to calculate the optimal solution is very high, and by therefore it is not easy to obtain real-time results for fast control systems And fundamentally, there is no quantification of computational requirements based on control problem to solve. MPC control is extended widely in the chemical industry, particularly oil, where the slowness of the processes allows long periods of control, and In addition there is no problem in dedicating a computer system Very powerful to control the process. The problem arises when you want to apply this control system to a quick process, and you It requires that the physical implementation be small in size. This situation, extremely frequent in many applications of control (especially in embedded applications) prevents use of a computer system as powerful as it requires the high frequency with which a problem of optimization The absence of a relationship between control problem specifications and the specifications of the digital system needed to solve it in real time makes it difficult the development of a custom system. It is therefore of great interest for the industry the emergence of predictive control algorithms with lower computational requirements, and specifications precise hardware required to be custom implemented efficiently.

Recientemente han comenzado a aparecer estrategias que abordan el problema de implementar control MPC para sistemas con limitada potencia de cálculo, como son los microcontroladores típicos. Así, Bemporad, Morari, Dua y Pistikopoulos describen una estrategia consistente en aprovechar que la solución a un problema de optimización cuadrática con restricciones es una familia de aplicaciones afines. Existe una ley afín para cada posible conjunto de restricciones activas (siendo una restricción activa aquella que limita efectivamente el valor de la solución, de forma que si se eliminara dicha restricción, la función de coste podría ser reducida). Esta estrategia simplifica mucho las operaciones aritméticas a realizar, ya que aplicar una ley afín es mucho más simple que efectuar la optimización. Todas las leyes afines necesarias se pre-calculan y almacenan en una tabla. No obstante, la complejidad se ve desplazada al almacenamiento de datos y la búsqueda de la ley afín necesaria en cada momento, ya que las tablas llegan a adquirir proporciones enormes. Los autores admiten que el número de aplicaciones afines a almacenar crece super-exponencialmente con el número de restricciones presentes, lo que hace impráctica esta alternativa para todos los sistemas reales salvo los más simples (de tamaño muy reducido).They have recently begun to appear strategies that address the problem of implementing MPC control to systems with limited computing power, such as typical microcontrollers So, Bemporad, Morari, Dua and Pistikopoulos describe a strategy consisting of taking advantage that the solution to a quadratic optimization problem with Restrictions is a family of related applications. There is a law related to each possible set of active restrictions (being a  active restriction that effectively limits the value of the solution, so that if said restriction is removed, the cost function could be reduced). This strategy simplifies a lot of arithmetic operations to perform, since applying a related law is much simpler than performing optimization. All the necessary related laws are pre-calculated and Store in a table. However, complexity is seen displaced to data storage and the search for related law necessary at all times, since the tables get to acquire huge proportions. The authors admit that the number of related applications to store grows super-exponentially with the number of present restrictions, what makes this alternative impractical for all real systems except the simplest (very sized reduced).

Descripción de la invenciónDescription of the invention

El procedimiento que la invención propone permite obtener un control digital predictivo cuasi-óptimo con requisitos computacionales reducidos, mediante un análisis del problema de control enfocado a particularizar un algoritmo de control cuasi-óptimo, y la obtención de las especificaciones del hardware necesario para poder ejecutar el algoritmo eficientemente, con un hardware más sencillo que el que requeriría un control óptimo.The procedure that the invention proposes allows to obtain a quasi-optimal predictive digital control with reduced computational requirements, through an analysis of the control problem focused on particularizing an algorithm of quasi-optimal control, and obtaining the specifications of the hardware needed to run the algorithm efficiently, with simpler hardware than would require control optimum.

De forma más concreta, el sistema de control predictivo cuasi-óptimo comprende un control óptimo y un control auxiliar, este último computacionalmente sencillo, combinados de manera que permiten una simplificación del proceso de optimización, manteniendo una calidad en las características del control muy similar a la proporcionada por un control óptimo puro.More specifically, the control system Quasi-optimal predictive includes optimal control and control auxiliary, the latter computationally simple, combined with way that allow a simplification of the optimization process, maintaining a quality in the characteristics of the control very similar to that provided by pure optimal control.

El análisis del problema de control propuesto comprende la obtención de características y medidas que se utilizan por métodos heurísticos para ajustar el algoritmo de control al problema.The analysis of the proposed control problem includes obtaining characteristics and measures that are used by heuristic methods to adjust the control algorithm to trouble.

El diseño de especificaciones obtenidas al final del proceso supone una descripción de un sistema digital que, junto con el algoritmo de control cuasi-óptimo y los valores de los parámetros obtenidos previamente, constituyen una solución completa de control, adaptada al problema particular. Las especificaciones del hardware resuelven las incógnitas de si se puede implementar, en un sistema digital real y práctico desde el punto de vista industrial, un control predictivo, y cómo llevar a cabo dicha implementación.The design of specifications obtained at the end of the process involves a description of a digital system that, together with the quasi-optimal control algorithm and the values of the previously obtained parameters constitute a complete solution of control, adapted to the particular problem. The specifications of the hardware solve the unknowns of whether it can be implemented, in a real and practical digital system from the point of view industrial, predictive control, and how to carry out such implementation.

El procedimiento resulta así de aplicación industrial muy amplia, pudiendo citarse, entre otras:The procedure is thus applicable very broad industrial, including, among others:

--
Aplicaciones aeroespaciales, donde un modelo del comportamiento físico del vehículo incrementa enormemente el rendimiento del control. En aplicaciones aeroespaciales es evidente la conveniencia de tamaños reducidos, y bajo consumo de energía, especialmente en satélites.Aerospace applications, where a vehicle physical behavior model increases greatly control performance. In applications aerospace is the convenience of small sizes, and Low power consumption, especially on satellites.

--
Aplicaciones automovilísticas, como controles avanzados de tracción y dirección, que necesitan emplear un modelo dinámico del vehículo, y están destinadas a su producción en masa (interesando un coste muy reducido en el sistema de control).Automotive applications, such as advanced traction and steering controls, which need to be used a dynamic model of the vehicle, and are intended for production en masse (with a very low cost in the system of control).

--
Aplicaciones biomédicas, como puedan ser controles avanzados para sistemas automáticos de dosificación de insulina, que tengan en cuenta modelos complejos del cuerpo humano.Biomedical applications, such as advanced controls for automatic dosing systems insulin, which take into account complex body models human.

--
En general, micro- y nano-tecnologías que requieren unos controles más complejos que los sistemas de escala macroscópica, debido a la mayor complejidad de la física cuando la escala es extremadamente reducida (muchas simplificaciones no aplican a escalas microscópicas).In general, micro- and nano-technologies that require more complex controls than scale systems macroscopic, due to the greater complexity of physics when the scale is extremely small (many simplifications not apply to microscopic scales).
Descripción de los dibujosDescription of the drawings

Para complementar la descripción que se está realizando y con objeto de ayudar a una mejor comprensión de las características del invento, de acuerdo con un ejemplo preferente de realización práctica del mismo, se acompaña como parte integrante de dicha descripción, un juego de dibujos en donde con carácter ilustrativo y no limitativo, se ha representado lo siguiente:To complement the description that is being performing and in order to help a better understanding of the characteristics of the invention, according to a preferred example of practical realization of it, is accompanied as part member of that description, a set of drawings where with illustrative and non-limiting nature, what has been represented next:

La figura 1.- Muestra un esquema correspondiente a un control predictivo convencional, según el Estado de la Técnica reflejado en el apartado correspondiente.Figure 1.- Shows a corresponding scheme to a conventional predictive control, according to the State of the Art reflected in the corresponding section.

La figura 2.- Muestra, según una representación similar a la figura 1, el esquema del procedimiento que constituye el objeto de la presente invención.Figure 2.- Shows, according to a representation similar to figure 1, the scheme of the procedure that constitutes the object of the present invention.

La figura 3.- Muestra el diagrama de flujo del control cuasi-óptimo de la invención.Figure 3.- Shows the flow chart of the quasi-optimal control of the invention.

La figura 4.- Muestra, finalmente, la arquitectura de un procesador digital de señal utilizado en dicho control cuasi-óptimo, sobre la que se describirán las especificaciones del hardware.Figure 4.- Shows, finally, the architecture of a digital signal processor used in said quasi-optimal control, over which the hardware specifications.

Realización preferente de la invenciónPreferred Embodiment of the Invention

El presente procedimiento parte de la solución al siguiente problema de control: dado un sistema representable por un cierto modelo, obtener un control MPC con función de coste cuadrática y restricciones lineales, que satisfaga unos ciertos criterios de diseño. La implementación en un sistema digital del control MPC está muy poco estudiada, asumiéndose en la mayoría de casos que "un computador ejecutará el algoritmo de control suficientemente rápido", si bien existen algoritmos de control que no han podido ser implementados por falta de dicho sistema. La ausencia de especificaciones del hardware dificulta la implementación práctica de estos controles, ya que desarrollar dichas especificaciones para cada caso particular requiere un conocimiento profundo de Control Automático, de Programación No-Lineal, de Algorítmica y de Arquitectura de Computadores. Se propone aquí una metodología que lleve desde los parámetros del control MPC deseado (diseño puramente matemático), hasta un sistema digital que permita su implementación física, enfocada a obtener sistemas económicos y de dimensiones limitadas. Hasta donde llega el conocimiento del inventor, no existe en la actualidad ningún sistema de control predictivo con optimización en tiempo real como aplicación comercial para sistemas embebidos y/o pequeño tamaño y bajo coste, lo que pone de relieve la necesidad de disponer de las especificaciones de un sistema digital económico y eficaz, capaz de implementar los controles teóricos que están siendo desarrollados en la actualidad para multitud de aplicaciones industriales.The present procedure starts from the solution to the following control problem: given a system that can be represented by a certain model, get an MPC control with cost function quadratic and linear constraints, which satisfies certain design principles. The implementation in a digital system of MPC control is very poorly studied, being assumed in most cases that "a computer will execute the control algorithm fast enough ", although there are control algorithms that could not be implemented due to lack of said system. The absence of hardware specifications makes it difficult to practical implementation of these controls, as they develop such specifications for each particular case requires a Deep knowledge of Automatic Control, Programming Non-Linear, Algorithmic and Architecture of Computers A methodology is proposed here that leads from MPC control parameters desired (purely mathematical design), to a digital system that allows its physical implementation, focused on obtaining economic systems and limited dimensions. As far as the inventor's knowledge goes, it does not exist in the currently no predictive control system with optimization in real time as a commercial application for embedded systems and / or Small size and low cost, which highlights the need for have the specifications of an economic digital system and effective, able to implement the theoretical controls that are being developed today for many applications Industrial

En primer lugar, esta metodología sustituye el algoritmo de control MPC clásico por un control cuasi-óptimo (CCO). El CCO ofrecerá un rendimiento estadísticamente muy próximo al de un control MPC puro, con un coste computacional mucho menor, ya que se reduce en gran medida el número de operaciones a realizar, y se simplifica la aritmética.First, this methodology replaces the Classic MPC control algorithm for a quasi-optimal control (CCO). The CCO will offer a performance statistically very close to that of a pure MPC control, with a much lower computational cost, since the number of operations to be performed is greatly reduced, and Simplify arithmetic.

La operación fundamental del algoritmo de control predictivo, la minimización (optimización) de una función de coste típicamente cuadrática, es sencilla en ausencia de restricciones. Por el contrario, la presencia de restricciones requiere emplear complejos algoritmos matemáticos. Aunque la variedad de métodos de optimización es muy amplia, todos ellos son muy sensibles en determinadas condiciones a los errores de redondeo en las operaciones matemáticas. Dado que en cada ciclo de control las condiciones del problema de optimización son distintas y muy variables, la probabilidad de que (en algún momento) los errores de redondeo en las operaciones produzcan un resultado erróneo es alta. Los problemas de errores de redondeo son inherentes a los sistemas digitales, y en el caso de los controles MPC, la estrategia suele ser representar los datos numéricos en la máxima precisión posible, típicamente 64 bits, y utilizar algoritmos muy complejos que reduzcan el efecto de errores de redondeo. Esto implica un gran número de operaciones sobre operandos muy grandes (representados con muchos bits), que son al mismo tiempo más lentas, consumen más energía en el procesador, y requieren un procesador más complejo y más caro.The fundamental operation of the algorithm of predictive control, minimization (optimization) of a function of typically quadratic cost, it is simple in the absence of restrictions On the contrary, the presence of restrictions It requires using complex mathematical algorithms. Although the variety of optimization methods is very wide, all of them are very sensitive in certain conditions to rounding errors in mathematical operations. Since in each control cycle the optimization problem conditions are different and very variables, the probability that (at some point) the errors of Rounding operations produce an erroneous result is high. Rounding error problems are inherent in the systems digital, and in the case of MPC controls, the strategy usually be to represent the numerical data in the maximum possible precision, typically 64 bits, and use very complex algorithms that reduce the effect of rounding errors. This implies a great number of operations on very large operands (represented with many bits), which are at the same time slower, consume more energy in the processor, and require a more complex processor and more expensive.

La estrategia propuesta aquí de un control cuasi-óptimo se enfrenta a los errores de redondeo desde un punto de vista estadístico: una menor precisión y algoritmos de optimización más sencillos producen resultados correctos en una mayoría de casos. Para tratar los casos en que el resultado no es satisfactorio, el control cuasi-óptimo emplea mecanismos de detección de dichos errores. Cuando uno de estos infrecuentes errores aparece, se emplea un mecanismo de control auxiliar mucho menos susceptible a errores numéricos. Esta estrategia permite implementar el sistema de control con una aritmética de mucha menor, resultando en procesadores mucho mas sencillos, económicos y rápidos.The strategy proposed here of a control quasi-optimal faces rounding errors from a point Statistical view: lower accuracy and algorithms of simpler optimization produce correct results in a Most cases To treat cases where the result is not satisfactory, quasi-optimal control employs mechanisms of Detection of such errors. When one of these infrequent errors appear, an auxiliary control mechanism is used a lot less susceptible to numerical errors. This strategy allows implement the control system with a lot of arithmetic minor, resulting in much simpler, cheaper and rapid.

El esquema de un control cuasi-óptimo se presenta en la Figura 2. El bloque de control auxiliar representa un algoritmo de control no predictivo, como podría ser un control proporcional-integral (PI). Se puede apreciar como las salidas (4) de la planta se suministran directamente a un segundo comparador (13), que las sustrae de la referencia, empleando únicamente los valores relativos al instante presente en la trayectoria de referencia, ya que el control auxiliar (12) no dispone de predicción de salidas futuras. El error así obtenido (en nomenclatura clásica de control) se suministra al control auxiliar. Éste cumple dos funciones. En primer lugar, proporciona una acción de control aceptable cuando el algoritmo de optimización sea incapaz de obtener una solución próxima al óptimo matemático, debido a sus simplificaciones. En segundo lugar, una comprobación de la proximidad entre la trayectoria de la planta y la trayectoria de referencia puede concluir, cuando ambas sean suficientemente próximas, que el control predictivo ya no es necesario, y que el pequeño error aún existente puede ser eficazmente eliminado con el control auxiliar. No realizar el proceso de optimización ahorra una gran cantidad de operaciones matemáticas y de tráfico entre el procesador y la memoria del sistema digital, con el consiguiente ahorro de energía en dicho sistema, especialmente relevante en aplicaciones portátiles que funcionan con baterías. El control auxiliar a utilizar no es único, sino que depende en gran medida de la planta a controlar; lo necesario es que sea un control robusto, y calculable con pocas operaciones aritméticas. Esto lo convierte en mucho más robusto ante errores de redondeo, a la vez que no supone una carga importante para el procesador.The quasi-optimal control scheme is presented in Figure 2. The auxiliary control block represents a non-predictive control algorithm, such as a proportional-integral control (PI). It can be seen how the outputs (4) of the plant are supplied directly to a second comparator (13), which subtracts them from the reference, using only the values relative to the instant present in the reference path, since the auxiliary control ( 12) does not have prediction of future departures. The error thus obtained (in classical control nomenclature) is supplied to the auxiliary control. This one fulfills two functions. First, it provides an acceptable control action when the optimization algorithm is unable to obtain a solution close to the mathematical optimum, due to its simplifications. Secondly, a check of the proximity between the path of the plant and the reference path can conclude, when both are sufficiently close, that the predictive control is no longer necessary, and that the small error still existing can be effectively eliminated with auxiliary control Failure to perform the optimization process saves a lot of mathematical and traffic operations between the processor and the digital system memory, with the consequent energy savings in that system, especially relevant in portable applications that run on batteries. The auxiliary control to be used is not unique, but depends largely on the plant to be controlled; what is necessary is that it be a robust control, and calculable with few arithmetic operations. This makes it much more robust to rounding errors, while not placing a significant burden on the processor.

Un análisis de la implementación informática particular del algoritmo de control permite obtener un límite superior para las operaciones por segundo que son necesarias. Así mismo, es posible conocer la memoria que las variables empleadas por el algoritmo requieren. Estos dos valores son la base para determinar las especificaciones de un sistema digital a medida de la aplicación.An analysis of computer implementation particular control algorithm allows to obtain a limit superior for the operations per second that are necessary. So It is possible to know the memory that the variables used by the algorithm require. These two values are the basis for determine the specifications of a digital system tailored to the application.

Se proporciona una arquitectura funcional completa para implementar el control. En combinación con las especificaciones previamente obtenidas, la arquitectura permite seleccionar una serie de componentes comerciales para implementar el sistema, y describe sus interconexiones. Es especialmente relevante destacar que se orienta la metodología a obtener un sistema implementable con tecnología actualmente existente en el mercado, no siendo necesario el desarrollo de componentes específicos, gracias a la combinación propuesta del algoritmo cuasi-óptimo con una selección adecuada de sus parámetros.A functional architecture is provided Complete to implement control. In combination with the previously obtained specifications, the architecture allows select a series of commercial components to implement the system, and describes its interconnections. Is especially relevant to highlight that the methodology is oriented to obtain a implementable system with technology currently existing in the market, not requiring the development of components specific, thanks to the proposed combination of the algorithm Quasi-optimal with an appropriate selection of its parameters.

Esta idea no ha sido implementada hasta ahora en la práctica. Así mismo, no existe tampoco ningún procedimiento que describa como desarrollar un sistema de control digital completo capaz de aprovechar las características de un algoritmo de control predictivo cuasi-óptimo. La presente invención cierra este hueco en el estado de la técnica, al proveer la descripción de un proceso de diseño del sistema de control completo que emplea este novedoso
algoritmo.
This idea has not been implemented so far in practice. Likewise, there is also no procedure that describes how to develop a complete digital control system capable of taking advantage of the characteristics of a quasi-optimal predictive control algorithm. The present invention closes this gap in the state of the art, by providing the description of a complete control system design process that employs this novel
algorithm.

En un ejemplo concreto de realización de la invención, se asume la existencia de un diseño de control MPC clásico para la planta a controlar, obtenido por cualquiera de los métodos presentados en las Referencias. Las características del control MPC que se asumen son:In a specific example of realization of the invention, the existence of an MPC control design is assumed classic for the plant to be controlled, obtained by any of the methods presented in the References. The characteristics of MPC control that are assumed are:

\bullet?
El modelo de la planta es un modelo de espacio de estado. Los casos particulares pero muy comunes de modelo de respuesta a impulso y modelo de respuesta a escalón se pueden describir como modelo de espacio de estado.The plant model is a State space model. The particular cases but very common impulse response model and response model to step can be described as a space model of state.

x[k+1]=Ax[k]+Bu[k],x [k + 1] = Ax [k] + Bu [k],

y[k+1]=Cx[k+1]y [k + 1] = Cx [k + 1]

donde x[k] es el vector de estado en el instante k, u es el vector de las entradas a la planta o actuaciones, y es el vector de las salidas de la planta, y A, B y C son las matrices de estado.where x [k] is the state vector at time k , u is the vector of the entrances to the plant or performances, and is the vector of the exits of the plant, and A, B and C are the state matrices .

\bullet?
Se consideran restricciones lineales en las entradas, estados y/o salidas:They are considered restrictions linear inputs, states and / or outputs:

A_{R}^{T}x[k] \geq bA_ {R} T} x [k] \ geq b

donde A^{T}_{R} es la matriz de restricciones transpuesta.where A T R is the transposed constraint matrix.

\bullet?
La función de coste es una función cuadrática:The cost function is a quadratic function:

J[k]= \sum\limits^{H_{p}}_{i=1}((y[k + i] - y_{ref}[i])^{T} (y[k + i] - y_{ref}[i])) + \sum\limits^{H_{c}}_{i=1} ((u[k + i])^{T} Ru[k + i])J [k] = \ sum \ limits ^ {H_ {p}} _ {i = 1} ((y [k + i] - y_ {ref} [i]) ^ {T} (y [k + i] - y_ {ref} [i])) + \ sum \ limits ^ {H_ {c}} _ {i = 1} ((u [k + i]) ^ T Ru [k + i])

donde H_{P} y H_{c} son las variables horizonte de predicción y horizonte de control, definidas a continuación, y R es una matriz diagonal con los pesos para la suma ponderada de cuadrados de las actuaciones.where H_ {P} and H_ {c} are the prediction horizon and control horizon variables, defined below, and R is a diagonal matrix with the weights for the weighted sum of squares of the actions.

La nomenclatura para los datos del control predictivo previamente determinado que se desea implementar usando el procedimiento aquí descrito es:The nomenclature for control data previously determined predictive that you want to implement using The procedure described here is:

\bullet?
T: duración del ciclo de control.T: cycle duration of control.

\bullet?
N_{i}: número de variables de entrada (actuadores).N_ {i}: number of variables of input (actuators).

\bullet?
N_{o}: número de variables de salida (sensores).N_ {o}: number of variables of output (sensors).

\bullet?
N_{s}: número de variables de estado utilizadas por el modelo de la planta.N_ {s}: number of variables of been used by the plant model.

\bullet?
H_{P}: horizonte de predicción.H_ {P}: horizon of prediction.

\bullet?
H_{c}: horizonte de control.H_ {c}: horizon of control.

\bullet?
N_{R}: número de ecuaciones de restricción.N_ {R}: number of equations of restriction.

El algoritmo de control que sustituye al control MPC clásico es el algoritmo de control cuasi-óptimo. El CCO se implementa informáticamente mediante un programa cuyo diagrama de flujo se presenta en la Figura 3, y que incluye los pasos fundamentales que requiere un CCO. El programa informático variará entre distintos problemas de control, para adaptarse mejor a las particularidades del hardware que finalmente se seleccione atendiendo a las especificaciones que se describen a continuación (por ejemplo, aprovechará explícitamente en paralelo múltiples unidades aritméticas de existir éstas), pero dicho programa realizará al menos los procesos descritos en la Figura
3.
The control algorithm that replaces the classic MPC control is the quasi-optimal control algorithm. The CCO is computerized through a program whose flow chart is presented in Figure 3, and which includes the fundamental steps required by a CCO. The computer program will vary between different control problems, to better adapt to the particularities of the hardware that is finally selected according to the specifications described below (for example, it will explicitly take advantage of multiple arithmetic units in parallel if they exist), but said program perform at least the processes described in Figure
3.

El proceso heurístico preferente para decidir si es necesario una acción de control predictivo, o por el contrario el control auxiliar es suficiente, consiste en comprobar si durante los últimos N_{UE} ciclos, cada salida ha experimentado variaciones menores que un cierto umbral. La selección del umbral depende del control auxiliar (un error o distancia a la referencia que el control auxiliar sea capaz de corregir rápidamente). La selección de N_{UE} se realiza atendiendo al número de ciclos que dura una respuesta a escalón sin utilizar control auxiliar: el 15% de dicho valor. Otros procesos de decisión, cómo podría ser comprobar que la función de coste experimenta una variación menor que un cierto umbral durante N_{UE} ciclos, pueden emplearse si alguna condición particular del problema de control así lo recomendara, sin cambiar la estructura de la invención.The preferred heuristic process to decide whether a predictive control action is necessary, or on the contrary the auxiliary control is sufficient, it consists in checking if during the last N_ {UE} cycles, each output has experienced variations smaller than a certain threshold. The threshold selection It depends on the auxiliary control (an error or distance to the reference that the auxiliary control is able to correct quickly). The N_ {UE} selection is made according to the number of cycles that lasts a step response without using auxiliary control: 15% of that value. Other decision processes, how could it be check that the cost function experiences a minor variation that a certain threshold during N_ {UE} cycles, can be used if some particular condition of the control problem so recommend, without changing the structure of the invention.

       \newpage\ newpage
    

La determinación de si el resultado de la optimización es adecuado o es preferible (necesario en algunos casos) emplear el control auxiliar es también un proceso heurístico. Depende en gran medida de la implementación particular del proceso de optimización. En general, se pueden distinguir dos casos:The determination of whether the result of the optimization is adequate or preferable (necessary in some cases) using auxiliary control is also a process heuristic. It depends largely on the particular implementation of the optimization process. In general, two can be distinguished cases:

\bullet?
Los errores de redondeo provocan un error no recuperable, como puede ser la interrupción del algoritmo al tratar de invertir una matriz singular.Rounding errors cause a non-recoverable error, such as the interruption of the algorithm when trying to invert a singular matrix.

\bullet?
El algoritmo iterativo de optimización no ha aproximado lo suficiente la solución cuando el ciclo de control llega a su término y es necesario presentar un valor.The iterative algorithm of optimization has not sufficiently approximated the solution when the control cycle comes to an end and it is necessary to present a value.

El primer caso es muy fácilmente reconocible, ya que consiste en la aparición de una condición que bloquea la optimización y hace que devuelva un error al programa de control. El segundo caso es detectable mediante el mismo procedimiento que se emplee para definir la condición de óptimo alcanzado en el propio algoritmo de optimización. Típicamente esta condición se detecta mediante una comparaciónThe first case is very easily recognizable, since it consists in the appearance of a condition that blocks the optimization and causes it to return an error to the control program. The second case is detectable by the same procedure that is used to define the optimum condition reached in the optimization algorithm itself. Typically this condition is detected by comparison.

u^{i} \leq \varepsilon_{1}u ^ \ leq \ varepsilon_ {1}

donde u^{1} es el vector de variables a optimizar en la iteración i-ésima, y \varepsilon^{1} es un valor muy pequeño. Llegado el final del ciclo de control, la implementación preferente consiste en comprobar siwhere u ^ {1} is the vector of variables to be optimized in i -th iteration, and \ epsilon ^ {1} is a very small value. At the end of the control cycle, the preferred implementation consists of checking whether

u^{L} \leq \varepsilon_{2}, \hskip0.5cm \varepsilon_{2} \geq \varepsilon_{1}u L \ leq \ varepsilon_ {2}, \ hskip0.5cm \ varepsilon_ {2} \ geq \ varepsilon_ {1}

donde L representa la última iteración de optimización, y \varepsilon^{2} es un valor pequeño ajustable para cada caso concreto mediante ensayos.where L represents the last optimization iteration, and ε2 is a small value adjustable for each specific case by essays.

A continuación se detalla la especificación de un hardware capaz de implementar el control en tiempo real. El primer requisito es un sistema digital que disponga de representación de números reales, esto es, algún tipo de representación exponencial (contrapuesto a representación de enteros o punto fijo). Típicamente los procesadores comerciales ofrecen punto flotante (estándar del IEEE número 754), si bien en contraste con la metodología clásica, precisiones superiores a 32 bits (punto flotante de precisión simple) no son necesarias, pudiendo potencialmente emplearse precisiones menores de disponerse de procesadores que las ofrezcan. Esto supone una primera importante particularidad, ya que reduce el coste del hardware. El análisis de los algoritmos de optimización concluye que, en general, todos ellos emplean la operación producto escalar muy asiduamente, al consistir en operaciones entre matrices, con abundancia de multiplicaciones. Para conseguir un alto rendimiento en el cálculo de productos escalares, es muy deseable especificar que el procesador disponga de una unidad de multiplicación-acumulación (MAC). Por las mismas razones se especifican dos bancos de memoria independientes (arquitectura Harvard), para poder leer en el mismo ciclo los dos datos que serán multiplicados y acumulados a continuación. Existe una categoría de microprocesadores que incluye estas especificaciones siempre, debido a que está orientada precisamente al cálculo de operaciones como los productos escalares. Estos procesadores son los Procesadores Digitales de Señal (DSP en inglés). Por lo tanto, para implementar esta aplicación de control se utilizarán los requisitos de potencia de cálculo y memoria necesaria escogiendo un procesador que los satisfaga dentro de la categoría de DSPs. Esto contrasta con los procesadores que clásicamente han implementado sistemas de control, llamados también microcontroladores (debido a las características muy diferentes del control predictivo). La arquitectura básica de un DSP reflejada en la Figura 4. Esta arquitectura comprende los elementos fundamentales que permiten implementar el control en un sistema digital. Los bloques funcionales son un núcleo (14) para la decodificación de instrucciones y generación de direcciones de memoria, una unidad lógico-aritmética (15), dos bancos de memoria (16) y (17), conectados cada uno de ellos al procesador con un bus (18) de direcciones y de datos. Además el procesador dispone de al menos un bus de datos (19) y al menos un bus de instrucciones (20), así como de un bus de entrada/salida (input/output) (21), que se emplea para comunicarse con el exterior: recibir medidas de los sensores (22), enviar valores a los actuadores (23), y recibir comandos. Muy frecuentemente, aunque esto dependa de la aplicación particular, las entradas y salidas de la planta son valores analógicos, por lo que será necesario usar un conversor analógico-digital sobre las salidas o medidas antes de ser recibidas por el microprocesador, y un conversor digital-analógico sobre las entradas o actuaciones que suministra el procesador, antes de ser recibidas por los actuadores.The specification of a hardware capable of implementing real-time control is detailed below. The first requirement is a digital system that has representation of real numbers, that is, some kind of exponential representation (as opposed to representation of integers or fixed point). Typically commercial processors offer floating point (IEEE standard number 754), although in contrast to the classical methodology, accuracies greater than 32 bits (floating point of simple precision) are not necessary, potentially requiring lower precision of having processors that are available. offer them. This is a first important feature, since it reduces the cost of the hardware. The analysis of the optimization algorithms concludes that, in general, all of them employ the scalar product operation very assiduously, since they consist of operations between matrices, with an abundance of multiplications. To achieve high performance in the calculation of scalar products, it is very desirable to specify that the processor has a multiplication-accumulation unit (MAC). For the same reasons two independent memory banks (Harvard architecture) are specified, in order to be able to read in the same cycle the two data that will be multiplied and accumulated below. There is a category of microprocessors that always includes these specifications, because it is precisely aimed at calculating operations such as scalar products. These processors are the Digital Signal Processors (DSP). Therefore, to implement this control application, the necessary computing power and memory requirements will be used by choosing a processor that satisfies them within the category of DSPs. This contrasts with the processors that have classically implemented control systems, also called microcontrollers (due to the very different characteristics of predictive control). The basic architecture of a DSP reflected in Figure 4. This architecture includes the fundamental elements that allow implementing the control in a digital system. The functional blocks are a core (14) for decoding instructions and generating memory addresses, a logical-arithmetic unit (15), two memory banks (16) and (17), each connected to the processor with a bus (18) of addresses and data. In addition, the processor has at least one data bus (19) and at least one instruction bus (20), as well as an input / output bus (21), which is used to communicate with the external: receive measurements from the sensors (22), send values to the actuators (23), and receive commands. Very often, although this depends on the particular application, the inputs and outputs of the plant are analog values, so it will be necessary to use an analog-digital converter on the outputs or measurements before being received by the microprocessor, and a digital converter -Analogical about the inputs or actions provided by the processor, before being received by the actuators.

Para el programa informático que implemente el CCO se puede hacer un análisis del máximo número de operaciones aritméticas que son necesarias en un ciclo de control. En el caso del programa "Algoritmo de control cuasi-óptimo para sistemas de control predictivo", este límite superior esFor the computer program that implements the CCO can make an analysis of the maximum number of operations arithmetic that are necessary in a control cycle. If of the program "Quasi-optimal control algorithm for systems predictive control ", this upper limit is

N^{max}_{inst} = \left[40N_{R}N_{i} + 10N_{R} N^{2}_{i} + \frac{5N^{3}_{i} + 30N^{2}_{i} - 35 N_{i}}{3}\right]_{mac} + [40N_{R} + 20N_{i}]_{add}N max inst = \ left [40N_ {R} N_ {i} + 10N_ {R} N2} {+} + \ frac {5N3 {i} + 30N2 {i} - 35 N_ {i} {3} \ right] _ {mac} + [40N_ {R} + 20N_ {i}] _ {add}

       \vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
    

\hskip3.5cm
+ [10N_{R}]_{mul} + [40N_{R} + 5N^{2}_{i} + 15N_{i}]_{div} + [10N_{i}]_{sqrt}
 \ hskip3.5cm 
+ [10N_ {R}] {mul} + [40N_ {R} + 5N2 {+} + 15N_}] {div} + [10N_ {i}] _ {sqrt}

       \newpage\ newpage
    

donde cada sumando entre corchetes representa separadamente las operaciones MAC, suma (add), multiplicación (mul), división (div), y raíz cuadrada (sqrt).where each adding in square brackets separately represents MAC operations, add (add), multiplication (mul), division (div), and square root (sqrt).

El análisis del programa también identifica la memoria que se requiere para almacenar sus datos y variables. Definiendo M = N_{i} H_{c} y L = N_{o} H_{P}, la memoria necesaria para variables es:The program analysis also identifies the memory that is required to store your data and variables. Defining M = N_ {i} H_ {c} and L = N_ {o} H_ {P}, the memory required for variables is:

Mem = N_{o} + N_{i} + 5N_{R} + 6M + 3L + 2M^{2} + 2LM + N_{R}M + N_{R}M^{2}Mem = N_ {o} + N_ + 5N_ + 6M + 3L + 2M2 + 2LM + N_R + N_R2M2

La especificación para el microprocesador exige una potencia de cálculo P_{Calc} (medida en FLOPS, operaciones de punto flotante por segundo) superior al requisito mínimo marcado porThe specification for the microprocessor requires a computing power P_ {Calc} (measured in FLOPS, operations of floating point per second) higher than the minimum requirement marked by

P_{Calc} = \frac{N^{max}_{inst}}{T}P_ {Calc} = \ frac {N max} inst {T}

Así pues y de acuerdo con lo anteriormente expuesto, el procedimiento permite que, a partir de una descripción del problema técnico, se produzcan unas especificaciones físicas concretas para implementar una solución. Las especificaciones producidas por este procedimiento se pueden satisfacer con componentes que están actualmente disponibles en el mercado, suponiendo por tanto una solución práctica e implementable en la actualidad. Las especificaciones producidas por este procedimiento son mucho menos exigentes, es decir se requiere de menor memoria y de menos operaciones, que las alternativas existentes, dando lugar a soluciones más baratas cuando existe una alternativa.So and according to the above exposed, the procedure allows that, from a description of the technical problem, physical specifications are produced concrete to implement a solution. The specifications produced by this procedure can be satisfied with components that are currently available in the market, assuming therefore a practical and implementable solution in the present. The specifications produced by this procedure they are much less demanding, that is to say it requires less memory and of less operations, than the existing alternatives, giving rise to cheaper solutions when there is an alternative.

Claims (3)

1. Procedimiento para obtener un sistema de control digital predictivo cuasi-óptimo con requisitos computacionales reducidos, en el que se utiliza un modelo dinámico (1) de la planta (2) a controlar y un optimizador (3), de manera que usando las salidas (4) de la planta y las entradas futuras (5) que se presume se aplicarán a la misma, para predecir las futuras salidas (6) de la planta, comparándolas con la trayectoria de requerencia (7) para la obtención de los errores futuros (8), minimizándose una función de coste (9) basada en dichos errores (8) y teniendo en cuenta la existencia de restricciones (10) en las entradas futuras, que se pueden seleccionar atendiendo a lo largo de las propias entradas (11), caracterizado porque se ha previsto un control auxiliar (12) que representa un algoritmo de control no predictivo, tal como un control proporcional-integral, con la particularidad de que las salidas (4) de la planta (2) se suministran directamente a un segundo comparador (13), que las sustrae de la referencia, empleando únicamente los valores relativos al instante presente en la trayectoria de referencia, no disponiendo dicho controlador auxiliar (12) de predicción de salidas futuras, y de manera que el error así obtenido se suministra al control auxiliar (12), el cual proporciona una acción de control aceptable cuando el algoritmo de optimización es incapaz de obtener una solución próxima al óptimo matemático, debido a sus simplificaciones, y además proporciona una comprobación de la proximidad entre la trayectoria de la planta y la trayectoria de referencia, que pueden concluir, cuando sean suficientemente próximas, que el control predictivo ya no es necesario y el pequeño error aún existente es eficazmente eliminado por el control auxiliar.1. Procedure to obtain a quasi-optimal predictive digital control system with reduced computational requirements, in which a dynamic model (1) of the plant (2) to be controlled and an optimizer (3) are used, so that using the Exits (4) of the plant and future entries (5) that are presumed will be applied to it, to predict future exits (6) of the plant, comparing them with the requirement path (7) to obtain errors futures (8), minimizing a cost function (9) based on these errors (8) and taking into account the existence of restrictions (10) on future entries, which can be selected according to the entries themselves (11) ), characterized in that an auxiliary control (12) is provided that represents a non-predictive control algorithm, such as a proportional-integral control, with the particularity that the outputs (4) of the plant (2) are supplied directly to a second comparator (13), that subtracts them from the reference, using only the values relative to the instant present in the reference path, said auxiliary controller (12) not having prediction of future outputs, and so that the error thus obtained is supplied to the auxiliary control (12 ), which provides an acceptable control action when the optimization algorithm is unable to obtain a solution close to the mathematical optimum, due to its simplifications, and also provides a check of the proximity between the plant path and the reference path , which can conclude, when they are close enough, that predictive control is no longer necessary and the small error still existing is effectively eliminated by auxiliary control. 2. Procedimiento para obtener un sistema de control digital predictivo cuasi-óptimo con requisitos computacionales reducidos, según reivindicación 1ª, en el que las especificaciones del hardware que configura un sistema digital a medida de la planta (2) a controlar, incluyen una descripción de la arquitectura básica necesaria, consistente en un núcleo de control (14), al menos una unidad lógico-aritmética (15) para números enteros (por ejemplo punto flotante) no necesariamente de elevada precisión (por ejemplo 32 bits o menos), al menos dos bancos de memoria (16 y 17) con sus correspondientes buses de dirección y de datos, y al menos un puerto de entrada/salida conectado a los interfaces de interacción con los sensores y los actuadores de la planta, incluyendo asimismo un límite mínimo de memoria necesaria y de potencia de cálculo (medida en operaciones de punto flotante por segundo) ambas en función de los parámetros computacionales del control a implementar, así como una descripción de las características necesarias en el procesador, que son suficientes para caracterizar los elementos que componen el sistema: un procesador digital de señal (DSP) y una memoria adecuada para éste, que cumplan los requisitos o límites mínimos referidos, siendo dicha arquitectura realizable tanto mediante elementos discretos disponibles comercialmente, como mediante la integración en un único chip de propiedades intelectuales de silicio (SIP), dando lugar esta última realización a unas prestaciones mas elevadas y un menor tamaño del sistema de control completo.2. Procedure for obtaining a quasi-optimal predictive digital control system with reduced computational requirements, according to claim 1, wherein the specifications of the hardware configured by a digital system tailored to the plant (2) to be controlled include a description of the necessary basic architecture, consisting of a control core (14), at least one logical-arithmetic unit (15) for integers (for example floating point) not necessarily of high precision (for example 32 bits or less), at least two memory banks (16 and 17) with their corresponding address and data buses, and at least one input / output port connected to the interfaces of interaction with the sensors and actuators of the plant, also including a minimum limit of necessary memory and computing power (measured in floating point operations per second) both depending on the computational parameters of the control to be implemented, as well as or a description of the characteristics required in the processor, which are sufficient to characterize the elements that make up the system: a digital signal processor (DSP) and a suitable memory for it, that meet the minimum requirements or limits referred to, said architecture being achievable both through commercially available discrete elements, as well as through integration into a single silicon intellectual property (SIP) chip, this last realization leading to higher performance and a smaller size of the complete control system. 3. Procedimiento para obtener un sistema de control digital predictivo cuasi-óptimo con requisitos computacionales reducidos, según reivindicaciones anteriores, caracterizado porque dicho procedimiento toma un diseño de control predictivo óptimo teórico para una cierta planta, el cual no sea implementable en tiempo real o se desconozcan las características mínimas de un sistema digital capaz de ejecutarlo eficientemente, y lo transforma en un diseño de control predictivo cuasi-óptimo, para el que se describen unas especificaciones de hardware a medida del problema (atendiendo a minimizar el coste, tamaño y consumo de potencia del hardware), especificaciones que describen suficientemente los elementos que componen el sistema digital como para proceder a su realización física a nivel industrial.3. Procedure for obtaining a quasi-optimal predictive digital control system with reduced computational requirements, according to previous claims, characterized in that said procedure takes a theoretical optimal predictive control design for a certain plant, which is not implementable in real time or is they do not know the minimum characteristics of a digital system capable of executing it efficiently, and it transforms it into a quasi-optimal predictive control design, for which hardware specifications are described tailored to the problem (attending to minimize the cost, size and consumption of hardware power), specifications that sufficiently describe the elements that make up the digital system to proceed with its physical realization at the industrial level.
ES200500862A 2005-04-12 2005-04-12 PROCEDURE FOR OBTAINING A QUASI-OPTIMAL PREDICTIVE DIGITAL CONTR0L SYSTEM WITH REDUCED COMPUTATIONAL REQUIREMENTS. Expired - Fee Related ES2259931B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
ES200500862A ES2259931B1 (en) 2005-04-12 2005-04-12 PROCEDURE FOR OBTAINING A QUASI-OPTIMAL PREDICTIVE DIGITAL CONTR0L SYSTEM WITH REDUCED COMPUTATIONAL REQUIREMENTS.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
ES200500862A ES2259931B1 (en) 2005-04-12 2005-04-12 PROCEDURE FOR OBTAINING A QUASI-OPTIMAL PREDICTIVE DIGITAL CONTR0L SYSTEM WITH REDUCED COMPUTATIONAL REQUIREMENTS.

Publications (2)

Publication Number Publication Date
ES2259931A1 ES2259931A1 (en) 2006-10-16
ES2259931B1 true ES2259931B1 (en) 2007-10-16

Family

ID=37106647

Family Applications (1)

Application Number Title Priority Date Filing Date
ES200500862A Expired - Fee Related ES2259931B1 (en) 2005-04-12 2005-04-12 PROCEDURE FOR OBTAINING A QUASI-OPTIMAL PREDICTIVE DIGITAL CONTR0L SYSTEM WITH REDUCED COMPUTATIONAL REQUIREMENTS.

Country Status (1)

Country Link
ES (1) ES2259931B1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6278899B1 (en) * 1996-05-06 2001-08-21 Pavilion Technologies, Inc. Method for on-line optimization of a plant
US6721609B1 (en) * 2000-06-14 2004-04-13 Fisher-Rosemount Systems, Inc. Integrated optimal model predictive control in a process control system
US7376472B2 (en) * 2002-09-11 2008-05-20 Fisher-Rosemount Systems, Inc. Integrated model predictive control and optimization within a process control system

Also Published As

Publication number Publication date
ES2259931A1 (en) 2006-10-16

Similar Documents

Publication Publication Date Title
Houska et al. An auto-generated real-time iteration algorithm for nonlinear MPC in the microsecond range
De Martino et al. Uniform sampling of steady states in metabolic networks: heterogeneous scales and rounding
Mohammadi Sextic B-spline collocation method for solving Euler–Bernoulli Beam Models
Bonis et al. A linear model predictive control algorithm for nonlinear large‐scale distributed parameter systems
Huynh et al. Automatic design of synthetic gene circuits through mixed integer non-linear programming
Agathos et al. Parametrized reduced order modeling for cracked solids
Montefusco et al. Ultrasensitive negative feedback control: a natural approach for the design of synthetic controllers
Tweten et al. On the comparison of semi-analytical methods for the stability analysis of delay differential equations
Yücel et al. A discontinuous Galerkin method for optimal control problems governed by a system of convection–diffusion PDEs with nonlinear reaction terms
Carson et al. Accuracy of the s-step Lanczos method for the symmetric eigenproblem in finite precision
ES2259931B1 (en) PROCEDURE FOR OBTAINING A QUASI-OPTIMAL PREDICTIVE DIGITAL CONTR0L SYSTEM WITH REDUCED COMPUTATIONAL REQUIREMENTS.
Cibulka et al. Spatio-temporal decomposition of sum-of-squares programs for the region of attraction and reachability
Zahery et al. CSOLNP: Numerical optimization engine for solving non-linearly constrained problems
Shirzadi et al. A meshless simulations for 2D nonlinear reaction-diffusion Brusselator system
Abdullah Formulation of low Peclet number based grid expansion factor for the solution of convectiondiffusion equation
Hover Gradient dynamic optimization with Legendre chaos
Tyatyushkin et al. Algorithms for Nonlinear Optimal Control Problems Based on the First and Second Order Necessary Conditions.
Matsuo et al. Adaptive estimation of biological rhythm in crassulacean acid metabolism with critical manifold
Kulikova Maximum likelihood estimation via the extended covariance and combined square-root filters
Duarte et al. Calculating D-optimal designs for compartmental models with a Michaelis–Menten elimination rate
Rauh et al. A sensitivity-based approach for the control of repetitive processes
Budaciu et al. Dynamic analysis in discrete time delta domain for unstable bicycle system
Srinivasan et al. MPC and RTDA controller for fopdt & sopdt process
Wigren et al. Nonlinear identification of biological clock dynamics
Wick et al. Pec3 spring school on introduction to numerical modeling with differential equations

Legal Events

Date Code Title Description
EC2A Search report published

Date of ref document: 20061016

Kind code of ref document: A1

FG2A Definitive protection

Ref document number: 2259931B1

Country of ref document: ES

FD2A Announcement of lapse in spain

Effective date: 20180809