You are on page 1of 45

UNIVERSIDAD NACIONAL DE SAN AGUSTIN DE AREQUIPA

FACULTAD DE INGENIERIA DE PRODUCCION Y SERVICIOS

ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA

SISTEMA DE CONTROL DIGITAL - LABORATORIO

TURNO: JUEVES 8:40-10:20 am

LABORATORIO Nª 1

ALUMNOS:

HUAYNA AGUILAR MARCELO MATIAS CUI: 20153290


VALDIVIA CASA ALVARO CUI: 20141067

AREQUIPA-PERU
LABORATORIO N° 1

MUESTREO Y RECONSTRUCCION
En los sistemas compuestos por elementos continuos junto a los elementos discretos,
siempre están presentes dos elementos fundamentales:

 Muestreador
 Bloqueador

El muestreador obtiene de una señal continua una secuencia de valores que representan
una función discreta

El

bloqueador realiza la operación contraria: convierte una función(secuencia) discreta en


una señal continua

INTRODUCCION AUTOMÁTICA DE MUESTREADORES Y BLOQUEADORES EN


SIMULINK
Cuando en un esquema de SIMULINK se introducen señales continuas como entrada de
bloques discretos, el programa considera que existe un elemento MUESTREADOR
intercalado. Análogamente, si se introducen señales discretas como entrada de bloques
continuos, el programa considera que existe un BLOQUEADOR (de orden cero)
intercalado.

Ejemplo: Que viene a


ser: (representaría realmente esta otra situacion)

Cuya respuesta que en el osciloscopio podemos ver como se muestra a continuación:


FORMA DE INTRODUCIR MANUALMENTE UN MUESTREADOR
Si deseamos introducir un bloque que se comporte como un muestreador, basta con crear
un bloque discreto que non realice ninguna operación (función de transferencia unidad):

Observamos que para una señal continua como entrada de un bloque discreto, logramos
conseguir un MUESTREADOR.

A continuación observamos la respuesta:


El periodo de muestreo se ajusta con el campo ‘SAMPLE TIME’ del bloque discreto
introducido, que consideraremos que viene indicado en segundos.

Para un simple time igual a 0.5 segundos tenemos:


FORMA DE INTRODUCIR MANUALMENTE UN BLOQUEADOR
En SIMULINK existen dos tipos de bloqueador, el de orden cero y el de orden uno.

Estos los encontramos en la categoría DISCRETE.

A continuación se representa un muestreo seguido de una reconstrucción con un


bloqueador de orden uno para una señal senoidal:
La respuesta que nos indicara el SCOPE será:

La señal de salida está para un SIMPLE TIME de 1.

CALIDAD DE LA RECONSTRUCCIÓN EN FUNCIÓN DEL TIEMPO DE MUESTREO


Y DEL TIPO DE BLOQUEADOR

El objetivo será comprobar la fidelidad con que es posible reconstruir una señal después
de haber sido muestreada.
Utilizaremos para ello la señal senoidal y construiremos un esquema similar al del ejemplo
anterior, donde se representan en el osciloscopio la señal original y la señal reconstruida,
de modo que se puede apreciar la diferencia entre ambas.
NOTA IMPORTANTE: Para obtener resultados correctos es necesario ajustar el tiempo de
muestreo al mismo valor en el muestreador y en el bloqueador.
El efecto que debe apreciarse es que al reducir el periodo de muestreo la señal
reconstruida se parece más a la original.

CASO 1: Bloqueador de orden uno

 Periodo de muestreo de 2 segundo

Ajustamos el tiempo de muestreo a un segundo en el muestreador:


Ajustamos el tiempo de muestreo a un segundo en el bloqueador:

Ahora vamos a ver la gráfica en el osciloscopio de la señal original y la señal reconstruida


para así poder apreciar la diferencia entre ambas.
Damos click en el botón Start Simulation en la barra de herramientas.
Luego damos doble click en el símbolo del osciloscopio, es decir en el Scope
Y nos aparecerá lo siguiente:
La curva amarilla es la señal original y la curva morada es la señal reconstruida.La diferencia entre
ambas señales es muy notoria.

 Periodo de muestreo de 1 segundo


