Sunteți pe pagina 1din 19

Lab. No.

2 – Transformada Z 1
UNIVERSIDAD FRANCISCO DE PAULA SANTANDER
FACULTAD DE INGENIERIA
CONTROL DIGITAL

LABORATORIO No. 2 – Transformada Z


INSTRUCCIONES
1- Las técnicas y herramientas didácticas que se empleen en los laboratorios tiene como finalidad el refuerzo,
la conformación y ejecución de los diferentes aspectos que hacen parte de la asignatura. De forma que el
alumno desarrolle un pensamiento flexible, dinámico, audaz, independiente, persistente, divergente y
original en su formación como profesional.

OBJETIVOS

 Comprender como se simulan señales discretas en el tiempo usando MATLAB®


 Graficar señales en tiempo discreto, hallar la transformada Z y el diagrama de polos y ceros
utilizando Matlab.
 alumno implementará un dispositivo de muestreo y un dispositivo de retención para comprobar
dos de los procesos empleados en la discretización de señales analógicas.
 El alumno analizará las variaciones que se producen en ambos procesos al cambiar los
parámetros del sistema para diferentes señales de entrada.

REFERENCIAS

 Andrew Knight Basics of MATLAB and Beyond. Chapman and Hall/CRC; 1 edition, 1999.
 Fernandez del Busto y Ezeta, Ricardo., "Análisis y diseño de sistemas de control digital", Mc
Graw Hill, 2013, ISBN: 978-607-15-0773-0
 http://ctms.engin.umich.edu/CTMS/index.php?example=MotorPosition&section=SimulinkContr
ol#14
 http://www.mathworks.com

SESIÓN SIMULACIÓN

INTRODUCCIÓN
Las señales son representaciones (usualmente bidimensionales) de una o más variables dependientes, la cual
muestra el comportamiento de una perturbación física que varía mientras transcurre el tiempo. Si la
componente del tiempo es una variable que es unívoca y continua, estamos en presencia de una señal
continua en el tiempo. Si por el contrario su dominio presenta cantidades exactas y finitas en un intervalo,
aun conservando su continuidad, nos referiremos a una señal discreta.
En cuanto a su dimensión de magnitud, las señales pueden presentar la misma característica de continuidad o
no, pero la denominación del tipo de señal varía. Las posibilidades se limitan a cuatro tipos de señales según
el comportamiento de sus dimensiones: analógicas si su amplitud y tiempo son continuos; muestreadas si su
magnitud es continua y su tiempo discreto; cuantificada si el tiempo es continuo pero la amplitud es discreta
y finalmente, digital si tanto en tiempo como en amplitud son discretos.
Como se aprecia en la anterior clasificación, sólo una señal es analógica cuando sus variables asociadas son
continuas; por demás, serán discretas. Dentro de las señales discretas se encuentran las muestreadas y
cuantificadas, que son las etapas iniciales del proceso de digitalización de una señal. MATLAB® no trabaja
con señales continuas, pero hace una representación de ellas mediante la gráfica de multiplicidad de
muestras. Un ejemplo de ello se despliega en a través del SCRIPT1.m. Lo anterior permite definir y ver la
figura 1 de una señal en apariencia analógica pero que realmente es discreta.

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 2
Ejemplo 1:

% ==================================================
% SCRIPT1.m
% Script para graficar una señal sinusoidal simbólica
% ===================================================
clear, clc; % Permite iniciar variables y limpiar lapantalla
y = 'sin (2*pi*t)'; % Define a y como una función
syms t; % Define t como una variable simbólica
eval (y); % Evalúa numéricamente a y
ezplot (y) % Realiza la gráfica de una función simbólica

Figura 1. Función simbólica del ejemplo definida en MATLAB® para su análisis. Se grafica la
función simbólica y su dominio es desde -2π a 2π.

Una señal muestreada se obtiene por la toma de valores específicos de una señal continua, en instantes de
tiempo definidos. Este proceso se reconoce como muestreo periódico o uniforme de señal continua, y con
fines prácticos y para algunas aplicaciones, se efectúa a intervalos fijos de tiempo Ts, llamado período de
muestreo. Su valor recíproco 1/ Ts se denomina frecuencia de muestreo (Fs) expresado en
muestras/segundo o Hertz .

Para graficar una señal muestreada es necesario y obligatorio la definición de los valores de magnitud en los
respectivos instantes de muestreo. A través del comando stem() es posible obtener el resultado visual de la
función. Es necesario considerar que las dimensiones de los vectores (matrices de una fila o una columna)
deben ser iguales. Un ejemplo de la gráfica de una señal muestreada es presentada a continuación. Es
propio recordar que MATLAB® trabaja por defecto con radianes como unidad angular.

