Síntesis de un controlador por el método del problema de dinámica inversa

En problemas de control, hay casos en que se conoce la ley de movimiento de un objeto controlado y es necesario desarrollar un regulador con ciertas características. A veces la tarea se complica por el hecho de que las ecuaciones que describen el objeto controlado resultan no lineales, lo que complica la construcción del controlador. A este respecto, se han desarrollado varios métodos para tener en cuenta las características estructurales no lineales del objeto de control, uno de los cuales es el método del problema de dinámica inversa.


Introduccion


El método del problema inverso de la dinámica surge naturalmente cuando intentas "transformar" un sistema dinámico en otro, cuando el desarrollador tiene dos ecuaciones, una de las cuales describe un sistema controlado existente, y la otra expresa la ley de movimiento de ese sistema muy controlado, convirtiéndolo en algo útil. La ley puede parecer diferente, pero lo principal es que sea físicamente factible. Esta puede ser la ley de un cambio de voltaje sinusoidal en la salida del generador o el sistema de control de frecuencia automático, la ley de la velocidad de rotación de la turbina o el movimiento de la base de la impresora, o incluso pueden ser las coordenadas X, Y del cable del lápiz, que el manipulador firma las tarjetas.

Sin embargo, es posible "imponer" su ley de control que se ajuste al marco de la realización física y la capacidad de control de un objeto y esto a menudo no es la parte más difícil del desarrollo. Pero el hecho de que el método considerado hace que sea bastante fácil tener en cuenta la no linealidad y la multidimensionalidad del objeto, en mi opinión, aumenta su atractivo. Por cierto, aquí puede notar la conexión con el método de compensación de no linealidad de retroalimentación [1].

Se sabe que en algunos casos los controladores no lineales correctamente formados, incluso cuando se controla un sistema lineal, ofrecen mejores características de control en comparación con los controladores lineales [2]. Un ejemplo es un regulador que reduce el coeficiente de amortiguación de un sistema con un aumento en el error de ejecutar un comando y lo aumenta a medida que el error disminuye, lo que conduce a una mejora en la calidad del proceso transitorio.

En términos generales, el tema del control asociado con la necesidad de tener en cuenta las no linealidades ha atraído durante mucho tiempo la atención de científicos e ingenieros, ya que la mayoría de los objetos reales se describen mediante ecuaciones no lineales. Estos son algunos ejemplos de no linealidades que se encuentran comúnmente en la tecnología:


La declaración general del problema es la siguiente. Deje que haya un objeto de control que pueda describirse como una ecuación diferencial de enésimo orden

F(x(n),x(n1), ... x,  xi,t)=u, quad quad quad(1)


en el que hay una perturbación   xi (esto puede ser el ruido del dispositivo de medición, influencia aleatoria externa, vibración, etc.) y una señal de control u (en tecnología, el control se realiza con mayor frecuencia utilizando voltaje). En este caso, por simplicidad de percepción, consideramos un objeto de control unidimensional, que incluye una perturbación. En el caso general, estas cantidades son vectoriales. Se entiende que las variables de fase x(n),x(n1), ... x que describen el estado del objeto de control, perturbaciones   xi y gestión u depende del tiempo, pero este hecho no se muestra por simplicidad de percepción. La expresión (1) puede contener no linealidades, así como no ser estacionaria, es decir cuyos parámetros cambian claramente con el tiempo. Un ejemplo de una ecuación inestable puede ser el número de núcleos de uranio en un reactor, que disminuye constantemente como resultado de la reacción de descomposición, lo que conduce a un cambio continuo en la ley de control óptima de las barras de moderador.

El controlador está construido de tal manera que resuelva una ley de control previamente conocida, que puede describirse mediante una ecuación diferencial de orden no inferior al orden de la ecuación (1), que describe el objeto de control:

f(x(m), x(m1), ... x,  psi,  psi(1), ..., psi(k), t)=0,     m gen, quad quad(2)


