Licenciatura en Ingeniería en Comunicaciones y Electrónica Señales y sistemas lineales
Simulación de una señal en Simulink ________________________________ _______________ _________________________________ __________________ __ Procesos de análisis espectral de una señal Procesos cuadrada periódica en MatlabSimulink !ol"
#ui$ %ara&as 'uan (usta)o Pro*esor +ltamirano Corne&o +ntonio Martín +lumno ,to semestre
Simulación en Simulink del espectro de una señal periódica
INTRODUCCION Simulink es una aplicación que permite construir y simular modelos de sistemas físicos y sistemas de control mediante diagramas de loques! "l comportamiento de dic#os sistemas se define mediante funciones de transferencia$ operaciones matem%ticas$ elementos de &atla y se'ales predefinidas de todo tipo! Simulink dispone de una serie de utilidades para la (isuali)ación$ an%lisis y guardado de los resultados de simulación! "n este re(e traa*o$ se e+plicar% el uso introductorio al entorno de Simulink$ con el fin de poder (isuali)ar ( isuali)ar el espectro de una se'al periódica un tren de pulsos pulsos deforma de onda cuadrada! , Configuración del el simulador para an%lisis espectral de se'ales! , C%lculo de potencia en el dominio del tiempo! , C%lculo de potencia en el dominio de la frecuencia! 1.- Simulink -"*ecutar &atla -Uicar en la arra dea*o del men. de &atla/
-Se selecciona el otón de #iper(ínculo de Simulink/
Simulación en Simulink del espectro de una señal periódica
INTRODUCCION Simulink es una aplicación que permite construir y simular modelos de sistemas físicos y sistemas de control mediante diagramas de loques! "l comportamiento de dic#os sistemas se define mediante funciones de transferencia$ operaciones matem%ticas$ elementos de &atla y se'ales predefinidas de todo tipo! Simulink dispone de una serie de utilidades para la (isuali)ación$ an%lisis y guardado de los resultados de simulación! "n este re(e traa*o$ se e+plicar% el uso introductorio al entorno de Simulink$ con el fin de poder (isuali)ar ( isuali)ar el espectro de una se'al periódica un tren de pulsos pulsos deforma de onda cuadrada! , Configuración del el simulador para an%lisis espectral de se'ales! , C%lculo de potencia en el dominio del tiempo! , C%lculo de potencia en el dominio de la frecuencia! 1.- Simulink -"*ecutar &atla -Uicar en la arra dea*o del men. de &atla/
-Se selecciona el otón de #iper(ínculo de Simulink/
- 0utom%ticamente 0utom%ticamente se are la (entana del uscador de lirerías 1Simulink 2irary 3ro4ser5/
2a (entana anterior contiene las lirerías 1di(isión i)quierda5 con los loques de instrucción y función específicos 1di(isión derec#a5 que pro(ee Simulink$ a partir de esta$ se seleccionar% posteriormente la cantidad de loques necesaria para el diagrama que simular% la se'a se'all desc descri rita$ ta$ por por lo cual cual es de suma suma impo import rtan anci cia a mant manten ener erla la siempre acti(a! -6acer clic en 7ile -6acer clic en Ne4 -6acer clic en &odel!
-Se are la (entana de traa*o en lanco$ que es donde se armar% el diagrama de loques/
2.-
Armado de diagrama de bloques.
2.1
Librerías.
2as lirerías contienen las categorías y dentro de estas$ los loques$ específicos en función del tipo de lirería que las contiene! "n este e*ercicio solo se (an a usar las lirerías de 8Simulink9 y 8Signal :rocessing 3lockset9! Una (es con la (entana de lirerías y la (entana de traa*o$ se puede proceder a construir el diagrama de loques! :or default$ al arir Simulink$ la lirería 8Simulink9 en la di(isión i)quierda de la (entana del uscador de lirerías (a a estar desplegada$ mostrando las siguientes categorías/
De las cuales solo se concentrar% de esta lirería en las categorías de/ Continuous Discrete Mathoperations Sinks Sources
2.2
Bloques
Son las funciones y;o instrucciones (isuali)adas en formas geom
simplemente se arrastran de la (entana de loques #acia la (entana de traa*o! 3loque Transfer 7cn/ con este loque se configura el filtro pasaa*as para sua(i)ar la se'al de salida!
Uicado en Simulink/Contiuous.
3loque >ero-Order6old/ con este loque se transforma de una se'al continua a una discreta$ para el posterior uso de un graficador de (ector!
Uicado en Simulink/Discrete.
3loque 0dd/ este loque *unta todas las se'ales o funciones que entran$ las suma y arro*a un .nico resultado! Uicado en
Simulink/Mathoperations
3loque Scope/ "ste loque muestra la se'al que entra en un plano cartesiano en función del periodo y la amplitud! Uicado en
Simulink/Sinks
3loque To4orkspace/se usa para almacenar muestras de se'ales de Simulink generadas durante una simulación! 2as muestras se guardan en una (ariale &0T203 en forma de (ector columna! Uicado en
Simulink/Sinks
%lo-ue Signal (enerador. Este blo-ue /ace la *unción )irtual de un generador de señales y se le puede con0gurar como tal" 1bicado en
Simulink/Sources
%lo-ue Sine 2a)e.Este blo-ue genera una onda sinusoidal modi0cable3 y puede ser con0gurada para ser continua o discreta" 1bicado en
Simulink/Sources
%lo-ue %u4er.Este blo-ue se reser)a para el almacenamiento temporal de la señal discreta3 mientras espera a ser procesada posteriormente" 1bicado en Signal Processing Blockset/Bufers/Bufer
%lo-ue 556magnitude. El blo-ue e trans*ormada rápida de 5ourier 75ast 5ourier 6ans*orm8 como su nombre lo indica3 trans*orma a serie de 5ourier la señal entrante3 y solo acepta señales periódicas discretas" 1bicado en Signal
Processing
Blockset/Transorms
%lo-ue !ector Scope. este blo-ue gra0ca la señal3 en *unción de la *recuencia3 la potencia o el periodo" 1bicado en Signal
Processing
Blockset/Signal Processing Sink
9a -ue se tienen los blo-ues identi0cados3 ubicados y especi0cados por su *unción3 /acemos el primer diagrama de blo-ues -ue corresponde al análisis general de un tren de pulsos cuadrado3 de simetría impar3 a :k;$ y de una amplitud de <, a , !olts" 2.3 Pasos para armar un diagrama de bloques.
:81bicar los blo-ues -ue se necesitan3 y uno por uno3 arrastrarlos la )entana de blo-ues3 /asta la )entana de traba&o"
=81nir los blo-ues. esto se logra sosteniendo clic derec/o en la terminal de salida de un blo-ue 7el triángulo pegado al costado derec/o del blo-ue83 y lle)arlo /asta la terminal de entrada de otro 7 > al costado i$-uierdo del blo-ue83 completando la unión" Para bi*urcar uniones3 es necesario /acer clic y mantenerlo3 desde una terminal3 ya sea de entrada o salida3 /asta el cable y /acer intersección en cual-uier parte de su longitud3 e)itando /acerlo cerca de una terminal de otro blo-ue ya unido" + continuación se muestra el diagrama de blo-ues de la señal a e)aluar terminado"
3.- Editar parámetros de bloques. 3.1 Confguración SignalGenerator.
Para generar la onda -ue necesitamos anali$ar3 necesitamos lo siguiente. ? Elegir la *orma de onda cuadrada 7s-uare8" ? Establecer la *recuencia de :@@@;$" ? La amplitud de la señal delimitada a , !olts" ;acer doble clic sobre el icono para mostrar el panel %lock Parameters y agregar los )alores antes mencionados.
3.2 Confguración rans!er "cn.
Este blo-ue contendrá la *unción de trans*erencia de un 0ltro limitador de banda 70ltro paso ba&as8" Para calcular el numerador y el denominador de la *unción de trans*erencia para tal 0ltro se cambia la )entana de comandos de M+6L+% para introducir la siguiente *unción. ABum3enDbutter7F3=GpiGH@@@3loJ3s8 onde. Bum. )ariable del numerador" en. )ariable del denominador" %utter. palabra reser)ada para declarar -ue )a a /aber un 0ltro butterJort/ en este caso pasa
t*. trans*er *unction3 *unciones de trans*erencia3 muestra el resultado de la ecuación de la *unción de trans*erencia del 0ltro" +/ora se )uel)e a la )entana de traba&o de Simulink y se /ace clic derec/o sobre el blo-ue “Transer Fnc” y del menK emergente elegir “Block Parameters” " Entonces aparece el cuadro de propiedades de del blo-ue" Se tiene -ue con0gurar el blo-ue tal como se muestra a continuación.
Bótese -ue las )ariables Bum y en se escriben tal cuales en los campos Bumerador y enominador del %lock Parameters para -ue a tra)s del blo-ue3 se utilicen en diagrama y sea *uncional"
3.3 Confguración del bloque Scope
/aciendo doble clic sobre el blo-ue “Scope” se despliega el cuadro de un osciloscopio3 mismo -ue se muestra a continuación.
+l /acer clic en el icono ParametersN3 podremos con0gurar el osciloscopio para obser)ar tres ciclos
del mensa&e. cada ciclo dura :ms3 así -ue tres ciclos duran F ms" +sí -ue el campo “Time range” se elimina auto3 y se agrega @"@@F"
e&aremos limpias las opciones de la pestaña “Data history” para -ue continKe con la señal periódica 3.# Confguración de o$or%space
;acer doble clic en el blo-ue para desplegar “Block Parameters” "
El campo “Variable ame” contiene el nombre de la )ariable M+6L+% en la cual se almacenarán las muestras de alguna señal3 resultado de la simulación" Cambiar el nombre “simout” por un nombre con)eniente3 por e&emplo “signal”! El campo “sa"eormat” es para elegir el tipo de dato en el -ue se almacenarán las muestras" Para nuestro caso se debe elegir la opción “#rray”! #.- Confguración del simulador &$or%space 'atlab(.
Para reali$ar un análisis en *recuencia de señales analógicas generadas en SIM1LIBO3 mediante 5563 stas deben ser en)iadas al entorno de M+6L+% y procesadas de acuerdo a las siguientes instrucciones"
5recuencia de muestreo" #esolución de *recuencia"
T = N τ ss
1 f ss
Periodo de muestreo temporal" uración del espacio muestral temporal"
( )
1 stopTime =T 1− N
6iempo de parada de la simulación"
( ) E&e del tiempo"
1 t =0 : τ ss : T 1− N
).-Pasos para confgurar el simulador
La con0guración del simulador empie$a especi0cando dos datos *undamentales. la *recuencia máima contenida en la señal y el nKmero de muestras" La *recuencia máima presente en el sistema se considerará de Hk;$3 -ue es la *recuencia más alta considerada en el sistema" f max=¿
H@@@U
En tanto3 se considerará el uso de :QFR muestras" :QFR La *recuencia de muestreo para el simulador se 0&ará en :@ )eces la *recuencia máima3 esto es. N =¿
f ss=10∗f max df =f ss / N
En resumen3 el código "m -ue reali$a el cálculo de los parámetros de simulación se muestra a continuación" Bota. seguir las instrucciones paso a paso dando enter donde se indica3 si no3 la simulación no *uncionará" ABum3enDbutter7F3=GpiGH@@@3VloJV3VsV8 Wdamos enter t*7Bum3en8 Wdamos enter
WCon0guración del 0ltro ABum3enDbutter7F3=GpiGH@@@3VloJV3VsV8U W :8 5recuencia máima contenida en el sistema *ma H@@@U W =8 BKmero de muestras B:QFRU W F8 Parámetros espectrales *ss :@ G *maU d**ssBU W 8 parámetros temporales tss:*ssU 6BGtssU stop6ime6G7:<:B8U W ,8 ominio del tiempo t@.tss.6G7:<:B8U W damos enter -Parámetros del simulador
Para cual-uier simulación digital /ay tres parámetros temporales -ue deben especi0carse. ? Start6ime. ? Setp6ype
. 6iempo de arran-ue . 6ipo de paso. eli&a 5iedXStep"
? 5iedStep6ime. paso de simulación 7e-ui)alente a periodo de muestreo8 ? Stop6ime
. 6iempo de parada
? #esolutor . Es el algoritmo empleado para solucionar ecuaciones di*erenciales La de0nición de tales parámetros se reali$a de0niendo las siguientes )ariables
Type= FixedStep Start Time=0
¿ Step ¿ τ ss
( )
1 Stop Time =T 1 − N
Resolutor =0 de 4 ( Runge− Kutta )
En el caso del stop timeN3 se puede asignar directamente la )ariable Stop6ime generada segKn los paso de la subsección anterior"
*.- E+ecución de la simulación
>Start para arrancar la simulación"
<ar doble clic sobre el blo-ue Scope para e/ibir la grá0ca de la señal cuadrada limitada en banda" ebe )erse como se ilustra a continuación.
;ay -ue )eri0car -ue la )ariable “signal” est presente en el entorno de M+6L+% consultando la sección 2orkSpace3 o bien teclear en el Jorkspace de matlab. lengt/7signal8 W dar enter ebe desplegarse entonces el )alor :QFR -ue indica la longitud del )ector columna declarado como “signal” "
,.- Pasos generales para el cálculo del oscilograma del espectro
T:"< En el dominio de la *recuencia3 calcular el e&e de la *recuencia y el espectro.
f =
−f ss 2
|( (
z = fftshift
: dff : 1
N
f ss
( ) )) )|
1 1− 2 N
fft ( signal
E&e de la *recuencia" Espectro de la señal 7solo
magnitud8" T"="<(ra0car la señal en el dominio del tiempo" + esta grá0ca se le suele conocer comKnmente como el oscilograma. 0gure7:8 plot7t3signal8 title7YZscilograma8 Es posible -ue el oscilograma se e/iba como un manc/ón3 es decir3 /ay demasiadas muestras3 tantas -ue saturan el oscilograma" Para obser)ar un *ragmento de la señal gra0cada usar la *unción ais. +is7AtmintmayminymaD8 onde. tmintma especi0can los límites temporales entre los cuales se )isuali$a la señal" yminyma son los límites en magnitud entre los cuales se gra0ca la señal" T"F"< (ra0car el espectro de la señal. 0gure7=8
plot7*3 $8 tittle7YEspectro8 Bota" Es posible -ue el espectro se e/iba como un pe-ueño manc/ón en el centro de la grá0ca3 es decir3 el espectro está concentrado en una pe-ueña banda de *recuencias" Para obser)ar sólo esa banda de *recuencias se debe usar la *unción ais. +is7A*min*ma @ $maD8 onde. 5min*ma. son los acotamientos de el e&e de las *recuencias" @ $ma. son los límites en el e&e $" +l usar la *unción ais para e/ibir sólo *recuencias positi)as3 el espectro debe multiplicarse por un *actor de dos" + consecuencia3 el código para e/ibir el espectro de una señal3 -ueda como. 5igure7=8 Plot7*3 = G $8 +is7A*min*ma @ $maD8 6ittle7YEspectro8 T""< El código. W Q8ominio de la *recuencia *7<@",G*ss.d*.@",G*ssG7:<:B88V $ abs74ts/i*t74t7signal8B88U W Palabra reser)ada y comando para calcular la trans*ormada de 5ourier W T8Zscilograma. gra0cando tres ciclos de la señal 0gure7:8 plot7t3signal8 ais7A @ @"@@F
title7VoscilogramaV8 W R8Espectro. 0gure7=8 stem7*3 =G$8 ais7A@ :@@@@ @ :@D8 W en el e&e de la *recuencia )a desde los @ a los :@ k;$3 y en el e&e de la [ de @ a :@ title7VEspectroV8 W dar enter +utomáticamente )an a desplegarse las )entanas de la señal. <
Mostrada en el oscilograma
.- Comprobación simulación a tra/0s de cálculos sumas de armónicos.
+/ora -ue tenemos de manera directa el cálculo y la )isuali$ación de la onda y de su espectro3 se procederá a calcular la serie de 5ourier en torno a las características del tren de pulsos cuadrados" Buestra tipo de señal3 es un tren de pulsos cuadrados3 de amplitud de <, a , !olts3 sin C3 con una *recuencia de : k;$3 y señal impar"
Por de0nición y planteamiento de la señal3 esta no tiene componente de C3 puesto -ue esta es igual a cero3 siendo la mitad en longitud de sus amplitudes acotadas 7<,3,83 es cero )olts" Por lo anterior se puede asegurar -ue. a =0 +l ser señal impar3 no tiene cosenos3 por lo -ue se puede concluir -ue. 0
am = 0
+ continuación se procederá a calcular las amplitudes de los armónicos seno" −5 sen ( mωt ) dt +¿
0
2
∫ 5 sen ( mωt ) dt
T 0 −T
0
2
bm =
2
0
∫¿
T 0 − T
0
2
bm =
bm =
−10 T 0 mω
[
(
−1 + cos mω−
)]
[ ( )]
T 0 T + 10 1− cos mω 0 2 2 T 0 mω
10 − 10cos ( m ) −10cos ( m ) + 10 20− 20cos ( m ) 10−10cos (m ) = = 2 m 2 m m
para mimpar :
20 m
para m par : 0
b1 =
10 −10 (−1) 20 = "rm#ni$ofundamental ( 1 )
b3 =
10 −10 (−1) 20 = ( 3 ) 3
b5 =
10 −10 (−1) 20 = ( 5 ) 5
b7 =
10 −10 (−1) 20 = ( 7 ) 7
b9 =
10 −10 (−1) 20 = ( 9) 9
b11=
10 −10 (−1 ) 20 = ( 11) 11
b13=
10−10 (−1 ) 20 = ( 13 ) 13
b15=
10−10 (−1 ) 20 = ( 15 ) 15
;aciendo las di)isiones3 se puede comprobar el resultado de la magnitud de la amplitud respecto a la grá0ca de espectro concuerdan3 /aciendo correcta la simulación3 con el cálculo" +/ora -ue se tienen los armónicos calculados3 procedemos a construir el diagrama de blo-ues -ue simulará la suma de las amplitudes de los senos impares -ue contiene la señal cuadrada" Para este diagrama se necesitan los blo-ues Sine Ja)e. ubicado en Simulik/Signals! +dd. ubicado en Simulink/$athoperations! Scope. ubicado en Simulink/Sinks!
[ero
Magnitude 556. ubicado en Signal Processing Blockset/Transorms!
!ector Scope. ubicado en Signal Processing Blockset/Signal Processing Sink!
<+rmado del diagrama" En la siguiente imagen3 se muestra el diagrama -ue se -uiere lograr"
Se )an a arrastrar R )eces el blo-ue Sine 2a)eN a la )entana de traba&o3 dado -ue solo )amos a sumar
R ondas senoidales con sus correspondientes amplitudes"
Los Knicos campos -ue se )an a modi0car son. <+mplitude. es donde asignamos el )alor de la amplitud a cada uno de los oc/o blo-ues3 en el caso de la imagen anterior3 es de el primer armónico 7blo-ue sine Ja)e con eti-ueta de : k;$N8" <5re-uency. la *recuencia de la señal dada en 7radseg8"
<ar doble clic i$-uierdo al blo-ue “a%%” para desplegar la )entana 5unction %lock Parameters. +ddN
En Icons/apeN se puede elegir entre *orma rectangular o circular3 en este caso3 lo de&amos en rectangular" Como -ueremos -ue se sumen oc/o señales3 se debe de editar el campo con el nombre de list o* signs.N3 en donde cada signo de suma3 es una terminal de entrada" Por de*ault3 el blo-ue contiene solo dos signos de suma3 -ue indican dos terminales de entrada3 y en este e&emplo3 se necesitan R entradas3 por lo cual es necesario -ue en este campo se tengan R signos de suma"
Para -ue la señal de salida de el blo-ue “a%%” 3 -ue es una señal de tiempo continuo3 se con)ierta a una señal de tiempo discreto3 es necesario agregar este blo-ue3 -ue su *unción es /acer un muestreo de0nido por el usuario" En este e&emplo se /ará una muestra cada milisegundo 7::@@@8"
>Start para arrancar la simulación" <+utomáticamente )a a aparecer la )entana de el espectro generado del blo-ue !ector ScopeN3 al momento se )a a )er una línea sin sentido3 por eso3 le tenemos -ue dar clic derec/o3 y seleccionar
+utoscaleN3 y )a a aparecer una grá0ca como la de la imagen a continuación.
<espus se procede a dar doble clic sobre el blo-ue Scope para e/ibir la grá0ca de la señal cuadrada limitada en banda" ebe )erse como se ilustra a continuación.
Podemos obser)ar -ue3 tanto la simulación y el cálculo a tra)s del código de Matlab y del primer diagrama de blo-ues3 y los cálculos analíticos y el diagrama de blo-ues de la suma de los armónicos3 el resultado es el mismo3 con el cual comprobamos la e*ecti)idad de las series de 5ourier sobre el tren de pulsos cuadrados"
.- Cálculos de /olta+es potencias.
√
2
2
2
20 ) +( 20 ) +( 20 ) % R&S = 0 +( 3 √ 2∗ 5 √ 2∗ √ 2∗ % R&S =4.8723 'olts
1
∫ −5 dt +¿ ∫ 5 dt =√ 12.5 +12.5=5 % 2
−0.5
2
0.5
√ ¿
Porcenta&e Cubierto en los primeros armónicos 4.8723∗100 = 97.44 5
( "* =
% ( 2 R +
R +=50 ,
( ) % (
( "* =
2
√ 2
R +
(1=405 m- (2= 45 m- (3=16.2 m- (4 =8.27 m-
∑
( % R&S )2
5 % 2 = =0.5 - 50 , R + ¿ 474.47 -
n= )* . 1,3,5,7
(or$enta/ede poten$iaen los primeros 4 arm#ni$ os =
474.47 m- ∗100 500 n-
=94.89
*A@3:3=3F33,3Q3T3RDU W nKmero de armónicos senoidales PA@3@,3@3,3@3:Q"=3@3R"=T3@DU W potencia en 2atts de cada uno de los armónicos stem7*3P3VlineJidt/V3F83 W grá0co de los datos label7V*7k;$V83 W nombre de el e&e -ue es el de las *recuencias en k;$ ylabel7Vp7m28V83gridW nombre del e&e y -ue es el de la potencia en m2
(
)=
405 m- 1 m-
26.07 d0m
(
)=
45 m- 1 m-
16.53 d0m
(1=16.2 m- =10log
(
16.2 m- 1 m-
)=
(1=8.27 m- = 10log
(
8.27 m- =9.175 d0m 1 m-
(1=45 m- = 10log
12.09 d0m
)