You are on page 1of 5

Resumo de algumas funes do MATLAB para aplicaes em controle e servomecanismos

por : Fbio B. de Souza 11/2011

Comando
diary clear clc syms exp sin cos tan asin acos atan log log10 sqrt round ceil

Descrio
salva texto da janela de comandos de uma sesso
limpa variveis do workspace limpa janela de comandos cria variveis simblicas calcula e^x calcula o seno do argumento passado em radianos calcula o cosseno do argumento passaso em radianos calcula a tangente do argumento passado em radianos calcula o arco seno do valor passado. Resultado em radianos calcula o arco cosseno do valor passado. Resultado em radianos calcula o arco tangente do valor passado. Resultado em radianos calcula o logaritmo natuaral do argumento passado calcula o logaritmo na base 10 do argumento passado calcula a raiz quadrada do argumento passado arredonda para o inteiro mais prximo Arredonda em direo a + infinito

sintaxe
diary('nome.txt')
clear clc syms arg1 arg2... exp(x) sin(X) cos(X) tan(X) asin(X) acos(X) atan(X) log(X) log10(X) sqrt(X) round(X) ceil(x)

exemplo
diary ('teste.txt')
clear clc syms s t exp(-0.5) sin(pi/2) cos(pi) tan(pi/4) asin(1) acos(-1) atan(1) log(0,6065) log10(1) sqrt(4) round(1.56) ceil(1.001)

resposta
cria arquivo txt para salvar sesso

0,6065 1 -1 1 1,57080 3,1416 0,7854 -0,5 0 2 2 2

floor fix roots poly2sym

Arredonda em direo a -infinito Arredonda em direo ao zero. Determina as razes de um polinmio passado em um vetor transforma um vetor de coeficientes polinomiais em um polinmio simblico Transforma um polinmio simblico em um vetor de coeficientes polinomiais calcula limite de uma expresso calcula diferenciao ou derivada calcula integral calcula a soluo smblica de uma equao algbrica Convoluo e multiplicao polinmial

floor(X) fix(X) roots(X)

floor(1.999) fix(2.35) x = [1 2 1] %x + 2X - 1 roots(x) poly2sym([1 0 -2 -5])

1 2 -1 -1 x^3-2*x-5

poly2sym(X)

sym2poly limit diff int solve conv

sym2poly(P) limit(f,x,a) diff(X) int(x) solve('equao') conv( A ,B)

sym2poly(x^3 - 2*x - 5) limit((sin(x+h)-sin(x))/h,h,0) diff(x^2) int(2*x) solve('a*x^2 + b*x + c') conv([1 1],[1 2 1]) A = [5 4 -8 -9;-7 -5 3 1;8 -1 3 8;7 5 -7 -2];

0 -2 -5 cos(x) 2*x

x^2 -1/2*(b-(b^2-4*a*c)^(1/2))/a -1/2*(b+(b^2-4*a*c)^(1/2))/a 1 3 3 1

linsolve

resolve um sistema linear da forma A*X=B

linsolve(A,B)

B = [-11;-18;-3;18]; linsolve(A,B) F = laplace(sin(t)) f = ilaplace(1/(s^2+1))

[ -3] [ 8] [ -1] [ 4] F = 1/(s^2+1) f = sin(t) r= 90.000 80.000 70.000 p= -50.000

laplace ilaplace

transformada de laplace trandformada inversa de laplace

F= laplace(f) f = ilaplace(F)

residue

Efetua clculo de resduos para expanso em fraes parciais.

num = [24 62 -128]; [R,P,K] = RESIDUE(B,A) den = [1 4 -17 -60]; [r,p,k] = residue(num, den)

residue

Efetua clculo de resduos para expanso em fraes parciais.

[R,P,K] = RESIDUE(B,A)

40.000 -30.000 k= simplify


simplifica expresso apresenta o argumento passado formatado como formula simplify(A) A = x^2 + sin(x)^2 - 2*x - 3*x^2 + cos(x)^2; simplify(A) pretty(1/s^2) x = x^3 - x

[] - 2*x^2 - 2*x +1 1 ---s

pretty

pretty(ANS)

factor

retorna fatores

factor(N)

factor(x) factor(sym('715469')) A = 10;

x*(x-1)*(x+1) (37)*(61)*(317)

printsys

imprime sistema no formato de formula

printsys(A,B)

B = [ 1 2 4]; printsys(A,B) num = 4;

tf

cria uma funo de tranferencia

FT = tf(num,den)

den = [ 1 2]; FT = tf(num,den)

num/den = 10 ------------s^2 + 2 s + 4 Transfer function: 4 ----s+2 G1*G2 G1+G2 G1

series parallel feedback

calcula a FT de um sistema em cascata calcula a FT de um sistema em paralelo

series(G1,G2) parallel(G1,G2)

FT = series(G1,G2) FT = parallel(G1,G2)

calcula a FT de um sistema com relaimentao(malha fechada)

feedback(G1,G2)

FT = feedback(G1,G2)

----1+G1*G2

step

retorna a resposta para entrada em degrau unitrio de um sistema

num = [3]; step(num,den) den = [0,632 1] step(num,den)

grfico

impulse

retorna resposta para entrada em impulso unitrio em um sistema

num = [3]; impulse(num,den) den = [0,632 1] step(num,den) num = [2 1]; den = [1 1 1];

grfico

lsim

simula uma resposta temporal para entrada arbirtraria

lsim(num,den,r,t)

t = 0,0.1,10; r = t; y = lsim(num,den,r,t); plot(t, r,'-',t,y,'o') x = 0:1:10;

grfico

plot

cria grfico

plot(x,y)

y = x^2; plot(x,y) num = [1 0 1]; den = [1 2 0];

grfico de y em funo de x

rlocus

Mapa dos lugares das raizes

rlocus(FTMF) pzmap(FTMF)

rlocus(num,den); num = [1 0 1]; den = [1 2 0]; pzmap(num,den); num = [1 0 1];

Mostra de forma grafica o local das raizes

pzmap bode

Mapa dos Plos e Zeros grfico de BODE mdulo e fase bode(sys)

Mostra de forma grafica os polos e zeros exibe grfico de Bode

den = [1 2 0]; bode(tf(num,den)); num = [1 0 1];

nichols

Grfico de nichols

nichols(sys)

exibe grfico de Nichols

nichols

Grfico de nichols

nichols(sys)

den = [1 2 0]; nichols(tf(num,den));

exibe grfico de Nichols

num = [1 0 1]; nyquist Diagrama de nyquist nyquist(sys) den = [1 2 0]; nyquist(tf(num,den)); margin Diagrama de BODE indicando margem de ganho e de fase num = [1 0 1]; margin(sys) den = [1 2 0]; bode(tf(num,den)); num = [1 0 1]; den = [1 2 0]; FT = zpk(roots(num), roots(den), 1) Exibe grfico de bode indicando margem de ganho e de fase exibe grfio de Nyquist

zpk

retorna FT em forma de zeros e polos

G = zpk(FT)

Zero/pole/gain: (s^2 + 1) ---------s (s+2) Transfer function: s^2 + 1 --------s^2 + 2 s k= 0.7500 + 0.3750i

num = [1 0 1]; den = [1 2 0];

freqresp

retorna o ganho para o sistema para a frequncia passada

FT = tf(num,den) k = freqresp(sys,w) k = freqresp(FT,4)