donde  psi,  psi(1), ..., psi(k) - la señal de control y sus derivados en una cantidad que le permite describir completamente la ley de control requerida. Entonces, para el sistema de estabilización, no es necesario medir los derivados del control. Para un sistema de seguimiento de una señal de entrada en rampa, es suficiente medir la primera derivada. Para seguir la señal que varía cuadráticamente, debe agregar una segunda derivada, y así sucesivamente. Cabe señalar que esta señal se alimenta a la entrada del regulador, en contraste con la señal u entrando al objeto de control desde el regulador. Esta ecuación también puede ser no lineal y no estacionaria.

Para determinar la señal de control deseada u expresamos de (2) la derivada más alta

x(n)=f(x(n1),x(n2), ... x, psi,  psi(1), ..., psi(k),t)


y sustituir la expresión resultante en su lugar x(n) en la ecuación (1), mientras expresa el control:

$$ display $$ \ begin {matrix} {u = F \ left ({{f}} ({{x} ^ {(n-1)}}, {{x} ^ {(n-2)}} , \ ... \, \ x, \ psi (t), \ {{\ psi} ^ {(1)}}, \ ..., {{\ psi} ^ {(k)}}, t) , \\ \ quad \ quad \ quad \ quad {{x} ^ {(n-1)}}, {{x} ^ {(n-2)}}, \ ... \, \ x, \ { {\ xi}}, t \ right).} & \ quad \ quad \ quad (3) \ end {matrix} $$ display $$



A partir de la expresión (3), queda claro que para crear la señal de control requerida, es necesario medir además de las perturbaciones externas (si su influencia es significativa) como la cantidad controlada en sí misma x y todos sus derivados hasta el pedido n1 inclusive, lo que puede causar algunas dificultades. En primer lugar, las derivadas más altas pueden no estar disponibles para la medición directa, como decimos la derivada de la aceleración, como resultado de lo cual tendremos que recurrir a la operación de diferenciación, mediante programación o circuitería. Y, como saben, intentan evitar esto debido al aumento del ruido. En segundo lugar, las mediciones inevitablemente contienen ruido, y esto obliga a recurrir al filtrado. Cualquier filtro es dinámico o, en otras palabras, un elemento inercial, lo que significa la presencia de una derivada con la ecuación. En consecuencia, el orden de todo el sistema de control en el caso general aumentará en un número igual a la suma de los órdenes de ecuaciones que describen todos los medidores de filtro. Es decir, si controlamos un objeto de segundo orden y usamos filtros de segundo orden en cada canal de medición (es decir, solo dos filtros de segundo orden) para medir la cantidad de salida y su derivada, entonces el orden del sistema de control aumentará en cuatro. Por supuesto, si las constantes de tiempo del filtro son lo suficientemente pequeñas, entonces se puede ignorar la influencia de los elementos de suavizado. Pero, en cualquier caso, incorporarán los llamados pequeños parámetros dinámicos al sistema y su contribución combinada puede afectar la estabilidad del sistema de control en su conjunto [2]. También debe entenderse que este método le permite especificar el control solo en el proceso de transición y no está asociado con la optimización por ningún criterio de calidad de control.

La relación del controlador y el objeto de control se puede describir mediante el siguiente esquema:


Control del oscilador Van der Pol


Considere un ejemplo de una síntesis de controlador para controlar un sistema auto-oscilante. Este es un ejemplo ficticio que explica bien la esencia del método. Suponga que desea controlar un sistema cuya ecuación es la siguiente:

 ddotx gamma(1x2) dotx+ omega2x=u. quad quad(4)


La ley de gestión debe ser la siguiente:

T2 ddotx+2T xi dotx+x= psi, quad quad(5)


donde  psi - nuestra señal de control de conducción (punto de ajuste). Es decir, de hecho, queremos "convertir" nuestro generador no lineal en un enlace oscilatorio lineal. Cabe señalar que en el mismo [2] este sistema es un sistema de estabilización, ya que la salida x busca repetir la señal de entrada  psi , es decir, estabiliza la salida del sistema a un nivel constante dado  psi que se puede mostrar como

x rightarrow psi.$


