Vous êtes sur la page 1sur 48

Programas de Posgrado en Ingeniera Elctrica SEPI-ESIME Zacatenco IPN

Curso Computacin Aplicada a Sistemas Elctricos de Potencia




Tutorial Matlab Agosto 2012




ComputacinAplicadaaSistemasElctricosdePotencia
2

Contenido
1. DescripcindelprogramaMatlab...............................................................................................................................4
1.1. ElambientedeprogramacinMatlab..................................................................................................................5
1.1.1. Entornodedesarrollo............................................................................................................................................5
1.1.2. EllenguajeMatlab...................................................................................................................................................5
1.1.3. Grficas.........................................................................................................................................................................5
1.1.4. InterfacesExternas.................................................................................................................................................5
1.1.5. AyudaparaMatlab..................................................................................................................................................5
2. EXPRESIONES.......................................................................................................................................................................6
2.1. NUMEROS.........................................................................................................................................................................6
2.2. VARIABLES.......................................................................................................................................................................7
2.3. OPERACIONESARITMETICAS.................................................................................................................................8
2.4. FUNCIONES......................................................................................................................................................................9
3. EJEMPLOSDEEXPRESIONES........................................................................................................................................9
4. Usoaniveldecomandos..............................................................................................................................................11
5. Usoaniveldeprogramacin......................................................................................................................................12
5.1. CONSTRUCCINfor.................................................................................................................................................13
5.2. 5.1CONSTRUCCINwhile.....................................................................................................................................14
5.3. 5.1CONSTRUCCINif.............................................................................................................................................15
6. SEALESPERIODICAS...................................................................................................................................................18
7. SEALESEXPONENCIALES.........................................................................................................................................20
8. SEALESSINUSOIDALES.............................................................................................................................................22
9. SEALESSENOISOIDALESCONAMORTIGUACINEXPONENCIAL.........................................................23
10. GENERACIONDESEALESIMPULSO,ESCALONYRAMPA...................................................................24
10.1. SealEscalon:.........................................................................................................................................................24
10.2. SealImpulso:........................................................................................................................................................26
10.3. SealRampa............................................................................................................................................................27
11. Ejercicios:.......................................................................................................................................................................28
12. REPRESENTACIONESDEFOURIERPARALASSEALES.........................................................................29
13. CONVOLUCIN............................................................................................................................................................35
14. RESPUESTASENESTADOESTABLEAENTRADASESCALNUNITARIO........................................37
15. DISTRIBUCIONESDEPROBABILIDAD.............................................................................................................38
ApndiceA. IniciandoMatlab.........................................................................................................................................43
A.1. ComandosdepropositogeneralenMatlab....................................................................................................43
A.1.1. Manejodecomandosyfunciones..................................................................................................................43
A.1.2. Manejodevariablesydelespaciodetrabajo(workspace)...............................................................43
A.1.3. Trabajandoconarchivosyelsistemaoperativo....................................................................................44
A.1.4. Controldelaventanadecomandos..............................................................................................................44
A.1.5. ComandosparainiciarysalirdeMatlab....................................................................................................44
ComputacinAplicadaaSistemasElctricosdePotencia
3

A.1.6. Informaciongeneral............................................................................................................................................44
A.1.7. Funciondeoperadoresycaracteresespeciales......................................................................................44
A.1.8. Comandoslogicos.................................................................................................................................................45
A.2. Comandosdelaherramientadesistemasdecontrol(ControlSystemToolbox).........................45
A.2.1. Construcciondemodelos..................................................................................................................................45
A.2.2. Conversiondemodelos......................................................................................................................................46
A.2.3. Reducciondemodelos........................................................................................................................................46
A.2.4. realizaciondemodelos.......................................................................................................................................46
A.2.5. propiedadesdemodelos....................................................................................................................................46
A.2.6. respuestaeneltiempo.......................................................................................................................................47
A.2.7. respuestaalafrecuencia...................................................................................................................................47
A.2.8. lugardelasraices.................................................................................................................................................47
A.2.9. seleccindeganancia..........................................................................................................................................48
A.3. soluciondeecuaciones............................................................................................................................................48
A.4. Demonstraciones........................................................................................................................................................48



ComputacinAplicadaaSistemasElctricosdePotencia
4


1. DESCRIPCINDELPROGRAMAMATLAB

Matlab es un lenguaje de alto funcionamiento para computacin tcnica, Este integra
computacin, visualizacin, y programacin, en un entorno fcil de usar donde los
problemas y las soluciones son expresados en la ms familiar notacin matemtica. Los
usos ms familiares de Matlab son:
Matemtica y Computacin
Desarrollo de algoritmos
Modelado, simulacin y desarrollo de prototipos
Anlisis de datos, exploracin y visualizacin
Graficas cientficas y de ingeniera
Desarrollo de aplicaciones, incluyendo construccin de interfaces graficas de usuario
Matlab es un sistema interactivo cuyo elemento bsico de almacenamiento de informacin
es la matriz, cuya caracterstica fundamental es que no necesita dimensionamiento. Esto le
permite resolver varios problemas de computacin tcnica (especialmente aquellos que
tienen formulaciones matriciales y vectoriales) en una fraccin de tiempo similar al que se
gastara cuando se escribe un programa en un lenguaje no interactivo como C o FORTRAN
El nombre Matlab simboliza Matriz Laboratorio o Laboratorio de Matrices. Matlab fue
originalmente escrito para proveer fcil acceso el software de matrices desarrollado por los
proyectos LINPACK y EISPACK, hoy, los mores de Matlab incorporan las bibliotecas
LINPACK y BLAS,
Matlab se ha desarrollado sobre un periodo de aos con entradas provenientes de muchos
usuarios, en los entornos universitarios, Matlab es la herramienta instructiva estndar para
cursos avanzados e introductorios en matemticas, ingeniera y ciencia. En la industria
Matlab es la herramienta escogida para investigacin de alta productividad, desarrollo y
anlisis.
Matlab presenta una familia de soluciones a aplicaciones especficas de acoplamiento
rpido llamadas ToolBoxes. Los toolboxes son colecciones muy comprensibles de
funciones Matlab, o archivos de Matlab (M-files) que extienden el entorno de Matlab para
resolver clases particulares de problemas, Algunas reas en las cuales existen toolboxes
disponibles son:
- Procesamiento digital de seales
- Anlisis de sistemas elctricos de potencia
- Sistemas de control
- Redes neuronales
- Lgica difusa
- Wavelets
- Simulacin en general
ComputacinAplicadaaSistemasElctricosdePotencia
5

1.1. ELAMBIENTEDEPROGRAMACINMATLAB
El sistema Matlab consiste de cinco partes principales:
1.1.1. ENTORNODEDESARROLLO
Es el conjunto herramientas y mdulos que ayudan a usar las funciones y archivos de
Matlab. Muchas de esas herramientas son interfaces graficas de usuario. Esto incluye, el
escritorio de Matlab, la ventana de comandos, el historial de comandos, un editor y un
depurador, navegadores para revisin de la ayuda, el espacio de trabajo o workspace y los
archivos.
La biblioteca de funciones matemticas: esta es una gran coleccin de algoritmos
computacionales que van desde funciones elementales como la suma, la funcin seno y
coseno, y la aritmtica de nmeros complejos hasta funciones mucho ms sofisticadas
como inversas de matrices, eigenvalores de matrices, funciones de Bessel, y transformadas
radiadas de Fourier.
1.1.2. ELLENGUAJEMATLAB
1.1.3. GRFICAS
Matlab cuenta con mdulos extensivos para la visualizacin de vectores y matrices en
forma de graficas, as como para realizar comentarios e impresin de estas grficas. Matlab
incluye funciones de alto nivel para la visualizacin de datos en dos y tres dimensiones,
procesamiento de imgenes, animacin, y creacin de grficos de presentacin. Matlab
tambin incluye funciones de bajo nivel que permiten personalizar completamente la
apariencia de los grficos as como construir interfaces graficas de usuario para las
aplicaciones.
1.1.4. INTERFACESEXTERNAS
Las interfaces externas son un conjunto de bibliotecas que permiten la programacin en
lenguaje C y FORTRAN de programas que interacten con Matlab. Estas bibliotecas
proveen facilidades para realizar llamadas de rutinas desde Matlab.
1.1.5. AYUDAPARAMATLAB
Matlab provee documentacin extensiva, tanto en formato impreso como en lnea para
ayudar a los usuarios a aprender todas sus caractersticas. La ayuda online de Matlab
provee informacin orientada a tareas e informacin de referencia acerca de todas las
caractersticas de Matlab.
Para ver la documentacin online de Matlab seleccione la opcin Ayuda de Matlab del
men Ayuda en la barra de mens de Matlab.
ComputacinAplicadaaSistemasElctricosdePotencia
6


2. EXPRESIONES
Como la mayora de lenguajes de programacin, Matlab soporta la creacin de expresiones
matemticas, pero en contraste con los lenguajes de programacin, las expresiones en
Matlab tienen la capacidad de involucrar matrices y operaciones entre ellas. Las
expresiones se construyen con la combinacin de varios bloques bsicos los cuales son:
- Nmeros
- Variables
- Operadores
- Funciones
2.1. NUMEROS
Matlab usa para la representacin de los nmeros, notacin decimal convencional, con un
punto de separacin decimal opcional y la precedencia de un signo ms (+) o menos (-). La
notacin cientfica en Matlab hace uso de la letra epara especificar un factor de escala de
una potencia de 10.
Existen tres tipos de nmeros en Matlab:
- Nmeros Enteros
- Nmeros Reales
- Nmeros complejos
Los nmeros enteros son ingresados a Matlab sin el punto de separacin decimal. A
continuacin se muestra un ejemplo:
num_ent er o = 10
>> num_ent er o = 10
Para una descripcin ms detallada del inicio de Matlab y una lista extensiva de los
comandos ms comnmente empleados en este programa revise el apndice Iniciando
Matlab de este documento.
Cuando el valor que se ingresa est acompaado por el punto decimal, ste es almacenado
como un nmero real. Por ejemplo:
num_r eal = 10. 01
>> num_r eal = 10. 0100
ComputacinAplicadaaSistemasElctricosdePotencia
7

