Professional Documents
Culture Documents
Curso 2002-2003
-I-
INDICE
1. 2. 3. 4. 5. 6.
Descripcin del sistema ............................................................................................ 1 Objetivo .................................................................................................................... 2 Fases ......................................................................................................................... 2 Arquitectura del software ......................................................................................... 3 Informe final ............................................................................................................. 5 Anexo: Discretizacin de un sistema utilizando Matlab .......................................... 5
Sistema empotrado
-1-
control: m
Temperatura medida: Tm
TT
agua Temperatura de entrada: T0 Temperatura de salida: T
gas P1 V1 P2
Caldera de agua caliente a gas El sistema de control de temperatura incluye: Un sensor (TT, Temperature Transmitter) que mide la temperatura de salida (T) y devuelve una seal (Tm, Temperatura medida) entre 4 y 20 mA Un dispositivo controlador (TC, Temperature Controller) que toma como entrada la seal del sensor (Tm) y genera la seal de control (m, entre 4 y 20 mA) que manipula la vlvula Un actuador (vlvula) que regula la cantidad de vapor que entra al intercambiador y que es el dispositivo final de actuacin.
Sistema empotrado
Se conocen las funciones de transferencia de los componentes individuales: Vlvula de regulacin:
-2-
La funcin de transferencia entre la seal de control a la vlvula V1 y la presin P2 es la correspondiente a un sistema de primer orden con una constante de tiempo de 2 segundos, una ganancia esttica de 0,5 y un tiempo muerto de 0.1 segundos. Caldera: La funcin de transferencia de la caldera (desde P2 a T) puede ser aproximada por la de un sistema de primer orden con un tiempo muerto de 1 segundo, una constante de tiempo de 15 segundos y una ganancia esttica unidad. Funcin de transferencia respecto a la perturbacin, temperatura del agua a la entrada, (desde T0 a T):
2. Objetivo
Disear y desarrollar un sistema empotrado sobre un PC (target) ejecutando VxWorks para: Simular el comportamiento de la caldera de agua caliente a gas Disear e implementar un controlador PI para el sistema de control de temperatura Monitorizar el funcionamiento del sistema completo
3. Fases
Para cumplir con este objetivo global habr que cubrir las siguientes fases: 1. Seleccionar un periodo de muestreo (Ts) adecuado y hallar las funciones de transferencia discretizadas, suponiendo que el convertidor D/A es un retenedor de orden 0, y hallar la ecuacin en diferencias que permite calcular la salida del modelo en los instantes de muestreo. 2. Obtener la ecuacin en diferencias de un controlador PI ideal para ese periodo de muestreo.
Sistema empotrado
-3-
3. Implementar el sistema empotrado que simule el control de temperatura de la corriente de proceso. El diseo debe incluir el uso de tareas concurrentes, sincronizacin condicional, exclusin mutua y temporizacin, utilizando diferentes mecanismos. Se deben contemplar, al menos, las siguientes tareas: Tarea del sensor (tSensor): simula la adquisicin de datos de proceso. Como no disponemos de la planta real ni de un sistema de adquisicin de datos (tarjeta de E/S), supliremos todo ello con esta tarea. tSensor, por tanto, es una tarea peridica que simula toda la planta, tomando como entradas: 9 m(k), seal de control en el instante kTs. Generada por tControlador 9 To(k), entrada de perturbacin (desviacin sobre el punto de operacin). Modificable desde el teclado Esta tarea deber activarse peridicamente (a travs de una seal temporizada). Tarea del controlador_(tControlador): implementa el algoritmo de control (a partir de la ecuacin de un PI discretizado), calculando el valor necesario para la seal de control m en cada instante. Tarea monitor (tMonitor): realiza la monitorizacin del proceso presentando en pantalla los valores tabulados de las variables de proceso y almacenando (opcionalmente) esos valores en fichero para su posterior procesamiento en matlab. Tarea de atencin al teclado (tTeclado): Detecta las pulsaciones de tecla por parte del usuario y toma las medidas pertinentes para ejecutar las acciones requeridas (comienzo/fin de la simulacin, activacin/desactivacin del almacenamiento en fichero, incremento/decremento del valor de Tref y de T0)
tControlador
Datos del proceso instante k
tSensor
Semforo
Cola de mensajes
T0
mk
Tk
tMonitor
tTeclado
Tref
Sistema empotrado
-4-
Descripcin funcional de las tareas: tSensor: Tarea temporizada con reloj de tiempo real, CLOCK_REALTIME. El periodo de la tarea ser Ts y el timer envia la seal SIGRTMIN+2. Est bloqueada para recepcin sncrona y espera recepcin de seal antes de comenzar. Operaciones que realiza peridicamente: Lee el valor de m(k) Lee el valor de To(k) Calcula el valor de T(k) Escribe el valor de T(k) Realiza la sincronizacin con la tarea tControlador
tControlador: Tarea que ejecuta de manera continua las siguientes operaciones:. Espera sincronizacin con la tarea tSensor Lee el valor de T(k) Lee el valor de Tref(k) Calcula el valor de m(k) Escribe m(k) Escribe en la cola k, T(k) y m(k)
tMonitor:
Tarea que ejecuta de manera continua las siguientes operaciones: Espera mensaje en cola Visualiza las variables Escribe las variables en un fichero
tTeclado:
Tarea que ejecuta de manera continua las siguientes operaciones: Espera pulsacin de una tecla Segn la tecla que se hay pulsado: Finaliza el programa (liberando todos los recursos) Activa/Desactiva el almacenamiento en el fichero Vara incrementalmente Tref Vara incrementalmente T0
Sistema empotrado
-5-
5. Informe final
Se deber entregar en mano y enviarlo por e-mail antes del 6 de Junio Isidro: jtpcagoi@bi.ehu.es Fabin: jtplovaf@bi.ehu.es El informe constar de los siguientes apartados: Cdigo completo bien comentado Resultados en texto: ficheros de texto con los datos capturados Resultados grficos: representacin grfica (usando matlab) de variables de inters Comentarios: Hasta qu punto la prctica ha llegado a funcionar, problemas no resueltos y tentativas realizadas Se exige el funcionamiento (demostrado en clase de laboratorio) y documentacin Se entregar un informe por cada grupo de 2 personas
c2d
Conversion of continuous-time models to discrete time. SYSD = C2D(SYSC,TS,METHOD) Converts the continuous-time LTI model SYSC to a discrete-time model SYSD with sample time TS. The string METHOD selects the discretization method among the following: 'zoh' Zero-order hold on the inputs. 'foh' Linear interpolation of inputs (triangle appx.) 'tustin' Bilinear (Tustin) approximation. 'prewarp' Tustin approximation with frequency prewarping. The critical frequency Wc is specified as fourth input by C2D(SYSC,TS,'prewarp',Wc). 'matched' Matched pole-zero method (for SISO systems only). The default is 'zoh' when METHOD is omitted.
Sistema empotrado
Ejemplos: Sistema sin retardo: G ( s ) =
num = [2] ; den = [1 3 2] ; sys_1 = tf (num, den) ;
-6-
2 s +3 s+2
2
sys_1_discr = c2d (sys_1, ts) ; % sistema discretizado Transfer function: 0.3996 z + 0.147 ---------------------z^2 - 0.5032 z + 0.04979
Sampling time: 1
2 e s s +3 s+2
2
sys_2.inputd
= 1 ;
% sistema con retardo 1 a la entrada Transfer function: 2 exp(-1*s) * ------------s^2 + 3 s + 2 a la salida y 0.5
sys_2.outputd = 0
% Cte de tiempo dominante = 1 % sistema discretizado 0.3996 z + 0.147 z^(-1) * ------------------------z^2 - 0.5032 z + 0.04979
Sampling time: 1