Es importante que la señal de entrada  psi era constante o cambiaba lentamente (tan lentamente que el error de retraso x de  psi se ajusta a nuestros requisitos de precisión) con un valor o función constante por partes, ya que todo el sistema tiene un astatismo de orden 0 (es decir, es estático) y para cualquier señal de ajuste que cambie constantemente  psi ciertamente aparecerá un error dinámico en la salida del sistema, que parecerá agregar un cierto valor constante al valor de salida que depende monotónicamente de la tasa de cambio de la acción de control. Esta característica será eliminada en el futuro.

Entonces, expresamos la derivada más alta de la ecuación (5):

 ddotx= frac psiT2 frac2 xi dotxT fracxT2


y sustitúyalo en (4), expresando u :

u= frac psiT2+ left( omega2 frac1T2 right)x left( frac2 xiT+ gamma(1x2) right) dotx. quad quad(6)


Esta es la señal de control, que será formada por el regulador a partir de la señal de control deseada.  psi . De (6) también se deduce la necesidad de medir la cantidad de salida x y su primera derivada.

Oscilaciones de Van der Pol con parámetros  gamma=0.6, omega=3 se parece a esto:


Tengamos una señal de tipo "paso":


y queremos que el sistema lo repita.

Lo alimentamos a la entrada del oscilador y vemos la respuesta:


Bajo la acción de la señal única de entrada, solo se agregó un pequeño sesgo constante a las oscilaciones del oscilador.

Supongamos ahora que necesitamos obtener una respuesta de oscilador de este tipo a una señal maestra que correspondería a la reacción del enlace vibratorio (5) con una constante de tiempo T=0.125 y factor de amortiguación  xi=0.8 . Respuesta xmp(t) de dicho enlace oscilatorio por unidad de paso se presenta a continuación:


Ahora demos la señal de control al oscilador u descrito por la expresión (6):


Se puede ver que el oscilador se comporta de acuerdo con la ley requerida. Miremos la señal de control u :


La figura muestra un aumento significativo en el momento del proceso de transición. En un sistema real, lo más probable es que el sistema ingrese a la saturación (destrucción), o para evitar esto, tendremos que limitar la señal de entrada. Tomamos esto en cuenta limitando la amplitud de la acción de control u a nivel  pm 15. La señal de control ahora se ve así:


y la salida del oscilador es así:


La consecuencia de la limitación de la señal es un gran error transitorio que, dependiendo de las propiedades deseadas del sistema, puede ser bastante significativo. Con un aumento en la constante de tiempo requerida, las emisiones transitorias disminuyen. Debe tener cuidado de que la señal de control máxima en el estado estable (que en este gráfico comienza desde aproximadamente el sexto segundo) no esté limitada, de lo contrario habrá un proceso de transición sin fin y el sistema no resolverá la tarea. Ganancia del regulador, es decir, relación de señal de control u en la salida del regulador  psi determinado por los parámetros del sistema controlado, es decir, el factor  omega2 .

Ahora alimentamos al oscilador con una señal que cambia linealmente:


La reacción del enlace vibratorio:


y oscilador:


Se ve que ha aparecido un retraso constante, un error dinámico, porque el sistema está diseñado para rastrear solo una señal de referencia constante  psi . Para poder rastrear una señal que varía linealmente, es necesario evaluar la velocidad de su cambio y tenerla en cuenta en el controlador. Para hacer esto, redactamos la ley de control requerida de la siguiente manera:

T2 ddot delta+2T xi dot delta+ delta=0, quad quad(7)


donde  delta= psix - error de seguimiento de la señal de referencia por el oscilador.
También expresamos la derivada más alta de (7), la sustituimos en la ecuación del objeto de control (4) y obtenemos una señal de control:

u= frac psiT2+ frac2 xiT dot psi+ left( omega2 frac1T2 right)x left( frac2 xiT+ gamma(1x2) right) dotx. quad quad(8)


En la nueva estructura del regulador correspondiente a la expresión (8), la tasa de cambio de la acción establecida  dot psi . Observamos la salida del sistema cuando se aplica un punto de ajuste linealmente variable a la entrada:


El oscilador sigue la señal establecida  psi .