Los nmeros complejos en Matlab son representados en la forma rectangular. De manera


que todo numero tienen una parte real y una parte imaginaria. La unidad imaginaria en
Matlab se denota con los caracteres i o j. Por ejemplo.
>>i
Ans=0+1. 0000i
Todos los nmeros son almacenados internamente usando el formato long especificado por
el estndar de punto flotante de la IEEE. Los nmeros en punto flotante tienen una
precisin finita de 16 dgitos decimales significativos y un rango entre 10
-308
y 10
+308

La manera en que son almacenados estos nmeros por la maquina en que se est usando el
sistema Matlab est fuera del alcance de este tutorial, sin embargo puede hacerse referencia
a la documentacin tcnica disponible en el sitio web de Matlab www.matlab.com.

2.2. VARIABLES
Matlab no requiere ninguna declaracin de tipo o de dimensin para crear las variables.
Cuando Matlab encuentra un nombre nuevo de variable, automticamente crea la variable y
separa la cantidad apropiada de memoria para realizar el almacenamiento de la variable. Si
la variable ya existe, Matlab cambia su contenido y si es necesario separa nuevo espacio de
memoria para su almacenamiento. Por ejemplo la siguiente expresin
num_est udi ant es = 25
Crea una matriz de 1 fila x 1 columna, llamada num_est udi ant es y almacena el valor de
25 en la nica posicin existente.
Los nombres de las variables consisten de una letra seguida por cualquier nmero de letras
dgitos guiones bajos _. Matlab usa nicamente los primeros 31 caracteres del nombre
de una variable. Los nombres de las variables en Matlab son sensibles a las maysculas y
minsculas, de esta manera una variable llamada numtiene un espacio de almacenamiento
diferente a una variable llamada Num.
Existen dos constantes en Matlab las cuales denotan los nmeros reales ms pequeo y ms
grande que se puede usar, dichas constantes son r eal mi n y r eal max respectivamente.
Para observar los valores de estas tan solo es necesario escribir sus nombres en la ventana
de comandos de la siguiente manera.
>> r eal mi n
ans = 2. 2251e- 308
ComputacinAplicadaaSistemasElctricosdePotencia
8

Matlab posee tres constantes mas para la representacin de cantidades que no son
consideradas nmeros como tal. Estas cantidades son:
- Infinito negativo
- Infinito Positivo
- Cantidades indefinidas.
Y las respectivas constantes son:
- I nf
- - I nf
- NaN
Las dos primeras variables de la lista son las representaciones IEEE para el infinito positivo
y negativo. La cantidad infinito se genera por un desborde en las operaciones o por una
divisin por cero. La variable NaN, es una abreviacin de la frase en ingls: Not a
Number, que significa No numero. Esta cantidad es obtenida como resultado de
operaciones aritmticas indefinidas tales como 0/0 - .

2.3. OPERACIONESARITMETICAS
La lista de operaciones bsicas aritmticas en Matlab incluye se describe en la siguiente
lista.
Operacin Smbolo
Adicin +
Substraccin -
Multiplicacin *
Divisin / \
Exponenciacin ^
Complejo Conjugado

Matlab posee dos operadores de divisin:
- Divisin Derecha /
- Divisin Izquierda \
El resultado que producen dichos operadores no son los mismos, por ejemplo:
>> di v_der echa = 47/ 3
di v_der echa =
15. 6667
ComputacinAplicadaaSistemasElctricosdePotencia
9

>>di v_i zq = 47\ 3


di v_i zq=
0. 0638

2.4. FUNCIONES
Matlab provee un gran nmero de funciones matemticas elementales, como Valor
Absoluto, Raz Cuadrada, Seno, Coseno, Etc. El control de resultados en Matlab se realiza
con seguridad, por ejemplo, al calcular la raz cuadrada o el logaritmo de un nmero
negativo, no resulta la operacin en un error como ocurre en las calculadoras
convencionales o sistemas clsicos de clculos. El resultado de este tipo de operaciones es
controlado automticamente por Matlab y como resultado se obtiene el nmero complejo
que se obtiene al realizar la operacin tericamente. Matlab tambin provee muchas de las
ms avanzadas funciones matemticas, como las funciones de Bessel y funciones Gamma.
Para obtener una lista de las funciones elementales en Matlab se debe escribir el siguiente
comando:
>> hel p el f un
Para obtener la lista de las funciones ms avanzadas y de las funciones disponibles para
matrices se usan los siguientes comandos:
>>hel p specf un
>> hel p el mat
Algunas de las funciones, como Raz Cuadrada, y Seno, son funciones built in. Estas
funciones son parte del ncleo principal de Matlab de manera que estn programadas para
funcionar de manera muy eficiente. Por lo tanto el acceso a la implementacin
computacional de estas funciones no est disponible y su funcionamiento no puede ser
modificado. Otras funciones como Gamma o Seno Hiperblico Inverso, estn
implementadas con el lenguaje de programacin de Matlab en archivos llamados M-Files, a
los cuales se puede acceder completamente, por lo tanto es posible ver el cdigo fuente que
implementa dichas funciones y tambin es posible realizar modificaciones sobre el cdigo
fuente para de esta manera cambiar la implementacin computacional de la funcin.

3. EJEMPLOSDEEXPRESIONES
Los siguientes comandos son ejemplos de expresiones y sus valores de resultado.
Expresin Descripcin
r ho = ( 1+sqr t ( 5) ) / 2
Se crea la variable de nombre rho, a la
cual se asigna el valor del resultado de la
ComputacinAplicadaaSistemasElctricosdePotencia
10

r ho =
1. 6180
siguiente expresin matemtica:
1 5
2
+

a = abs( 3+4i )
a =
5
Se crea una variable de nombre a, a la
cual se asigna el valor absoluto del
nmero complejo 3 + 4 i. Como se puede
la funcin valor absoluto aplicada a un
numero complejo da como resultado la
Norma de dicho numero
z = sqr t ( bessel k( 4/ 3, r ho- i ) )
z =
0. 3730+ 0. 3214i
Calculo de otra variable haciendo uso de
las funciones avanzadas de Bessel
gr an_num= exp( l og( r eal max) )
gr an_num=
1. 7977e+308
Se calcula la siguiente expresin, lo cual
genera un nmero muy grande como
resultado.
muy_gr ande = pi *gr an_num
muy_gr ande =
I nf
El nmero anterior, multiplicado por el
nmero da como resultado un nmero
que es mayor que la constante realmax lo
cual genera un desborde y la cantidad
resultante es Infinito.

El objeto bsico usado en Matlab es una matriz numrica con la posibilidad de almacenar
nmeros complejos. Los datos encontrados en el estudio de seales y sistemas son siempre,
muy bien representados en forma de matrices. En esta seccin se usar Matlab para la
generacin de seales elementales como lo son las seales exponenciales, senoidales, etc.
El ToolBox de procesamiento de seales de Matlab posee una larga variedad de funciones
para la generacin de seales, estas seales requieren de una representacin vectorial de la
variable tiempo, de manera continua o discreta. Para realizar una simulacin de un intervalo
continuo, se usa un vector de valores discretos con un intervalo de muestreo muy pequeo.
El siguiente comando genera un vector llamado t de valores que representan la variable
tiempo, con un intervalo de muestreo de 1ms entre 0 y 1seg.
t = 0: 0. 001: 1;
Para generar un vector llamado n de valores que representan la variable tiempo para una
seal discreta en el intervalo de 0 a 1000, se puede usar el siguiente comando.
n = 0: 1000;
Despus de creado el vector que representa la variable tiempo, es posible iniciar el
desarrollo de alguna seal de inters.
ComputacinAplicadaaSistemasElctricosdePotencia
11

En Matlab una seal discreta en el tiempo se representa exactamente, porque los valores de
la seal son representados como los elementos de un vector. Sin embargo las seales de
tiempo continuo en Matlab son tan solo aproximaciones. La aproximacin consiste de un
vector cuyos elementos son muestras de la verdadera seal de tiempo continuo. Cuando se
usa esta tcnica para la representacin de seales continuas es importante escoger el
intervalo de muestreo lo suficientemente pequeo para asegurar que las muestras capturan
todos los detalles de la seal.

4. USOANIVELDECOMANDOS
La primera forma de interactuar con Matlab es a travs de la lnea de comandos. Puede
ejecutarse un comando si este escrito despus del smbolo >> y se presiona la tecla Enter,
ya que Matlab se basa en el lgebra de matrices como ejemplo crearemos una matriz. Estas
pueden estar formadas por un slo elemento (escalar), por una fila o una columna (vector) o
por una serie de filas y columnas (matriz propiamente dicha).
>>A=1
define A como un escalar de valor 1. Al definir A automticamente Matlab despliega en
pantalla su valor.
A =
1