Ejemplo 2:

% ===================================================
% SCRIPT2.m
% Script para graficar una señal sinusoidal muestreada
% ===================================================
clear, clc;
t=linspace(1,0.1,100); %Define la base de tiempo para la gráfica
y =sin (2*pi*t); %Define a y como una función sinusoidal
stem(t,y) %Realiza la gráfica de una función discreta

La gráfica obtenida de la señal muestreada se presenta en la figura 2.

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 3

Figura 2. Función muestreada del ejemplo definida en MATLAB®. Gráfica de la función y su


dominio.

FUNCIONES ELEMENTALES DISCRETAS

Ejemplo 3:
Para graficar la señal escalón unitaria discreta por Matlab, se hace:

% GENERACIÓN DE ESCALÓN UNITARIO DISCRETO


x = ones (1,11); % define once valores de 1's
v = [ 0 10 0 2]; % define valores de ejes
axis (v);
plot (x,'ro') % grafica círculos de color rojo
xlabel ('k') % asigna rotulo al eje x
ylabel ('x(k)') % asigna rotulo al eje y
title (‘ESCALON UNITARIO DISCRETO’)

Figura 3. Función escalón unitario discreto

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 4

Ejemplo 4:

% GENERACIÓN DE LA RAMPA UNITARIA DISCRETA


k = 0:10; % define valores de k
x = k; % función rampa para x
axis([0 10 0 10]); % define ejes
grid % rejilla para grafica
plot(k, x,'ro') % grafica x en función de k
xlabel('k'); % rotulo para eje x
ylabel('x(k)'); % rotulo para eje y
title('RAMPA UNITARIA DISCRETA')

Figura 4. Función escalón unitario discreta

Ejemplo 5:

%GENERACION DE LA FUNCION SENO: x(k) = sen(wkT)


k = linspace(1,20); % define valores de k con espaciamiento lineal
x = sin(k); % función exponencial
grid % rejilla para grafica
plot(k, x,'bo') % grafica x en función de k 12

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 5
xlabel('k'); % rotulo para eje x
ylabel('x(k) =seno(k)'); % rotulo para eje y
title('SENOIDAL DISCRETA')

Figura 5. Función senoidal discreta

LA TRANSFORMADA Z
The Z-transform of the function F(z) is defined as follows:

If R is a positive number, such that the function F(Z) is analytic on and outside the circle |z| = R, then the
inverse Z-transform is defined as follows:

To compute the Z-transform of an arithmetical expression, use the ztrans function. For example, compute the
Z-transform of the following expression:

Ejemplo 6:

%transformada Z
clear all
syms a k T
xk=exp(-a*k*T)
Xz=ztrans(xk)
Xz=factor(Xz)
pretty(Xz)

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 6
Ejemplo 7:

%transformada Z
clear all
syms a k T w z
x1k=exp(-a*k*T)*sin(w*k*T)
X1z=ztrans(x1k)
X1z=factor(X1z)
pretty(X1z)

LA TRANSFORMADA INVERZA Z
Ejemplo 8:
Obtener la transformada Z inversa x(k) de:

% EJEMPLO DE TRANSFORMADA Z INVERSA


x = [1 zeros(1,40)]; % para k = 40 muestras
num = [0 5 10]; % coeficientes del numerador
den = [1 -1 0.16]; % coeficientes del denominador
y = filter(num, den, x) % obtención de las 40 muestras
k = 0:40;
plot(k, y,'ro',k, y,'-')
xlabel('k')
ylabel('y(k)')

Los 40 resultados obtenidos de x(0) hasta x(39) son:

0 5.0000 15.0000 14.2000 11.8000 9.5280 7.6400 6.1155 4.8931 3.9146 3.1317 2.5054 2.0043 1.6035
1.2828 1.0262 0.8210 0.6568 0.5254 0.4203 0.3363 0.2690 0.2152 0.1722 0.1377 0.1102 0.0882 0.0705
0.0564 0.0451 0.0361 0.0289 0.0231 0.0185 0.0148 0.0118 0.0095 0.0076 0.0061 0.0048 0.0039

Cuya representación es la siguiente:

Figura 6. Señal x(k)

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 7

Ejemplo 9:

Obtener la transformada Z Inversa de:

Para representar esta función en fracciones parciales usamos el comando Matlab residue que encuentra los
valores del vector r, del vector p y del término independiente k según la siguiente expresión:

%Usando Matlab:
num = [5 26 44 29];
den = [1 6 11 6];
[r, p, k] = residue(num,den)