Pero este es un ejemplo completamente sintético. En realidad, habrá un sistema cuya estructura probablemente no se identifique con la suficiente precisión, esta vez. También determinaremos los parámetros del sistema con un cierto error: estos son dos. El control incluye variables de fase x, dotx eso tendrá que medirse con algún tipo de ruido son tres. Y los parámetros del sistema pueden flotar con el tiempo, es decir, un sistema estacionario durante un período de tiempo suficientemente largo puede mostrar no estacionariedad. Aunque es más correcto decirlo, en un intervalo de tiempo bastante corto, un sistema no estacionario puede parecer estacionario. En este ejemplo, suponemos que el sistema se identifica con suficiente precisión y su cambio en el tiempo es muy insignificante. Luego, para mayor claridad, reescribimos la expresión para el controlador (6) de la siguiente manera:

u= frac psiT2+ left( omega textid2 frac1T2 right) hatx left( frac2 xiT+ gamma textid(1  hatx2) right) hat dotx, quad quad(9)


donde  hatx, hat dotx - valor controlado medido y su derivada;  omega textid, gamma textid - frecuencia natural identificada y coeficiente de atenuación no lineal, respectivamente.

Agregue un error del 10% en la identificación de los parámetros del oscilador configurando  gammaid=0.66, omegaid=3.3 . Veamos el resultado:


Se puede ver en la figura que apareció un error estático, que crece con un aumento en el error de identificación  delta omega= omega omegaid y en estado estacionario es independiente del error  delta gamma= gamma gammaid . Pero esto último influye en la desviación del oscilador transitorio de eso para el enlace vibratorio ideal. Puede intentar hacer lo mismo que en el diseño de controladores PID ( Habr y no Habr ): agregue la integral del error a la señal de control (sin olvidar la saturación integral una o dos veces ). Pero por ahora, omita esta pregunta y consideremos la expresión (9), donde se puede ver que cuanto menor es la frecuencia natural  omega en comparación con la constante de tiempo requerida  frac1T , cuanto menor es la influencia del error de identificación del mismo  frac1T . Reducir T de 0,125 a 0,05. El error estático también disminuyó:


Ahora intentemos compensar el error estático agregando la integral del error al controlador  delta (como en el controlador PI). La expresión (9) se convertirá en

u= frac psiT2+ left( omega textid2 frac1T2 right) hatx left( frac2 xiT+ gamma textid(1  hatx2) right) hat dotx+kint intt10( psix)dt, quad quad(10)


donde kint - coeficiente del componente integral; t1 - hora actual.

La integral aquí se escribe formalmente como una explicación de la idea general, en lugar de la descripción matemática de un algoritmo específico, ya que en un controlador real es necesario tomar medidas para limitar el error acumulado, de lo contrario pueden ocurrir problemas con el transitorio. Echemos un vistazo a la reacción del sistema bajo la acción del regulador resultante correspondiente a la expresión (10):


La figura muestra que el error estático disminuye con el tiempo, pero el proceso transitorio se retrasa. Por analogía con el controlador PID, puede intentar agregar componentes proporcionales y diferenciadores. El resultado fue el siguiente (los coeficientes no se eligieron cuidadosamente):


Naturalmente, la adición de los componentes integrales y diferenciales ya no es parte del método del problema de dinámica inversa, sino que implementa un cierto método para optimizar el proceso transitorio.

Analicemos el efecto de las mediciones de ruido de las variables.  hatx, hat dotx . Nuevamente, damos un paso a la entrada del sistema y observamos la salida en ausencia de ruido (todavía hay el mismo error de identificación del 10%):


Ahora agregue a las medidas  hatx, hat dotx ruidos gaussianos blancos con cero expectativas y variaciones iguales  sigma2x= sigma dotx2=0.01 pasó a través de enlaces aperiódicos con constantes de tiempo Tx=T dotx=0.01 que simulan un sensor de medición + filtro de paso bajo . Una de las implementaciones de ruido resultantes:


Ahora la salida del sistema también comenzó a hacer ruido:


Como resultado de una señal de control ruidosa:


Observe el error al resolver la tarea:


Tratemos de aumentar las constantes de tiempo de los sensores. Tx=T dotx=0.04 y mira nuevamente la salida del sistema:


Aparecieron fluctuaciones significativas: el resultado de la acción de aquellos que no tienen en cuenta los pequeños parámetros dinámicos [2] que describen los sensores (su inercia). Estos parámetros dinámicos dificultan el filtrado de ruido, lo que obliga a describir sensores con constantes de tiempo "grandes" que, en términos generales, no siempre pueden dar un resultado positivo.

Control de un motor DC teniendo en cuenta la fricción viscosa no lineal


Este es un caso más real de aplicar el método del problema de dinámica inversa. Considere la organización del control de un motor colector de CC con excitación por imanes permanentes (ala motores chinos de juguetes). En principio, el tema del control de tales motores está bien cubierto y no causa dificultades particulares. El método del problema de dinámica inversa se utilizará en general para compensar la no linealidad en la ecuación de dinámica del motor. Suponemos que el motor en sí podría describirse mediante ecuaciones diferenciales lineales, pero existe una influencia significativa de la fricción viscosa no lineal del eje, proporcional al cuadrado de su velocidad de rotación. La ecuación del sistema electromecánico es la siguiente:

 beginmatrix dot omega= frac1J left(kt PhiIB omegaD omega2Ml right) dotI= frac1L left(Uke omegaRI right) endmatrix, quad quad(11)



donde  omega - velocidad angular de rotación del eje; J - momento de inercia de todo el sistema giratorio (anclajes con carga adjunta); kt - una constante de máquina, definida para un diseño de motor específico, que relaciona el flujo magnético y la velocidad de rotación del eje;  P h i - flujo magnético, que puede considerarse aproximadamente constante para un diseño de motor particular en el rango de corrientes de operación (pero en el caso de corrientes altas que no dependen linealmente de la corriente del devanado);I - corriente a través del devanado del inducido;B - coeficiente de fricción viscosa lineal; D - coeficiente de fricción viscosa no lineal; M l - momento de carga; L - inductancia del devanado del inducido; U - tensión aplicada al devanado; k e - coeficiente de contra-EMF, constante para un diseño de motor específico; R - resistencia del devanado del inducido. En principio, sería suficiente hacer una fricción viscosa no lineal, pero se decidió presentar la dependencia no lineal de la fricción en la velocidad de rotación del eje como un binomio para una mayor generalidad.

Intentaremos hacer un regulador de este tipo mediante el método del problema inverso de la dinámica, de modo que la dinámica del error en el cumplimiento de la tarea en velocidad por el motor corresponda a la del enlace vibratorio descrito por

T2 ddot omega+2T xi dot omega+ omega= psi, quad quad(12)


donde  omega - velocidad angular de rotación del eje del motor;  psi - ajuste de velocidad.

La ecuación (12) podría compilarse utilizando el error de calcular el comando como una variable dinámica  delta= psi omega :

T2 ddot delta+2T xi dot delta+ delta=0,


pero luego en la ecuación aparecerían términos con derivadas del punto de ajuste, lo cual es evidente a partir de la expresión

 frac1T2( psi omega)+ frac2 xiT( dot psi dot omega)+ ddot psi ddot omega=0,


Esto, a su vez, aumentaría el componente de fluctuación del error. Y dado que queremos que el sistema funcione solo con un punto de ajuste constante y que cambia abruptamente (es decir, considerando que su velocidad, aceleración y todas las derivadas posteriores son cero), entonces necesitamos rastrear el error máximo en posición, sin tener en cuenta sus derivadas o, si es más fácil de entender , con cero derivadas del error, lo que llevaría a la expresión (12).

Para obtener una expresión que finalmente describa el regulador, es necesario reducir el sistema de dos ecuaciones de primer orden (11) a una ecuación de segundo orden. Para hacer esto, diferenciamos la primera ecuación (11) con respecto al tiempo (suponiendo que el momento de carga no haya cambiado):

J ddot omega= Phi dotIB dot omega2D omega dot omega



