Fundamentos BásicosFundamentos Básicosde Matlabde Matlab
-LCA--LCA-
Fundamentos de informáticaFundamentos de informática FRROFRRO
Mi nombre es:Mi nombre es:
Arce, Gerardo.Arce, Gerardo.
Clases:Clases:
1 Teoría – Matlab & Simulink.1 Teoría – Matlab & Simulink. 3 Practica – Matlab.3 Practica – Matlab. 3 Practica – Simulink.3 Practica – Simulink. 1 Consulta del TPF.1 Consulta del TPF.88
Como regularizar:Como regularizar:
Entregar todas las prácticas.Entregar todas las prácticas.– 9 de Matlab.9 de Matlab.– 5 de Simulink.5 de Simulink.
Presentar el TPF y defenderlo (individual).Presentar el TPF y defenderlo (individual). Responder de 5 a 8 preguntas teóricas.Responder de 5 a 8 preguntas teóricas.
Todo en un tiempo menor a 10min ya que todos Todo en un tiempo menor a 10min ya que todos tienen derecho a rendir el mismo día.tienen derecho a rendir el mismo día.
Practicas de Matlab:Practicas de Matlab:
Nº 1:Nº 1: Manejo de Matrices. Manejo de Matrices. Nº 2:Nº 2: Manejo de Números Complejos. Manejo de Números Complejos. Nº 3:Nº 3: Manejo de Archivos *.M Manejo de Archivos *.M Nº 4:Nº 4: Programación (Resolución de sistema 3x3). Programación (Resolución de sistema 3x3). Nº 5:Nº 5: Programación (Ley de OHM). Programación (Ley de OHM). Nº 6:Nº 6: Programación (De tabla papel a digital). Programación (De tabla papel a digital). Nº 7:Nº 7: Programación (Maximización de las utilidades). Programación (Maximización de las utilidades). Nº 8:Nº 8: Programación (Resolución de 2 mallas eléctricas). Programación (Resolución de 2 mallas eléctricas). Nº 9:Nº 9: Programación (Utilizando la herramienta creada en Programación (Utilizando la herramienta creada en
la práctica Nº 6, resolver 3 curvas).la práctica Nº 6, resolver 3 curvas).
Practicas de Simulink:Practicas de Simulink:
Nº 1:Nº 1: Calculo de desfasage. Calculo de desfasage. Nº 2:Nº 2: Máxima resistencia. Máxima resistencia. Nº 3:Nº 3: Maximización de área. Maximización de área. Nº 4:Nº 4: Diagrama de M y Q (Sistema simétrico). Diagrama de M y Q (Sistema simétrico). Nº 5:Nº 5: Diagrama de M y Q (Sistema asimétrico). Diagrama de M y Q (Sistema asimétrico).
Trabaja Practico Final (TPF) :Trabaja Practico Final (TPF) :
Es individual y único Es individual y único (No hay grupos).(No hay grupos). Se deberá resolver el problema que se Se deberá resolver el problema que se
plantea.plantea. Entregar una memoria de calculo Entregar una memoria de calculo
similar a la que se expresa en las similar a la que se expresa en las practicas.practicas.
Teoría:Teoría:
El día de la entrega del TPF además de El día de la entrega del TPF además de defenderlo y presentar todas las defenderlo y presentar todas las practicas se deberá rendir teoría.practicas se deberá rendir teoría.
Contestar rápidamente de 5 a 8 Contestar rápidamente de 5 a 8 preguntas teóricas que abarcan todo preguntas teóricas que abarcan todo lo dado.lo dado.
Recuperatorio:Recuperatorio:
En el caso de fallar en cualquiera de En el caso de fallar en cualquiera de las 3 pautas.las 3 pautas.– Practicas. + (Preguntas)Practicas. + (Preguntas)– TPF. + (Defensa) + (WORD)TPF. + (Defensa) + (WORD)– Teoría. (de 5 a 8 preguntas)Teoría. (de 5 a 8 preguntas)
En el recuperatorio solo se le tomará En el recuperatorio solo se le tomará lo fallo o que falto.lo fallo o que falto.
¿Qué es Matlab?¿Qué es Matlab?
Una herramienta para hacer cálculos Una herramienta para hacer cálculos
matemáticos que utiliza como elemento básico la matemáticos que utiliza como elemento básico la
matriz.matriz. Un lenguaje de programación:Un lenguaje de programación:
– interactivo: interactivo: órdenesórdenes
– avanzado pero fácil de utilizar: avanzado pero fácil de utilizar: archivos.marchivos.m
Plataforma de desarrollo: Plataforma de desarrollo: toolboxestoolboxes
Ventajas del MatlabVentajas del Matlab
Su programación requiere menos tiempo que Su programación requiere menos tiempo que otros lenguajes como otros lenguajes como FORTRANFORTRAN, , CC, , PascalPascal, etc., etc.
Utiliza un lenguaje más cercano a la Utiliza un lenguaje más cercano a la
matemática.matemática. Permite definir fácil y rápidamente nuevas Permite definir fácil y rápidamente nuevas
funciones que se incorporan a Matlab (mediante funciones que se incorporan a Matlab (mediante
el el toolboxestoolboxes)) Grandes capacidades gráficas.Grandes capacidades gráficas.
¿Qué se puede realizar?¿Qué se puede realizar?
Análisis de datosAnálisis de datos PolinomiosPolinomios Gráficos 2D Gráficos 2D Gráficos 3D Gráficos 3D (No vamos a llegar a dar).(No vamos a llegar a dar). Ajuste de curvasAjuste de curvas InterpolaciónInterpolación Análisis numéricoAnálisis numérico
Espacio de trabajoEspacio de trabajo
Al ejecutarse Matlab se crea una ventana de Al ejecutarse Matlab se crea una ventana de trabajo que corresponde al lugar desde donde se trabajo que corresponde al lugar desde donde se interacciona con Matlab:interacciona con Matlab:
– El símbolo El símbolo »» denota que se esta esperando una orden denota que se esta esperando una orden
Matlab recuerda las órdenes ya dadas y los Matlab recuerda las órdenes ya dadas y los valores de cualquier variable (en el valores de cualquier variable (en el espacio de espacio de trabajo)trabajo)::– recordar órdenes recordar órdenes previas: previas: y y . . Editar:Editar: y y – recordar variables: recordar variables: escribir su nombreescribir su nombre
Espacio de trabajoEspacio de trabajo
Funciones para el manejo de las variables en el Funciones para el manejo de las variables en el espacio de trabajo:espacio de trabajo:– whowho lista las de las memorias del espacio de trabajolista las de las memorias del espacio de trabajo– whoswhos lista las memorias del espacio de trabajo con lista las memorias del espacio de trabajo con
información de su tamañoinformación de su tamaño– savesave almacena las memorias en un archivo de almacena las memorias en un archivo de
extensión *.matextensión *.mat– loadload recupera variables almacenadas en el disco recupera variables almacenadas en el disco– clearclear borra las variables del espacio de trabajo borra las variables del espacio de trabajo
Funciones básicasFunciones básicas
Suma: +Suma: +resta: -resta: -multiplicación: *multiplicación: *división: \ ó /división: \ ó /potencia: ^potencia: ^
Comentarios útilesComentarios útiles
Evalúa expresiones de izquierda a derecha:Evalúa expresiones de izquierda a derecha:– 1º potencias, 2º multiplicaciones y divisiones, y 3º sumas y 1º potencias, 2º multiplicaciones y divisiones, y 3º sumas y
restas.restas.
Nombres de variables o memorias:Nombres de variables o memorias:– Siempre debe comenzar con una letra, seguidas de letras o Siempre debe comenzar con una letra, seguidas de letras o
números si se lo desea.números si se lo desea.– Sólo se recuerdan los primeros 17 dígitos de una memoria.Sólo se recuerdan los primeros 17 dígitos de una memoria.– Distingue mayúsculas y minúsculasDistingue mayúsculas y minúsculas
;; al final de línea no imprime el resultado. al final de línea no imprime el resultado. A partir del símbolo A partir del símbolo %% se considera comentario. se considera comentario.
Comentarios útilesComentarios útiles
ansans almacena el resultado por defecto almacena el resultado por defecto
Si una orden es demasiado larga, se escriben Si una orden es demasiado larga, se escriben ......
seguido deseguido de enterenter para continuar en la siguiente para continuar en la siguiente línea, no en todos los casos es posible usar este línea, no en todos los casos es posible usar este comando.comando.
Matlab se interrumpe con Matlab se interrumpe con ctrl-cctrl-c Matlab se cierra con el comando Matlab se cierra con el comando quitquit
Variables predefinidasVariables predefinidas
ansans Nombre de la variable por defecto usado en los Nombre de la variable por defecto usado en los resultadosresultados
pipi Número Número epseps El más pequeño de los números que al sumarle 1 El más pequeño de los números que al sumarle 1
da un número en coma flotante mayor que 1da un número en coma flotante mayor que 1 infinf InfinitoInfinito NaNNaN IndefinidoIndefinido i,ji,j i=j=sqrt(-1)i=j=sqrt(-1) realminrealmin Número real positivo más pequeño que se Número real positivo más pequeño que se
puede usar 2.2251e-308puede usar 2.2251e-308 realmaxrealmax Número real positivo más grande que se Número real positivo más grande que se
puede usar puede usar 1.7977e+3081.7977e+308
Formatos de visualizaciónFormatos de visualización
Comando Ejemplo Comentario
format long 35.83333333333334 16 dígitos
format short e 3.5833e+01 5 dígitos mas exponente
format long e 35.83333333333334e+01 16 dígitos mas exponente
format hex 4041eaaaaaaaaab hexadecimal
format bank 35.83 2 dígitos decimales
format + + positivo, negativo o cero
format rat 215/6 aproximación racional
format short 35.8333 visualización por defecto
Comando Ejemplo Comentario
format long 35.83333333333334 16 dígitos
format short e 3.5833e+01 5 dígitos mas exponente
format long e 35.83333333333334e+01 16 dígitos mas exponente
format hex 4041eaaaaaaaaab hexadecimal
format bank 35.83 2 dígitos decimales
format + + positivo, negativo o cero
format rat 215/6 aproximación racional
format short 35.8333 visualización por defecto
Características CientíficasCaracterísticas CientíficasCaracterísticas CientíficasCaracterísticas Científicas
Funciones matemáticasFunciones matemáticas
Números complejosNúmeros complejos
Funciones matemáticasFunciones matemáticas
Números complejosNúmeros complejos
abs(x) Valor absoluto acos(x) Arcocoseno acosh(x) Arcocoseno hiperbólico angle(x) Angulo de complejos asin(x) Arcoseno asinh(x) Arcoseno hiperbólico atan(x) Arcotangente atanh(x) Arcotangente hiperbólica ceil(x) Redondeo hacia + conj(x) Complejo conjugado cos(x) Coseno cosh(x) Coseno hiperbólico exp(x) Exponencial e1=2.71 log (x) Logaritmo neperiano
abs(x) Valor absoluto acos(x) Arcocoseno acosh(x) Arcocoseno hiperbólico angle(x) Angulo de complejos asin(x) Arcoseno asinh(x) Arcoseno hiperbólico atan(x) Arcotangente atanh(x) Arcotangente hiperbólica ceil(x) Redondeo hacia + conj(x) Complejo conjugado cos(x) Coseno cosh(x) Coseno hiperbólico exp(x) Exponencial e1=2.71 log (x) Logaritmo neperiano
Funciones matemáticasFunciones matemáticasFunciones matemáticasFunciones matemáticas
fix(x) Redondeo hacia cero floor(x) Redondeo hacia menos infinito imag(x) Parte imaginaria compleja log10(x) Logaritmo común real(x) Parte real compleja rem(x,y) Resto de la división (resto al dividir x/y) round(x) Redondeo al entero más cercano sign(x) Función signo sin(x) Seno sinh(x) Seno hiperbólico sqrt(x) Raiz cuadrada tan(x) Tangente tanh(x) Tangente hiperbólica
fix(x) Redondeo hacia cero floor(x) Redondeo hacia menos infinito imag(x) Parte imaginaria compleja log10(x) Logaritmo común real(x) Parte real compleja rem(x,y) Resto de la división (resto al dividir x/y) round(x) Redondeo al entero más cercano sign(x) Función signo sin(x) Seno sinh(x) Seno hiperbólico sqrt(x) Raiz cuadrada tan(x) Tangente tanh(x) Tangente hiperbólica
Funciones matemáticasFunciones matemáticasFunciones matemáticasFunciones matemáticas
Números complejosNúmeros complejosNúmeros complejosNúmeros complejos SolveSolve
– es una función que resuelve sistemas del tipo es una función que resuelve sistemas del tipo x^3+2*x^2+3*x+x+5=0x^3+2*x^2+3*x+x+5=0
El número imaginario puro se representa por El número imaginario puro se representa por ii o o jj– Cualquier número seguido de Cualquier número seguido de ii representa un número representa un número
imaginarioimaginario
Hay funciones específicas para su manejo:Hay funciones específicas para su manejo:– real(x)real(x)– imag(x)imag(x)– conj(x)conj(x)– angle(x)angle(x),, etc.etc.
SolveSolve– es una función que resuelve sistemas del tipo es una función que resuelve sistemas del tipo
x^3+2*x^2+3*x+x+5=0x^3+2*x^2+3*x+x+5=0
El número imaginario puro se representa por El número imaginario puro se representa por ii o o jj– Cualquier número seguido de Cualquier número seguido de ii representa un número representa un número
imaginarioimaginario
Hay funciones específicas para su manejo:Hay funciones específicas para su manejo:– real(x)real(x)– imag(x)imag(x)– conj(x)conj(x)– angle(x)angle(x),, etc.etc.
ArraysArrays simples simples Direccionamiento de Direccionamiento de arraysarrays Construcción de Construcción de arraysarrays Funciones con Funciones con arraysarrays Matemáticas de Matemáticas de arraysarrays con escalares con escalares Matemáticas entre Matemáticas entre arraysarrays Orientación del Orientación del arrayarray Resumen de operaciones con Resumen de operaciones con arraysarrays
Manejo de arraysManejo de arraysManejo de arraysManejo de arrays
Para crear un Para crear un arrayarray en Matlab: en Matlab:– Comienza por un corchete de aperturaComienza por un corchete de apertura [ [– Los valores separados por espacios o por Los valores separados por espacios o por
comascomas– Finaliza con un corchete de cierre Finaliza con un corchete de cierre ]]
Ejemplo:Ejemplo:– x = [23 45 12 2+3i -2i]x = [23 45 12 2+3i -2i]
Arrays simplesArrays simplesArrays simplesArrays simples
Para acceder a elementos Para acceder a elementos individuales se utilizan subíndices individuales se utilizan subíndices entre paréntesisentre paréntesis
Ejemplo:Ejemplo:– » x = [1 2 3;4 5 6;7 8 9]» x = [1 2 3;4 5 6;7 8 9]– » x(2,3)» x(2,3) ans ans == 88
– » x(6)» x(6) ans ans == 88
Direccionamiento de arraysDireccionamiento de arraysDireccionamiento de arraysDireccionamiento de arrays
Para direccionar un bloque de elementos, Matlab Para direccionar un bloque de elementos, Matlab proporciona la proporciona la notación de dos puntosnotación de dos puntos: :
primero:incremento:últimoprimero:incremento:último Ejemplo:Ejemplo:
– » x = [1 2 3;4 5 6;7 8 9]» x = [1 2 3;4 5 6;7 8 9]– x(2:6)x(2:6) ans =ans =
4 7 2 5 84 7 2 5 8– x(2:2:6)x(2:2:6) ans =ans =
4 2 84 2 8
Direccionamiento de arraysDireccionamiento de arraysDireccionamiento de arraysDireccionamiento de arrays
Para direccionar elementos aislados se Para direccionar elementos aislados se utiliza un utiliza un arrayarray de índices de índices
Ejemplo:Ejemplo:– » x=[23 45 12 2+3i -2i 32 12];» x=[23 45 12 2+3i -2i 32 12]; » x([4 1 2])» x([4 1 2])ans =ans =
2+3i 23 452+3i 23 45» x([1 4 7])» x([1 4 7])ans =ans =
23 2+3i 1223 2+3i 12
Direccionamiento de arraysDireccionamiento de arraysDireccionamiento de arraysDireccionamiento de arrays
Existen varias formas de crear Existen varias formas de crear arraysarrays– Notación de dos puntosNotación de dos puntos– Función Función linspacelinspace
linspace(primero,último,nºvalores)linspace(primero,último,nºvalores)
– Función Función logspacelogspace
logspace(expo1,expo2,nºvalores)logspace(expo1,expo2,nºvalores)
Construcción de arraysConstrucción de arraysConstrucción de arraysConstrucción de arrays
Las funciones se aplican a los elementos Las funciones se aplican a los elementos individuales de los individuales de los arraysarrays
Ejemplo:Ejemplo:– » x = [0 pi/4 pi/2 3*pi/4 pi]» x = [0 pi/4 pi/2 3*pi/4 pi]– » sin(x)» sin(x)
ans =ans =
0 0.7071 1.0000 0.7071 0.00000 0.7071 1.0000 0.7071 0.0000– » cos(x)» cos(x)
ans =ans =
1.0000 0.7071 0.0000 -0.7071 -1.00001.0000 0.7071 0.0000 -0.7071 -1.0000
Funciones con arraysFunciones con arraysFunciones con arraysFunciones con arrays
La suma, resta, multiplicación y división La suma, resta, multiplicación y división por un escalar simplemente aplica la por un escalar simplemente aplica la operación a todos los elementos del operación a todos los elementos del arrayarray
Ejemplo:Ejemplo:– » x = [1 2 3 4 5 6];» x = [1 2 3 4 5 6];– » 4*x-7» 4*x-7
ans =ans =
-3 1 5 9 13 17-3 1 5 9 13 17
Operaciones de arrays con escalaresOperaciones de arrays con escalaresOperaciones de arrays con escalaresOperaciones de arrays con escalares
Cuando dos Cuando dos arraysarrays tienen la misma tienen la misma longitud, la suma y la resta se aplican longitud, la suma y la resta se aplican sobre la base de sobre la base de ““elemento a elementoelemento a elemento””
Para multiplicar o dividir dos Para multiplicar o dividir dos arraysarrays ““elemento a elementoelemento a elemento”” se utilizan los se utilizan los operandos:operandos:
.*.* , , ././ yy .\ .\ ejemplo: ejemplo: ((a./b=b.\aa./b=b.\a)) Para la potencia Para la potencia ““elemento a elementoelemento a elemento””
se utiliza se utiliza .^.^
Cuando dos Cuando dos arraysarrays tienen la misma tienen la misma longitud, la suma y la resta se aplican longitud, la suma y la resta se aplican sobre la base de sobre la base de ““elemento a elementoelemento a elemento””
Para multiplicar o dividir dos Para multiplicar o dividir dos arraysarrays ““elemento a elementoelemento a elemento”” se utilizan los se utilizan los operandos:operandos:
.*.* , , ././ yy .\ .\ ejemplo: ejemplo: ((a./b=b.\aa./b=b.\a)) Para la potencia Para la potencia ““elemento a elementoelemento a elemento””
se utiliza se utiliza .^.^
Operaciones entre arrays Operaciones entre arrays Operaciones entre arrays Operaciones entre arrays
Resumen de operaciones con arraysResumen de operaciones con arrays a=[a1 ... an], b=[b1 ... bn], c=escalara=[a1 ... an], b=[b1 ... bn], c=escalar
Suma con un escalar a+c = [a1+c a2+c ... an+c]
Multiplicación por unescalar
a*c = [a1*c a2*c ... an*c]
Suma de arrays a+b = [a1+b1 a2+b2 ... an+bn]
Multiplicación de arrays a.*b = [a1*b1 ,a2*b2 ...an*bn]
División por la derechade arrays
a./b = [a1/b1 a2/b2 ... an/bn]
División por laizquierda de arrays
a.\b = [a1\b1 a2\b2 ... an\bn]
Potencias de arrays a.^c = [a1^c a2^c ... an^c]c.^a = [c^a1 c^a2 ... c^an]a.^b = [a1^b1 a2^b2 ... an^bn]
Suma con un escalar a+c = [a1+c a2+c ... an+c]
Multiplicación por unescalar
a*c = [a1*c a2*c ... an*c]
Suma de arrays a+b = [a1+b1 a2+b2 ... an+bn]
Multiplicación de arrays a.*b = [a1*b1 ,a2*b2 ...an*bn]
División por la derechade arrays
a./b = [a1/b1 a2/b2 ... an/bn]
División por laizquierda de arrays
a.\b = [a1\b1 a2\b2 ... an\bn]
Potencias de arrays a.^c = [a1^c a2^c ... an^c]c.^a = [c^a1 c^a2 ... c^an]a.^b = [a1^b1 a2^b2 ... an^bn]
Álgebra matricialÁlgebra matricial
Manipulación matricialManipulación matricial
Matrices especialesMatrices especiales
Álgebra matricialÁlgebra matricial
Manipulación matricialManipulación matricial
Matrices especialesMatrices especiales
Álgebra matricialÁlgebra matricialÁlgebra matricialÁlgebra matricial
Matlab originariamente fue diseñado para simplificar el Matlab originariamente fue diseñado para simplificar el cálculo del álgebra linealcálculo del álgebra lineal
Para definir una matriz se distinguen las filas por Para definir una matriz se distinguen las filas por ; ; o se o se
introduce introduce enterenter A.’A.’ es la matriz transpuesta de es la matriz transpuesta de AA A’A’ es la traspuesta conjugada de es la traspuesta conjugada de AA det(A) det(A) calcula el determinante de calcula el determinante de A A inv(A) inv(A) es la inversa de es la inversa de AA rank(A)rank(A) devuelve el rango de la matriz devuelve el rango de la matriz AA norm(A)norm(A) calcula la normal de calcula la normal de AA poly(A)poly(A) obtiene el polinomio característico de la matriz obtiene el polinomio característico de la matriz AA
Matlab originariamente fue diseñado para simplificar el Matlab originariamente fue diseñado para simplificar el cálculo del álgebra linealcálculo del álgebra lineal
Para definir una matriz se distinguen las filas por Para definir una matriz se distinguen las filas por ; ; o se o se
introduce introduce enterenter A.’A.’ es la matriz transpuesta de es la matriz transpuesta de AA A’A’ es la traspuesta conjugada de es la traspuesta conjugada de AA det(A) det(A) calcula el determinante de calcula el determinante de A A inv(A) inv(A) es la inversa de es la inversa de AA rank(A)rank(A) devuelve el rango de la matriz devuelve el rango de la matriz AA norm(A)norm(A) calcula la normal de calcula la normal de AA poly(A)poly(A) obtiene el polinomio característico de la matriz obtiene el polinomio característico de la matriz AA
Álgebra matricialÁlgebra matricialÁlgebra matricialÁlgebra matricial
Los elementos de una matriz se Los elementos de una matriz se indican con su fila y columna: indican con su fila y columna: A(columna, fila)A(columna, fila)
Con los dos puntos (Con los dos puntos (::) se puede ) se puede seleccionar toda la fila o columna: seleccionar toda la fila o columna: A(:,1), B(2,:)A(:,1), B(2,:)
find(x)find(x) transforma una matriz en una transforma una matriz en una sucesión de valores del tipo columna.sucesión de valores del tipo columna.
size(x)size(x) devuelve el tamaño en filas y devuelve el tamaño en filas y columnas.columnas.
Los elementos de una matriz se Los elementos de una matriz se indican con su fila y columna: indican con su fila y columna: A(columna, fila)A(columna, fila)
Con los dos puntos (Con los dos puntos (::) se puede ) se puede seleccionar toda la fila o columna: seleccionar toda la fila o columna: A(:,1), B(2,:)A(:,1), B(2,:)
find(x)find(x) transforma una matriz en una transforma una matriz en una sucesión de valores del tipo columna.sucesión de valores del tipo columna.
size(x)size(x) devuelve el tamaño en filas y devuelve el tamaño en filas y columnas.columnas.
Manipulación matricialManipulación matricialManipulación matricialManipulación matricial
Matriz de ceros: Matriz de ceros: zeros(n,m)zeros(n,m) Matriz de unos: Matriz de unos: ones(n,m)ones(n,m) Matriz aleatoria con distribución Matriz aleatoria con distribución
uniforme (entre 0 y 1): uniforme (entre 0 y 1): rand(n,m)rand(n,m) Matriz aleatoria con distribución Matriz aleatoria con distribución
normal (media 0 y varianza 1): normal (media 0 y varianza 1): randn(n,m)randn(n,m)
Matriz identidad: Matriz identidad: eye(n)eye(n)
Matriz de ceros: Matriz de ceros: zeros(n,m)zeros(n,m) Matriz de unos: Matriz de unos: ones(n,m)ones(n,m) Matriz aleatoria con distribución Matriz aleatoria con distribución
uniforme (entre 0 y 1): uniforme (entre 0 y 1): rand(n,m)rand(n,m) Matriz aleatoria con distribución Matriz aleatoria con distribución
normal (media 0 y varianza 1): normal (media 0 y varianza 1): randn(n,m)randn(n,m)
Matriz identidad: Matriz identidad: eye(n)eye(n)
Matrices especialesMatrices especialesMatrices especialesMatrices especiales
Operaciones relacionalesOperaciones relacionales
Operaciones lógicosOperaciones lógicos
Funciones relacionales y lógicasFunciones relacionales y lógicas
Operaciones relacionalesOperaciones relacionales
Operaciones lógicosOperaciones lógicos
Funciones relacionales y lógicasFunciones relacionales y lógicas
Operaciones y funcionesOperaciones y funcionesOperaciones y funcionesOperaciones y funciones
Operadores relacionalesOperadores relacionalesOperadores relacionalesOperadores relacionales
Operador Descripción
< Menor que
<= Menor que o igual a
> Mayor que
>= Mayor que o igual a
== Igual a
~= No igual
Operador Descripción
< Menor que
<= Menor que o igual a
> Mayor que
>= Mayor que o igual a
== Igual a
~= No igual
Efectúan la comparación, elemento a elemento, entre Efectúan la comparación, elemento a elemento, entre
dos matrices y dan como resultado una matriz cuyos dos matrices y dan como resultado una matriz cuyos
elementos son 1 si la relación es cierta y 0 si es falsa.elementos son 1 si la relación es cierta y 0 si es falsa.
Efectúan la comparación, elemento a elemento, entre Efectúan la comparación, elemento a elemento, entre
dos matrices y dan como resultado una matriz cuyos dos matrices y dan como resultado una matriz cuyos
elementos son 1 si la relación es cierta y 0 si es falsa.elementos son 1 si la relación es cierta y 0 si es falsa.
Operadores lógicosOperadores lógicosOperadores lógicosOperadores lógicos
Operador Descripción
& AND
| OR
~ NOT
Operador Descripción
& AND
| OR
~ NOT
Operadores lógicos:Operadores lógicos: Operadores lógicos:Operadores lógicos:
Funciones relacionales y lógicasFunciones relacionales y lógicasFunciones relacionales y lógicasFunciones relacionales y lógicasFunción Descripción
xor(x,y) Compara las matrices x e y luego genera una nueva matriz, en donde coloca 1 en donde los valores coinciden y 0 donde son diferentes
any(x) Devuelve cero si todo un vector columna esta formado por ceros
all(x) Devuelve cero si existe por lo menos un cero en el vector columna
isnan(x) Devuelve 1 en la posición de la matriz x donde se encuentra un NaNs y 0 los otros.
isinf(x) Devuelve 1 en la posición de la matriz x donde se encuentra un Infs y 0 los otros.
finite(x) Devuelve 1 en la posición de la matriz x donde se encuentra un numero finito y 0 los otros.
Función Descripción
xor(x,y) Compara las matrices x e y luego genera una nueva matriz, en donde coloca 1 en donde los valores coinciden y 0 donde son diferentes
any(x) Devuelve cero si todo un vector columna esta formado por ceros
all(x) Devuelve cero si existe por lo menos un cero en el vector columna
isnan(x) Devuelve 1 en la posición de la matriz x donde se encuentra un NaNs y 0 los otros.
isinf(x) Devuelve 1 en la posición de la matriz x donde se encuentra un Infs y 0 los otros.
finite(x) Devuelve 1 en la posición de la matriz x donde se encuentra un numero finito y 0 los otros.
¿Qué son?¿Qué son?
¿Para qué sirven?¿Para qué sirven?
Tipos de archivos.mTipos de archivos.m
Características de funcionesCaracterísticas de funciones
Ejemplo de funciónEjemplo de función
Pasos que sigue MatlabPasos que sigue Matlab
¿Qué son?¿Qué son?
¿Para qué sirven?¿Para qué sirven?
Tipos de archivos.mTipos de archivos.m
Características de funcionesCaracterísticas de funciones
Ejemplo de funciónEjemplo de función
Pasos que sigue MatlabPasos que sigue Matlab
Archivos .mArchivos .mArchivos .mArchivos .m
Matlab permite crear funciones nuevas Matlab permite crear funciones nuevas en forma de archivos con extensión *en forma de archivos con extensión *.m.m y almacenadosy almacenados
Un archivo *Un archivo *.m.m es una secuencia de es una secuencia de órdenes de Matlab que puede contener, órdenes de Matlab que puede contener, incluso, referencias a otros archivo *incluso, referencias a otros archivo *.m.m
Los archivo *Los archivo *.m.m son textos ASCII creados son textos ASCII creados con cualquier editor o procesador de con cualquier editor o procesador de textotexto
Matlab permite crear funciones nuevas Matlab permite crear funciones nuevas en forma de archivos con extensión *en forma de archivos con extensión *.m.m y almacenadosy almacenados
Un archivo *Un archivo *.m.m es una secuencia de es una secuencia de órdenes de Matlab que puede contener, órdenes de Matlab que puede contener, incluso, referencias a otros archivo *incluso, referencias a otros archivo *.m.m
Los archivo *Los archivo *.m.m son textos ASCII creados son textos ASCII creados con cualquier editor o procesador de con cualquier editor o procesador de textotexto
¿Qué son?¿Qué son?¿Qué son?¿Qué son?
Automatizar secuencias de órdenes Automatizar secuencias de órdenes que se utilizan de forma repetitiva que se utilizan de forma repetitiva
Proporcionar extensibilidad a Matlab Proporcionar extensibilidad a Matlab con la posibilidad de añadir nuevas con la posibilidad de añadir nuevas funciones cuya utilización no difiere de funciones cuya utilización no difiere de las que incluye originalmente las que incluye originalmente ToolboxToolbox
Automatizar secuencias de órdenes Automatizar secuencias de órdenes que se utilizan de forma repetitiva que se utilizan de forma repetitiva
Proporcionar extensibilidad a Matlab Proporcionar extensibilidad a Matlab con la posibilidad de añadir nuevas con la posibilidad de añadir nuevas funciones cuya utilización no difiere de funciones cuya utilización no difiere de las que incluye originalmente las que incluye originalmente ToolboxToolbox
¿Para qué sirven?¿Para qué sirven?¿Para qué sirven?¿Para qué sirven?
Archivos predefinidos:Archivos predefinidos:– SenoSeno– CosenoCoseno– TangenteTangente– etc…etc…
Archivos propios:Archivos propios:– Son un compendio de funciones Son un compendio de funciones
predefinidas ya sea matrices, vectores, predefinidas ya sea matrices, vectores, senos, cosenos, etc. que generan un senos, cosenos, etc. que generan un programa nuevo y especificoprograma nuevo y especifico
Archivos predefinidos:Archivos predefinidos:– SenoSeno– CosenoCoseno– TangenteTangente– etc…etc…
Archivos propios:Archivos propios:– Son un compendio de funciones Son un compendio de funciones
predefinidas ya sea matrices, vectores, predefinidas ya sea matrices, vectores, senos, cosenos, etc. que generan un senos, cosenos, etc. que generan un programa nuevo y especificoprograma nuevo y especifico
Tipos de archivos *.mTipos de archivos *.mTipos de archivos *.mTipos de archivos *.m
El nombre de la función y del archivo El nombre de la función y del archivo debe ser el mismodebe ser el mismo
Esta se ejecuta desde el entorno de Esta se ejecuta desde el entorno de Matlab por primera vezMatlab por primera vez
Son capaces de generar programas Son capaces de generar programas emergentes y trabajar en un entorno emergentes y trabajar en un entorno fuera del Matlab para nosotros pero los fuera del Matlab para nosotros pero los cálculos siguen siendo ejecutados cálculos siguen siendo ejecutados dentro del Matlabdentro del Matlab
El nombre de la función y del archivo El nombre de la función y del archivo debe ser el mismodebe ser el mismo
Esta se ejecuta desde el entorno de Esta se ejecuta desde el entorno de Matlab por primera vezMatlab por primera vez
Son capaces de generar programas Son capaces de generar programas emergentes y trabajar en un entorno emergentes y trabajar en un entorno fuera del Matlab para nosotros pero los fuera del Matlab para nosotros pero los cálculos siguen siendo ejecutados cálculos siguen siendo ejecutados dentro del Matlabdentro del Matlab
Características de funcionesCaracterísticas de funcionesCaracterísticas de funcionesCaracterísticas de funciones
Al dar por ejemplo, la orden: matlabAl dar por ejemplo, la orden: matlab– Comprueba si matlab es una variableComprueba si matlab es una variable– Comprueba si matlab es una función de Comprueba si matlab es una función de
MatlabMatlab– Busca en el actual directorio si existe un Busca en el actual directorio si existe un
archivo con el nombre matlabarchivo con el nombre matlab.m.m– Busca, en los directorios especificados en Busca, en los directorios especificados en
la variable la variable pathpath, el archivo matlab, el archivo matlab.m.m– Por ultimo lo ejecutaPor ultimo lo ejecuta
Al dar por ejemplo, la orden: matlabAl dar por ejemplo, la orden: matlab– Comprueba si matlab es una variableComprueba si matlab es una variable– Comprueba si matlab es una función de Comprueba si matlab es una función de
MatlabMatlab– Busca en el actual directorio si existe un Busca en el actual directorio si existe un
archivo con el nombre matlabarchivo con el nombre matlab.m.m– Busca, en los directorios especificados en Busca, en los directorios especificados en
la variable la variable pathpath, el archivo matlab, el archivo matlab.m.m– Por ultimo lo ejecutaPor ultimo lo ejecuta
Pasos que sigue MatlabPasos que sigue MatlabPasos que sigue MatlabPasos que sigue Matlab
Bucle Bucle forfor
Bucle Bucle whilewhile
Estructuras Estructuras if-elseif-else
Bucle Bucle forfor
Bucle Bucle whilewhile
Estructuras Estructuras if-elseif-else
Control de flujoControl de flujoControl de flujoControl de flujo
La forma general es:La forma general es:– for n=1:5for n=1:5
x(n)=n*2x(n)=n*2 endend– Los comandos entre las sentencias Los comandos entre las sentencias forfor y y endend se ejecutan una vez se ejecutan una vez
hasta llegar a su fin pudiendo también utilizar una matriz como hasta llegar a su fin pudiendo también utilizar una matriz como rango de evaluaciónrango de evaluación
– Resultado:Resultado:x =x =
22
x =x =
2 42 4
x =x =
2 4 62 4 6
x =x =
2 4 6 82 4 6 8
x =x =
2 4 6 8 102 4 6 8 10
La forma general es:La forma general es:– for n=1:5for n=1:5
x(n)=n*2x(n)=n*2 endend– Los comandos entre las sentencias Los comandos entre las sentencias forfor y y endend se ejecutan una vez se ejecutan una vez
hasta llegar a su fin pudiendo también utilizar una matriz como hasta llegar a su fin pudiendo también utilizar una matriz como rango de evaluaciónrango de evaluación
– Resultado:Resultado:x =x =
22
x =x =
2 42 4
x =x =
2 4 62 4 6
x =x =
2 4 6 82 4 6 8
x =x =
2 4 6 8 102 4 6 8 10
Bucle Bucle forforBucle Bucle forfor
La forma general es:La forma general es: whilewhile “expresión de veracidad”“expresión de veracidad”
““comandos”comandos”
endend
Los Los “comandos”“comandos” entre las entre las sentencias sentencias whilewhile y y endend se ejecutan se ejecutan mientras todos los elementos a mientras todos los elementos a evaluar sean verdaderosevaluar sean verdaderos
La forma general es:La forma general es: whilewhile “expresión de veracidad”“expresión de veracidad”
““comandos”comandos”
endend
Los Los “comandos”“comandos” entre las entre las sentencias sentencias whilewhile y y endend se ejecutan se ejecutan mientras todos los elementos a mientras todos los elementos a evaluar sean verdaderosevaluar sean verdaderos
Bucle Bucle whilewhileBucle Bucle whilewhile
»n=1;» while n<6 x(n)=n*6; n=n+1; end;
Ejemplo de Bucle Ejemplo de Bucle whilewhileEjemplo de Bucle Ejemplo de Bucle whilewhileResultado:x = 6n = 2x = 6 12n = 3x = 6 12 18n = 4x = 6 12 18 24n = 5x = 6 12 18 24 30n = 6
La forma general es:La forma general es: if if “expresión”“expresión”
““comandos”,“resultado”comandos”,“resultado”
endend
TambiénTambién if if “expresión Nº1”“expresión Nº1”
““comandos Nº1”,“resultado Nº1”comandos Nº1”,“resultado Nº1”
elseif elseif “expresión Nº2”“expresión Nº2”
““comandos Nº2”,“resultado Nº2”comandos Nº2”,“resultado Nº2”
elseelse
““comandoscomandos Nº3”,“resultado Nº3” Nº3”,“resultado Nº3”
endend
La forma general es:La forma general es: if if “expresión”“expresión”
““comandos”,“resultado”comandos”,“resultado”
endend
TambiénTambién if if “expresión Nº1”“expresión Nº1”
““comandos Nº1”,“resultado Nº1”comandos Nº1”,“resultado Nº1”
elseif elseif “expresión Nº2”“expresión Nº2”
““comandos Nº2”,“resultado Nº2”comandos Nº2”,“resultado Nº2”
elseelse
““comandoscomandos Nº3”,“resultado Nº3” Nº3”,“resultado Nº3”
endend
Estructuras Estructuras if-else-endif-else-endEstructuras Estructuras if-else-endif-else-end
a Tolerancia ±0.25 [Watts]k Potencia que dicipa la recistencia [Watts]p Potenciasa=0.25k=1p=1.5if p<=k-a,s='Funciona Bien'elseif k-a<p&p<k+a,s='Funciona en el limite'elseif p>=k+a,s='Se Quema'end
Ejemplo Estructuras Ejemplo Estructuras if-else-endif-else-endEjemplo Estructuras Ejemplo Estructuras if-else-endif-else-end
PolinomiosPolinomios
Funciones para polinomiosFunciones para polinomios
PolinomiosPolinomios
Funciones para polinomiosFunciones para polinomios
PolinomiosPolinomiosPolinomiosPolinomios
Los polinomios en Matlab son Los polinomios en Matlab son representados por vectores filas representados por vectores filas conteniendo los coeficientes en conteniendo los coeficientes en orden decrecienteorden decreciente
Ejemplo: xEjemplo: x44 - 12x - 12x33 + 0x + 0x22 + 25x + 25x +116+116
p=[1 -12 0 25 116]p=[1 -12 0 25 116]
Los polinomios en Matlab son Los polinomios en Matlab son representados por vectores filas representados por vectores filas conteniendo los coeficientes en conteniendo los coeficientes en orden decrecienteorden decreciente
Ejemplo: xEjemplo: x44 - 12x - 12x33 + 0x + 0x22 + 25x + 25x +116+116
p=[1 -12 0 25 116]p=[1 -12 0 25 116]
PolinomiosPolinomiosPolinomiosPolinomios
Raíces del polinomio: Raíces del polinomio: roots(p)roots(p) Polinomio asociado a unas raíces: Polinomio asociado a unas raíces: poly(p)poly(p) Multiplica dos polinomios: Multiplica dos polinomios: conv(p1,p2)conv(p1,p2) Divide dos polinomios: Divide dos polinomios: deconv(p1,p2)deconv(p1,p2) Cálculo de derivadas: Cálculo de derivadas: polyder(p)polyder(p) Evaluación de polinomios: Evaluación de polinomios: polyval(p,n)polyval(p,n) Desarrollo en fracciones parciales: Desarrollo en fracciones parciales: residue(p)residue(p)
Raíces del polinomio: Raíces del polinomio: roots(p)roots(p) Polinomio asociado a unas raíces: Polinomio asociado a unas raíces: poly(p)poly(p) Multiplica dos polinomios: Multiplica dos polinomios: conv(p1,p2)conv(p1,p2) Divide dos polinomios: Divide dos polinomios: deconv(p1,p2)deconv(p1,p2) Cálculo de derivadas: Cálculo de derivadas: polyder(p)polyder(p) Evaluación de polinomios: Evaluación de polinomios: polyval(p,n)polyval(p,n) Desarrollo en fracciones parciales: Desarrollo en fracciones parciales: residue(p)residue(p)
Funciones para polinomiosFunciones para polinomiosFunciones para polinomiosFunciones para polinomios
Comando Comando plotplot
Tipos de líneas y coloresTipos de líneas y colores
Añadir rejillas y etiquetasAñadir rejillas y etiquetas
Gestión de los ejesGestión de los ejes
Manipulando gráficos 2DManipulando gráficos 2D
Otros tipos de gráficos 2DOtros tipos de gráficos 2D
Comando Comando plotplot
Tipos de líneas y coloresTipos de líneas y colores
Añadir rejillas y etiquetasAñadir rejillas y etiquetas
Gestión de los ejesGestión de los ejes
Manipulando gráficos 2DManipulando gráficos 2D
Otros tipos de gráficos 2DOtros tipos de gráficos 2D
Gráficos 2DGráficos 2DGráficos 2DGráficos 2D
Es el comando más utilizado para Es el comando más utilizado para gráficos en 2Dgráficos en 2D
Representa gráficamente conjuntos Representa gráficamente conjuntos de de arraysarrays de datos: de datos:– Elige automáticamente los ejes Elige automáticamente los ejes
apropiadosapropiados– Por defecto, conecta los datos Por defecto, conecta los datos
mediante líneas rectasmediante líneas rectas
Es el comando más utilizado para Es el comando más utilizado para gráficos en 2Dgráficos en 2D
Representa gráficamente conjuntos Representa gráficamente conjuntos de de arraysarrays de datos: de datos:– Elige automáticamente los ejes Elige automáticamente los ejes
apropiadosapropiados– Por defecto, conecta los datos Por defecto, conecta los datos
mediante líneas rectasmediante líneas rectas
Comando Comando plotplotComando Comando plotplot
• Dibujar la función y=sin(x) en donde x es un array distrubuido uniformemente ente 30 valores de [0 a 2]
» x=linspace(0,2*pi,30)» y=sin(x)» plot(x,y)
Ejemplo del comando Ejemplo del comando plotplotEjemplo del comando Ejemplo del comando plotplot
• Dibujar la función y=sin(x) y z=cos(x)
» x=linspace(0,2*pi,30)» y=sin(x)» z=cos(x)» plot(x,y,x,z)
o tambien
» x=linspace(0,2*pi,30)» y=sin(x)» z=cos(x)» W=[y;z]» plot(x,W)
Ejemplo de superposición de graficasEjemplo de superposición de graficasEjemplo de superposición de graficasEjemplo de superposición de graficas
Tipos de líneas y coloresTipos de líneas y coloresTipos de líneas y coloresTipos de líneas y colores ColoresColores
– yy AmarilloAmarillo– mm MagentaMagenta– cc CyanCyan– rr RojoRojo– gg VerdeVerde– bb AzulAzul– ww BlancoBlanco– kk NegroNegro
ColoresColores– yy AmarilloAmarillo– mm MagentaMagenta– cc CyanCyan– rr RojoRojo– gg VerdeVerde– bb AzulAzul– ww BlancoBlanco– kk NegroNegro
Tipos de líneasTipos de líneas– .. PuntosPuntos– oo CírculosCírculos– xx Marcas xMarcas x– ++ Marcas +Marcas +– ** Marcas *Marcas *– -- Línea continuaLínea continua– :: Línea punteadaLínea punteada– -.-. Líneas y puntosLíneas y puntos– ---- Líneas discontinuasLíneas discontinuas
Tipos de líneasTipos de líneas– .. PuntosPuntos– oo CírculosCírculos– xx Marcas xMarcas x– ++ Marcas +Marcas +– ** Marcas *Marcas *– -- Línea continuaLínea continua– :: Línea punteadaLínea punteada– -.-. Líneas y puntosLíneas y puntos– ---- Líneas discontinuasLíneas discontinuas
• Dibujar la función y=sin(x) y z=cos(x)
» x=linspace(0,2*pi,30)» y=sin(x)» z=cos(x)» plot(x,y,'r*',x,z,'b:')
Ejemplo de colores y linasEjemplo de colores y linasEjemplo de colores y linasEjemplo de colores y linas
Añadir rejillas: Añadir rejillas: gridgrid Etiquetar eje x: Etiquetar eje x: xlabel(‘texto’)xlabel(‘texto’) Etiquetar eje y: Etiquetar eje y: ylabel(‘texto’)ylabel(‘texto’) Añadir título: Añadir título: title(‘texto’)title(‘texto’) Texto en un punto especifico : Texto en un punto especifico : text(x,y,’texto’)text(x,y,’texto’)
Texto en un punto especifico determinado Texto en un punto especifico determinado por el MOUSE: por el MOUSE: gtext(‘texto’)gtext(‘texto’)
Leyenda: Leyenda: legend(‘var1’,....,’varn’)legend(‘var1’,....,’varn’)
Añadir rejillas: Añadir rejillas: gridgrid Etiquetar eje x: Etiquetar eje x: xlabel(‘texto’)xlabel(‘texto’) Etiquetar eje y: Etiquetar eje y: ylabel(‘texto’)ylabel(‘texto’) Añadir título: Añadir título: title(‘texto’)title(‘texto’) Texto en un punto especifico : Texto en un punto especifico : text(x,y,’texto’)text(x,y,’texto’)
Texto en un punto especifico determinado Texto en un punto especifico determinado por el MOUSE: por el MOUSE: gtext(‘texto’)gtext(‘texto’)
Leyenda: Leyenda: legend(‘var1’,....,’varn’)legend(‘var1’,....,’varn’)
Añadir rejillas y etiquetasAñadir rejillas y etiquetasAñadir rejillas y etiquetasAñadir rejillas y etiquetas
• Dibujar la función y=sin(x) y z=cos(x)
» x=linspace(0,2*pi,30)» x=linspace(0,2*pi,30);» y=sin(x);» plot(x,y);» z=cos(x);» plot(x,y,'r*', x,z,'b:',2/3*pi, sin(2/3*pi),'mo')» grid» xlabel('Intervalo 2 Pi')» ylabel('valores de Seno y Coseno')» title('SENO y COSENO')» text(2/3*pi,sin(2/3*pi),' (2.09,0.87)')» legend('Seno','Coseno')
Ejemplo de rejillas y etiquetasEjemplo de rejillas y etiquetasEjemplo de rejillas y etiquetasEjemplo de rejillas y etiquetas
Comandos de programaciónComandos de programaciónComandos de programaciónComandos de programación
BOTONES (PUSHBUTTONS)BOTONES (PUSHBUTTONS) BOTONES DE SELECCIÓN (CHECK BOXES)BOTONES DE SELECCIÓN (CHECK BOXES) TEXTO (LABEL)TEXTO (LABEL) BOTONES DE OPCIÓN (RADIO BUTTONS)BOTONES DE OPCIÓN (RADIO BUTTONS) BARRAS DE DESPLAZAMIENTO (SCROLLING BARS O SLIDERS)BARRAS DE DESPLAZAMIENTO (SCROLLING BARS O SLIDERS) CAJAS DE SELECCIÓN DESPLEGABLES (POP-UP MENUS)CAJAS DE SELECCIÓN DESPLEGABLES (POP-UP MENUS) CAJAS DE TEXTO EDITABLES (EDITABLE TEXTBOXES)CAJAS DE TEXTO EDITABLES (EDITABLE TEXTBOXES) MARCOS (FRAMES)MARCOS (FRAMES)
BOTONES (PUSHBUTTONS)BOTONES (PUSHBUTTONS) BOTONES DE SELECCIÓN (CHECK BOXES)BOTONES DE SELECCIÓN (CHECK BOXES) TEXTO (LABEL)TEXTO (LABEL) BOTONES DE OPCIÓN (RADIO BUTTONS)BOTONES DE OPCIÓN (RADIO BUTTONS) BARRAS DE DESPLAZAMIENTO (SCROLLING BARS O SLIDERS)BARRAS DE DESPLAZAMIENTO (SCROLLING BARS O SLIDERS) CAJAS DE SELECCIÓN DESPLEGABLES (POP-UP MENUS)CAJAS DE SELECCIÓN DESPLEGABLES (POP-UP MENUS) CAJAS DE TEXTO EDITABLES (EDITABLE TEXTBOXES)CAJAS DE TEXTO EDITABLES (EDITABLE TEXTBOXES) MARCOS (FRAMES)MARCOS (FRAMES)
BOTONES (PUSHBUTTONS)BOTONES (PUSHBUTTONS)BOTONES (PUSHBUTTONS)BOTONES (PUSHBUTTONS)
Funcion: boton_calculo =
uicontrol(gcf,... 'Style','push',... 'Position',[10 10 100 25],... 'String','Calcular',... 'CallBack','a+b');
Funcion: boton_calculo =
uicontrol(gcf,... 'Style','push',... 'Position',[10 10 100 25],... 'String','Calcular',... 'CallBack','a+b');
BOTONES DE SELECCIÓN (CHECK BOXES)BOTONES DE SELECCIÓN (CHECK BOXES)BOTONES DE SELECCIÓN (CHECK BOXES)BOTONES DE SELECCIÓN (CHECK BOXES)a=0,b=0,c=0,d=0,e=0,f=0,a=0,b=0,c=0,d=0,e=0,f=0,
Box_01 = uicontrol(gcf,...Box_01 = uicontrol(gcf,...
'Style','checkbox',...'Style','checkbox',...
'Units','normalized','Position',[0.4 0.600 0.25 0.05],...'Units','normalized','Position',[0.4 0.600 0.25 0.05],...
'String','valor $5',...'String','valor $5',...
'CallBack',['a=b;if a==0,b=5;else a==5,b=0;end;b']);'CallBack',['a=b;if a==0,b=5;else a==5,b=0;end;b']);
Box_02 = uicontrol(gcf,...Box_02 = uicontrol(gcf,...
'Style','checkbox',...'Style','checkbox',...
'Units','normalized','Position',[0.4 0.550 0.25 0.05],...'Units','normalized','Position',[0.4 0.550 0.25 0.05],...
'String','valor $4',...'String','valor $4',...
'CallBack',['c=d;if c==0,d=4;else c==4,d=0;end;d']);'CallBack',['c=d;if c==0,d=4;else c==4,d=0;end;d']);
Box_03 = uicontrol(gcf,...Box_03 = uicontrol(gcf,...
'Style','checkbox',...'Style','checkbox',...
'Units','normalized','Position',[0.4 0.500 0.25 0.05],...'Units','normalized','Position',[0.4 0.500 0.25 0.05],...
'String','valor $10',...'String','valor $10',...
'CallBack',['e=f;if e==0,f=10;else e==10,f=0;end;f']);'CallBack',['e=f;if e==0,f=10;else e==10,f=0;end;f']);
boton_calculo = uicontrol(gcf,...boton_calculo = uicontrol(gcf,...
'Style','push',...'Style','push',...
'Units','normalized','Position',[0.4 0.450 0.25 0.05],...'Units','normalized','Position',[0.4 0.450 0.25 0.05],...
'String','Calcular',...'String','Calcular',...
'CallBack','b+d+f');'CallBack','b+d+f');
a=0,b=0,c=0,d=0,e=0,f=0,a=0,b=0,c=0,d=0,e=0,f=0,
Box_01 = uicontrol(gcf,...Box_01 = uicontrol(gcf,...
'Style','checkbox',...'Style','checkbox',...
'Units','normalized','Position',[0.4 0.600 0.25 0.05],...'Units','normalized','Position',[0.4 0.600 0.25 0.05],...
'String','valor $5',...'String','valor $5',...
'CallBack',['a=b;if a==0,b=5;else a==5,b=0;end;b']);'CallBack',['a=b;if a==0,b=5;else a==5,b=0;end;b']);
Box_02 = uicontrol(gcf,...Box_02 = uicontrol(gcf,...
'Style','checkbox',...'Style','checkbox',...
'Units','normalized','Position',[0.4 0.550 0.25 0.05],...'Units','normalized','Position',[0.4 0.550 0.25 0.05],...
'String','valor $4',...'String','valor $4',...
'CallBack',['c=d;if c==0,d=4;else c==4,d=0;end;d']);'CallBack',['c=d;if c==0,d=4;else c==4,d=0;end;d']);
Box_03 = uicontrol(gcf,...Box_03 = uicontrol(gcf,...
'Style','checkbox',...'Style','checkbox',...
'Units','normalized','Position',[0.4 0.500 0.25 0.05],...'Units','normalized','Position',[0.4 0.500 0.25 0.05],...
'String','valor $10',...'String','valor $10',...
'CallBack',['e=f;if e==0,f=10;else e==10,f=0;end;f']);'CallBack',['e=f;if e==0,f=10;else e==10,f=0;end;f']);
boton_calculo = uicontrol(gcf,...boton_calculo = uicontrol(gcf,...
'Style','push',...'Style','push',...
'Units','normalized','Position',[0.4 0.450 0.25 0.05],...'Units','normalized','Position',[0.4 0.450 0.25 0.05],...
'String','Calcular',...'String','Calcular',...
'CallBack','b+d+f');'CallBack','b+d+f');
TEXTO (LABEL)TEXTO (LABEL)BOTONES DE OPCIÓN (RADIO BUTTONS)BOTONES DE OPCIÓN (RADIO BUTTONS)TEXTO (LABEL)TEXTO (LABEL)BOTONES DE OPCIÓN (RADIO BUTTONS)BOTONES DE OPCIÓN (RADIO BUTTONS)
% Definir el texto de título para este grupo de controles% Definir el texto de título para este grupo de controles
txt_01 = uicontrol(gcf,...txt_01 = uicontrol(gcf,...
'Style','text','String','Tolerancia de la resistencia',...'Style','text','String','Tolerancia de la resistencia',...
'Units','normalized','Position',[0.4 0.60 0.25 0.05]);'Units','normalized','Position',[0.4 0.60 0.25 0.05]);
% Definir la propiedad TickDir In con radiobutton (defecto)% Definir la propiedad TickDir In con radiobutton (defecto)
tol=5tol=5
td_5 = uicontrol(gcf,...td_5 = uicontrol(gcf,...
'Style','radio', 'String','+/- 5%',...'Style','radio', 'String','+/- 5%',...
'Units','normalized','Position',[0.4 0.55 0.25 0.05],...'Units','normalized','Position',[0.4 0.55 0.25 0.05],...
'Value',1,...'Value',1,...
'CallBack','set(td_5,''Value'',1),set(td_10,''Value'',0),set(td_15,'CallBack','set(td_5,''Value'',1),set(td_10,''Value'',0),set(td_15,''Value'',0),1,0,0,tol=5');''Value'',0),1,0,0,tol=5');
% Definir la propiedad TickDir Out con radiobutton% Definir la propiedad TickDir Out con radiobutton
td_10 = uicontrol(gcf,...td_10 = uicontrol(gcf,...
'Style','radio','String','+/- 10%',...'Style','radio','String','+/- 10%',...
'Units','normalized','Position',[0.4 0.50 0.25 0.05],...'Units','normalized','Position',[0.4 0.50 0.25 0.05],...
'Value',0,...'Value',0,...
'CallBack','set(td_5,''Value'',0),set(td_10,''Value'',1),set(td_15,'CallBack','set(td_5,''Value'',0),set(td_10,''Value'',1),set(td_15,''Value'',0),0,1,0,tol=10');''Value'',0),0,1,0,tol=10');
% Definir la propiedad TickDir Out con radiobutton% Definir la propiedad TickDir Out con radiobutton
td_15 = uicontrol(gcf,...td_15 = uicontrol(gcf,...
'Style','radio','String','+/- 15%',...'Style','radio','String','+/- 15%',...
'Units','normalized','Position',[0.4 0.45 0.25 0.05],...'Units','normalized','Position',[0.4 0.45 0.25 0.05],...
'Value',0,...'Value',0,...
'CallBack','set(td_5,''Value'',0),set(td_10,''Value'',0),set(td_15,'CallBack','set(td_5,''Value'',0),set(td_10,''Value'',0),set(td_15,''Value'',1),0,0,1,tol=15');''Value'',1),0,0,1,tol=15');
% Definir el texto de título para este grupo de controles% Definir el texto de título para este grupo de controles
txt_01 = uicontrol(gcf,...txt_01 = uicontrol(gcf,...
'Style','text','String','Tolerancia de la resistencia',...'Style','text','String','Tolerancia de la resistencia',...
'Units','normalized','Position',[0.4 0.60 0.25 0.05]);'Units','normalized','Position',[0.4 0.60 0.25 0.05]);
% Definir la propiedad TickDir In con radiobutton (defecto)% Definir la propiedad TickDir In con radiobutton (defecto)
tol=5tol=5
td_5 = uicontrol(gcf,...td_5 = uicontrol(gcf,...
'Style','radio', 'String','+/- 5%',...'Style','radio', 'String','+/- 5%',...
'Units','normalized','Position',[0.4 0.55 0.25 0.05],...'Units','normalized','Position',[0.4 0.55 0.25 0.05],...
'Value',1,...'Value',1,...
'CallBack','set(td_5,''Value'',1),set(td_10,''Value'',0),set(td_15,'CallBack','set(td_5,''Value'',1),set(td_10,''Value'',0),set(td_15,''Value'',0),1,0,0,tol=5');''Value'',0),1,0,0,tol=5');
% Definir la propiedad TickDir Out con radiobutton% Definir la propiedad TickDir Out con radiobutton
td_10 = uicontrol(gcf,...td_10 = uicontrol(gcf,...
'Style','radio','String','+/- 10%',...'Style','radio','String','+/- 10%',...
'Units','normalized','Position',[0.4 0.50 0.25 0.05],...'Units','normalized','Position',[0.4 0.50 0.25 0.05],...
'Value',0,...'Value',0,...
'CallBack','set(td_5,''Value'',0),set(td_10,''Value'',1),set(td_15,'CallBack','set(td_5,''Value'',0),set(td_10,''Value'',1),set(td_15,''Value'',0),0,1,0,tol=10');''Value'',0),0,1,0,tol=10');
% Definir la propiedad TickDir Out con radiobutton% Definir la propiedad TickDir Out con radiobutton
td_15 = uicontrol(gcf,...td_15 = uicontrol(gcf,...
'Style','radio','String','+/- 15%',...'Style','radio','String','+/- 15%',...
'Units','normalized','Position',[0.4 0.45 0.25 0.05],...'Units','normalized','Position',[0.4 0.45 0.25 0.05],...
'Value',0,...'Value',0,...
'CallBack','set(td_5,''Value'',0),set(td_10,''Value'',0),set(td_15,'CallBack','set(td_5,''Value'',0),set(td_10,''Value'',0),set(td_15,''Value'',1),0,0,1,tol=15');''Value'',1),0,0,1,tol=15');
BARRAS DE DESPLAZAMIENTO BARRAS DE DESPLAZAMIENTO (SCROLLING BARS O SLIDERS)(SCROLLING BARS O SLIDERS)BARRAS DE DESPLAZAMIENTO BARRAS DE DESPLAZAMIENTO (SCROLLING BARS O SLIDERS)(SCROLLING BARS O SLIDERS)
barra_01 = uicontrol(gcf,...barra_01 = uicontrol(gcf,...
'Style','slider',...'Style','slider',...
'Units','normalized','Position',[0.4 0.55 0.35 'Units','normalized','Position',[0.4 0.55 0.35 0.05],...0.05],...
'Min',0,'Max',20000,'Value',5,...'Min',0,'Max',20000,'Value',5,...
'CallBack',['a=num2str(get(barra_01,''Val''))']);'CallBack',['a=num2str(get(barra_01,''Val''))']);
barra_01 = uicontrol(gcf,...barra_01 = uicontrol(gcf,...
'Style','slider',...'Style','slider',...
'Units','normalized','Position',[0.4 0.55 0.35 'Units','normalized','Position',[0.4 0.55 0.35 0.05],...0.05],...
'Min',0,'Max',20000,'Value',5,...'Min',0,'Max',20000,'Value',5,...
'CallBack',['a=num2str(get(barra_01,''Val''))']);'CallBack',['a=num2str(get(barra_01,''Val''))']);
CAJAS DE SELECCIÓN CAJAS DE SELECCIÓN DESPLEGABLES (POP-UP MENUS)DESPLEGABLES (POP-UP MENUS)CAJAS DE SELECCIÓN CAJAS DE SELECCIÓN DESPLEGABLES (POP-UP MENUS)DESPLEGABLES (POP-UP MENUS)
popcol = uicontrol(gcf,...popcol = uicontrol(gcf,...
'Style','popup',...'Style','popup',...
'String','CINCO|DIEZ|QUINCE|VEINTE',...'String','CINCO|DIEZ|QUINCE|VEINTE',...
'Units','normalized','Position',[0.4 0.55 0.35 'Units','normalized','Position',[0.4 0.55 0.35 0.05],...0.05],...
'CallBack',['pop=[5,10,15,20];',...'CallBack',['pop=[5,10,15,20];',...
'a=pop(get(popcol,''Value''))']);'a=pop(get(popcol,''Value''))']);
popcol = uicontrol(gcf,...popcol = uicontrol(gcf,...
'Style','popup',...'Style','popup',...
'String','CINCO|DIEZ|QUINCE|VEINTE',...'String','CINCO|DIEZ|QUINCE|VEINTE',...
'Units','normalized','Position',[0.4 0.55 0.35 'Units','normalized','Position',[0.4 0.55 0.35 0.05],...0.05],...
'CallBack',['pop=[5,10,15,20];',...'CallBack',['pop=[5,10,15,20];',...
'a=pop(get(popcol,''Value''))']);'a=pop(get(popcol,''Value''))']);
CAJAS DE TEXTO EDITABLES (EDITABLE TEXTBOXES)CAJAS DE TEXTO EDITABLES (EDITABLE TEXTBOXES)MARCOS (FRAMES)MARCOS (FRAMES)CAJAS DE TEXTO EDITABLES (EDITABLE TEXTBOXES)CAJAS DE TEXTO EDITABLES (EDITABLE TEXTBOXES)MARCOS (FRAMES)MARCOS (FRAMES)
ft_dir = uicontrol(gcf,...ft_dir = uicontrol(gcf,...
'Style','frame',...'Style','frame',...
'Units','normalized','Position',[0.38 0.49 0.24 0.20]);'Units','normalized','Position',[0.38 0.49 0.24 0.20]);
valor_01 = uicontrol(gcf,...valor_01 = uicontrol(gcf,...
'Style','edit',...'Style','edit',...
'BackgroundColor','white',...'BackgroundColor','white',...
'FontSize',9,'FontName','Arial',...'FontSize',9,'FontName','Arial',...
'String',[400],...'String',[400],...
'Units','normalized','Position',[0.4 0.60 0.20 0.05],...'Units','normalized','Position',[0.4 0.60 0.20 0.05],...
'CallBack','r=valor_01')'CallBack','r=valor_01')
boton_calculo = uicontrol(gcf,...boton_calculo = uicontrol(gcf,...
'Style','push',...'Style','push',...
'Units','normalized','Position',[0.4 0.52 0.20 0.05],...'Units','normalized','Position',[0.4 0.52 0.20 0.05],...
'String','Calcular',...'String','Calcular',...
'CallBack','r*3');'CallBack','r*3');
ft_dir = uicontrol(gcf,...ft_dir = uicontrol(gcf,...
'Style','frame',...'Style','frame',...
'Units','normalized','Position',[0.38 0.49 0.24 0.20]);'Units','normalized','Position',[0.38 0.49 0.24 0.20]);
valor_01 = uicontrol(gcf,...valor_01 = uicontrol(gcf,...
'Style','edit',...'Style','edit',...
'BackgroundColor','white',...'BackgroundColor','white',...
'FontSize',9,'FontName','Arial',...'FontSize',9,'FontName','Arial',...
'String',[400],...'String',[400],...
'Units','normalized','Position',[0.4 0.60 0.20 0.05],...'Units','normalized','Position',[0.4 0.60 0.20 0.05],...
'CallBack','r=valor_01')'CallBack','r=valor_01')
boton_calculo = uicontrol(gcf,...boton_calculo = uicontrol(gcf,...
'Style','push',...'Style','push',...
'Units','normalized','Position',[0.4 0.52 0.20 0.05],...'Units','normalized','Position',[0.4 0.52 0.20 0.05],...
'String','Calcular',...'String','Calcular',...
'CallBack','r*3');'CallBack','r*3');
Simulink:Simulink:
Este programa se Este programa se basa en la utilización basa en la utilización de comandos en de comandos en sistemas de bloques, sistemas de bloques, cada bloque ejecuta cada bloque ejecuta un comando un comando matemático. matemático.
Esta ventana muestra Esta ventana muestra las distintas galerías las distintas galerías donde se encuentran los donde se encuentran los comandos de bloques.comandos de bloques.
En este curso no En este curso no profundizaremos en profundizaremos en todas las galerías ni en todas las galerías ni en todos los comandos ya todos los comandos ya que por razones de que por razones de tiempo y necesidad de tiempo y necesidad de uso solo utilizaremos los uso solo utilizaremos los sistemas de bloques sistemas de bloques más necesarios para más necesarios para Ingeniería Eléctrica.Ingeniería Eléctrica.
Comenzaremos con laComenzaremos con lagalería Simulink:galería Simulink:
La galería SOUCES:La galería SOUCES:
Los bloques que Los bloques que se encuentran se encuentran dentro son los dentro son los bloques de bloques de entrada, los entrada, los generadores de generadores de señales.señales.
Este bloque se utiliza para
ingresar constantes.
Constant value: Aquí se ingresa la contante.
ConstantConstant
Ingresar Signal GeneratorIngresar Signal Generator
Este bloque se utiliza para generar distintos tipos de
señales.
Wave form: El tipo de señalAmplitude: La amplitud de la señal
Frequency: La frecuencia de la señalUnits: Herts o rad/seg
Clock and Digital ClockClock and Digital Clock
Este bloque se utiliza para generar una señal análoga correspondiente al tiempo
de evaluación.
Este bloque se utiliza para generar una señal digital
correspondiente al tiempo de evaluación.
Ingresar ConstanteIngresar Constante
Este bloque se utiliza para generar una señal de
pulso.
Step time: Tiempo de retardoInicial value: Valor de inicio
Final value: Valor después del cambioSample time: Rate (evalúa la señal en un tiempo
especificado si se le ingresa “0” la evaluación es automática)
RampRamp
Este bloque se utiliza para generar una señal del tipo
y = mx + h.
Slope: mStart time: cuando comienza a
funcionarInitial output: h
Sine WaveSine Wave
Este bloque se utiliza para generar una señal del
tipo senoidal.
Amplitude: Amplitud de la señal.Frequency (rad/sec): Frecuencia en radianes por segundo
Phase (rad): Desfasage en radianesSample time: Rate (evalúa la señal en un tiempo especificado si
se le ingresa “0” la evaluación es automática)
From File and From WorkspaceFrom File and From Workspace
Este bloque utiliza una memoria mat para generar la señal
Este bloque utiliza una memoria común para
generar la señal
La galería SINKS:La galería SINKS:
Los bloques que se Los bloques que se encuentran dentro encuentran dentro son los que registran son los que registran las salidas graficando las salidas graficando o guardando en o guardando en memorias.memorias.
ScopeScope
Este bloque grafica las señales
Las opciones que dispone el graficador son:Zoom in: zoom más cerca.zoom out: zoom más lejos.
zoom box: zoom sobre una región determinada.zoom autoscale: zoom automático viendo todo el grafico.
XY GraphXY Graph
Este bloque grafica las señales según X e Y
Las opciones que dispone el graficador son:x-min: El valor de comienzo según el eje x.
x-max: El valor de final según el eje x.y-min: El valor de comienzo según el eje y.
y-max: El valor de final según el eje y.Sample time: Rate (evalúa la señal en un tiempo especificado si se le
ingresa “0” la evaluación es automática)
DisplayDisplay
Este bloque muestra el valor de la señal punto a punto o hasta llegar a un valor constante.
Fomat: El tipo de forma que se va a visualizar.Decimation: la precisión.
Sample time: Rate (evalúa la señal en un tiempo especificado si se le ingresa “0” la evaluación es
automática)
To File and To WorkspaceTo File and To Workspace
Este bloque utiliza una memoria mat para guardar la señal
Este bloque utiliza una memoria común para guardar la señal
Stop SimulationStop Simulation
Este bloque detiene la simulación
Este bloque detiene la simulación cuando el valor que se le ingresa es distinto de
“0” (cero).
La galería CONTINUOUS:La galería CONTINUOUS:
Integrator and Derivatrive Integrator and Derivatrive
Este bloque integra la señal punto a punto y muestra el
acumulado hasta el momento
Este bloque deriva la señal punto a punto y muestra el
acumulado hasta el momento
La galería MATH:La galería MATH: SumSum
Este bloque suma o resta las señales punto a punto.
Se puede visualizar circular o rectangular.
Icon shape: La forma Rectangular o Circular.Listo of signs: Aquí se agrega + o –
dependiendo lo que se necesite.
ProductProduct
Este bloque multiplica o divide las
señales.
Number of input: El numero de entradas, si se ingresan “/” la señas es dividida y si se coloca “*” se
multiplica, y si se coloca un numero todas las entradas se multiplican.
Math FunctionMath Function
Este bloque aplica a la señal de entrada de varias operaciones
matemáticas.
Function: Es la lista de las funciones disponibles.
Math FunctionMath Function
Este bloque aplica a la señal de entrada de varias operaciones trigonométricas matemáticas.
Function: Es la lista de las funciones trigonométricas disponibles.
FunctionFunction
Este bloque aplica a la señal de entrada el comando de valor absoluto.
Este bloque entrega el signo de la señal de entrada.Ej: +20 +1 0 0 -20 -1
Este bloque actúa como un sistema digital interactuando con 0 y 1.
FunctionFunction
Este bloque compara las señales digitales o análogas pero con un resultado digital.
Este bloque une dos señales trasformándolas en complejas para luego poder resolver cualquier calculo de complejo sobre una señal única.
Este bloque separa a la señal compleja en dos señales comunes.
FunctionFunction
Este bloque convierte una señal polar en una rectangular.
Este bloque convierte una señal rectangular en una polar.
Este bloque resuelve sistemas.
La galería FUNCTION AND TABLES:La galería FUNCTION AND TABLES:FCNFCN
Este bloque aplica a la señal de entrada de varias operaciones
trigonométricas o matemáticas.
Function: Es la lista de las funciones trigonométricas disponibles.
MATLAB FcnMATLAB Fcn
Bloque de función
Bloque de función
En el parámetro MATLAB function: se coloca el nombre del archivo de extencion *.m generado en Matlab,Output width: es el valor de multiplicación final de la salida.
En el parámetro MATLAB function: se coloca el nombre del archivo de extencion *.m generado en Matlab,Output width: es el valor de multiplicación final de la salida.
Función que se genera
en el editor de Matlab
Función que se genera
en el editor de Matlab
Resultado visualizado con el SCOPE
Resultado visualizado con el SCOPE
La galería SIGNAL & SYSTEMS:La galería SIGNAL & SYSTEMS:
Estos bloques se utilizan para trasmitir una señal de un lado al otro a través estos bloques.
Es muy útil cuando los sistemas se vuelven muy complejos y se necesita una señal
determinada
Estos bloques se utilizan para trasmitir una señal de un lado al otro a través estos bloques.
Es muy útil cuando los sistemas se vuelven muy complejos y se necesita una señal
determinada
From & GOTO From & GOTO
MUX & DEMUX
Estos bloques sirven para unir señales y para
separarlas.
IN & OUT
Estos bloques son utilizados en la
conformación de subsistemas.
Power System Blockset:Power System Blockset:Power System Blockset:Power System Blockset:Esta librería, este programas es realmente extenso con una gran Esta librería, este programas es realmente extenso con una gran capacidad para realizar diversos tipos de sistemas eléctricos y capacidad para realizar diversos tipos de sistemas eléctricos y de de control, pero para comenzar a interiorizarnos con el de de control, pero para comenzar a interiorizarnos con el programa poco a poco y debido a que este apunte esta dedicado programa poco a poco y debido a que este apunte esta dedicado para alumnos de Ing. Eléctrica los símbolos que utilizaremos son para alumnos de Ing. Eléctrica los símbolos que utilizaremos son fáciles de reconocer.fáciles de reconocer.
Esta librería, este programas es realmente extenso con una gran Esta librería, este programas es realmente extenso con una gran capacidad para realizar diversos tipos de sistemas eléctricos y capacidad para realizar diversos tipos de sistemas eléctricos y de de control, pero para comenzar a interiorizarnos con el de de control, pero para comenzar a interiorizarnos con el programa poco a poco y debido a que este apunte esta dedicado programa poco a poco y debido a que este apunte esta dedicado para alumnos de Ing. Eléctrica los símbolos que utilizaremos son para alumnos de Ing. Eléctrica los símbolos que utilizaremos son fáciles de reconocer.fáciles de reconocer.
Electrical Sources:Electrical Sources:Electrical Sources:Electrical Sources:
Esta librería Esta librería nos proporciona nos proporciona los distintos los distintos tipos de fuentes tipos de fuentes que necesitemos que necesitemos para desarrollar para desarrollar sistemas sistemas eléctricos eléctricos básicos.básicos.
Esta librería Esta librería nos proporciona nos proporciona los distintos los distintos tipos de fuentes tipos de fuentes que necesitemos que necesitemos para desarrollar para desarrollar sistemas sistemas eléctricos eléctricos básicos.básicos.
Elements:Elements:Elements:Elements:
Esta librería Esta librería nos proporciona nos proporciona los distintos los distintos tipos de tipos de elementos tales elementos tales como como resistencias, resistencias, capacitores, capacitores, inductancias, inductancias, transformadores, transformadores, etc. etc.
Esta librería Esta librería nos proporciona nos proporciona los distintos los distintos tipos de tipos de elementos tales elementos tales como como resistencias, resistencias, capacitores, capacitores, inductancias, inductancias, transformadores, transformadores, etc. etc.
Esta nos proporciona diodos, Esta nos proporciona diodos, transistores, etc.transistores, etc.
Esta nos proporciona Esta nos proporciona distintos tipos de motores distintos tipos de motores asincrónicos monofásicos asincrónicos monofásicos trifásicos, etc.trifásicos, etc.
Esta nos da un voltímetro y Esta nos da un voltímetro y un amperímetro.un amperímetro.
DiodosDiodos motoresmotores y y medidores:medidores:DiodosDiodos motoresmotores y y medidores:medidores:
Ejemplo de un circuitoEjemplo de un circuitoEjemplo de un circuitoEjemplo de un circuito