Para no desplegar el valor de la variable creada, debe agregarse punto y coma (;) al final del
comando.
Luego de crear una variable, puede desplegarse su valor en pantalla escribiendo la variable
despus del prompt (>>).
>>A

Se pueden redefinir variables, por ejemplo:
>>A=[ 1 2 3]

define A como un vector de tres elementos, A(1)=1, A(2)=2 y A(3)=3. Estos elementos
deben separase con espacios en blanco o comas (,).
Para definir una matriz se deben separar las filas con punto y coma (;) o con retorno
(Enter).
>>A=[ 1 2 3; 4 5 6]
o
>>A=[ 1 2 3
4 5 6]

ComputacinAplicadaaSistemasElctricosdePotencia
12

ambos comandos producen el mismo efecto:


A =
1 2 3
4 5 6

El lgebra de matrices es posible mediante los operadores:
+ suma
- resta
* multiplicacin
^ potencia
' transpuesta
\ divisin izquierda
/ divisin derecha

>>A=[ 1 2 3; 4 5 6] ; B=[ 6 5 4; 3 2 1] ;
define las matrices A y B. Para sumarlas se escribe la operacin:
>>A+B

El resultado de la operacin es por defecto almacenado en la variable ans e inmediatamente
desplegado en pantalla:
ans =
7 7 7
7 7 7

Para almacenar la suma de A y B en la variable C:
>>C=A+B
C =
7 7 7
7 7 7

En el Apndice A se presentan los comandos de Matlab donde por ejemplo se encuentran
numerosas operaciones de manipulacin de matrices.

5. USOANIVELDEPROGRAMACIN
Programar en Matlab es usar una serie de comandos que permitan realizar una tarea o
funcin especfica. Estos pueden ser escritos uno por uno a travs de la lnea de comandos:

>>A=[ 1 2 3; 4 5 6; 7 8 9]
A =
1 2 3
4 5 6
7 8 9
ComputacinAplicadaaSistemasElctricosdePotencia
13


>>A'
ans =
1 4 7
2 5 8
3 6 9

El primer comando A=[ 1 2 3; 4 5 6; 7 8 9] define la matriz A y el siguiente comando A'
calcula y despliega en pantalla la transpuesta de A. Es posible hacer una coleccin de
comandos y agruparlos en un archivo de tipo texto y de extensin m (.m) llamado archivo-
m. Estos archivos pueden ser scripts o funciones. El script es un archivo-m que contiene
una serie de comandos que se ejecutarn al ejecutar dicho archivo en Matlab. La funcin, es
un archivo-m que permite la entrada y salida de argumentos adems de la ejecucin de
comandos.
El sistema MATLAB incluye las instrucciones tpicas de un lenguaje estructurado:
for, while e if.

5.1. CONSTRUCCINFOR
Con la instruccin de ciclo for se repite un conjunto de sentencias un nmero finito de
veces. Su esquema general es:
f or var i abl e = expr esi n, sent enci as, end
o, lo que es lo mismo:
f or var i abl e = expr esi n
sent enci as
end
En cada iteracin MATLAB guarda una columna de la expresin en la variable,
ejecutndose las sentencias hasta la siguiente sentencia end.
Ejemplo. Para calcular un vector cuyas componentes son los cinco primeros nmeros
naturales bastara con escribir el siguiente ciclo en la lnea de rdenes:
>> f or i =1: 5, v( i ) =i , end
v =
1

v =
1 2

v =
1 2 3

ComputacinAplicadaaSistemasElctricosdePotencia
14

v =
1 2 3 4

v =
1 2 3 4 5
De esta forma vemos cmo se va construyendo el vector en cada iteracin. Si slo se desea
saber el resultado final aadimos un punto y coma al final de la construccin del ciclo:

>> f or i =1: 5, v( i ) =i ; end, v

>>
v=1 2 3 4 5
5.2. 5.1CONSTRUCCINWHILE
Una opcin equivalente para la instruccin de ciclo for es la instruccin de ciclo while. El
ciclo while repite una secuencia de comandos por un nmero de veces hasta que alguna
condicin definida de antemano se complete. Esta instruccin puede hacer al cdigo de un
programa ms eficiente. Por ejemplo se puede ejecutar una serie de instrucciones por un
determinado nmero de veces en un ciclo for y se puede limitar esos clculos al incluir
while que detiene la ejecucin del programa en cuanto se cumple alguna condicin
preestablecida.
Su esquema general es:
whi l e ( condi ci on)
%MATLAB i nst r ucci ones 1
%MATLAB i nst r ucci ones 2
%Mas i nt r ucci ones par a ej ecut ar r epet i dament e hast a que l a expr esi n
whi l e no sea ver dader a
end
de donde condicin es la expresin lgica que puede ser cierta o falsa, definida por el
usuario. Por ejemplo, considere el siguiente ciclo while:
n = 1
whi l e n < 3
n = n+1
end
Al ejecutar este cdigo se crea la siguiente salida:
n =
1

n =
2

ComputacinAplicadaaSistemasElctricosdePotencia
15

n =
3
Nota para este ejemplo: Los comandos de Matlab mostrados aqu dentro del ciclo while se
encuentran indentados con respecto a las lneas while y end. Esto no es necesariamente
requerido por Matlab, sin embargo es una buena prctica del programador para hacer el
cdigo mucho ms legible.
5.3. 5.1CONSTRUCCINIF
La construccin if ejecuta un conjunto de sentencias si una condicin se cumple. Su sintaxis
general es:
i f condi ci n
sent enci as
end
Tambin existe la opcin de que se ejecute otro conjunto de sentencias si la condicin no se
cumple:
i f condi ci n
sent enci as
el se
sent enci as
end
o si se emplea la instruccin elseif se puede elegir entre ms de dos opciones de cdigo
i f condi ci on1
sent enci as1
el sei f condi ci on2
sent enci as2
end
De lo anterior si la condicion1 se evala como falsa y la condicion2 es verdadera, Matlab
ejecuta la instruccin o instrucciones contenidas en sentencias2. Una condicin tiene un
valor verdadero o no cero. La definicin de condiciones incluye normalmente el uso de
operadores relacionales tales como (contador<limite) o isreal(A). Las condiciones ms
simples pueden ser combinaciones de operadores lgicos tales como &, |, ~ para obtener
condiciones compuestas tales como: (contador<limite_contador)&((altura-sesgo)>=0).
Nota: la instruccin else if, con un espacio entre el else y el if difiere de la instruccin elseif
sin espacio. La primera forma introduce un nuevo ciclo if anidado que debe tener un end
para concluir. La segunda forma es usada en una secuencia lineal de instrucciones
condicionales que requieren un solo end al final.
Los dos segmentos de cdigo que se muestran a continuacin producen exactamente los
mismos resultados en Matlab. Solo uno de las definiciones para x se ejecuta dependiendo
de los valores de las tres expresiones lgicas A, B o C.
ComputacinAplicadaaSistemasElctricosdePotencia
16


Ejemplos
i f A i f A
x = a x = a
el se el sei f B
i f B x = b
x = b el sei f C
el se x = c
i f C el se
x = c x = d
el se end
x = d
end
end
end
En seguida se muestra un ejemplo de codigo con el uso de instrucciones if, else, y elseif.
f or m= 1: k
f or n = 1: k
i f m== n
a( m, n) = 2;
el sei f abs( m- n) == 2
a( m, n) = 1;
el se
a( m, n) = 0;
end
end
end
Para k=5 se tiene una matriz
a =

2 0 1 0 0
0 2 0 1 0
1 0 2 0 1
0 1 0 2 0
0 0 1 0 2
Lo ms prctico cuando se programa en Matlab es editar ficheros.m.
Estos ficheros son ficheros de texto que contienen rdenes de Matlab. Para utilizarlos se
siguen los siguientes pasos:
1. Escribimos el fichero en el editor de Matlab o en cualquier editor ASCII.
2. Lo guardamos con extensin .m.
3. Ejecutarlo escribiendo en la lnea de rdenes el nombre del fichero
4. Para crear un archivo-m se usa cualquier editor de textos, asegurndose de almacenar
dicho archivo con la extensin (.m). Matlab incluye un editor de archivos-m que se
ComputacinAplicadaaSistemasElctricosdePotencia
17

puede accesar mediante la opcin file del men principal. Por ejemplo, el siguiente
archivo ejemplo.m usa el comando for para crear el vector x.

%Ej empl o de un ar chi vo- m
%Cr eaci n del vect or x usando el comando f or
n=5;
f or i =1: n
x( i ) =i ^2;
end
x%Fi n del ar chi vo- m
Este ejemplo es un archivo .m tipo script. El smbolo % permite hacer comentarios. Para
ejecutarlo, en la lnea de comandos se debe escribir el nombre del archivo:
>>ej empl o
x =
1 4 9 16 25

Para crear funciones, debe crearse el respectivo archivo-m, llamado como se desea llamar a
la funcin. Por ejemplo, para crear una funcin llamada promedio debe guardarse en un
archivo llamado promedio.m. Este archivo debe incluir la declaracin de la funcin
mediante function. Esta funcin calcula el promedio de los elementos de un vector y grafica
dicho vector mediante el comando plot.

%Cal cul a el pr omedi o de l os el ement os de un vect or y di buj a di cho vect or
%Si nt axi s: pr omedi o( x) donde x es el vect or a pr omedi ar
f unct i on p = pr omedi o( x)
n=l engt h( x) ;
p=0;
f or i =1: n
p=p+x( i ) ;
end
p=p/ n;
pl ot ( x) ;

