Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Qu es Octave? Octave se puede definir como un lenguaje de alto nivel inspirado en un software comercial llamado MATLABr(MATrix LABoratory). MATLAB estuvo pensado inicialmente para algebra numrica lineal (matrices, vectores y sus operaciones), y con el tiempo se le ha sacado partido a esta forma de trabajo. De la misma forma, Octave empez siendo un software para que los alumnos de Ingeniera Qumica de las Universidades de Wisconsin-Madison y Texas calcularan reacciones qumicas
Programacin en Octave
Sentencia If, elseif, else
-- Keyword: if (COND) ... endif -- Keyword: if (COND) ... else ... endif -- Keyword: if (COND) ... elseif (COND) ... endif -- Keyword: if (COND) ... elseif (COND) ... else ... endif Begin an if block. x = 1; if (x == 1) disp ("one"); elseif (x == 2) disp ("two"); else disp ("not one or two"); endif
Programacin en Octave
Sentencia switch
-- Keyword: switch STATEMENT Begin a switch block. yesno = "yes" switch yesno case {"Yes" "yes" "YES" "y" "Y"} value = 1; case {"No" "no" "NO" "n" "N"} value = 0; otherwise error ("invalid value"); endswitch
Programacin en Octave
Sentencia For , while y do until
-- Keyword: for I = RANGE Begin a for loop. for i = 1:10 i endfor -- Keyword: while fib = ones (1, 10); i = 3; while (i <= 10) fib (i) = fib (i-1) + fib (i-2); i++; endwhile
fib = ones (1, 10); i = 2; do i++; fib (i) = fib (i-1) + fib (i-2); until (i == 10)
Programacin en Octave
Funciones
function retval = avg (v) # ayuda: la funcion avg(v) devuelve el promedio # de las componentes del vector v retval = sum (v) / length (v); endfunction function [max, idx] = vmax (v) # ayuda: vmax(v) devuelve el mximo valor de un vector # y la posicin que ocupa idx = 1; max = v (1); for i = 2:length (v) if (v (i) > max) max = v (i); idx = i; endif endfor endfunction
Programacin en Octave
Grficos
octave:25> x=[0:0.01:1]; octave:26> y=sin(2*pi*x); octave:27> plot(x) # presentamos una recta octave:28> plot(y) # presentamos una senoidal octave:29> plot(x,y) # senoidal, pero con eje x bien puesto
Programacin en Octave
Grficos
x=[0:0.01:1]; # rango variacion eje x clearplot; # borramos grafica subplot(1,1,1); # un unico plot centrado axis("auto","normal"); # ejes automaticos hold on; # superpone siguientes graficos plot(x, +sin(2*pi*x),';+sin;') plot(x, +cos(2*pi*x), ';+cos;') plot(x, -sin(2*pi*x), ';-sin;') plot(x, -cos(2*pi*x), ';-cos;')
Programacin en Octave
Grficos
x=[0:0.01:2*pi]; # rango variacion angulo clearplot; # borra grafico axis([-1 1 -1 1], "square"); # ejes manuales hold off; # no superpone siguientes graficos subplot(2,2,1); # cuadrante 1 de 4 polar(x,ones(size(x))); # circulo subplot(2,2,2); # cuadrante 2 de 4 polar(10*x,x/5); # espiral de arqumedes subplot(2,2,3); # cuadrante 3 de 4 polar(x,cos(2*x));# rosa de cuatro petalos subplot(2,2,4); # cuadrante 4 de 4 polar(x,cos(3*x));# rosa de tres petalos
Direcciones de OCTAVE
http://www.outsch.org/2011/01/29/qtoctave-0-10-1-for-windows/ http://qtoctave.wordpress.com/category/english/ http://octave.malavida.com/descargar http://www.gnu.org/software/octave/download.html http://sourceforge.net/projects/octave/files/
Modelos Matemticos
Es un conjunto de ecuaciones que representan la dinmica del sistema. Pueden adoptar muchas formas distintas, dependiendo del sistema y de las circunstancias especificas. Por ejemplo en problemas de control ptimo, sera til una representacin de estados y para los anlisis de respuesta transitoria o en frecuencia de sistemas lineales
Modelos Matemticos
Sistema de lazo Cerrado
Modelos Matemticos
Funciones de transferencia
Modelos Matemticos
Funciones de transferencia
Modelos Matemticos
Modelos en la Mecnica
Modelos Matemticos
Ejemplo mecnico
Modelos Matemticos
Modelos en Electrnica
Modelos Matemticos
Ejemplo en Electrnica
V i (t ) = L
d 1 i ( t ) + Ri ( t ) + dt C
i ( t ) dt
Control de sistemas
A: es la matriz de estado B: matriz de control
f 1 X 1 f 2 X 1 A = . . f n X 1 f1 X 2 f 2 X 2 f 1 X n f K 2 X n f n K X n K
f n X 2
f 1 U 1 f 2 U 1 B = . . f n U 1
f1 U 2 f 2 U 2
f n U 2
f1 K U n f 2 K U n f n K U n
Control de sistemas
Linealisacin del modelo matemtico
d 1 V i (t ) = L i ( t ) + Ri ( t ) + dt C
i ( t ) dt
Vc 1 = i t C
Paso 1:
x1 = Vc x2 = i
Paso 3:
1 R 1 x 2 = x1 x 2 + Vin L L L
.
Paso 4: Paso 2:
1 x1 = x 2 C
.
x1 Vc x = = u = Vin x 2 i
Control de sistemas
Linealizacin del modelo matemtico
Paso 4: Paso 6:
x1 Vc x = = u = Vin x 2 i
Paso 5:
1/ C 0 A= 1 / L R / L
Paso 7:
0 B= 1 / L
x = Ax + Bu
num = 0 -0.0000 333.3333 den = 1.0000 2.0000 333.3333
R=10 L=0.2 C=0.015 A=[0 1/C;-1/L -R*L] B=[0 1/L]' C=[1 0] D=[0] [num,den]=ss2tf(A,B,C,D)
Control de sistemas
Linealizacin del modelo matemtico
I (s) V i ( s ) = LsI ( s ) + RI ( s ) + sC I (s) Vo ( s ) = sC Vo ( s ) 1 = Vi ( s ) LCs 2 + RCs + 1
Transformada de Laplace
Uso en la robtica
Sistema Cartesiano
Uso en la robtica
Rotacin
Uso en la robtica
Matriz de Rotacin
Uso en la robtica
Matriz de Rotacin 3D
Uso en la robtica
Matriz de Rotacin y traslacin 3D
Uso en la robtica
Matriz de traslacin 3D
Uso en la robtica
Matriz de traslacin 3D
ang=3.14/2 px=8 py=-4 pz=12 ru=-3 rv=4 rw=-11 mt=[1 0 0 px; 0 cos(ang) -sin(ang) py; 0 sin(ang) cos(ang) pz; 0 0 0 1] cord=[ru rv rw 1] R=mt*cord'