Usando el LabVIEW PID Control Toolkit con el Módulo de Simulación y Diseño de Control de LabVIEW

Actualizado el Feb 7, 2024

Ambiente

Software

  • LabVIEW Control Design and Simulation Module
  • LabVIEW PID Control Toolkit

El Derivado Integral Proporcional (PID) es uno de los algoritmos de control más utilizados debido a su facilidad de uso y al mínimo conocimiento requerido del sistema o planta a controlar. National Instruments proporciona algoritmos de control avanzados (PID) listos para ejecutar con NI LabVIEW PID Control Toolkit. Combinado con el Módulo de Diseño y Simulación de Control de LabVIEW, LabVIEW PID Control Toolkit puede ayudarlo a simular y ajustar sus controladores PID sin implementarlos en sistemas del mundo real, evitando así posibles problemas como inestabilidad durante el desarrollo de aplicaciones. En este tutorial, aprenda a usar LabVIEW PID Control Toolkit con el Módulo de Diseño y Simulación de Control de LabVIEW y diseñe las ganancias PID para el controlador de posición de un motor de CC en un sistema de Tiempo Real.

Modelado de motores de CC

En este tutorial, diseñaremos el controlador de velocidad para un motor de CC. En aras de la simplicidad, considere una función de transferencia básica para un motor de CC donde se consideran efectos como la fricción y las perturbaciones:

Donde:
Ф (s) es la velocidad angular (rad / seg)
V (s) es voltaje aplicado (V)
J es la inercia del rotor (9.64E-6)
R es la resistencia del rotor (3.3 Ώ)
K es la constante de par (0.028 Nm \ A)
L es la inductancia (4.64E-3 H)
B es la constante de par de fricción (1.8E-6 Nms)

Si reemplaza los valores numéricos, obtiene la siguiente función de transferencia:



Su objetivo es implementar un algoritmo PID que se ejecutará en un controlador en tiempo real con una frecuencia de bucle de 1000 Hz (período de 0,001 segundos).

Comience abriendo el entorno de desarrollo de LabVIEW y navegue hasta el diagrama de bloques. En la paleta de funciones, seleccione Control Design & Simulation >> Simulation >> Control & Simulation Loop >> luego haga clic y arrastre para ajustar el tamaño y cree un Control & Simulation Loop.

Figura 1. Cree un bucle de control y simulación.

De nuevo en la subpaleta Simulación, seleccione Continuous Linear Systems y haga clic una vez en Transfer Function y una vez dentro del Bucle de control y simulación que creó anteriormente. Esto coloca un bloque de función de transferencia dentro del bucle de control y simulación. Ahora haga doble clic en el Transfer Function VI para ingresar los parámetros de la función de transferencia.

Figura 2. Seleccione una función de transferencia.

Figura 3. Parámetros de la función de transferencia de entrada.

Ahora implemente el algoritmo PID. En la paleta de funciones, seleccione la subpaleta Control Design & Simulation >> PID y arrastre y suelte el PID.vi en el Control & Simulation Loop. Debido a que el algoritmo PID se ejecutará en un sistema operativo basado en tiempo real con una velocidad de bucle fija, haga clic con el botón derecho en PID.vi y seleccione Configuration Dialog Box…. para abrir una ventana de diálogo de configuración. Puede usar esta ventana para configurar el bucle de simulación para manejar el tiempo con este VI en particular. Suponga que el controlador va a funcionar a una frecuencia de bucle de 1000 Hz, así que seleccione discreto con un valor de período de 0,001 segundos.

Figura 3. Configuración de PID subVI para temporización dentro del Lazo de Control y Simulación.

La "D" que aparece en el PID VI indica que se está manejando como un sistema discreto.

Ejecute el cursor sobre el PID VI hasta que esté en la parte superior de la terminal de ganancias PID (puede presionar CTRL + H para Mostrar ayuda contextual si no puede encontrarla). Haga clic derecho y seleccione Crear >> Control. Esto crea un control en el panel frontal que puede utilizar para cambiar las ganancias PID de forma interactiva. Finalmente, haga clic derecho en la terminal dt (s) y cree una constante. Debe ser el mismo que el período digital que creó anteriormente, 0,001 segundos.

Para crear una señal de entrada, use una señal de paso. Desde Control Design & Simulation >> Simulation >> Signal Generation, seleccione Step Signal y suéltelo en el bucle de simulación. Deje los parámetros como están configurados por defecto.

Figura 4 . Crea una señal de entrada usando una señal de paso.

Ahora cree los componentes necesarios para ver los resultados de la simulación. Primero agrupe la entrada (señal de paso) con la salida de la función de transferencia del motor en un nodo Build Array, que puede encontrar en la subpaleta Programming >>Arrays. Recopile estas señales y trácelas en un gráfico en el panel frontal. Para hacerlo, seleccione Control Design & Simulation >> Simulation >> Utilities, luego seleccione y suelte Collector. En el panel frontal, cree un gráfico XY para mostrar los resultados de la simulación. Conecte todas las señales como se muestra en la Figura 5.


Figura 5. Recoja las señales.

Si reorganiza los elementos del panel frontal y usa los valores predeterminados, terminará con un gráfico similar a la Figura 6:

Figura 6. Vea los resultados de la simulación gráficamente.

Ajuste la simulación

Utilice las capacidades gráficas nativas de LabVIEW para mejorar la simulación y ajustar las ganancias de PID.

Primero, cambie las propiedades del eje para tener una mejor vista de los resultados de la simulación. Haga clic con el botón derecho en el borde del gráfico XY y desmarque la propiedad AutoScale X en la opción X Scale.

Figura 7 . Propiedades gráficas.

Antes de realizar cambios en el controlador PID, haremos que la simulación sea más eficiente. Como se ve en la Figura 6, no es necesario simular los 10 segundos predeterminados; la planta es lo suficientemente rápida como para que un tiempo de simulación final de 2 segundos sea suficiente. Ahora, modifique los parámetros de simulación haciendo doble clic en el panel de configuración Control & Simulation Loop que abre la ventana de diálogo Configurar parámetros de simulación. Implemente los parámetros como se muestra en la Figura 8.

Figura 8 . Cambie los parámetros de simulación.

Sintonización PID

Ahora puede ejecutar el VI de forma continua y cambiar las ganancias de PID hasta que esté satisfecho con los resultados.

Un procedimiento típico para ajustar un controlador PID sería:

  1. Kc a 1 y Ti, Td a cero. Siga aumentando / disminuyendo Kc hasta que la respuesta se sobrepase
  2. Modifique Td para hacer que el sistema sea más rápido y compensar el sobreimpulso
  3. Modifique Ti para eliminar cualquier error de estado estable en la respuesta al escalón

Consulte Ajuste simple del servomotor y búsqueda de ganancias PID para obtener más información sobre cómo ajustar un controlador PID.

Figura 8. Resultados de la simulación con Kc = 0.38, Ti = 0.00026 y Td = 0.0001.

 

Ahora sabe cómo simular un controlador PID discreto con el comportamiento del sistema dinámico continuo de un motor de CC. Puede aplicar esta técnica a cualquier tipo de sistema híbrido donde se mezcle un comportamiento continuo y discreto. Uno de los beneficios del procedimiento que se muestra es que el algoritmo de control que usó es exactamente el mismo que usaría en una implementación en tiempo real, y puede aprovechar muchas de sus características, como el anti-windup integral.