Los resultados son:

r = [-2 -5 3], p = [-3 -2 -1], k = 5,

por tanto, las fracciones parciales quedan:

Multiplicando por z-1 :

Aplicando las tablas

Ejemplo 10:
Obtener la transformada Z Inversa de:

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 8

% PROGRAMA EN MATLAB
num = [0 3 -9 0]; % coeficientes del numerador
den = [1 -1.8 1.05 -0.2]; % coeficientes del denominador
Xz = tf (num, den, -1); % función de transferencia en términos de z
pole(Xz) % obtención de polos

% la función tiene un polo simple en z = 0.8 y un polo doble en z = 0.5


% se debe reconstruir la función para aplicar el comando limit de Matlab
Xz1 = sum(num.*[z^3 z^2 z 1])/sum(den.*[z^3 z^2 z 1]);

% a) cálculo del residuo para el polo simple


syms z k
k1 =limit ((z-0.8)*Xz1*z ^(k-1),z,0.8)
% k1 = -220/3*4^ k/(5^ k)

% b) cálculo del residuo para el polo doble


h=diff((z-0.5)^2*Xz1*z^(k-1),2) % segunda derivada
k2=limit(h,z,0.5)
% k2 = 20/9*(87*k+220+45*k^2)/(2^k)

x(k) = k1 + k2 = -220/3*4^ k/(5^ k) + 20/9*(87*k + 220+45*k ^ 2)/(2^ k).

ECUACIONES EN DIFERENCIA
Ejemplo 11:
Resolver la siguiente ecuación en diferencias.

x (k + 2) + 0.5x (k + 1) + 0.2x(k) = u(k + 1) + 0.3u(k),

Condiciones iniciales:
x(k) = 0, para k ≤ 0 y u(k) = 0, para k < 0 y además,
u(0) = 1.5, u(1) = 0.5, u(2) = -0.5, u(k) =0 para k = 3, 4, 5, ·······

la solución teorica daría de la siguiente forma:

A partir de la anterior función aplicamos matlab

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 9

% OBTENER DIEZ VALORES DE LA SEÑAL


num = [0 1.5 0.95 -0.35 -0.15];
den = [1 0.5 0.2 0 0];
u = [1 zeros(1,10)];
xk = filter(num,den,u)
k = 0:10;
stem(xk, k) % grafica la señal muestreada

Valores x(k) dados por Matlab:

x(0)= 0, x(1)= 1.5000 x(2)= 0.2000, x(3)=-0.7500, x(4)= 0.1850,

x(5)= 0.0575 x(6)= -0.0658, x(7)= 0.0214, x(8)= 0.0025, x(9)= -0.0055,

x(10)= 0.0023

RESPUESTA AL ESCALON UNITARIO


Ejemplo 12:
clear
z=tf('z'); %funcion tranfer planta
Gp=(0.35*z)/(z^2-0.8*z+0.15);
%
%extraccion del numerador y del
denominador de Gp
[num,den]=tfdata(Gp,'v');

%respuesta al escalon unitario


u=ones(1,21);
k=0:1:21;

%respuesta al escalon unitario


clf
y=dstep(num,den,k);
y=y'
k=0:1:20;
plot(k,y,'ro',k,u,'--')
grid
Figura 7. Respuesta a un escalón unitario
v=[0 21 0 1.5];
axis(v)
title('respuesta al escalon unitario','fontsize',12)
xlabel('k,muestras','fontsize',12)
ylabel('y(k)','fontsize',12)

Retomando el ejemplo de la guía No.1

MODELADO DEL MOTOR EN VELOCIDAD A TRAVES DE SIMULINK

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 10

Un actuador común en sistemas de control es el motor DC. Provee directamente movimiento


rotatorio y acoplado con poleas o correas puede proveer movimiento transnacional.

Ecuaciones dinámicas
El circuito eléctrico de la armadura y el diagrama de cuerpo libre del rotor es mostrado en la figura
con sus ecuaciones dinámicas.

(1) Leyes de Newton

(2) Leyes de Kirchhoffs

Los parámetros físicos tienen los siguiente valores :

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 11
In this section, we will employ this model within Simulink to simulate and design different approaches to
control. Specifically, we will explore the design of a digital control system.

Open-loop response

Begin with the above model saved as a subsystem and follow the steps given below.
 Remove the In and Out ports.
 Insert a Step block from the Simulink/Sources library and connect it with a line to the Voltage input.
 To view the output position, insert a Scope from the Simulink/Sinks library and connect it to the Position
output.
 To provide an appropriate unit step input at t=0, double-click the Step block and set the Step time to "0".

The system should now appear as in the following figure.

