Você está na página 1de 12

SISEL

Sistemas Electromecnicos

Guio do Trabalho Laboratorial N 1 Introduo ao MATLAB v7.1


Anlise de um Servomecanismo de Posio

GRIS Group of Robotics and Intelligent Systems

Homepage: http://www.dee.isep.ipp.pt/~gris Email: gris@dee.isep.ipp.pt Ano Lectivo: 2006/2007

2006 GRIS Group of Robotics and Intelligent Systems

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 1 de 11

Introduo ao MATLAB v7.1 Anlise de um Servomecanismo de Posio


Sumrio: Pretende-se com este trabalho, fazer uma introduo s capacidades de resoluo de problemas de anlise de sistemas de controlo recorrendo ao software MATLAB (verso 7.1).

Considere o servomecanismo de posio ilustrado na figura seguinte (servomotor DC controlado pela armadura):
Potencimetro
+V

Amplificador Diferencial e de Potncia


+ A Ra La ea if=const

Servomotor DC Armadura
Bm t m JL N2 Jm

Engrenagem
N1

Potencimetro Carga
BL L +V

er eL

Excitao

Figura 1: Esquema equivalente do servomecanismo de posio

Este sistema apresenta o seguinte diagrama de blocos:


R(s) + kp.A + 1 s.La+Ra k 1 s2.Jeq+s.Beq n L(s)

s.Km

Figura 2: Diagrama de blocos do servomecanismo de posio

Que pode ser simplificado de forma a obter-se:


R(s) + kp.A.k.n (s.La+Ra).(s2.Jeq+s.Beq)+s.km.k L(s)

Figura 3: Diagrama de blocos simplificado do servomecanismo de posio

Considerando os seguintes valores para os parmetros deste sistema:


A 1790 Kp 1 V/rad Ra 2 La 0.18 H K 10 N.m.A-1
-5

Km 56,5 V.rad-1.s

Jm 10 Kg.m2
-4

Bm 5x10 N.m.rad-1.s
-5

n=N1/N2 0,1

JL 10 Kg.m2
-2

BL 115x10 N.m.rad-1.s
-4

Tabela 1: Parmetros do servomecanismo de posio

E substituindo os valores da tabela anterior, conclui-se que a funo de transferncia G'(s) do ramo directo :

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 2 de 11

G ' ( s) =

50 s + 12 s 2 + 25s
3

Equao 1: Funo de transferncia do ramo directo do servomecanismo de posio

Determinada a forma cannica do diagrama de blocos apresentado anteriormente, obtm-se:


R(s) L(s) kp.A.k.n La.Jeq.s3+(La.Beq+Ra.Jeq).s2+(Ra.Beq+k.km).s+kp.A.k.n

Figura 4: Forma cannica do diagrama de blocos do servomecanismo de posio

Daqui, conclui-se facilmente que a funo de transferncia em malha fechada para este sistema :

G ( s) =

L ( s) 50 = 3 2 R ( s) s + 12 s + 25s + 50

Equao 2: Funo de transferncia do servomecanismo de posio

A partir destes resultados pode-se iniciar o estudo deste sistema, recorrendo ao software MATLAB.

1. Implementao da Funo de Transferncia no MATLAB


1. O primeiro passo para o estudo deste sistema recorrendo ao MATLAB, passa pela implementao da sua funo de transferncia no MATLAB. a) Para esse efeito inicie a aplicao MATLAB; b) Genericamente pode-se considerar uma funo de transferncia G(s) como sendo a razo de dois polinmios:

B( s) num b(1). s n + b(2). s n 1 + ...+ b( n) G ( s) = = = A( s) den a (1). s n + a (2). s n 1 + ...+ a ( n)


Equao 3: Funo de transferncia genrica de um sistema

em que a(1) 0, mas em que alguns dos coeficientes a(i) e b(i) podem ser nulos. c) Para definir a funo de transferncia torna-se necessrio estabelecer o seu numerador e denominador. num e den so vectores linha que especificam os coeficientes do numerador e do denominador da funo de transferncia do sistema, assumindo a seguinte forma: num=[b(1) b(2) b(n)] den=[a(1) a(2) a(n)] d) Uma vez que o numerador da funo de transferncia deste sistema N(s) = 50 e o denominador D(s) = s3+12s2+25s+50, introduza estes dois polinmios no MATLAB, tal como apresentado na Figura 5. e) A partir deste instante, e como se vai mostrar de seguida, encontra-se em condies de iniciar o estudo do sistema.

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 3 de 11

Figura 5: Definio da funo de transferncia do sistema no MATLAB