y sustituir en él la expresión de la segunda ecuación del sistema (11)  dotI , que da una ecuación de segundo orden

 ddot omega+ left( fracRL+ fracBJ right) dot omega+2 fracDJ omega dot omega+ frac PhiKtKe+RBJL omega+ fracRDJL omega2+ fracRMJL= frac PhiKtJLU. quad quad(13)



Sustituyendo en expresión (13)  ddot omega obtenido de (12) podemos encontrar el control requerido U para implementar la ley de movimiento deseada (12):

 smallU= fracJL PhiKt left[ left( fracRL+ fracBJ frac2 xiT derecha) dot omega+ frac2DJ omega dot omega+ left( frac PhiKtKe+RBJL frac1T2 right) o m e g a + f r a c R D J L o m e g a 2 + f r a c R M J L + f r a c p s i T 2 r i g h t ] . ( 14 )         



Aplicamos a las entradas de dos motores, uno de los cuales se complementa con un regulador implementado de acuerdo con el principio del problema de dinámica inversa, un paso con una amplitud de unidad de acuerdo con el siguiente esquema:


y vea la dependencia de la frecuencia de rotación de los ejes del motor en el tiempo:


Reacción a un paso con una amplitud de 10 voltios:


La dependencia no lineal del índice de oscilación del sistema inicial de la amplitud de la señal de entrada se ve en las figuras.

Ahora compare dos motores con controladores PID, cuyo diagrama estructural se muestra en la siguiente figura:


Frecuencias de rotación del eje de motores:


y más grande:


Se puede ver en las figuras que, gracias al controlador PID construido utilizando el método del problema de dinámica inversa, la respuesta del sistema a la señal de control escalonada se acelera, lo que no se pudo lograr utilizando el controlador PID convencional debido a la no linealidad en el objeto de control. Sin embargo, el uso de coeficientes variables del controlador PID probablemente resolvería mejor este problema y haría que el sistema fuera más robusto. Pero esta es una historia completamente diferente.

Conclusión


El artículo consideró un método que le permite construir un controlador para controlar sistemas no lineales, que se mostró mediante ejemplos de controles del oscilador Van der Pol y un motor de CC.

Las principales ventajas de este método incluyen:

  • facilidad de implementación de la ley de control requerida (analíticamente);
  • la capacidad de controlar sistemas no lineales;
  • La capacidad de controlar sistemas no estacionarios.

Sin embargo, este método también tiene una serie de desventajas significativas:

  • la necesidad de conocer todo el vector de estado del sistema controlado (que puede requerir diferenciación, filtrado);
  • la necesidad de una identificación suficientemente precisa de los parámetros del sistema controlado, lo que puede reducir la robustez;
  • La necesidad de estudiar la inestabilidad del sistema resultante de la acción combinada de pequeños parámetros dinámicos (filtros, sensores) no incluidos en el modelo.

En general, este es un método bastante interesante, pero al comparar su implementación para controlar un motor de CC (usando un controlador PID) con un motor controlado solo por un controlador PID, quedó claro que no sería posible obtener bollos significativos de él. Pero la estructura del dispositivo de control es mucho más complicada, lo que obliga, entre otras cosas, a luchar con los ruidos de diferenciación, por un lado, y evita que el límite de estabilidad llegue al otro lado. Quizás es con esto que se conecta un pequeño número de trabajos sobre este tema. Una de las posibles aplicaciones del método del problema inverso de la dinámica puede ser la construcción de trayectorias de referencia (ideales) de sistemas para comparar con las trayectorias correspondientes a varios reguladores, por ejemplo, lineales o linealizados.

Literatura utilizada:


1. Kim D.P. Teoría del control automático. T.2 Sistemas multidimensionales, no lineales, óptimos y adaptativos: libro de texto. subsidio - M .: FIZMATLIT, 2004 .-- 464 p.
2. Boychuk L.M. El método de síntesis estructural de sistemas de control automático no lineal. M., "Energía", 1971.
3. Sistemas no estacionarios de control automático: análisis, síntesis y optimización / Ed. K.A. Pupkova y N.D. Egupova - M .: Editorial de MSTU. N.E. Bauman, 2007 .-- 632 p.

Source: https://habr.com/ru/post/468527/


All Articles