In order to simulate this system, the details of the simulation must first be set. This can be accomplished by
selecting Model Configuration Parameters from the Simulation menu. Within the resulting menu, define
the length for which the simulation is to run in the Stop time field. We will enter "0.2" since 0.2 seconds will
be long enough for the step response to reach steady state. Also in the Configuration Parameters dialog

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 12
box, the numerical solver employed in the simulation can be specified. Go ahead and change the Solver field
from the default ode45 (Dormand-Prince) to the ode15s (stiff/NDF) solver. Since the time scales in this
example are very small, this stiff system integration method is more efficient than the default integration
method.

The physical parameters must now be set. Enter the following commands in the MATLAB command
window.

J = 3.2284E-6;
b = 3.5077E-6;
K = 0.0274;
R = 4;
L = 2.75E-6;

Then run the simulation (press Ctrl-T or select Run from the Simulation menu). When the simulation is
finished, double-click on the scope. You should see the following output which goes unstable and obviously
does not meet our design requirements.

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 13
Extracting a linear sampled model into MATLAB

We will now extract a linear sampled version of this continuous-time model into the MATLAB workspace.
The extraction of a sampled model can be performed from the MATLAB command line using the
command dlinmod, though it is preferrable to perform the extraction from directly within Simulink as we
will demonstrate here. We will use the model from above.
The first thing that we need to do is to identify the inputs and outputs of the model we wish to extract. First
right-click on the signal representing the Voltage input in the Simulink model. Then choose Linear Analysis
Points > Open-loop Input from the resulting menu. Similarly, right-click on the signal representing the
Position output and select Linear Analysis Points > Open-loop Output from the resulting menu. The input
and output signals should now be identified on your model by arrow symbols as shown in the figure below.

In order to perform the extraction, select from the menus at the top of the model window Analysis > Control
Design > Linear Analysis. This will cause the Linear Analysis Tool to open. Next follow the steps given
below.
 From the Linear Analysis Tool window, click the More Options button. From the resulting
window, change the sample time to "0.001" as shown in the figure below. The rate conversion
method can remain the default Zero-Order Hold.

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 14
 Within the Linear Analysis Tool window, the Operating Point to be linearized about can remain the
default, Model Initial Condition. In order to perform the linearization/discretization, next click
the Step button identified by a step response with a small green triangle at the top. The result of this
linearization/discretization is the linsys1 object which now appears in the Linear Analysis Workspace.
This model can be exported by simply dragging the object into the MATLAB Workspace.

 This object can then be used within MATLAB in the same manner as an object created directly from the
MATLAB command line. Specifically, entering the command zpk(linsys1) in the MATLAB command
window demonstrates that the resulting model has the following form.

To further verify the validity of the model extraction, we will generate an open-loop step response of the
discrete-time transfer function in MATLAB. Enter the following commands at the prompt of the MATLAB
command window.
t = 0:0.001:0.2;
step(linsys1,t);
grid

The extracted discrete models can then be used within MATLAB for various analysis and controller design
tasks.

SESIÓN EXPERIMENTAL

INTRODUCCIÓN

En los sistemas discretos, en los sistemas de datos muestreados y en los sistemas de control digital, por lo
general una o varias de las señales que intervienen en el proceso son señales analógicas que deben ser
transformadas a señales discretas para poder ser empleadas de forma adecuada dentro de este tipo de
sistemas. Para lograr la discretización de las señales, se debe aplicar primero el proceso de muestreo y
obtener así una señal formada únicamente por las muestras discretas en tiempo de la señal analógica.

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 15
El proceso de muestreo puede
representarse a través de un
interruptor que se cierra cada t = kT
segundos durante un tiempo de
muestreo (p), generándose una señal
de muestreo como la mostrada en la
figura 1.1

t = Instante de muestreo
k = 0, 1, 2, 3, … n
T = Periodo de muestreo
p = Tiempo de muestreo

La ecuación t = kT describe al muestreo periódico ya que las muestras están equiespaciadas, es decir las
muestras son tomadas en instantes de tiempo que son múltiplos enteros del periodo de muestreo. También
existen otros tipos de muestreo empleados para diferentes propósitos, los cuales se describen con ecuaciones
similares a la mostrada anteriormente.
La entrada de este interruptor es una señal analógica y la salida es una señal muestreada como se puede
observar en la figura 10.

Figura 10. Proceso de muestreo

Otra forma de representar el proceso de muestreo es a través de un modulador en amplitud, que realiza la
modulación de un tren de impulsos unitarios discretos generados en los instantes kT que se emplean como
señal portadora y la señal analógica que se desea muestrear que se emplea como señal moduladora,
obteniéndose como salida los pulsos discretos pero modulados en amplitud por la señal de entrada, a esta
salida se le denomina la señal muestreada, tal y como se observa en la figura 11