Para ejecutar la funcin, se hace el llamado en la lnea de comandos incluyendo el
parmetro. La funcin promedio usa por parmetro un vector. Este vector debe ser definido
previamente.

>>A=[ 1 2 4 3 7 5 6 1 2 0 8 5] ;
>>pr omedi o( A)
ans =
3. 6667

Matlab despliega las imgenes en una ventana de figuras. Al observar el contenido de dicha
ventana luego de ejecutar la funcin promedio, se tiene:
ComputacinAplicadaaSistemasElctricosdePotencia
18


Esta imagen es el resultado del comando plot(x) al ejecutar la funcin promedio.
Matlab posee un conjunto de archivos-m incorporados (built-in). Puede agregrsele
archivos-m definidos por el usuario almacenando los mismos en el directorio principal de
Matlab. Los comentarios incluidos en estos scripts y funciones se visualizan al usar el
comando help seguido del nombre del archivo. >>help promedio calcula el promedio de
los elementos de un vector y dibuja dicho vector Sintaxis: promedio(x) donde x es el vector
a promediar. Para ver el contenido de un archivo-m se usa el comando type seguido del
nombre del archivo.

6. SEALESPERIODICAS
La generacin de seales peridicas tales como ondas cuadradas y triangulares es una
actividad muy fcil de realizar en Matlab. Consideremos primero la generacin de una onda
cuadrada de amplitud A, frecuencia fundamental w (medida en radianes por segundo) y
ciclo til rho. Recordemos que el ciclo til es la fraccin de cada periodo en donde la seal
es positiva.
Para generar dicha seal se puede usar el siguiente conjunto de comandos:
A = 1;
w = 10 * pi ;
r ho = 0. 5;
t = 0: 0. 001: 1;
sq = A*squar e( w*t +r ho) ;
pl ot ( t , sq) ;
El resultado se puede observar en la siguiente grfica:
0 2 4 6 8 10 12
0
1
2
3
4
5
6
7
8
ComputacinAplicadaaSistemasElctricosdePotencia
19


En la segunda lnea, pi es una funcin interna de Matlab que calcula el nmero ms cercano
a la constante PI en formato de coma flotante. El ltimo comando es usado para ver la seal
generada. El comando plot dibuja lneas conectando los valores sucesivos de la seal y as
da la apariencia de una seal en tiempo continuo.
Consideremos ahora la generacin de una onda triangular de amplitud A, frecuencia
fundamental w y ancho Wdt. El periodo de la onda triangular ser T con el mximo valor de
la seal ocurriendo en t =WT . El comando bsico para generar esta seal es:
A * sawt oot h( w * t + Wdt )
El listado complete de comandos sera:
A = 1;
w = 10 * pi ;
Wdt = 0. 5;
t = 0: 0. 001: 1;
t r i = A*sawt oot h( w * t + Wdt ) ;
pl ot ( t , t r i ) ;


0 0.2 0.4 0.6 0.8 1
-1.5
-1
-0.5
0
0.5
1
1.5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
-1.5
-1
-0.5
0
0.5
1
1.5


ComputacinAplicadaaSistemasElctricosdePotencia
20

El resultado se puede visualizar en la siguiente grfica.


Como se menciono anteriormente, una seal generada en Matlab es inherentemente de
naturaleza discreta. Para visualizar una seal en tiempo discreto se puede hacer uso del
comando stem. Especficamente stem( n , x ), bosqueja los datos contenidos en el vector x
como una seal de tiempo discreto con los valores de tiempo definidos por el vector n. Los
vectores n y x deben tener dimensiones compatibles, es decir deben tener el mismo nmero
de elementos. El siguiente ejemplo genera una seal cuadrada en tiempo discreto de
amplitud igual a la unidad, ciclo til igual a 50% y una frecuencia angular igual a t/4:
A = 1;
omega = pi / 4;
r ho = 0. 5;
n = - 10: 10;
x = A*squar e( omega*n +r ho) ;
st em( n, x) ;
El resultado se puede ver en la siguiente grfica


7. SEALESEXPONENCIALES
Las seales exponenciales se pueden clasificar segn su comportamiento en decrecientes y
crecientes. El comando en Matlab para generar una seal exponencial decreciente es:
B * exp( - a*t ) ;
Para generar una seal exponencial creciente se usa el comando:
B * exp( a * t ) ;
En ambos casos el parmetro a es positivo. El siguiente ejemplo muestra la generacin de
una seal exponencial decreciente:
-10 -8 -6 -4 -2 0 2 4 6 8 10
-1.5
-1
-0.5
0
0.5
1
1.5
ComputacinAplicadaaSistemasElctricosdePotencia
21

B = 5;
a = 6;
t = 0: 0. 001: 1;
x = B * exp( - a * t ) ; %seal exponenci al decr eci ent e.
pl ot ( t , x ) ;

Siendo el resultado como sigue:

Para la generacin de una seal exponencial creciente se puede usar el siguiente ejemplo:
B = 1;
a = 5;
t = 0: 0. 001: 1;
x = B * exp( a * t ) ;
pl ot ( t , x ) ;



Existen casos particulares en los que la base de la operacin de exponenciacin no es el
nmero irracional e, puede ser cualquier otro nmero. Para estos casos se usa una notacin
diferente la cual est basada en la utilizacin del smbolo ^. Observando el ejemplo que
sigue se nota que r es un nmero mientras que n es un vector, por lo tanto se usa una
combinacin del smbolo exponenciacin con el carcter . Lo cual significa que a cada
valor del vector le ser aplicada la funcin.
El siguiente ejemplo genera la seal | |
n
x n Br =
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
50
100
150
ComputacinAplicadaaSistemasElctricosdePotencia
22


B = 1;
r = 0. 85;
n = - 10: 10;
x = B * r . ^ n;
st em( n , x ) ;

8. SEALESSINUSOIDALES.
Matlab tambin contiene funciones trigonomtricas que pueden ser usadas para generar
seales senosoidales. Una seal coseno de amplitud A, frecuencia w0 (medida en radianes
por segundo) y ngulo de fase phi (en radianes) se obtiene usando el comando:
A * cos ( w0 * t + phi ) ;
Alternativamente se puede usar la funcin seno para generar una seal senosoidal usando el
siguiente comando:
A * si n ( w0 * t + phi ) ;
En seguida se muestran ejemplos para cada uno de las seales respectivamente:
A = 4;
w0= 20 * pi ;
phi = pi / 6;
t = 0: 0. 001: 1;
coseno = A * cos( w0 * t + phi ) ;
pl ot ( t , coseno) ;



-10 -8 -6 -4 -2 0 2 4 6 8 10
0
1
2
3
4
5
6
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
-4
-3
-2
-1
0
1
2
3
4
ComputacinAplicadaaSistemasElctricosdePotencia
23

A = 0. 5;
w0 = 20 * pi ;
phi = pi / 2;
t = 0: 0. 001: 1;
seno = A * si n( w0 * t + phi ) ;
pl ot ( t , seno) ;


9. SEALESSENOISOIDALESCONAMORTIGUACINEXPONENCIAL.
En todos los comandos de generacin de seales descritos anteriormente, se ha generado la
amplitud deseada de las seales, realizando una multiplicacin por un escalar A. Esta
operacin se describe usando el smbolo asterisco *. Supongamos que se desea
multiplicar una seal senosoidal por una seal exponencial para producir como resultado
una seal con amortiguacin exponencial. La siguiente ecuacin describe mejor el supuesto
caso:
0
( ) sin( ) exp( ) x t A t at e | = +
Debido a que tanto la componente senoidal de la seal como la exponencial son vectores, el
procedimiento para la generacin de la seal final requiere de una multiplicacin de dos
vectores elemento por elemento. En Matlab este tipo de multiplicacin se representa usando
el smbolo punto (.) seguido por el smbolo asterisco (*). As el comando para generar la
ecuacin anterior sera;
A * si n( w0 * t + phi ) . * exp ( - a * t ) ;
Y un ejemplo completo sera:
A = 60;
w0 = 20 * pi ;
phi = 0;
a = 6;
expsen = A * si n( w0 * t + phi ) . * exp ( - a * t ) ;
pl ot ( t , expsen) ;

Dando como resultado la siguiente grfica:
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
-0.5
-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
ComputacinAplicadaaSistemasElctricosdePotencia
24


La versin discreta de la misma seal se puede obtener haciendo uso de los comandos
mostrados anteriormente de la siguiente manera:
A = 10;
a = - 0. 1;
w0 = 2 * pi / 12;
phi = 0;
n = - 10 : 10;
x = A * si n( w0 * n + phi ) ;
y = exp( a * n) ;
z = x . * y;
st em( n, z)

10. GENERACIONDESEALESIMPULSO,ESCALONYRAMPA.
En el lenguaje de Matlab, el comando ones( M, N) genera una matriz de unos de tamao M
x N, y el comando zer os( M, N) es una matriz de ceros del mismo tamao. Se puede hacer
uso de estas dos matrices para generar dos seales comnmente usadas.

10.1. SEALESCALON:
Una seal escaln de amplitud uno, puede ser generada con el siguiente comando.
U = [ zer os( 1, 10) , ones( 1, 11) ] ;
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
-40
-30
-20
-10
0
10
20
30
40
50
60
-10 -8 -6 -4 -2 0 2 4 6 8 10
-15
-10
-5
0
5
10
15
20
25
ComputacinAplicadaaSistemasElctricosdePotencia
25