2. O primeiro passo no estudo de um sistema de controlo a partir da sua funo de transferncia passa pela factorizao do numerador e do denominador em factores bsicos. A factorizao pode ser til, por exemplo, para a determinao da Transformada Inversa de Laplace da Funo de Transferncia do sistema, no caso de se pretender obter a resposta temporal do sistema a uma entrada particular. a) No caso particular do sistema em considerao s tem interesse determinar a decomposio do denominador em factores bsicos. Para isso, deve-se utilizar o comando roots(den), tal como mostrado na figura seguinte (Figura 6). b) Obtiveram-se desta forma os plos da funo de transferncia, que se conclui serem: p1 = 10 p2 = 1 + j2 p3 = 1 j2 c) Alternativamente pode-se pretender decompor a funo de transferncia em fraces parciais. d) A decomposio em fraces parciais resulta na seguinte equao:

G ( s) =

B ( s) r (1) r ( 2) r ( n) = k ( s) + + + ...+ A( s) s p(1) s p(2) s p( n)

Equao 4: Decomposio em fraces parciais da funo de transferncia genrica de um sistema

e) Para este efeito o comando a utilizar deve ser o comando [r,p,k]=residue(num,den), tal como apresentado na Figura 7.

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 4 de 11

Figura 6: Determinao dos plos da funo de transferncia

Figura 7: Decomposio da funo de transferncia em fraces parciais

f)

Desta forma obtiveram-se os numeradores (no vector r) e os respectivos denominadores (no vector p) das fraces parciais em que podemos decompor a funo de transferncia em estudo. Obtm-se ainda informao no vector k que, neste caso particular, um vector "vazio". Caso a ordem do numerador da funo de transferncia fosse superior ordem do

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 5 de 11

seu denominador, obteramos no vector k, os termos resultantes da diviso inteira entre o numerador e o denominador da funo de transferncia.

2. Resposta Temporal do Sistema


3. Depois da funo de transferncia estar definida no MATLAB (ver alnea 1.) pode-se tambm verificar qual a resposta do sistema s entradas impulso unitrio e degrau unitrio. a) Para traar a resposta de um sistema a uma entrada em impulso unitrio, utiliza-se o comando impulse(num,den), tal como se apresenta na figura seguinte:

Figura 8: Resposta temporal do sistema a uma entrada em impulso unitrio

b) Alternativamente, e caso se pretenda especificar o intervalo de tempo para o qual se pretende observar a resposta do sistema a uma entrada em impulso unitrio, deve-se utilizar o comando impulse(num,den,t), no qual a varivel t deve especificar o intervalo de tempo a visualizar. c) No caso de se pretender traar a resposta de um sistema a uma entrada em degrau unitrio, utiliza-se o comando step(num,den), tal como se apresenta na figura seguinte (Figura 9). d) Tal como anteriormente, caso se pretenda especificar o intervalo de tempo para o qual se pretende observar a resposta do sistema a uma entrada em degrau unitrio, deve-se utilizar o comando step(num,den,t), no qual a varivel t deve especificar o intervalo de tempo a visualizar.

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 6 de 11

Figura 9: Resposta temporal do sistema a uma entrada em degrau unitrio

4. Tambm possvel esboar a resposta do sistema a uma entrada em rampa unitria, apesar de neste caso no existir um comando que o permita fazer directamente. Para esse efeito, sabendo que a Transformada de Laplace da funo rampa unitria 1/s2, procedese da seguinte forma: a) Uma hiptese passa por multiplicar o denominador da funo de transferncia por s2 e determinar a resposta do sistema a um impulso unitrio, recorrendo ao comando impulse(num,den). b) Alternativamente pode-se multiplicar o denominador da funo de transferncia do sistema por s, e determinar a resposta do sistema a um degrau unitrio, recorrendo ao comando step(num,den), tal como se apresenta na figura seguinte (Figura 10). c) de realar que em qualquer uma das duas situaes referidas anteriormente necessrio definir novamente o polinmio do denominador da funo de transferncia, para considerar a multiplicao por s2 no primeiro caso e por s no segundo caso, como pode ser verificado na figura anterior.

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 7 de 11

Figura 10: Resposta temporal do sistema a uma entrada em rampa unitria

3. Anlise da estabilidade do sistema recorrendo ao Lugar de Razes


5. Uma outra possibilidade passa por efectuar o estudo da estabilidade do sistema recorrendo ao Lugar de Razes. Assim, vamos considerar que neste caso se pretende efectuar o estudo da estabilidade do sistema em funo do ganho do bloco amplificador de potncia e amplificador diferencial. a) De forma a fazer a anlise pretendida temos que considerar a funo de transferncia do sistema em malha aberta. Para isso, e recorrendo Figura 3 e Equao 1, conclui-se que a funo de transferncia em malha aberta deste sistema :

A'.

k p . k. n ( s. La + R a )( s 2 . J eq + s. B eq ) + s. k m . k

Equao 5: Funo de transferncia em malha aberta do servomecanismo de posio