La curva amarilla es la señal original y la curva morada es la señal reconstruida.
La diferencia entre ambas señales es muy notoria.

 Periodo de muestreo de 0.5 segundos


 Periodo de muestreo de 0.25 segundos

 Periodo de muestreo de 0.05 segundos


CASO 2: Bloqueador de orden cero
En la librería de SIMULINK buscamos dentro de la categoría Discrete el bloqueador de
orden cero: Zero – Orderhold.
Remplazamos el bloqueador de orden uno del circuito anterior por este bloqueador
quedando de la siguiente forma:

 Periodo de muestreo de 2 segundo


Como en los ejemplos anteriores volvemos a ajustar el tiempo del muestreo a un
segundo tanto en el bloqueador como en el muestreador. Damos click en el botón Start
Simulation en la barra de herramientas. Luego damos doble click en el símbolo del
osciloscopio, es decir en el Scope

Observamos la peor señal reconstruida de todos los casos, el bloqueador de orden cero es
el más inexacto y al usar un periodo de muestreo de 2 segundos notamos la excesiva
diferencia entre la señal original y la señal reconstruida.
 Periodo de muestreo de 1 segundo

Observamos la peor señal reconstruida de todos los casos, el bloqueador de orden cero es
el más inexacto y al usar un periodo de muestreo de 1 segundo notamos la excesiva
diferencia entre la señal original y la señal reconstruida.
 Periodo de muestreo de 0.5 segundos

Sin duda la exactitud de un bloqueador de orden cero no se compara con el de orden uno,
aunque se cambie el tiempo de muestreo en el bloqueador de orden cero siempre se
obtendrá una señal reconstruida de muy baja calidad.
Sin embargo al reducir este periodo a 0.5 segundos notamos una pequeña mejora frente
al periodo de un segundo.

 Periodo de muestreo de 0.25 segundos

Al observar la gráfica notamos una leve mejora en la señal reconstruida con respecto a los
anteriores ejemplos con tiempos de muestreo mayores.

 Periodo de muestreo de 0.05 segundos


“Deducimos que un bloqueador de orden cero y con periodo de muestreo de un segundo
puede reconstruir una señal continua con una muy mala exactitud. Todo lo contrario
sucede con periodos de muestreo menores, donde notamos una leve mejora en la señal
reconstruida.”

CUANTIFICACIÓN DE LOS ERRORES COMETIDOS AL RECONSTRUIR

Cuantificación de los errores cometidos con cada muestreador:

Los trabajos realizados anteriormente permiten observar a simple vista qué bloqueador
reconstruye mejor la señal de partida. Para obtener una medida cuantitativa de los
errores de reconstrucción es posible crear un esquema similar al de la figura:

Al esquema anterior, se han incluido una serie de bloques que hacen las siguientes
operaciones: En primer lugar, restan la señal original de la señal reconstruida, de modo
que la diferencia es el error cometido en cada instante. Este error se pone en forma de
valor absoluto con el bloque ‘Abs’ de la categoría ‘Math’; se integra para obtener el error
total; y se muestra en un indicador numérico (bloque ‘Display’ de la categoría ‘Sinks’)
De esta forma, el resultado que aparece en el display al final de la simulación es la suma
(integral) de los errores producidos en cada instante. Con ese montaje repetiremos las
pruebas realizadas en el ejercicio anterior.
Desarrollo:

Configuramos los parámetros necesarios:

 Elegiremos un tiempo de simulación de 10 segundos. Dado que la integral suma los


errores producidos durante todo el tiempo de simulación, si queremos que los
 resultados sean comparables debemos hacer ese tiempo de simulación idéntico
para todos los casos.
Para lograr esto damos click en el menú Simulation y escogemos la opción
Configuration Parameters…

Luego nos aparecerá el siguiente cuadro de diálogo:


Observamos que por defecto está definido un tiempo de simulación de 10
segundos, pero para otras aplicaciones podríamos cambiar el intervalo de tiempo.

 La señal senoidal debe tener una frecuencia 1rad/s y amplitud unitaria (tomará
valores entre -1 y +1) Para hacer los resultados uniformes, la señal senoidal
permanecerá con estos valores durante todos los casos.
Para lograr esto damos doble click en el símbolo Sine Wave para luego aparecer el
siguiente cuadro de diálogo donde se cambiará los parámetros correspondientes:

Una vez establecidos y verificados los parámetros necesarios para la simulación y la señal
senoidal de entrada podemos repetir el ejercicio anterior con bloqueadores de orden cero
y uno; y periodos de muestreo de 1, 0.5 y 0.25 segundos. El objetivo es que el sistema
cuantifique el error y lo muestre en el display en cada caso:
Error con bloqueador de orden cero
Periodo de muestreo 2 segundos

Periodo de muestreo 1 segundo


Periodo de muestreo 0.5 segundos

Periodo de muestreo 0.25 segundos


Periodo de muestreo 0.05 segundo

Error con bloqueador de orden uno

Periodo de muestreo 2 segundos


Periodo de muestreo 1 segundo

Periodo de muestreo 0.5 segundos


Periodo de muestreo 0.25 segundos

Periodo de muestreo 0.05 segundos


Ordenamos nuestros resultados en la siguiente tabla donde se muestran los errores
obtenidos para cada tipo de bloqueador y cada periodo de muestreo:

Periodo de Error con bloqueador de Error con bloqueador de


muestreo orden cero orden uno
0.05 seg 0.1636 0.00765
0.25 seg 0.8172 0.189
0.5 seg 1.629 0.7401
1 seg 3.287 2.837
2 seg 6.305 9.231

MUESTREO Y RECONTRUCCION DE SEÑALES. FUNCIONES DE


TRANSFERENCIA

1.Muestreo con Matlab y Simulink


Obtener la señal muestreada por Matlab y Simulink del siiuiente esquema:

Y(t) Y(kt)

Fm=1kHz
𝑦(𝑡) = 𝐴𝑠𝑒𝑛(𝑤𝑡 + 𝛼) ∶ 𝑒𝑛𝑡𝑟𝑎𝑑𝑎
𝑦(𝑘𝑡) = 𝐴𝑠𝑒𝑛(𝑤𝑘𝑇 + 𝛼) ∶ 𝑠𝑎𝑙𝑖𝑑𝑎 𝑘, 𝑒𝑠 𝑁° 𝑒𝑛𝑡𝑒𝑟𝑜 = 0,1,2,3, …
a. 𝑤 = 2𝜋𝑓 , 𝑠𝑖𝑒𝑛𝑑𝑜 𝑓 = 200, 400 𝑦 500 𝐻𝑧 𝛼 = 0, 𝐴 = 1
b. 𝑓 = 200𝐻𝑧, 𝛼 = 45° , 𝐴 = 1
Hallar para los casos a y b:
 Grafica de la señal muestreada hasta 20 periodos de muestreos
 Periodo de la señal muestreada
 Cantidad de muestras por periodo
 Se verifica la tasa de Nyquist? (frecuencia de muestreo>= 2w)
MATLAB
CODIGO PARA CASO A

f=input('Valor de la frecuencia: '); %ingresa valores de frecuencia para


200,400,500
t=0:0.0001:0.02;
w=2*pi*f;
y=sin(w*t);
plot(t,y,'b')
hold on
fm=1000; %FRECUENCIA DE MUESTREO
kt=0:1/fm:0.02;
y2=sin(w*kt);
stem(kt,y2,'m')
grid on
title('Muestreo de la señal de entrada')
xlabel('tiempo (ms )')

PARA 200Hz, A=1


 Grafica de la señal muestreada hasta 20 periodos de muestreos
Muestreo de la señal de entrada
1

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02
tiempo (ms )

 Periodo de la señal muestreada

1 1
f = 200Hz T = = = 5𝑚𝑠
f 200

 Calculando el número de muestras por período:

2π 2π
n= =
2πf ∗ 1/𝑓𝑚 2π200 ∗ 1/1000

n=5

 Comprobando la tasa de Nyquist:

2𝜋𝑓𝑚 ≥ 2(2𝜋𝑓)

2𝜋1000 ≥ 2(2𝜋200)