Se puede graficar de dos formas para visualizar la seal de forma continua con el comando
plot, mientras que la versin discreta se grafica con el comando stem
Los comandos y los resultados para ambos tipos de seal se muestran a continuacin:
u=[ zer os( 1, 10) , ones( 1, 11) ;
t = - 1: 0. 1: 1;
pl ot ( t , u)
u=[ zer os( 1, 10) , ones( 1, 11) ] ;
n=- 10: 10;
st em( n, u)




De los comandos anteriores es de notar que para poder usar las funciones pl ot ( ) y st em( ) ,
es requisito que los vectores (t y u) (n y u) tengan iguales dimensiones. Por esta razn el
vector u se forma como una composicin de diez ceros y 11 unos, debido a que los arreglos
t y n, tienen dimensin 21 dado que incluyen un elemento central el cual es el nmero cero.
Para probar este hecho, se puede hacer uso de otra funcin de Matlab llamada si ze( ) que
devuelve como resultado un vector con las dimensiones de la matriz que se le pasa como
parmetro as:
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
-0.5
0
0.5
1
1.5
-10 -8 -6 -4 -2 0 2 4 6 8 10
-0.5
0
0.5
1
1.5
ComputacinAplicadaaSistemasElctricosdePotencia
26

>> si ze( n)
ans =
1 21
>> si ze( u)
ans =
1 21
>> si ze( t )
ans =
1 21
10.2. SEALIMPULSO:
La versin discreta de la seal impulso se puede tambin generar con ayuda de las
funciones zer os( ) y ones( ) , realizando una composicin como sigue:
del t a = [ zer os( 1 , 10 ) , 1 , zer os( 1 , 10 ) ] ;
n = - 10: 10;
st em( n, del t a) ;

Una versin continua podra evidentemente generarse usando la misma tcnica que se us
en el apartado anterior, sin embargo es necesario aumentar el nmero de muestras a fin de
maximizar la pendiente de la seal, en seguida se vern dos ejemplos con diferentes
nmero de muestras en el mismo intervalo de tiempo, como se puede ver la
correspondencia entre las dimensiones de los vectores se mantienen as que al aumentar el
tamao de muestras del vector que representa el tiempo es necesario aumentar el valor de
ceros y de unos con el cual se est creando la seal.
En el ejemplo se puede ver que a mayor numero de muestras, la pendiente de la seal se
hace mayor y la aproximacin a la seal verdadera es ms cercana.
del t a=[ zer os( 1, 10) , 1, zer os( 1, 10) ] ;
t =- 1: 0. 1: 1;
pl ot ( t , del t a)
-10 -8 -6 -4 -2 0 2 4 6 8 10
-0.5
0
0.5
1
1.5
ComputacinAplicadaaSistemasElctricosdePotencia
27



del t a = [ zer os( 1 , 1000 ) , 1 , zer os( 1 , 1000 ) ] ;
t =- 1: 0. 001: 1;
pl ot ( t , del t a)

10.3. SEALRAMPA
Para generar la seal rampa, tan solo es necesario recordar que esta funcin puede ser
creada, como la composicin de una recta Y(x) =x a partir de cero y de la recta Y(x) =0
para valores de x menores de cero, as la versin discreta y continua se muestran a
continuacin:
n1=0: 30;
r ampa1=n1;
r ampa = [ zer os( 1, 30) , r ampa1] ;
n=- 30: 30;
st em( n, r ampa)
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
-0.5
0
0.5
1
1.5
ComputacinAplicadaaSistemasElctricosdePotencia
28



t 1=0: 0. 1: 10;
r ampa1=t 1;
r ampa=[ zer os( 1, 101) , r ampa1] ;
t 2=- 10: 0. 1: 0;
t =[ t 2, t 1] ;
pl ot ( t , r ampa)


11. EJERCICIOS:
1. Desarrollar un conjunto de comandos Matlab para aproximar las siguientes
seales peridicas en tiempo continuo, dibujando 5 ciclos de cada una:
a. Onda Cuadrada, de amplitud 5 Volts, frecuencia fundamental 20 Hz
y amplitud de ciclo del 60%.
b. Seal diente de sierra, amplitud 5 Volts y frecuencia fundamental
20Hz
2. La solucin a una ecuacin diferencial est dada por la siguiente expresin:
0.5
( ) 10 5
t t
x t e e

=
-30 -20 -10 0 10 20 30
0
5
10
15
20
25
30
-10 -8 -6 -4 -2 0 2 4 6 8 10
0
1
2
3
4
5
6
7
8
9
10
ComputacinAplicadaaSistemasElctricosdePotencia
29

Usando Matlab, grafique la solucin de la ecuacin en el siguiente intervalo


[0,5] con una frecuencia de muestreo de 100 Hz
3. Repita el problema nmero dos para la siguiente expresin:
0.5
( ) 10 5
t t
x t e e

= +
4. Una seal senoidal con amortiguacin exponencial est definida por la
siguiente expresin:
( ) 20*sin(2 *1000 ) exp( )
3
x t t at
t
t =
Donde el parmetro a es variable y toma valores sobre el siguiente conjunto:
500, 750, 1000. Usando Matlab, investigar el efecto de variar dicho
parmetro en la seal en el intervalo [-2,2].


12. REPRESENTACIONESDEFOURIERPARALASSEALES
Existen cuatro representaciones distintas de Fourier, cada una aplicable a diferentes tipos de
seales. Estas cuatro clases estn definidas por las propiedades de periodicidad de una seal
y si el tiempo es de tipo continuo o discreto. Las seales peridicas tienen representacin en
series de Fourier. La Serie de Fourier (FS) aplica a seales peridicas de tiempo continuo
mientras que la Serie Discreta de Fourier (DTFS) aplica a seales peridicas de tiempo
discreto. Las seales no peridicas tienen representacin en forma de transformada. Si la
seal es continua en el tiempo y no peridica, la representacin es llamada Transformada
de Fourier (FT). Si la seal es discreta en el tiempo y no peridica entonces la
representacin usada es la transformada de Fourier en tiempo discreto (DTFT). La
siguiente tabla ilustra la relacin entre las propiedades de tiempo de una seal y la
representacin de Fourier adecuada.
Tiempo Peridicas No peridicas
Continuas
Series de Fourier
( FS )
Transformada de
Fourier
( FT )
ComputacinAplicadaaSistemasElctricosdePotencia
30

Discretas
Series discretas de
Fourier
( DTFS )
Transformada discreta
de Fourier
( DTFT)
La siguiente tabla muestra las relaciones matemticas utilizadas para calcular las
representaciones de Fourier.
Tipo de
Seales
Peridicas No peridicas
Continuas
Series de Fourier
| |
| |
0
0
( )
( )
1
( )
jk t
k
jk t
T
x t X k e
X k x t e dt
T
e
e

=
=

}

de donde x(t) tiene un periodo T
y
0
2
T
t
e =
Transformada de Fourier

1
( ) ( )
2
( ) ( )
j t
j t
x t X j e d
X j x t e dt
e
e
e e
t
e

=
=
}
}

Discretas
Series discretas de Fourier
| | | |
( )
| | | |
( )
0
0
1
jk n
k N
jk n
n N
x n X k e
X k x n e
N
O
=
O
=
=
=


x[n] y X[k] tienen periodo N y
0
2
N
t
O =
Transformada discreta de Fourier
1
[ ] ( )
2
( ) [ ]
j j n
j j n
n
x n X e e d
X e x n e
t
t
t
O O

O O
=
= O
=
}

de
donde ( )
j
X e
O
tiene un periodo de
2t
La Transformada Discreta de Fourier (DTFS)
La DTFS es la nica representacin de Fourier que es de valor discreto tanto en el tiempo
como en la frecuencia y de esta manera implcitamente conveniente para una
implementacin computacional en Matlab. Las expresiones utilizadas para esta
representacin son fcilmente implementables en Matlab como archivos. Sin embargo los
comandos built-in de Matlab fft y ifft pueden tambin ser utilizados para evaluar la DTFS.
Dado un vector llamado x de longitud N representando un periodo de una seal peridica
x[n]. El comando:
>> X=f f t ( x) / N
ComputacinAplicadaaSistemasElctricosdePotencia
31

Produce un vector llamado X de longitud N que contiene los coeficientes de la DTFS.


Matlab asume que el periodo evaluado en la seal es desde 0 hasta N-1, de manera que el
primer elemento de x y X corresponden a x[0] y X[0] respectivamente, mientras que los
ltimos elementos corresponden a x[N-1] y X[N-1]. Ntese que la divisin por N es
completamente necesaria, debido a que el comando fft evala la siguiente expresin sin
realizar la divisin por N.
| | | |
( )
0
1
jk n
n N
X k x n e
N
O
=
=


Similarmente, dados los coeficientes de una DTFS en un vector llamado X el comando:
>>x=i f f t ( X) *N
Produce un vector x que representa un periodo de la seal en el tiempo. Ntese que el
comando ifft debe estar multiplicado por N para evaluar la siguiente ecuacin.
| | | |
( )
0
jk n
k N
x n X k e
O
=
=


Los comandos fft e ifft son computados usando un algoritmo rpido o numricamente
eficiente, conocido como Fast Fourier Transform.
Considere el siguiente ejemplo:
1 3
[ ] 1 sin
12 8
x n n
t
t
| |
= + +
|
\ .

Determinar los coeficientes DTFS para la siguiente seal:

La seal tiene un periodo de 24, de manera que tan solo se hace necesario definir un
periodo y evaluar sobre este periodo la DTFS. Los comandos usados para realizar dicho
clculo son:
>> n = 0: 23;
>> x = ones( 1, 24) + si n( ( n * pi / 12) + ( 3 * pi / 8 ) ) ;
>> X = f f t ( x) / 24;
El resultado terico del ejemplo es el siguiente:
ComputacinAplicadaaSistemasElctricosdePotencia
32

| |
(3 /8)
(3 /8)
1
2
1 0
[ ]
1
2
0
j
j
e
k
j
k
x n k
e
k
j
otro caso
t
t

=
=


El resultado obtenido mediante los comandos presentados anteriormente es:
X =
Col umns 1 t hr ough 5
1. 0000 0. 4619 - 0. 1913i 0. 0000 + 0. 0000i - 0. 0000 + 0. 0000i - 0. 0000 +
0. 0000i
Col umns 6 t hr ough 10
- 0. 0000 - 0. 0000i 0. 0000 - 0. 0000i 0. 0000 - 0. 0000i 0. 0000 + 0. 0000i -
0. 0000 - 0. 0000i
Col umns 11 t hr ough 15
- 0. 0000 - 0. 0000i - 0. 0000 - 0. 0000i 0 - 0. 0000 + 0. 0000i - 0. 0000 + 0. 0000i
Col umns 16 t hr ough 20
- 0. 0000 + 0. 0000i 0. 0000 - 0. 0000i 0. 0000 + 0. 0000i 0. 0000 + 0. 0000i -
0. 0000 + 0. 0000i
Col umns 21 t hr ough 24
- 0. 0000 - 0. 0000i - 0. 0000 - 0. 0000i 0. 0000 - 0. 0000i 0. 4619 + 0. 1913i
Como se puede ver, tres componentes tienen valor diferente de cero.
Un uso comn de la transformada de Fourier, es encontrar las componentes frecuenciales
de una seal en el dominio del tiempo que est contaminada con ruido. Considrese dos
seales senoidales que tienen frecuencias fundamentales de 50Hz y 120Hz, luego
considrese estas seales contaminadas con ruido aleatorio. Los comandos para generar una
seal con las especificaciones anteriormente mostradas son los siguientes:
t = 0: 0. 001: 0. 6;
x = si n ( 2 * pi * 50 * t ) + si n ( 2 * pi * 120 * t ) ;
y = x + 2 * r andn ( si ze ( t ) ) ;
pl ot ( 1000 * t ( 1: 50) , y ( 1: 50) )

ComputacinAplicadaaSistemasElctricosdePotencia
33


Es de gran dificultad identificar las componentes de frecuencia mirando la seal original.
Sin embargo al realizar la conversin de esta seal al dominio de la frecuencia, la
identificacin de estas componentes se hace ms sencilla. La conversin de la seal al
dominio de la frecuencia se hace calculando la Transformada Rpida de Fourier, tomando
para el clculo los primeros 512 puntos de la seal. El espectro de potencia es una medida
de la potencia a varias frecuencias, y este puede ser calculado con los siguientes comandos.
Pyy = y . * conj ( y) / 512;
Para realizar la grfica se puede tener en cuenta que la informacin que aparece en el
arreglo Pyy es por propiedades de la transformada, simtrica con respecto a la frecuencia
media, es decir que si tenemos 512 puntos de muestra, la seal que esta almacenada en el
arreglo es simtrica con respecto a la muestra 256, por lo tanto dibujar las ultimas 256
muestras del arreglo ser completamente innecesario. De manera que para visualizar el
espectro de potencia los comandos deben ser como se muestran a continuacin:
f = 1000*( 0: 256) / 512;
pl ot ( f , Pyy( 1: 257) )


Para ver todas las muestras y entender la caracterstica de simetra descrita anteriormente se
pueden utilizar los siguientes comandos:
0 10 20 30 40 50
-5
-4
-3
-2
-1
0
1
2
3
4
5
0 100 200 300 400 500
0
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
ComputacinAplicadaaSistemasElctricosdePotencia
34


f = 1000*( 0: 511) / 512;
pl ot ( f , Pyy)


Del espectro de potencia se puede visualizar que las componentes con mayor frecuencia se
encuentran a los 50 y 120 Hz respectivamente. Comprobando as que las seales de las
cuales se formo la seal contaminada con ruido tienen estas frecuencias fundamentales.
Los computadores digitales son ideales para la implementacin de descripciones en el
dominio del tiempo de sistemas discretos, porque naturalmente el computador almacena y
manipula secuencias de nmeros. Por ejemplo, la suma de convolucin describe la relacin
entre la entrada y la salida de un sistema de tiempo discreto, y es fcilmente evaluada en un
computador como la suma de productos de nmeros. En contraste, los sistemas de tiempo
continuo, son descritos en trminos de funciones continuas, las cuales no son fcilmente
representadas o manipuladas en un computador digital. Por ejemplo, la salida de un sistema
en tiempo contino esta descrita por la integral de convolucin. La evaluacin de la integral
de convolucin con un computador requiere el uso de integracin numrica o de tcnicas de
manipulacin simblica, ambas fuera del alcance de este tutorial. Por lo tanto la
exploracin con Matlab se centra en el estudio de sistemas en tiempo discreto.
Una segunda limitacin en la exploracin de seales y sistemas es la que se impone por la
memoria finita o por la capacidad de almacenamiento finita que es inherente en un
computador digital. Por lo tanto se manejaran nicamente seales de duracin finita. Por
ejemplo si la respuesta al impulso de un sistema tiene duracin infinita y la entrada es de
duracin infinita, entonces la suma de convolucin equivale a la suma de un infinito
nmero de productos. Aun si fuese posible almacenar seales de longitud infinita en el
computador, la suma infinita podra no ser calculada en una cantidad finita de tiempo.
Debido a esta limitacin, el comportamiento de un sistema en respuesta una seal de
longitud infinita podra a menudo ser inferida de su respuesta a una seal de longitud finita
que presente ciertas particularidades.
0 200 400 600 800 1000
0
0.02
0.04
0.06
0.08
0.1
0.12
ComputacinAplicadaaSistemasElctricosdePotencia
35

13. CONVOLUCIN
Es de recordar que la suma convolucin expresa la salida de un sistema de tiempo discreto
en trminos de la entrada y la respuesta al impulso del sistema. Matlab tiene una funcin
llamada conv que evala la convolucin de seales de tiempo discreto de duracin finita. Si
x y h son vectores representado seales, entonces el siguiente comando de Matlab genera
un vector llamado y representando la convolucin de la seales representadas por x y h.
y = conv( x, h)
El nmero de elementos en el vector y es dado por la suma del nmero de elementos en x y
h menos uno. Ntese que se debe conocer el tiempo de origen de las seales representadas
por x y h con el fin de determinar el tiempo de origen de la convolucin. En general, si el
primer elemento de x corresponde al tiempo n=k
x
y el primer elemento de h corresponde a
n=k
h
, entonces el primer elemento de y corresponde al tiempo n= k
x
+k
h
.
Para ilustrar este hecho, considere el siguiente ejemplo:
- Asuma el sistema LTI el cual tiene la siguiente respuesta al impulso.
| |
1 1
2 0
0
n
h n n
otro caso
=

= =


Determine la salida de este sistema en respuesta a la siguiente entrada.
| |
2 2
3 1
2 2
0
n
n
x n
n
otro caso
=

=

=


Aqu el primer elemento diferente de cero en la respuesta al impulso del sistema ocurre en
el tiempo n = -1 y el primer elemento de la entrada x ocurre en el tiempo n = 0. La anterior
convolucin se puede calcular en Matlab de la siguiente manera:
>> h = [ 1, 2, 1] ;
>> x = [ 2, 3, - 2] ;
>> y = conv( x, h)
y =
2 7 6 - 1 - 2
>> n = - 1: 3;
>> st em( n, y) ;
ComputacinAplicadaaSistemasElctricosdePotencia
36


El primer elemento en el vector y corresponde al tiempo n = 0 + (-1 ) = -1.
En el siguiente ejemplo, se determinar la salida de un sistema con respuesta al impulso
dada por:
[ ] [ ] [ 10] h n u n u n =
Y entrada
[ ] [ 2] [ 7] x n u n u n =
Se puede en este caso usar el comando conv para calcular la respuesta del sistema. En este
caso, la respuesta al impulso consiste de diez unos consecutivos comenzando en el tiempo n
= 0, y la entrada consiste de cinco unos consecutivos comenzando en el tiempo n = 2. Estas
seales pueden ser definidas en Matlab usando los siguientes comandos:
>> h = ones( 1, 10) ;
>> x = ones( 1, 5) ;
La salida se obtiene y es graficada usando los siguientes comandos:
>> n = 2: 15;
>> y = conv( x, h) ;
>> st em( n, y) ;

-1 -0.5 0 0.5 1 1.5 2 2.5 3
-2
-1
0
1
2
3
4
5
6
7
2 4 6 8 10 12 14 16
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
ComputacinAplicadaaSistemasElctricosdePotencia
37

En este ejemplo, el primer elemento del vector y corresponde al tiempo n = 2 + 0 como se


