3.2.2.1. Archivo de rutinas para la función de entonación de PID¶
Archivo que contiene todas las rutinas necesarias para la funcionalidad de tunning de PID
-
rutinas_PID.auto_tuning_method(self, k_proceso, tau, alpha, metodo)[fuente]¶ Función para obtener las ganancias del controlador PID a partir de los parametros del modelo de primer orden obtenidos de una respuesta escalón, las formulas son las dadas por Ziegler-Nichols y Cohen-Coon para una respuesta escalón en lazo abierto.
- Parámetros
k_proceso (float) – Ganancia del proceso
tau (float) – Constante de tiempo del proceso
alpha (float) – Tiempo muerto o delay del proceso
metodo (str) – Método a utilizar
- Devuelve
Ganancias kp, ki y kd
- Tipo del valor devuelto
tuple(float, float, float)
-
rutinas_PID.model_method(self, t, y, dc_gain)[fuente]¶ Función para obtener los parametros del modelo de primer orden de un sistema a partir de su respuesta escalón.
- Parámetros
t (numpyArray) – Vector de tiempo
y (numpyArray) – Vector de respuesta
dc_gain (float) – Ganancia DC del sistema
- Devuelve
Ganancia, constante de tiempo y tiempo muerto del proceso
- Tipo del valor devuelto
tuple(float, float, float)
-
rutinas_PID.rutina_step_plot(self, system, T, kp, ki, kd)[fuente]¶ Función para obtener la respuesta escalón del sistema en lazo cerrado en combinación con un controlador PID y su respectiva graficacion.
- Parámetros
system (LTI) – Representacion del sistema
T (numpyArray) – Vector de tiempo
kp (float) – Ganancia proporcional
ki (float) – Ganancia integral
kd (float) – Ganancia derivativa
- Devuelve
Respuesta escalón separada en vector de tiempo y vector de salida
- Tipo del valor devuelto
tuple(numpyArray, numpyArray)
-
rutinas_PID.rutina_system_info(self, system, T, y, kp=0, ki=0, kd=0, autotuning=False)[fuente]¶ Función para mostrar los resultados obtenidos de los calculos en un TextEdit
- Parámetros
system (LTI) – Representacion del sistema
T (numpyArray) – Vector de tiempo
y (numpyArray) – Vector de respuesta
kp (float, opcional) – Ganancia proporcional, defaults to 0
ki (float, opcional) – Ganancia integral, defaults to 0
kd (float, opcional) – Ganancia derivativa, defaults to 0
autotuning (bool, opcional) – Bandera para señalar si es o no una operación con auto tunning, defaults to False
-
rutinas_PID.system_creator_ss(self, A, B, C, D)[fuente]¶ Función para la creación del sistema a partir de la matriz de estado, matriz de entrada, matriz de salida y la matriz de transmisión directa.
- Parámetros
A (list) – Matriz de estados
B (list) – Matriz de entrada
C (list) – Matriz de salida
D (list) – Matriz de transmisión directa
- Devuelve
El sistema, el vector de tiempo, el sistema con delay, el sistema en el espacio de estados y las ganancias kp, ki y kd. Si el sistema no tiene delay, ambos son iguales
- Tipo del valor devuelto
tuple(LTI, numpyArray, LTI, LTI, float, float, float)
-
rutinas_PID.system_creator_ss_tuning(self, A, B, C, D)[fuente]¶ Función para la creación del sistema a partir de la matriz de estado, matriz de entrada, matriz de salida y la matriz de transmisión directa, adicionalmente se realiza el auto tuning utilizando el método escogido por el usuario.
- Parámetros
A (list) – Matriz de estados
B (list) – Matriz de entrada
C (list) – Matriz de salida
D (list) – Matriz de transmisión directa
- Devuelve
El sistema, el vector de tiempo, el sistema con delay, el sistema en el espacio de estados y las ganancias kp, ki y kd. Si el sistema no tiene delay, ambos son iguales
- Tipo del valor devuelto
tuple(LTI, numpyArray, LTI, LTI, float, float, float)
-
rutinas_PID.system_creator_tf(self, numerador, denominador)[fuente]¶ Función para la creación del sistema a partir de los coeficientes del numerador y del denominador de la función de transferencia.
- Parámetros
numerador (list) – Coeficientes del numerador
denominador (list) – Coeficientes del denominador
- Devuelve
El sistema, el vector de tiempo, el sistema con delay y las ganancias kp, ki y kd. Si el sistema no tiene delay, ambos son iguales
- Tipo del valor devuelto
tuple(LTI, numpyArray, LTI, float, float, float)
-
rutinas_PID.system_creator_tf_tuning(self, numerador, denominador)[fuente]¶ Función para la creación del sistema a partir de los coeficientes del numerador y del denominador de la función de transferencia, adicionalmente se realiza el auto tuning utilizando el método escogido por el usuario.
- Parámetros
A (list) – Matriz de estados
B (list) – Matriz de entrada
C (list) – Matriz de salida
D (list) – Matriz de transmisión directa
- Devuelve
El sistema, el vector de tiempo, el sistema con delay y las ganancias kp, ki y kd. Si el sistema no tiene delay, ambos son iguales
- Tipo del valor devuelto
tuple(LTI, numpyArray, LTI, float, float, float)