10 ≥ 4

“Si se cumple la tasa de Nyquist”


PARA 400Hz, A=1
 Grafica de la señal muestreada hasta 20 periodos de muestreos
Muestreo de la señal de entrada
1

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02
tiempo (ms )

 Periodo de la señal muestreada

1 1
f = 400Hz T = = = 2.5𝑚𝑠
f 400

 Calculando el número de muestras por período:

2π 2π
n= =
2πf ∗ 1/𝑓𝑚 2π400 ∗ 1/1000

n=2.5

 Comprobando la tasa de Nyquist:

2𝜋𝑓𝑚 ≥ 2(2𝜋𝑓)

2𝜋1000 ≥ 2(2𝜋400)

10 ≥ 8

“Si se cumple la tasa de Nyquist, aunque con menos calidad”


PARA 500Hz, A=1
 Grafica de la señal muestreada hasta 20 periodos de muestreos
Muestreo de la señal de entrada
1

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02
tiempo (ms )

 Periodo de la señal muestreada

1 1
f = 500Hz T = = = 2𝑚𝑠
f 500

 Calculando el número de muestras por período:

2π 2π
n= =
2πf ∗ 1/𝑓𝑚 2π500 ∗ 1/1000

n=2

 Comprobando la tasa de Nyquist:

2𝜋𝑓𝑚 ≥ 2(2𝜋𝑓)

2𝜋1000 ≥ 2(2𝜋500)

1≥1

“Se cumple la tasa de Nyquist, aunque en su limite lo que comprueba que


se realizo un pésima muestra”
2 f m  2(2 f )
2 1000  2(2 100)
6283.19  1256.64

2𝜋𝑓𝑚 ≥ 2(2𝜋𝑓)

2𝜋1000 ≥ 2(2𝜋200)

10 ≥ 4

“Si se cumple la tasa de Nyquist”

CODIGO PARA CASO B ; A=1 f=200, a=45


t=0:0.0001:0.02;
f=200;
w=2*pi*f;
y=sin(w*t+2*pi*45/360);
plot(t,y,'b')
hold on
fm=1000; %FRECUENCIA DE MUESTREO
kt=0:1/fm:0.02;
y2=sin(w*kt+2*pi*45/360);
stem(kt,y2,'m')
grid on
title('Muestreo de la señal de entrada')
xlabel('tiempo (ms )')

 Grafica de la señal muestreada hasta 20 periodos de muestreos


Muestreo de la señal de entrada
1

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02
tiempo (ms )

 Periodo de la señal muestreada

1 1
f = 200Hz T = = = 2.5𝑚𝑠
f 200

 Calculando el número de muestras por período:

2π 2π
n= =
2πf ∗ 1/𝑓𝑚 2π200 ∗ 1/1000

n=5

 Comprobando la tasa de Nyquist:

2𝜋𝑓𝑚 ≥ 2(2𝜋𝑓)

2𝜋1000 ≥ 2(2𝜋200)

10 ≥ 4

“Se cumple la tasa de Nyquist”


CON SIMULINK
CASO A,

PARA F=200

PARA F =400
PARA F=500
CASO B F=200 , a=45

2. El objetivo del presente ítem es comparar las respuestas de dos plantas idénticas, con la
única diferencia en que la señal de entrada( una señal sinusoidal de frecuencia w)en una
entra directamente y en la segunda opción la señal es previamente muestreada y luego
reconstruida a través de un bloqueador de orden cero como se muestra en la Figa 1.Utilice
un tiempo de muestreo T = 1seg.
Analizar que ocurre al variar la fecuencia de la señal sinusoidal de entrada con
w1:ws/100,ws/20,ws/5,ws/4.5,ws/3.5,ws/3.0,ws/2.5/ws/2.0(probar para esta frecuencia
además que ocurre al variar el daefasaje),ws/1.5 y ws.
Frecuencia de muestreo ws=2*p/T
Explicar: ¿El tiempo de muestreo elegido es el adecuado?

Colocamos el tiempo de muestreo de 1 en el bloqueador de orden cero,


Cambiamos la frecuencia de la señal sinusoidal de entrada con