muestra en la siguiente figura.
14. RESPUESTAS EN ESTADO ESTABLE A ENTRADAS ESCALN
UNITARIO
La respuesta escaln, es la salida de un sistema en respuesta a una seal de entrada escaln
unitario. Esta respuesta es infinita en general. Sin embargo, es posible evaluar los primeros
p valores de la respuesta escaln usando la funcin conv.
Si la respuesta al impulso es cero para los tiempos n<k
h
, entonces el clculo se realiza
convolucionando los primeros p valores de h[n] con una seal paso de longitud p. Es decir
se construye un vector h con los primeros p valores diferentes de cero de la respuesta al
impulso h, luego se define una seal paso de duracin p con el siguiente comando
u=ones(1,p), y entonces se evala la siguiente convolucin s =conv(u,h). El primer
elemento de s corresponde a el tiempo k
h
y los primeros p valores de s representan los
primeros p valores de la respuesta paso. Los valores sobrantes de s no corresponden a la
respuesta paso.
Por ejemplo se podra determinar los 50 primeros valores de la respuesta paso del sistema
con la siguiente respuesta al impulso:
[ ] ( ) [ ]
n
h n a u n =
Con a = 0.9 los comandos de Matlab seran:
>> h = ( - 0. 9) . ^[ 0: 49] ;
>> u = ones( 1, 50) ;
>> s= conv( u, h) ;
El vector s tienen 99 valores, los primeros 50 corresponden a la respuesta impulso y es
mostrada en la siguiente figura usando el siguiente comando:
>>st em( [ 0: 49] , s( 1: 50) ) ;

0 10 20 30 40 50
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
ComputacinAplicadaaSistemasElctricosdePotencia
38

En este ultimo comando se pasan a la funcin stem dos parmetros diferentes a los
mostrados en los anteriores ejemplos, el primero es un vector annimo de 50 posiciones
desde 0 hasta 49 que representa el tiempo, se dice que el vector es annimo puesto que no
se le ha definido algn nombre. El segundo parmetro es el vector s que se haba calculado
anteriormente, pero en este caso se agrega la fraccin de cdigo (1:50) que indica a Matlab
que debe usar tan solo los elementos de s que estn almacenados desde la posicin 1 hasta
la 50.

15. DISTRIBUCIONESDEPROBABILIDAD
La siguiente tabla muestra las distintas distribuciones de probabilidad disponibles en
Matlab tanto para variables continuas como para variables discretas.
Continuas Discretas
Beta Binomial
Exponencial Uniforme Discreta
Valor Extremo
Gamma Geomtrica
Valor Extremo generalizada
Pareto Generalizada
Lognormal Hiper-Geomtrica
Normal Binomial Negativa
Rayleigh Poisson
Uniforme
Chi-square
Chi-square no central
Weibull
En esta seccin se provee una revisin de algunas distribuciones de probabilidad
comnmente usadas. Se cubrirn dos distribuciones discretas muy importantes: La binomial
y la Poisson.
En Matlab existen dos sufijos que ayudan a clasificar las funciones entre aquellas que son
funciones de densidad de probabilidad y las que son funciones de distribucin
acumulativas. La funcin de densidad de probabilidad usa el sufijo PDF de las siglas del
ingles (Probability Density Function). La funcin de distribucin acumulativa usa el sufijo
CDF de las siglas del ingles (Cumulative Distribution Function).
ComputacinAplicadaaSistemasElctricosdePotencia
39

Funciones de densidad de probabilidad


Para distribuciones discretas, la PDF es la probabilidad de observar un resultado particular.
Para distribuciones continuas la probabilidad de observar un valor particular es cero. Para
obtener estas probabilidades se debe integrar sobre un intervalo de inters, por ejemplo la
probabilidad de que el grosor de un video cassete este entre 1 y 2 mm, es la integral de la
funcin PDF apropiada desde uno hasta dos.
Una funcin PDF tiene dos propiedades tericas:
- La funcin es positiva o cero para cualquier resultado.
- La integral de una funcin PDF sobre su rango completo de valores es uno.
Funciones de distribucin acumulativas
Si f en una funcin de densidad de probabilidad para una variable aleatoria X, la funcin de
distribucin acumulativa o CDF asociada llamada F es:
( ) ( ) ( ) F x P X x f t dt

= s =
}

El valor de una CDF de un valor x, es decir F(x), es la probabilidad de observar algn
resultado que sea menor o igual que x.
Una funcin CDF tiene las siguientes propiedades.
El rango de la funcin es de 0 hasta 1.
Si y>x, entonces el CDF de y es mayor o igual que el del CDF de x
Distribucin Binomial.
Se tiene un experimento, cuyo resultado pueda ser identificado como xito o fracaso.
Si X=1 denota un resultado de xito y X=0 denota un resultado de fracaso, entonces se
puede escribir una funcin de probabilidad como se muestra a continuacin:

(0) ( 0) 1
(1) ( 1)
f P X p
f P X p
= = =
= = =

Donde p representa la probabilidad de un resultado exitoso. Una variable aleatoria que se
rige a travs de esta funcin de probabilidad donde se cumple que 0 < p < 1 es llamada una
variable aleatoria de Bernoulli.
Ahora, supngase que se repite este experimento n veces, donde cada intento es
independiente (el resultado de un intento no influye en el resultado del otro) y donde el
ComputacinAplicadaaSistemasElctricosdePotencia
40

experimento resulta en xito con una probabilidad p. Si X denota el nmero de xitos en los
n intentos, entonces X se rige por una distribucin Binomial con parmetros (n, p).
Para calcular la probabilidad binomial, se usa la siguiente frmula:
( ; , ) ( ) (1 ) ; 0,1,...,
x n x
n
f x n p P X x p p x n
x

| |
= = = =
|
\ .

Obsrvese el siguiente ejemplo el cual hace uso del Toolbox de Estadstica de Matlab:
Existe un 20% de oportunidad que un adulto Americano sufra de un desorden psiquitrico.
Aleatoriamente se muestrean 25 adultos Americanos. Si X representa el nmero de
personas las cuales tienen un desorden psiquitrico, entonces X es una variable aleatoria
Binomial con parmetros (25, 0.20). Se est interesado en la probabilidad de que mximo 3
de las personas encuestadas tengan tal desorden.
Para resolver este problema se puede hacer el uso de la funcin binocdf, para determinar P(
X 3 ) de la siguiente manera:
>>pr ob = bi nocdf ( 3, 25, 0. 2) ;
Tambin se puede calcular la suma de los valores individuales de la funcin de
probabilidad desde X=0 hasta X=3 as:
>>pr ob2=sum( bi nopdf ( 0: 3, 25, 0. 2) ) ;
Ambos comandos retornan la probabilidad de 0.234
Los siguientes comandos generan una grafica de una pdf binomial para n=10 y p= 1/2
>> x = 0: 10;
>> y = bi nopdf ( x, 10, 0. 5) ;
>> pl ot ( x, y, ' +' )

Distribucin de Poisson.
0 2 4 6 8 10
0
0.05
0.1
0.15
0.2
0.25
ComputacinAplicadaaSistemasElctricosdePotencia
41

Una variable aleatoria X es una variable aleatoria que se rige por la distribucin de Poisson
con un parmetro , con >0, si satisface la siguiente expresin:
( ; ) ( ) 0,1,...
!'
x
f x P X x e x
x


= = = =
La distribucin de Poisson puede ser usada en muchas aplicaciones. Ejemplos de estas
situaciones en las cuales se involucra una variable aleatoria discreta son:
- El numero de errores tipogrficos en una pgina.
- El nmero de vacantes en una compaa durante un mes.
- El numero de defectos en una longitud de cable.
La distribucin de Poisson es a menudo usada para aproximar la Binomial. Cuando n es
largo y p es pequeo de manera que n*p es un numero moderado entonces el numero de
xitos que ocurren pueden ser aproximados por una variable aleatoria de Poisson con el
parmetro =n*p.
El siguiente ejemplo muestra el uso de las funciones de Matlab para el clculo de
probabilidades con la distribucin de Poisson.
Mientras se estuvo preparando este texto, se realiza la revisin ortogrfica con un asistente
de ayuda El asistente arrojo los resultados y se determino que los errores por pgina se
rigen por la distribucin de Poisson con parmetro =0.25. En seguida se calcula la
probabilidad de que una pgina tenga al menos dos errores:
0.25 0.25
( 2) 1 { ( 0) ( 1)} 1 0.25 0.0265 P X P X P X e e

> = = + = = ~
Esta probabilidad se puede calcular con la funcin posscdf de la siguiente manera.
Ntese que la siguiente expresin muestra la forma general de una funcin de distribucin
acumulativa para una variable aleatoria discreta.
( ) ( ); 1, 2,...
i
i
x a
F a f x i
s
= =


Luego la expresin P(X=0) + P(X=1) es la funcin de distribucin acumulativa en la cual el
parmetro a de la ecuacin anterior es igual a 1. Luego el comando para el clculo de la
probabilidad ser el siguiente:
pr ob = 1- poi sscdf ( 1, 0. 25) ;
El siguiente listado de comandos muestra el uso de la funcin poisspdf
>> x = 0: 15;
>> y = poi sspdf ( x, 5) ;
ComputacinAplicadaaSistemasElctricosdePotencia
42

>> pl ot ( x, y, ' +' )





0 5 10 15
0
0.02
0.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
ComputacinAplicadaaSistemasElctricosdePotencia
43


APNDICEA. INICIANDOMATLAB