Figura 11. Proceso de muestreo por modulador de amplitud

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 16
La operación que realiza el modulador puede representarse matemáticamente a través del producto del tren
de impulsos unitarios y la señal analógica de entrada dando como resultado la siguiente expresión que define
a la señal muestreada.

Si a esta expresión se le aplica la transformada de Laplace y se toman las consideraciones necesarias, se


obtiene la transformada Z de la función x(t).

Otro dispositivo empleado en la digitalización de las señales analógicas para utilizarlas en los sistemas de
datos muestreados, es el retenedor, el cual tiene la función de reconstruir la señal muestreada a partir de los
valores de las muestras generadas por el muestreador, empleando para ello, polinomios de diferentes grados.
Entre los más empleados están los retenedores de orden cero y de primer orden.
Este proceso también se emplea para que los cuantizadores tengan en su entrada una señal constante que
representa a la muestra actual y puedan tener el tiempo suficiente para realizar la conversión de código ya
que la muestra original que se obtiene del muestreador tiene una duración muy corta.

Figura 12. Proceso de retenedor

En esta práctica se implementarán 2 circuitos que realizan las funciones de muestreo y retención
respectivamente. Estos circuitos se implementan a través de circuitos analógicos y amplificadores
operacionales para poder visualizar las funciones que se realizan en estos 2 procesos, pero haciendo la
anotación de que en los sistemas de control digital estas funciones se realizan a través de los convertidores
analógico digitales que contienen de manera intrínseca a dichas funciones de muestreo y retención (S/H,
Sample and Hold).

Procedimiento Experimental
1. Implemente el circuito de la figura 13, el cual realiza la operación de muestreo sobre la señal Ve(t) y
genera una señal muestreada Ve*(t), este circuito consta de las siguientes partes:

Generador de pulsos de muestreo en configuración astable.


Interruptor analógico (interruptor bidireccional) controlado por pulsos DG201 (otras opciones DG441,
DG444, TC4066B).

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 17

Figura 13. Circuito muestreador

Entre las opciones de interruptores analógicos, el TC4066B se caracteriza por:

2. Calibre el generador de funciones con una señal Ve(t) = 2.5 Sen 6283.18 t.
3. Pruebe el sistema por partes, verificando el correcto funcionamiento de cada una de ellas.
4. Compruebe y analise el funcionamiento del proceso de muestreo para las señales de entrada triangular y
cuadrada además de la señal senoidal del punto anterior.
5. Mida los valores de periodo de muestreo (T) y el tiempo de muestreo (p) mínimo y máximo de la señal de
salida del generador de pulsos variando el potenciómetro P1 a su valor mínimo y a su valor máximo.
6. Indique cual es la frecuencia de muestreo mínima y máxima que se puede obtener con este circuito.

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 18
7. Varíe la frecuencia de la señal senoidal a un valor en el rango de 30KHz a 50KHz y observe el
comportamiento simultáneo de las señales de entrada Ve(t) y de salida Ve*(t), ajuste el valor de frecuencia
para obtener un proceso de muestreo equivalente. (Aliasing o Señal de salida que no es muestreada
adecuadamente debido a que no se toman las muestras necesarias para representarla). Identifique y analice
este concepto muy importante para llegar a una conclusión práctica de porque con este tipo de circuito no se
puede llegar a muestrear señales de cualquier frecuencia o amplitud.
9. Retire la resistencia R3 de 10 KΩ que está conectada a la terminal 3 del interruptor analógico, ya que
afecta el comportamiento del circuito retenedor que se adicionará a la salida del muestreador y regrese la
señal de entrada a su valor de amplitud y frecuencia original Ve(t) = 2.5 Sen 6283.18 t.
10. Añada el circuito de la figura 12 a la salida del circuito de la figura 14, el cual realizará la función de
retención y observe la señal de salida Vs(t) del circuito 15 y como se relaciona con la entrada Ve(t). Analice
el proceso completo, haciendo las pruebas también para señales de diferentes tipos y frecuencias (triangular
y cuadrada).

Figura 14. Circuito retenedor

Figura 15. Señal de salida muestreada Ve*(kT)

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA


Lab. No.2 – Transformada Z 19

Figura 16. Señal de salida con retenedor Vs(t)

Figura 17. Señal de salida muestreada Ve*(kT)

Control Digital IE. PhD. FRANCISCO E. MORENO GARCIA

S-ar putea să vă placă și