𝜔𝑠 2𝜋
𝜔1 = =
100 100
𝜔𝑠 2𝜋
𝜔2 = =
20 20

𝜔𝑠 2𝜋
𝜔3 = =
5 5
𝜔𝑠 2𝜋
𝜔4 = =
4.5 4.5

𝜔𝑠 2𝜋
𝜔5 = =
4.0 4.0
𝜔𝑠 2𝜋
𝜔6 = =
3.5 3.5

𝜔𝑠 2𝜋
𝜔7 = =
3 3
𝜔𝑠 2𝜋
𝜔8 = =
2.5 2.5

𝜔𝑠
𝜔9 = = 𝜋 (𝑎𝑑𝑒𝑚𝑎𝑠 𝑠𝑒 𝑐𝑎𝑚𝑏𝑖𝑎𝑟𝑎 𝑙𝑎 𝑓𝑎𝑠𝑒)
2
Con fase de Pi/2

Con fase pi/4


Con fase pi/8
𝜔𝑠 2𝜋
𝜔10 = =
1.5 1.5

𝜔11 = 𝜔𝑠 = 2𝜋
Por lo tanto, se puede deducir que hasta el valor de 𝜔1 = 𝜔𝑠 /2, el tiempo de muestro es
aceptable y para ωs<2ω1, la señal ya no es reconstruida adecuadamente, comprobando el
criterio de 𝑁𝑦𝑞𝑢𝑖𝑠𝑡.

3.Utilizando el mismo esquema anterior, cambiar la fuente de señal por un escalon


unitario ¿Se observa alguna diferencia entre ambos? Porque
De acuerdo a la gráfica se observa que para una entrada escalón la señal reconstruída es
idéntica a la señal original. La diferencia de una entrada sinusoidal a una escalón es que
una es periódica y la otra no; por lo cual, el escalón no presenta muestras.

4. Para la planta continua utilizada, obtener la función de transferencia discreta que


representa la misma (utilizando un bloqueador de orden cero).
G=tf([1 10],[1 5 10])% Funcion transferencia en el dominio s
Gd=c2d(G,1,'zoh')% Utilizamos el comando cd2 para convertir al dominio z
% En los paramtros de cd2 G es la funcion transferencia
% 1 tiempo de muestreo
% 'zoh' tipo de discretizacion en este caso de orden
cero

EN EL SCRIPT OBTEDREMOS LA FUNCION TRANSEFERNCIA EN Z

G=

s + 10

--------------

s^2 + 5 s + 10

Continuous-time transfer function.

Gd =

0.97 z + 0.09547

--------------------------

z^2 + 0.05871 z + 0.006738

Sample time: 1 seconds

Discrete-time transfer function.


5. Realice un esquema de simulación en simulink similar al del punto 2 pero agregando la
función transferencia discreta obtenida en el punto 4. Compare las respuestas de los tres
esquemas de simulación.
Se observa en el gráfico que la señal reconstruida (color lila) puede ser representada en su
forma discreta (color celeste).

CONCLUSIONES

 El programa SIMULINK considera que existe un elemento llamado MUESTREADOR


intercalado cuando se introducen señales continuas como entrada hacia los
bloques discretos.

 SIMULINK asume que existe un elemento llamado BLOQUEADOR cuando se


introduce señales discretas como entrada hacia los bloques continuos.

 Mientras mayor sea el orden de un bloqueador, mayor será la exactitud en la


reconstrucción de la señal de entrada. Todo lo contrario sucede con el tiempo de
muestreo, mientras mayor sea el tiempo de muestreo disminuye la calidad de la
señal reconstruida, por esta razón necesitamos disminuir el tiempo de muestreo
para obtener una mejor señal reconstruida.
 El bloque Abs nos permitió obtener la magnitud de la diferencia entre la señal
original y la reconstruida, independientemente si esta diferencia fuera positiva o
negativa. Y el bloque Integrator nos permite obtener el error total al sumar todos
los pequeños errores captados en cada instante de muestreo durante todo el
tiempo que duró la simulación.
Finalmente el error total calculado por el integrador recién se hace visible gracias a
la ayuda de un display.

You might also like