Lab 1
Lab 1
INFORME N° 1
SEMESTRE II-2022
1.1. OBJETIVOS.
Scilab es un software para análisis numérico, con un lenguaje de programación de alto nivel para
cálculo científico. Las características de Scilab incluyen análisis numérico, visualización 2-D y 3-D,
optimización, análisis estadístico, diseño y análisis de sistemas dinámicos, procesamiento de
señales, e interfaces con Fortran, Java, C y C++. Mientras que la herramienta Xcos permite una
interfaz gráfica para el diseño de modelos.
1.3. DESARROLLO.
1.3.1.- En Matlab 2018-2022. Introduzca la foto digitalizada con la fecha, la hora con comandos de Matlab,
como comentarios introduzca sus datos personales en el siguiente orden:
Nombre completo:
Carnet de Identidad:
Fecha de Nacimiento:
Dirección:
Paralelo:
Resolución:
% Nombre:
% C.I.:
% Fecha de nacimiento:
% Dirección:
% Foto digitalizada
FOTO=imread('C:\[Link]');
imshow(FOTO)
% Fecha y hora
datestr(now)
d = datetime('today')
t = datetime('now')
1.3.2.- Lista de operadores matemáticos Básicos
Matlab: Scilab: Operación
+ + Adición
- - Sustracción
* * Multiplicación
/ / División
^ ^ Potencia
.* .* Multiplicación elemento por elemento
./ ./ División elemento por elemento
\ \ División a la izquierda
% Operador para variables especiales
% // Comentario
. . Separador decimal
.. .. Ir a carpeta superior
... ... Continuar comando en siguiente línea
, , Separador de elementos
‘ ‘ Transpuesta de matriz
( ) ( ) Agrupar operaciones y datos
[ ] [ ] Definir matrices
: : Definir elementos en secuencia
; ; Separador de filas y fin de línea
1.3.3.- Gráficos
Se dispone de recursos extensos para visualizar vectores y matrices como gráficos, así como hacer
anotaciones e imprimir estos gráficos. Esta sección describe la función plot y algunas de sus opciones más importantes.
Además proporciona ejemplos de algunas de sus aplicaciones típicas.
Crear un Gráfico
La función plot tiene diversas formas, dependiendo de los argumentos de entrada, si y es un vector, plot(y) produce
un gráfico lineal por partes de los elementos de y contra el índice de los elementos de y. Si usted especifica dos vectores
como los argumentos, plot(x,y)produce un gráfico de y contra x.
Por ejemplo, para trazar el valor de la función del seno a partir de cero hasta 2*pi, con incrementos de pi/100 usar:
t = 0:pi/100:2*pi;
y = sin(t);
plot(t, y)
Pares múltiples x-y crean gráficos múltiples con una sola llamada a plot. Se cambia el color
automáticamente a través de una lista predefinida de colores (que pueden ser definidos por el usuario)
para permitir distinguir entre cada conjunto de datos. Por ejemplo, las siguientes instrucciones
trazan tres funciones relacionadas con t, cada curva se distingue por un color,
t = 0:pi/100:2*pi;
y = sin(t);
y2 =sin(t-.25);
y3 = sin(t-.5);
plot(t, y, t, y2, t, y3)
Es posible especificar color, el tipo de línea, y marcas tales como signos más o círculos, con:
plot(x, y, 'color_estilo_marcador')
Donde color_estilo_marcador es una cadena de 1 a 3 caracteres (entres apóstrofes) formadas por color, estilo de
línea y tipo de marca, sus valores más utilizados se presentan en la siguiente tabla:
Mostrar cuadricula
Solo en vertical
set(gca(),"grid",[1 -1])
Mostrar cuadricula
Solo en horizontal
set(gca(),"grid",[-1 1])
El comando set existe tanto en Matlab como en Scilab y permite modificar en ambos casos opciones de formato de figuras,
entre otras cosas ajustar ejes, editar colores, editar marcadores, etc.
En Matlab para agregar un gráfico a una figura existente, sin borrarla se debe utilizar el comando
hold on, el cual permite que agregar gráficos a una figura existente. Esta opción quedará activa para los gráficos
subsiguientes hasta que la apague con el comando hold off, a partir de allí las nuevas graficas borraran las anteriores
realizadas en una misma figura.
MATLAB SCILAB
t = 0:pi/10:2*pi; t = 0:%pi/2:5*%pi;
y = sin(t); y = sin(t);
y4=cos(t); y4=cos(t);
figure figure
plot(t,y,'r'), grid on, plot(t,y,'r'), set(gca(),"grid",[1 1])
hold on plot(t,y4,'b'),
plot(t,y4,'b')
hold off
t=0:%pi/10:2*%pi;
y=sin(t);
y2=sin(t-.25);
y3=sin(t-.5);
y4=cos(t);
subplot(2,2,1)
plot(t,y,'r')
subplot(2,2,2)
plot(t,y4,'b')
subplot(2,2,3)
plot(t,y2,'g')
subplot(2,2,4)
plot(t,y3,'k')
1.3.6 Etiqueta de los Ejes, Títulos y Leyenda
En Matlab se puede agregar un título a una figura con el comando title, y las etiquetas a los ejes x, y, z con
los comandos xlabel, ylabel, y zlabel. La sintaxis para estos comandos es:
xlabel('etiqueta eje x')
ylabel('etiqueta eje y')
zlabel('etiqueta eje z')
title('Titulo del Grafico')
En Scilab el título de una figura y las etiquetas para los ejes se agregan con el comando xtitle. La
sintaxis para esta función es:
xtitle("Titulo","etiqueta eje x", "etiqueta eje y","etiqueta eje z")
En ambos casos el título y las etiquetas de ejes se pueden agregar o modificar en las ventanas gráficas de edición de las
figuras.
También es posible agregar una leyenda con el comando legend para identificar las diversas graficas
cuando se grafican varias cosas en un solo gráfico. En ambos casos la sintaxis es:
legend('nombre grafica 1','nombre grafica 2',...)
Veamos un ejemplo para graficar la función seno, incluyendo título, etiquetas, leyenda y ajuste de ejes específico, se muestra
la sintaxis específica en Matlab y Scilab así como el resultado obtenido en cada caso:
Matlab: Scilab:
t = 0:pi/10:2*pi; t = 0:%pi/10:2*%pi;
y = sin(t); y = sin(t);
y2 =sin(t-.25); y2 =sin(t-.25);
y3 = sin(t-.5); y3 = sin(t-.5);
plot(t, y,'g', t, y2,'b', t, y3,'r') plot(t, y,'g', t, y2,'b', t, y3,'r'),
grid on set(gca(),"grid",[1 1])
axis([0,6,-1.2,1.2]) set(gca(),"data_bounds",[0,6,-1.2,1.2])
xlabel('Tiempo') xtitle("Y=Seno(t)","tiempo", "Y")
ylabel('Y') legend ("sin(t)","sin(t-0.25)","sin(t-0.5)")
title('Y = seno(t)')
legend('sin(t)','sin(t-0.25)','sin(t-0.5)')
Halle simbólicamente la transformada de Laplace y la transformada inversa de Laplace
de la siguiente expresión, aplique los comandos de Scilab y compruebe la
diferencia:
SCILAB
// en el programa de scilab la transformada inversa se
// puede presente mediante una grafica
s=poly(0,'s');
//función de tranferencia
g=(s^2+5*s+4)/((s+2)*(s+0.5)*(s^2+s+1))
gs=syslin('c',g)
//a) Polos y ceros de la función de transferencia g(s)
roots([Link])
roots([Link])
//b)Expansion en fracciones parciales de la función de transferencia g(s)
pfss(gs)
//c)Transformada de inversa de Laplace
si la entrada es un escalón de amplitud 1
r=1/s
y=r*g
//d)Expansion en fracciones parciales de y(s)
pfss(y)
//e)Respuesta en el tiempo de la salida en un intervalo
de 0 a 20 segundos para un ingreso a escalon de amplitud 1
// tiempo de simulacion
t=0:0.005:20
sist=syslin('c',gs)
y=csim('step',t,sist)
plot(t',y)
MATLAB
syms p t p1
p=3*t^3
pretty(p)
p1 = laplace(p)
pretty(p1)
%la transformada inversa de laplace
pretty(ilaplace(p1))
EJERCICIOS
1) Incluya su nombre completo, fecha y hora de la práctica y su foto en SCILAB y MATLAB
Sea la siguiente función de transferencia
s^2 +5s +25
G(s) = ————————————————————
s^7 +5s^6 +4 s^5 +s^4 +3s^3 +5s^2 +3,5s+1
SCINOTES CONSOLE
//FOTOGRAFIA DE CARNET
UNIVERSITARIO: DE JHUNIOR LACO
TANGARA
imagen= imread("D:\TRABAJOS EN SCILAB\
7dbd229f-d13d-4197-98ab-
[Link]");
imshow(imagen)
2
s + 5 s+ 25
G(s) = 7 6 4 3 2
7 s +4 s + 3 s +3 s +6 s +8 s
clc
%la transformada de Laplace
syms t y
f = 31*t^4;
laplace(f)
Reemplace su numero de celular en los coeficientes del numerador y su fecha de nacimiento en los coeficientes del
denominador, y con cada uno los números de su carnet de identidad, multiplique la anterior función de transferencia para
una ganancia de 7 y grafique en una matriz de m x n graficos, cada grafico debe tener su propia leyenda, color y
símbolo diferente.
7∗7∗( 6 s + 7 s +2 s + 3 s +4 s + 2 s +6 s+ 9 )
7 6 5 4 3 2
Gv (s)1=
( 1 s 6+ 6 s 4 +2 s 3 +2 )
7∗4∗( 6 s 7 +7 s 6 +2 s 5 +3 s 4 + 4 s 3 +2 s 2+ 6 s +9 )
Gv (s)2=
( 1 s6 +6 s 4 +2 s 3 +2 )
7∗0∗( 6 s +7 s +2 s +3 s + 4 s +2 s +6 s+9 )
7 6 5 4 3 2
Gv (s)3 =
( 1 s6 +6 s 4 +2 s 3+2 )
7∗3∗( 6 s 7+ 7 s 6 +2 s 5+ 3 s 4 +4 s 3+ 2 s2 +6 s+ 9 )
Gv (s) 4=
( 1 s 6+ 6 s 4 +2 s 3 +2 )
7∗3∗( 6 s +7 s +2 s +3 s + 4 s +2 s +6 s +9 )
7 6 5 4 3 2
Gv (s)5 =
( 1 s 6 +6 s4 + 2 s3 +2 )
7∗6∗( 6 s7 +7 s 6+ 2 s5 +3 s 4 +4 s 3+2 s2 +6 s+ 9 )
Gv (s)6 =
( 1 s6 +6 s 4 +2 s 3+ 2 )
7∗8∗( 6 s7 +7 s 6+ 2 s5 +3 s4 + 4 s3 +2 s2 +6 s+9 )
Gv (s)7 =
( 1 s6 +6 s 4 +2 s 3+ 2 )
- Realice el grafico de la función de transferencia en VISSIM incluyendo en el titulo: Laboratorio 1 de
Sistemas de control, en el eje x su nombre completo, en el eje y su carnet de identidad
Respuesta: se ve que el numerador tiene un grado mayor que el denominador por la tanto el programa Vissin no
puede puede graficarlo .
- Realice el grafico de la función de transferencia en PROGRAM CC incluyendo en el titulo: Laboratorio 1
de Sistemas de control, en el eje x su nombre completo, en el eje y su carnet de identidad
SCINOTES CONSOLE
datetime =
// ejercicio 2
2022. 9. 15. 7. 28. 45.268
//nombre: Jhunior Laco Tangara
// fecha y hora en Oruro-Bolivia
[datetime, tz, Dst] = clock()
imshow(imagen)//FOTOGRAFIA DE CARNET
UNIVERSITARIO: DE JHUNIOR LACO TANGARA
imagen= imread('F:\carnet_universitario');
imshow(imagen)
clf
s = %s;
// Rationals
x = -0.5:0.02:10;
r = 7*(7*(6*s^7+7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s+9))
/((1*s^6+6*s^4+2*s^3+2))
g = 7*(4*(6*s^7+7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s+9))
/((1*s^6+6*s^4+2*s^3+2))
k = 7*(0*(6*s^7+7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s +9))
/((1*s^6+6*s^4+2*s^3+2))
h =7*(3*(6*s^7+7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s+9))
/((1*s^6+6*s^4+2*s^3+2))
l =7*(3*(6*s^7+7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s+9))
/((1*s^6+6*s^4+2*s^3+2))
m =7*(6*(6*s^7+7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s +9))
/((1*s^6+6*s^4+2*s^3+2))
n=7*(8*(6*s^7+7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s+9))
/((1*s^6+6*s^4+2*s^3+2))
plot(x,r,'o',x,g,'<',x,k,'>',x,h,'x',x,l,'.',x,m,'*',x,n,'^')
xtitle("Laboratorio 1 de Sistemas de control","Jhunior Laco
Tangara", "7403368")
legend ("7*(7*(6*s^7+7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s+9))
/((1*s^6+6*s^4+2*s^3+2))","7*(4*(6*s^7+
7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s+9))
/((1*s^6+6*s^4+2*s^3+2))","7*(0*(6*s^7+7*s^6+2*s^5+3*s
^4+4*s^3+2*s^2+6*s
+9))/((1*s^6+6*s^4+2*s^3+2))","7*(3*(6*s^7+7*s^6+2*s^5+3*s^4+
4*s^3+2*s^2+6*s+9))
/((1*s^6+6*s^4+2*s^3+2))",
"7*(3*(6*s^7+7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s+9))/((1*s^6+6*
s^4+2*s^3+2))","7*
(6*(6*s^7+7*s^6+2*s^5+3*s^4+4*s^3+2*s^2+6*s
+9))/((1*s^6+6*s^4+2*s^3+2))","7*(8*(6*s^7+7*s^6+2*s^5+
3*s^4+4*s^3+2*s^2+6*s+9))/
((1*s^6+6*s^4+2*s^3+2))")
gcf().[Link] = color("grey70")*[1 1]; // grids
gcf().[Link]([1 3]).font_size=3; // legends
- Realice el grafico de la función de transferencia en MATLAB incluyendo en el titulo: Laboratorio 1 de
Sistemas de control, en el eje x su nombre completo, en el eje y su carnet de identidad
Comando Window
// ejercicio 2
Editor
%Nombre:jhunior laco tangara
% C.I.:7403368
% Fecha de nacimiento:01/06/2002
% Dirección:calle salamanca/ calle Edmundo mirones
% Foto digitalizada
FOTO=imread('D:\DOCUMENTOS DE SCILAB Y MATLAB\TRABAJOS EN
SCILAB\[Link]');
imshow(FOTO)
% Fecha y hora
ans = '07-Sep-2022
datestr(now)
d = datetime('today') [Link]'
% Realice el grafico de la función de transferencia
en MATLAB incluyendo en el titulo: Laboratorio 1 de
Sistemas de control, en el eje x MATLAB no lo puede realizar la
%su nombre completo, en el eje y su carnet de gráfica porque el numerador de la
identidad
G1 = tf([294 343 98 147 196 98 296 441],[1 0 6 2 0 0 2]) función de transferencia es mayor
G2 = tf([168 196 56 84 112 56 168 252],[1 0 6 2 0 0 2]) que el denominador , ósea tiene un
G3 = tf([0,0,0,0,0],[1 0 6 2 0 0 2])
G4 = tf([126 147 42 63 84 42 126 189],[1 0 6 2 0 0 2]) grado mayor
G5 = tf([126 147 42 63 84 42 126 189],[1 0 6 2 0 0 2])
G6 = tf([252 294 84 126 168 84 252 378],[1 0 6 2 0 0 2])
G7 = tf([336 392 112 168 224 112 336 504],[1 0 6 2 0 0 2])
step(G1,G2,G3,G4,G5,G6,G7)
den=[1 2 1]
num=[1]
G=tf(num,den)
step(G)
%posterior ponemos título a la gráfica
xlabel('Tiempo')
ylabel('Amplitud')
title('Laboratorio 1 de Sistemas de control')
CUESTIONARIO
1.- Obtener las características, números de licencias de funcionamiento, lenguajes de programacion que
se usaron en la última versión de MATLAB 2018 hasta 2022, Program CC, Vissim y Scilab y adjuntar al
informe.
2.- Que otros asistentes matemáticos y software de sistemas de control se tienen actualmente, realice
una breve descripción de por lo menos 4.
R:- Derive : es uno de esos programas de cálculo simbólico, quizá el más difundido y popular porque en su
modalidad más sencilla (Derive para DOS ‘classic') funcionaba en cualquier PC, sin necesidad de que tuviera disco
duro y ocupaba sólo un diskette. Hoy, Derive 6 sigue siendo un "pequeño" programa, que ocupa poco más de 3
Mb., y que sigue siendo muy accesible e intuitivo.
-Mathcad: es un software de computadora diseñado principalmente para la verificación, validación, documentación y re-uso
de cálculos de ingeniería. Se introdujo al mercado en 1986 en DOS, fue el primero en introducir edición en vivo de la
notación matemática combinada con computación automática.
-Smath solver: es un sowftware gratuito sirve para simplificar unidades y realiza cálculos como ecuaciones..
-Excel: un un sowftware que te permite realizar cálculos muy precisos y trabaja con filas y columnas llamadas
celdas.
3.- Investigue como se realizan graficas tridimensionales en MATLAB. Indique como se hace el grafico de
una serranía.
R: Onda de sierra u onda triangular
Sintaxis
x = sawtooth(t)
x = sawtooth(t,xmax)
Descripción
x = sawtooth(t) genera una onda de sierra con periodo 2π para los elementos del arreglo temporal t. sawtooth es
similar a la función del seno, pero crea una onda de sierra con picos de -1 y 1. Se establece que la onda de sierra es –1 en
múltiplos de 2π y que aumenta linealmente con el tiempo con una pendiente de 1/π en todos los demás tiempos.
p
x = sawtooth(t,xmax) genera una onda triangular modificada con la ubicación máxima en cada periodo que
controla xmax. Establezca xmax en 0.5 para generar una onda triangular estándar.
Ejemplo
Genere 10 periodos de una onda de sierra con una frecuencia fundamental de 50 Hz. La tasa de muestreo es 1 kHz.
T = 10*(1/50);
fs = 1000;
t = 0:1/fs:T-1/fs;
x = sawtooth(2*pi*50*t);
plot(t,x)
grid on
4.- Que diferencias existen entre un software con licencia y uno abierto (open source)?
R:un paquete obtenido con licencia el funcionamiento es normal mientras algun paquete obtenido sin licencia
corres el riesgo de que te lo bloqueen o no pueda funcionar algunas funciones del paquete.
1.4. CONCLUSIONES.
- En el presente informe se pudo hallar la transformada inversa de Laplace en los paquetes de
Matlab y en scilab mediante el gráfico , en el program CC también se pudo hallar la transformada
inversa
- La gráfica de la función de transferencia en Matlab y Vissim no se pudo graficar porque el
numerador de mi función de transferencia era de grado mayor que el denominador
1.5. Bibliografía
-Sitio en internet para bajar paquetes gratuitos como Matlab Has buscado matlab - Get Into PC