Despus de ejecutar el programa Matlab desde el sistema operativo empleado, por ejemplo
haciendo doble clic sobre el icono de Matlab en ambientes Windows, aparece el indicador
de comandos el cual est listo para recibir instrucciones en lenguaje Matlab. Este indicador
es de la siguiente forma:
>>
Al iniciar el uso de Matlab estn disponibles dos comandos de ayuda y demostracin. Para
ejecutarlos se escribe el comando en la lnea de comandos despus del smbolo >> y se
presiona la tecla Enter. Por ejemplo el comando:
>>hel p
permite obtener una ayuda sobre los diferentes comandos de Matlab y
>>demo
hace una demostracin de las diferentes aplicaciones de Matlab. Para cerrar o finalizar el
uso de Matlab se usa el comando quit.
>>qui t
A.1. COMANDOSDEPROPOSITOGENERALENMATLAB

A.1.1. MANEJODECOMANDOSYFUNCIONES
Hel p - Documentacin de ayuda en lnea.
what - Listado de los directorios (carpetas) con archivos M-, MAT- y MEX.
t ype - Listado de archivos M.
l ookf or - Bsqueda por palabras clave en la informacin de ayuda de los archivos M.
whi ch - Para localizar funciones y archivos M.
demo - Ejecuta ejemplos de demostracin incluidos en Matlab.
pat h - Busqueda de la ruta de funciones y archivos M en Matlab.
A.1.2. MANEJODEVARIABLESYDELESPACIODETRABAJO
(WORKSPACE)
Who - List current variables.
whos - List current variables, long form.
l oad - Retrieve variables from disk.
save - Save workspace variables to disk.
cl ear - Clear variables and functions from memory.
pack - Consolidate workspace memory.
si ze - Size of matrix.
ComputacinAplicadaaSistemasElctricosdePotencia
44

length - Length of vector.


disp - Display matrix or text.
A.1.3. TRABAJANDO CON ARCHIVOS Y EL SISTEMA
OPERATIVO
cd - Change current working directory.
dir - Directory listing.
delete - Delete file.
getenv - Get environment value.
! - Execute operating system command.
unix - Execute operating system command & return result.
diary - Save text of Matlab session.
A.1.4. CONTROLDELAVENTANADECOMANDOS
cedit - Set command line edit/recall facility parameters.
clc - Clear command window.
home - Send cursor home.
format - Set output format.
echo - Echo commands inside script files.
more - Control paged output in command window.
A.1.5. COMANDOSPARAINICIARYSALIRDEMATLAB
quit - Terminate Matlab.
startup - M-file executed when Matlab is invoked.
Matlabrc - Master startup M-file.
A.1.6. INFORMACIONGENERAL
info - Information about Matlab and The MathWorks, Inc.
subscribe - Become subscribing user of Matlab.
hostid - Matlab server host identification number.
whatsnew - Information about new features not yet documented.
ver - Matlab, SIMULINK, and TOOLBOX version information.
A.1.7. FUNCION DE OPERADORES Y CARACTERES
ESPECIALES
Char Name HELP topic
+ Plus arith
- Minus arith
* Matrix multiplication arith
.* Array multiplication arith
^ Matrix power arith
.^ Array power arith
\ Backslash or left division slash
/ Slash or right division slash
./ Array division slash
kron Kronecker tensor product kron
ComputacinAplicadaaSistemasElctricosdePotencia
45

: Colon colon
( ) Parentheses paren
[ ] Brackets paren
. Decimal point punct
.. Parent directory punct
... Continuation punct
, Comma punct
; Semicolon punct
% Comment punct
! Exclamation point punct
' Transpose and quote punct
= Assignment punct
== Equality relop
< > Relational operators relop
& Logical AND relop
| Logical OR relop
~ Logical NOT relop
xor Logical EXCLUSIVE OR xor
A.1.8. COMANDOSLOGICOS
exist - Check if variables or functions are defined.
any - True if any element of vector is true.
all - True if all elements of vector are true.
find - Find indices of non-zero elements.
isnan - True for Not-A-Number.
isinf - True for infinite elements.
finite - True for finite elements.
isempty - True for empty matrix.
issparse - True for sparse matrix.
isstr - True for text string.
isglobal - True for global variables.

A.2. COMANDOS DE LA HERRAMIENTA DE SISTEMAS DE
CONTROL(CONTROLSYSTEMTOOLBOX)
A.2.1. CONSTRUCCIONDEMODELOS
append - Append system dynamics.
augstate - Augment states as outputs.
blkbuild - Build state-space system from block diagram.
cloop - Close loops of system.
connect - Block diagram modeling.
conv - Convolution of two polynomials.
destim - Form discrete state estimator from gain matrix.
dreg - Form discrete controller/estimator from gain matrices.
drmodel - Generate random discrete model.
ComputacinAplicadaaSistemasElctricosdePotencia
46

estim - Form continuous state estimator from gain matrix.


feedback - Feedback system connection.
ord2 - Generate A,B,C,D for a second-order system.
pade - Pade approximation to time delay.
parallel - Parallel system connection.
reg - Form continuous controller/estimator from gain matrices.
rmodel - Generate random continuous model.
series - Series system connection.
ssdelete - Delete inputs, outputs, or states from model.
ssselect - Select subsystem from larger system.
A.2.2. CONVERSIONDEMODELOS
c2d - Continuous to discrete-time conversion.
c2dm - Continuous to discrete-time conversion with method.
c2dt - Continuous to discrete conversion with delay.
d2c - Discrete to continuous-time conversion.
d2cm - Discrete to continuous-time conversion with method.
poly - Roots to polynomial conversion.
residue - Partial fraction expansion.
ss2tf - State-space to transfer function conversion.
ss2zp - State-space to zero-pole conversion.
tf2ss - Transfer function to state-space conversion.
tf2zp - Transfer function to zero-pole conversion.
zp2tf - Zero-pole to transfer function conversion.
zp2ss - Zero-pole to state-space conversion.
A.2.3. REDUCCIONDEMODELOS
balreal - Balanced realization.
dbalreal - Discrete balanced realization.
dmodred - Discrete model order reduction.
minreal - Minimal realization and pole-zero cancellation.
modred - Model order reduction.
A.2.4. REALIZACIONDEMODELOS
canon - Canonical form.
ctrbf - Controllability staircase form.
obsvf - Observability staircase form.
ss2ss - Apply similarity transform.
A.2.5. PROPIEDADESDEMODELOS
covar - Continuous covariance response to white noise.
ctrb - Controllability matrix.
damp - Damping factors and natural frequencies.
dcgain - Continuous steady state (D.C.) gain.
dcovar - Discrete covariance response to white noise.
ddamp - Discrete damping factors and natural frequencies.
ComputacinAplicadaaSistemasElctricosdePotencia
47

ddcgain - Discrete steady state (D.C.) gain.


dgram - Discrete controllability and observability gramians.
dsort - Sort discrete eigenvalues by magnitude.
eig - Eigenvalues and eigenvectors.
esort - Sort continuous eigenvalues by real part.
gram - Controllability and observability gramians.
obsv - Observability matrix.
printsys - Display system in formatted form.
roots - Polynomial roots.
tzero - Transmission zeros.
tzero2 - Transmission zeros using random perturbation method.
A.2.6. RESPUESTAENELTIEMPO
dimpulse - Discrete unit sample response.
dinitial - Discrete initial condition response.
dlsim - Discrete simulation to arbitrary inputs.
dstep - Discrete step response.
filter - SISO z-transform simulation.
impulse - Impulse response.
initial - Continuous initial condition response.
lsim - Continuous simulation to arbitrary inputs.
ltitr - Low level time response function.
step - Step response.
stepfun - Step function.
A.2.7. RESPUESTAALAFRECUENCIA
bode - Bode plot (frequency response).
dbode - Discrete Bode plot (frequency response).
dnichols - Discrete Nichols plot.
dnyquist - Discrete Nyquist plot.
dsigma - Discrete singular value frequency plot.
fbode - Fast Bode plot for continuous systems.
freqs - Laplace-transform frequency response.
freqz - Z-transform frequency response.
ltifr - Low level frequency response function.
margin - Gain and phase margins.
nichols - Nichols plot.
ngrid - Draw grid lines for Nichols plot.
nyquist - Nyquist plot.
sigma - Singular value frequency plot.
A.2.8. LUGARDELASRAICES
pzmap - Pole-zero map.
rlocfind - Interactive root locus gain determination.
rlocus - Evans root-locus.
ComputacinAplicadaaSistemasElctricosdePotencia
48

sgrid - Draw continuous root locus wn,z grid.


zgrid - Draw discrete root locus wn,z grid.
A.2.9. SELECCINDEGANANCIA
acker - SISO pole placement.
dlqe - Discrete linear-quadratic estimator design.
dlqew - General discrete linear quadratic estimator design.
dlqr - Discrete linear-quadratic regulator design.
dlqry - Discrete regulator design with weighting on outputs.
lqe - Linear-quadratic estimator design.
lqed - Discrete estimator design from continuous cost function.
lqe2 - Linear quadratic estimator design using Schur method.
lqew - General linear-quadratic estimator design.
lqr - Linear-quadratic regulator design.
lqrd - Discrete regulator design from continuous cost function.
lqry - Regulator design with weighting on outputs.
lqr2 - Linear quadratic regulator design using Schur method.
place - Pole placement.
A.3. SOLUCIONDEECUACIONES
ar e Algebraic Riccati equation solution.
dl yap Discrete Lyapunov equation solution.
l yap Continuous Lyapunov equation solution.
l yap2 Lyapunov equation solution using diagonalization.
A.4. DEMONSTRACIONES
Ct r l demo Introduction to the Control Toolbox.
boi l demo LQG design of boiler system.
j et demo Classical design of jet transport yaw damper.
di skdemo Digital control design of hard disk controller.
kal mdemo Kalman filter design and simulation.

Vous aimerez peut-être aussi