sendo A' a variao do valor do parmetro A (ganho do bloco amplificador de potncia e amplificador diferencial) relativamente ao seu valor base. b) Substituindo os valores dos parmetros na equao anterior (de acordo com a Tabela 1), e dado que vamos considerar as variaes do ganho do bloco amplificador de potncia e amplificador diferencial relativamente ao ganho pr-estabelecido (A=1790), obtemos a seguinte equao caracterstica:

1 + k . G ' ( s) = 1 + A'.

50 s + 12 s 2 + 25s
3

Equao 6: Equao caracterstica do sistema

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 8 de 11

c) Neste caso o novo polinmio do numerador passa a ser N(s) = 50 e o do denominador D(s) = s3+12s2+25s. d) O primeiro passo para se esboar o Lugar de Razes definir os novos numerador e denominador referentes funo de transferncia em malha aberta do sistema (ver Figura 11). e) Para traar o Lugar de Razes deve-se recorrer ao comando rlocus(num,den), tal como pode ser visto na figura seguinte:

Figura 11: Lugar Geomtrico de Razes do sistema

4. Anlise da resposta em frequncia do sistema atravs dos diagramas de Bode e dos diagramas polares (ou de Nyquist)
6. tambm possvel esboar os diagramas de Bode de amplitude e fase de um sistema recorrendo ao MATLAB, quer para o sistema em malha aberta, quer para o sistema em malha fechada. a) Por exemplo, para o sistema em malha fechada deve-se recorrer ao comando bode(num,den), e considerar a funo de transferncia em malha fechada do sistema (Equao 2), tal como se apresenta na figura seguinte (Figura 12). 7. Adicionalmente tambm possvel traar os diagramas polares de um dado sistema (tambm chamados diagramas de Nyquist). a) Para este efeito deve-se recorrer ao comando nyquist(num,den), tal como se apresenta na Figura 13.

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 9 de 11

Figura 12: Diagramas de Bode, de amplitude e fase, do sistema em malha fechada

Figura 13: Diagrama polar do sistema em malha fechada

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 10 de 11

5. Anlise da estabilidade do sistema recorrendo ao Critrio de Nyquist


8. Para se efectuar a anlise de estabilidade de um sistema recorrendo ao critrio de estabilidade de Nyquist tem que se recorrer ao Diagrama polar do sistema em malha aberta. a) Assim, o primeiro passo, consiste em definir o numerador e o denominador referentes funo de transferncia em malha aberta do sistema (ver Equao 6). b) De seguida, deve-se traar o diagrama polar da funo de transferncia em malha aberta recorrendo ao comando nyquist(num,den), tal como pode ser visto na figura seguinte:

Figura 14: Diagrama polar da funo de transferncia em malha aberta do sistema

6. Margem de Fase e Margem de Ganho


9. Para alm de possibilitar a anlise da estabilidade de um dado sistema recorrendo quer ao critrio de estabilidade de Nyquist, quer ao seu Lugar Geomtrico de Razes, o software MATLAB possibilita ainda a determinao da estabilidade relativa desse mesmo sistema atravs do clculo da sua margem de fase e margem de ganho e da sua representao sobreposta aos traados de Bode. a) Para este efeito, dever ser considerada a funo de transferncia em malha fechada do sistema (Equao 2), e dever-se- recorrer ao comando margin(num,den). b) Tal como se pode ver na Figura 15, so apresentadas a margem de fase (Pm=67.5) e a margem de ganho (Gm=14.0 dB) do sistema, assim como as frequncias a que ocorrem (respectivamente Wcp=2.4 rad/s e Wcg=5.0 rad/s), e efectuada a sua representao sobreposta aos traados de Bode.

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado

Guio N. 1: Introduo ao MATLAB Anlise de um Servomecanismo de Posio

Pgina 11 de 11

Figura 15: Margem de fase e margem de ganho do sistema e da sua representao sobreposta aos traados de Bode

7. Concluses
Acabamos de ver como possvel recorrendo ao software MATLAB efectuar o estudo de um sistema de controlo. As noes aqui introduzidas, de uma forma necessariamente resumida, podem ser desenvolvidas recorrendo bibliografia que se apresenta de seguida.

8. Bibliografia
[1] Gene F. Franklin, J. David Powell, Abbas Emami-Naeini; Feedback Control of Dynamic Systems; Prentice-Hall International Edition; Fifth Edition; (2006). [2] Katsuhiko Ogata; System Dynamics; Prentice-Hall International Edition; Third Edition; (1998). [3] Katsuhiko Ogata; Solving Control Engineering Problems With MATLAB; Prentice-Hall; (1994).

Sistemas Electromecnicos 2006/2007

Manuel Silva, Ramiro Barbosa, J. A. Tenreiro Machado