Você está na página 1de 20

ntos

s

*

tSle trata dos fundarnentos necessaries ao uso efetivo do MA TLAB na dos problemas de de

controle. 0 MATLAB abrcviatura de MATrix - Laboratorio de e urn sistema baseado em

marrizes para calculos marematicos e de Podc-sc pcnsar no MATLAR como uma especie de Iinguagem pro-

exclusivarnente para realizar com matrizes. Todas as variavcis manipuladas no MATLAR sao matri

ZCSo lsto 0 MATLAB tern somente um tipo de uma matriz on um retangular de mimeros. 0 MATLAB

Ul11 extenso de retinas para a de saidas

Cornandos e de matrizes do MATLAB que sao usadas

de sistemas de controle. 0 MXILAR

ario para resolver muitos e diferentes de

Na Tabela A-J sao Iistados tais comandos e

na analise e no proque podern ser charnadas pelo usu-

Acessando e saindo do MATLAB. Na maioria dos uma vez instalado 0

executa-so () comando MA TLAR Para executa-so () cornando exit ou

para chama-lo

Como 0 MATLAB e usado. 0 MA TLAB 6 comumente usado no modo cornando direto. Quando se digitam co-

mandos 0 MATLAB os processa imediatamente e na lela () resultado. 0 MArLAR tambem e capaz de

de cornandos que arrnazenados ern

ser acessados vel percorrer a sucessao dos ultirnos cornandos anteriormente

por meio da Tecla l' E

e fazer retornar 11l11a linha de comando particular.

Variaveis no MATLAB. Urna caracterfstica conveniente do MATLAR 6 que as variavcis nao prccisam scr dimensionadas antes do USOo No MATLAB. variaveis sao aurornaticamente ao serem urilizadas. dimensoes das variaveis ser alteradas mais tarde. se Tais variaveis permanecem na memoria ate que se entre com 1111l dos cornandos exit ou

Para se obter uma lista das variavcis na area dc variaveis corrente mente na area de trabalho aparecern na lela do monitor, o comando clear climina da area de trabalho todas as variaveis

o comando

. Em scguida, todas

Se se deseja limpar so mente uma

varia vel

. por

. cnira-se com 0 cornando clear x.

Linha de proqrama

com e corncntarios que

Ao deste livro sao escritos muitos programas em M/\ 110;\ R

etapas particulates da programacao. As linhas de program a por

':'Sugere-st' a()~ que nao cstao fnmiliarizn.lo-; corn () \V\'TLAB a lei lura destc apf:ndice antes de cscrcvcr program as em i\/IATLAB.

789

Tabela A·l Comandos e funcoes matriciais do MATLAB

r------------------------------------~---------------------------------------------------------------

Cornandos e Funcoes Matriciais C:omumente Usados na Solucao

de Problemas de Engcnharia de Controle

Explicacoes sobrc 0 que 0 ComandoFaz, 0 que a Funcao Matricial Significa, ou 0 que a Dcclaracao Significa

abs angle ans atan axis

Valor absolute. magnitude cornplcxa Angulo de fase

Resposta obtida quando a expressao nao possuir atribuicao Arcotangente

Escala manual do eixo

bode

Tracar 0 diagrama de Bode

clear

clg computer conj

Li mpar a aren de trabalho Limpar a tela grafica

Tipo de computador Conjugado cornplexo Convolucao, multiplicacao Coeficientes de correlacao Co-sene

Co-sene hiperbolico Covariancia

con v

corrcuef cos

cosh COy

clecallv det diag

Dcconvolucao, divisao Determinante

Matriz diagonal

eig exit exp exprn eye

Autovalorcs e autovctores Termino de program a Exponenciacao base e Exponencial de matrixes Matriz-identidade

filter

format long format long e

Implementacao com filtro discreto

Numero real de 15 c1igitos com ponto fixo (Exemplo: 1.33333333333333) Numcro real de 15 digitos ern notacao cientifica. (Exemplo:

1.33333333333333 e +000')

Nurnero real de 5 digitos com ponto fixo. (Exernplo: 1.3333)

Numero real de 5 digitos em notacao cientffica (Exemplo 1.3333e I- 0(0) Rcsposta de frequencia no dommio da transform ada de Laplace

Resposta de frequeucia no dominio da transformada z

format short format short e freqs

freqz

grid

Desenhar linhas de luna grade rcticulada

hold

Manter na lela 0 grafico corrente

i mag inf inv

Parte irnaginaria de um mimero complexo Infinito (x)

Invcrsa

Icnght linspacc log loglog logm logspace logl () Iqe

lqr

Tamanho do vetor

Vetores linearrnente espacados Logaritmo natural

Grafico »y log log

Logaritmo de matriz

Vetores ) ogaritmicamente espacados Logaritmo na base 10

Projcto de estirnador quadratico linear Projeto de rcgulador quadratico linear

Valor maximo Valor medio Valor da mediana Valor rmnimo

max mean median III i n

!\Jal\J nyquist

Nao-numerico (indica indererminacao do tipo divisao de zero por zero) Grafico da rcsposta de frequencia em coordenadas de Nyquist

790

Apendlce / Fundarnentos Neces sarios ao Usa Efetivo do MATLAB

TabcIa A-I Comandos e flln~oes matriciais do MATLAB

Comandos e Funcocs Matrieiais Cornumente Usados na

de Problemas de Engenbaria de Controle

Explicacoes sobre 0 que 0 Cornando Faz, 0 que a Funcao Matricial Significa, ou 0 que a Dcclaracao Significa

ones

Constante (matriz formada por elementos unitMios)

~-----------------------------------+--------~

pi

plot polar poly polyfit polyval polyvalrn prod

Pi Crr)

Grafico linear em coordenadas cartesianas Grafico em coordenadas

Polinornio caractcrfstico

polinomial de curvas Calculo do valor de polinomio

Calculo do valor de polinomio de rnatrizcs Produto de elementos

quit

Termine de programa

rand rank real rem residue rioeus roots

semilogx semilogy sign

sin

sinh

size

sqrt sqrtrn

std

step

sum

tan tanh text title tl·ace

Gerar numeros e matrizes corn valores aleatorios Calcular 0 posto (rank) de uma matriz

Parte real de Ulll numero complexo

Resto ou modulo

Expans.io em parCIalS

Tracar 0 lugar das mizes Raizes de urn polinornio

Grafico semilog x-y (ei xo x loganrmico) Grafico semilog x-y (eixo y logaritmico) FUI1\ao sinal

Seno

Seno hiperbolico

Dimensoes de lin has e colunas de uma matriz Raiz quadrada

Rail quadrada de uma matriz Desvio padrao

Tracar a curva da rcsposta ao degrau unitario Soma de elementos

Tangente

Tangcntc hipcrbolica

Texto posicionado arbitrarinmente Colocar titulo em urn gr.ifico Traco de uma matriz

who

Lisia de todas as variavcis utualmcme na memoria

xlabcl

Legenda do eixo dos x

~----------------------~-----------+------------------------~.-- .. -----.- .. -.--.---~---~--.--~.-----------------------

Legend» do cixo dos y

ylabel

zeros

Zeros (matriz forrnada por elementos nulos)

'%' constitucrn comentarios ou observacoes. A notacao '%' e similar ao 'REM' no BASIC. Urna linha comecando com '%' e utilizada para armazenar os comentarios e as observacocs do programador, e tais comcntarios e observacoes nao sao executados, Isto e, tudo que aparece ap6s % na linha de programa do MATLAB e ignorado. Se os comentarios e observa~5es neccssitarcrn de mais de urna linha de programa, cada linha deve comecar com %.

Uso do operador ponto-e-virqula. 0 ponto-e-virgula e utilizado para suprirnir a impressao na tela do monitor.

Se 0 ultimo caractere de urna sentence for 11m ponto-e-virgula, a irnprcssao c suspcnsa; 0 comando, contudo, e executado, mas () rcsultado nao c. rnostrado. Esta e urna caracteristica interessante, uma vez que pode nao ser importante a imprcssao de resultados intermediaries. Alern disso, quando se entra com os elementos de lima matriz, uriliza-se um ponto-e-virgula para indicar 0 fim de cada linha, exceto a ultima.

Uso do operador dois-pontos. 0 operador dois-pontos desempenha um papel muito importante no MATLAR.

Este opcrador pode ser utilizado para criar vetores, indexar rnatrizcs c para cspecificar iteracoesji». Por exernplo, j:k e 0 mesmo que [j j + I .. ki, A(:, j) e a j-esima coluna da matriz A e A (i. :) e a z-esima linha de A.

Secao A-I / Introducao

791

Entrada de que nao cabern numa unica linha, U rna sentenca terrnina. normalrnentc, com

urn retorno de carro (firn de Iinha) on com a digitacao cia recla Enter. Se a scntenca a ser digitada for muito longa para caber na ser utilizadas reticcncias consritufdas por tres on mais de urn retorno de carro,

para indicar que a sentenca continua na linha, Urn e

34 2.345 3.456 + 4.567 5.678

7.B90 8.901 - 9.012;

6.78<)".

Obscrve-se que os espacos em bran eo em t0l'110 dos sinais de =, +, e - sao quase sempre para rnelhorar a

Tais espacos sao providenciados

Entrando com mais de mesma linha desde que estejam

linha. Podem sel' colocados diversos cornandos nurna ou ponto-e-vfrgulas. Sao

plot

,20/Sistcma 1 '). lext(l ,IS/Sistcma 2'1

e

'Sistema 1 'I;

1,15, 'Sistema 2

cisao dupla. Contudo. a vcior

de dados. Todos os calculos no M;\ TLAB sao cxccutados em pre-

c quatro casas decirnais. Por para 0

x = 11/3 0.00002J

() MATLAB exibe a

saida

0.3333

o . ()()()O

Se pelo mcnos urn dos elementos de uma matriz nao for urn inteiro exato, ha quatro forrnatos de saida

saida mosrrada na tela scr controlada por meio dos cornandos:

A

formal shun format

format short e format long e

Uma vcz acionado, 0 Formato escolhido perrnancce ativo ate que trocado por outro.

Os formatos formal short e format long sao cornurnente usados na analise ell.' sistemas de controle. Sernpre que 0 M/\ TLAB for acionado sem nenhum cornando especffico de formate de visualizacao, 0 MATLAB apresentara os rcsultados no format short. Se todos os elementos de uma matriz Oll de urn vetor forem inteiros exatos, entao os forrnatos short

e long 0 rnesrno resultado.

Como qravar variaveis ao sair do MATLAB. se digitam os cornandos 'exit' on "quit', todas as varia-

veis no MA TLAB se perdern. Se 0 comando save for antes de se sair do entao todas as variaveis

ser guardadas num arquivo de disco matlab.mat. Quando rnais tarde se retornar ao 0 eo-

man do load recolocara () espaco de trabalho 110 seu estado anterior.

2

o IVIATLAB possui urn conjunto extenso de retinas para se obterem saidas graficas. 0 comando cria linearcs x-v, logantmicos e sao criados substituindo-se a por scmilogx, semi logy ()U ])0- lar.) Tais cornandos S30 utilizados cla me sma forma: cles afetam apenas como os eixos S30 postos em escala C como os dad os sao

x-yo Se x e y forcm vetores de mesrno cornprimento, () comando

traca os valorcs de y contra os valores ele x.

792

/ Fundarnentos Neces sarlos ao Uso Efetivo do MATLAB

curvas mentes multiples.

Para tracar multiplas curvas num unico grafico, utiliza-se o cornando plot com argu-

plot(Xl,Yl

As variaveis Xl, Yl c assim por diante, sao pares de vctores. Cada par x-v e colocado no grafico, resultando multiplas curvas. Os argumentos multiples apresentam a vantagem de perrnitir que pares de vetores de diferentes cornprimeutos possarn ser visualizados no mesmo grafico. Cada par utiliza urn tipo diferente de Iinha.

o tray ado de mais de uma curva nurn unico grafico tarnbem pode ser rcalizado utilizando-se 0 comando hold. 0 cornando hold congcla () grafico atual e inibe 0 apagamento C 0 reescalonamento dos eixos. Portanto, as curvas subsequentes serao sobrepostas it curva original. Digitando-se novamcntc 0 comando hold libera-se () grafico presente.

Acrescentando Iinhas de grade, titulo do qrafico, legenda do eixo dos x e leqenda do eixo dos y. Uma vel que se tenha uma visualizacao grafica na tela do monitor, e desenhar linhas de grade, colocar titulo no grafico e colocar rotulos nos eixos x e y. Os comandos IVlATLAB para grade, titulo, lcgenda do eixo dos x e legenda do cixo dos v sao

grid (reticulado) title

xlabcl (Iegenda do eixo dos xl ylabel (Icgcncla do eixo dos y)

Note-se que, uma vel que 0 cornando de visualizacao tenha sido trazido de volta, ° reticulado, 0 titulo e as legendas dos eixos x e y podem ser colocados no grafico entrando-se com os cornandos sucessivamcntc.

Escrevendo texto sobre a tela qrafica. Para se cscrever texto cornecando no ponto (X, Y) da tela grafica, se utiliza 0 comando

,'texto')

Por exemplo, 0 cornando

,0,45,'sen n

escrevera horizornalrnente a expressao sen t cornecando no ponto de coordcnadas 0.0,45). Alem

os cornandos

plot(xl,yl

text(xl ,yl':l ')/

'2')

marcam as duas curvas de modo que elas possam ser facilmente distinguidas,

de qrafico

plotix.Y,

traca urn grafico de pontos utilizando sfrnbolos X, enquanto

utiliza uma linha de pOll los para a primeira curva e Lll1la Iinha de simbolos tipos de Iinhas e de sfrnbolos para as Iinhas de pontes disponiveis

) para a segunda curva, Sao os seguintes os

Tipos de linha Cheia

Tipos de ponte

Ponto

Tracejada

Sinal mais

+

De pontes

Asterisco

Traco-ponto

Circulo

Maroa em X

X

Secao A-2 / Tracando Curvas de Resposta

793

Cores. Os comandos

indicam 0 uso de uma linha verrnelha no primeiro grafico c de uma curva de rnarcas em verde. As cores disponivcis sao

verrnelho verde azul branco invisivel

g b

w

Algoritmos para 0 tracado automatico, No MATLAB os graficos sao postos em escala automaticamente. Este grafico permancce como grafico corrente ate que um outro seja tracado, situacao ern que 0 grafico antigo e apagado e os eixos sao automaricarnente postos em nova cscala. Os algoritmos para 0 tracado autornatico de graficos rcferentes a curvas de rcsposta transitoria, lugares das rafzes, diagram as de Bode, diagramas de Nyquist e similares sao projetados para trabalhar corn urna ampla garna de sistemas mas nao sao sempre perfeitos. Assirn, ern determinadas situacoes, pode ser desejavel ignorar a caractenstica de colocacao autornarica des cixos em escala disponivel no comando plot e sclecionar os pontos-limites manualrnentc,

Colocacao manual dos eixos em escala. Se se deseja tracar urna curva numa regiao especificada por

v = [x-min

x-m.ix

v-rnin

v-rnax]

dove ser digitado 0 comando 0 cornan do onde v e urn vetor de quatro elementos, ajusia os eixos dentro

dos lirnites cspecificados. Nos graficos Iogarttmicos, os elementos de v sao os dos valores mfnimo e maximo.

A exccucao de congela 0 corrente ajuste de escala dos eixos para os graficos subsequcntes. Digitando-se axis

novarnente, retoma-se a colocacao em escala auiomatica.

o cornando axis ('square') faz com que 0 grafico resultante fique numa tela em forma de quadrado. Com uma rclacao de aspecto quadrado, uma reta com tangente igual ale mostrada com inclinacao verdadeira cle 45° e nao disiorcida pela forma irregular da tela do monitor. 0 comando axlstnorrnal') Iaz retornar a relacao de aspecto

3 CALCULANDO FUNc;:6ES

Nesta serao discutidos os calculos de normas, de autovalores, de autovetores, de autovalores e de autovetores gene-

ralizados, do valor de polinomios, clentre outros.

Normas. A norma de uma matriz e urn escalar que chi alguma medida do tamanho da rnatriz, Diversas definicoes diferentes sao comumente usadas, Uma dessas definicoes e

norma de

= maior valor dos elementos de A

De modo sernelhante, dispoe-se de varias definicoes p<:Jl'a a norma de um vetor. Uma definicao comurnentc utilizada para a norma de um vetor x e dada pcla expressao em MA TLAB

norrntx) =

Vel' 0 seguintc exemplo.

7

[2 3 6J;

normrx)

ans =

Autovalores e autovetores. Se A for urna matriz II X n, cntao os 11 mimeros A que satisfazern

Ax = Ax

794 Apendice / Fundamentos Necessarios ao Uso Ef'etivo do MATLAB

sao os autovalores de A. Eles sao obtidos usando-se 0 comando

que retorna os autovalores na forma de um vetor-coluna.

Se A for real e simetrica, os autovalores serao reais. Porcm, se A nao for simerrica, os autovalores serao frequentemente mirneros complexes.

Por exernplo, com

o comando

produz

ans

o + 1.0000i o 1.0000i

As funcoes MATLAB podern ter argumentos de saida simples ou rmiltiplos. Por cxernplo, como foi visto anteriorrnente, eig(A) produz urn vetor-coluna que consiste nos autovalores de A, enquanto 0 comando de designacao dupla

[X,D] = eig(;\)

produz os autovalores e os autovetores. Os elementos da matriz diagonal D sao os autovalorcs e as coJunas de X sao os autovetores correspondentes tais que

AX =XD

Por exemplo, se

0 J
0 0
6 -11 entao a sentenca

DJ eig(A)

fornece 0 seguinte resultado:

1.0000 o o

o 2.0000 o

o o 3.0000

[X,D] = eig(A)

X=

().5774 0.5774 0.5774

0.2182 0.4364 0.8729

0.1048 0.3145 - 0.9435

D=

Secao A-3 / Calculando Funcoes de Matrizes

795

Os autovetores sao norrnalizados de modo que a norma de cada urn seja l.

Se os autovalores de LIma matriz forem distintos, os autovetores serao sempre independentes e a matriz de autovetores X diagonalizara a matriz original A se for usada como matriz de uma transformacao de sirnilaridade. Contudo, se urna matriz possui autovalores repetidos, ela nao e diagonalizavel a menos que possua urn conjunto ple no de autovetores (independcntes). Se os autovetores nao forem independentes, a matriz original e dira defectiva. Mesmo quando a matriz e defectiva, a solucao de eig satisfaz a relacao AX = XD.

Autovalores qenerallzados e autovetores qenerallzados. Se A e B sao matrizes quadradas, en tao 0 comando

B)

rctorna urn vetor contendo autovalores generalizados que resolvem a equacao

Ax = AUx

onde A e urn escalar. Os valores de A que satisfazem a equacao sao os autovalores generalizados e os correspondentes valores de x sao os autovetores generalizados.

Para se obterem os autovetores, utiliza-se 0 comando de dupla arribuicao como a seguir:

= eig(A,B)

Isto procluz uma rnatriz diagonal D de autovalores generalizados e uma matriz quadrada X cujas colunas sao os autovetores correspondentes de modo que

AX = nXD

Por exernplo, se

A - [ ~

-4

1 o -6

B = [~

()

o

o

entao eig(A,B) fornece

0.3129 - 2.S087i 0.3129 i 2.5087i - 0.62')8 - O.OOOOi

ans =

e [X,D] = eig(A,B) produz

0.3129 - 2.S087i o

o

o

0.3129 ~ 2.5087i ()

o o

0.6258 - O.OOOOi

IX,DI = eig(A,B) X~

0.7309 + 0.0144i - 0.0178 - 0.2S03i

- 0.6336 O.0336i

- 0.6720 0.2880i

- 0.0776 0.2387i

0.574S- 0.2693i

- 0.2390 O.S893i

0.2459 - 0.6062i 0.1539 + 0.3794i

796 Apendice / Fundament os Necessarios ao Uso Efetivo do MATLAB

Os autovetores sao postos em esc ala de modo que a norma de cada um deles e. 1,

caracteristica. As raizes da equacao caracteristica sao as rnesmas dos autovalores da marriz A. A equacao caracteristica da rnatriz A pode ser calculada por meio de

p =

Por exemplo, se a matriz A for dada por

A = l ~

6 -11

1 o

~.l

-6

entao 0 comando poly

Iornecera

p= 1,0000

(',0000

1 1 ,(lO()O

p=

6,0000

Esta e a reprcscntacao MATLAB do polinomio

S' -L 6s1 + l Ls + 6 = ()

As rafzes da equacao caracteristica p = 0 podem ser obtidas enrrando-se com 0 comando r

rootsip):

- 3,00(lO

- 2,0000

-1,0000

r = rootsip)

r=

As raizes da cquacao caracterlstica podern scr remontadas de modo a obtcr 0 polinomio original atraves do cornando q = poly(r),

h,OOOO

11,0000

q-

q=

1.0000

h,O()OO

Produto de polinomlos. Considerern-se

\2 - 20.6

b(s)

\2 + 1

+ 151.2

o produto dos polinornios e a convolucao dos coeficientes, 0 produto dos polinomios do-se com 0 comando c = convta.b).

e 17(.1') pock ser obtido entran-

0.0196

0,1306

-0.'1038

a = [I 0 - 20.h]; b [I 19.6 151.2];

C convia.b)

C=

1.0c I ()O:)·,

0.0010

'1.1147

Secao A-3 / Calculando Funcoes de Matrizes

797

Esta e a reprcsentacao MATLAB do polinomio

C(5) = S4 + 19,653 + 130,652 - 403,85' - 3.114,7

Deconvolucao (divlsao de polinomios). Para dividir 0 polinomio e(s). que acaba de ser obtido, por c, (s), usa-

se 0 comando de deconvolucao lq.rl deconv(c,a).

1.0000

19.6000

151.2000

[q.r] deconv(c,a)

q=

o

o

o

o

o

Calculo do valor de urn polinornio. Se p e um vetor cujos elementos sao os coeficientes de um polinornio em ordem decrescente das potencias, entao polyvaltp.s) e 0 valor do polinornio calculado em s. Por exernplo, para calcular 0 valor do polinornio

pes) = 3s2 + 2s + 1

em s = S. entra-se com 0 comando

p = [3 2 1];

polyval

Obtem-se entao

ans

86

o comando polvvalmip.A) calcula 0 valor do polinomio p no sentido matricial. Considere-se a seguinte rnatriz J:

0]

o

-10

o comando poly(J) forneee 0 polinomio caracterfstico de J.

1 .0000

14.00CJO

56.0000

p = poly(j)

p

160.0000

Esta e a expressao MATLAB para 0 polinomio caractenstico de J.

poly(J) = 4>(J) =

+ 14J2 + 56,) + 1601

onele J e a rnatriz-identidade. Para a marriz

A = l ~ ~ ~l

-6 -11 -6

798 Apendice / Fundamentos Necessaries ao Uso Ef'etlvo do MATLAB

o cornando polyvalmtpolyqj.A) calcula 0 seguinte (p

[ 154 45 R]
+ + 56A 1601 = -4f1 66 -1
18 -15 84 Ver a seguinte saida em MATLAB.

154.0000 48.0000 18.0()()O

lIS.OOOO 66.0()OO - 15.00()()

8.0000 - 3.()O()O 84.0000

polvvalrrupolyilj.A)

ans

Obtendo os quadrados dos elementos de urn vetor x. Para um vetor x, a operacao x'!\2 fornece um vetor com 0 quadrado de cada clemente. Por exernplo, para

x = [1 2 jJ

x.·'\2 e dado conforme mostrado na seguinte safda MATLAB.

x [1 2 31;
x.l\2
ails =
4 9 Tambem, para 0 vetor y

y = [2 + 5/ 3 + 4/ 1 - /J

y/\2 e dado como a seguir

- 21.0000 -+ 20.CJOOOi - 7.00()O t 24.0000i

0- 2.0000i

y = [2 + 5'i) 4iil -il; y/\2

ans =

Obtendo os quadrados dos elementos de uma matriz A. Para uma matriz A, a operacao A 1\2 fornece uma matriz forrnada pelos quadrados de cada 11111 dos elementos. Par exemplo, para as matrizes A e B, em que

II

A=

j

II + .

B = ]

3 + 4;

2 - 5 -

A.I\2 e f3'!\2 sao dadas como a seguir:

/\ = '1 2;) 4]; /\/'2

cl Fl S =

Secao A·3 / Calculando Funcoes de Matrizes

799

1 4 916

8 [1 + i

8.\2

2 -2*i;3+4*i S-iJ;

arlS =

o 2.0000i

24.0000i

o 8.0000i

24.000010.0000i

Valores absolutes. A operacao fornece a matriz constituida polo valor absolute de cada um dos elementos

de A. Se A e complcxa, retorna () modulo cornplexo (a magnitude):

e angle(AI retorna os angulos de fasc, em - tr e -rr. Ver 0 seguinte exernplo.

dos elementos da matriz cornplexa A. Os fll1gulos ficam situados entre

1\ = [2 2 *i abs.A)

I -3*i:4 1 S*i 6-

ans =

2.8284

3.1623 6.CJ82B

6.4031

ans

0.78S4 0.8961

J .2'190 - 0>1651

Magnitude e anqulo de fase de urn numero

plexo z x + iy = re" sao dados pm

c a sentenca

A magnitude ()

de rase de um ruimero C0111-

teta

converte-os de volta ao nurnero cornplexo original 2.

z =

Exponencial de rnatriz. A operacao expm(A) c. a exponencial de uma rnatriz A n X n, lsto e.

=I+A-t-- -~ ...

")1 "I

L.. ~ _).

Notc-se que a funcao transcendental e interprctada como urna funcao de matrizes se um "rn" for acrescido ao nome da Iuncao, como em expm(AI ou sqrtm(A).

Matrizes de utilidade. No

as tuncoes

onesm) ones.m.n)

zeros

800 Apendice / Fundarnentcs Necessaries ao Usc Efetivo do MATLAB

geram matrizes especiais. Isto C. ones(n) produz uma matriz n X 11 de elementos iguais a urn. onestm.n) produz uma

matriz In X n de elementos a um. De modo semelhante, a funcao produz uma matriz n X 11 de zeros, en-

quanto zerosim.n) produz urna matriz In X II de zeros. ;\ Iuncao produz uma matriz de zeros com as mesmas

dimensoes de A, exceto quando A [or escalar,

Matril ldentidade. Em programas MATLAB e neccssario frequenternente entrar com a matriz identidade I. Uma

sentcnca fornece uma matriz idcntidade II X II. Isto e,

eyel.'))
ails ---=
0 0 () 0
0 0 0 0
0 0 0 0
0 0 0 1 0
() 0 0 0 Matriz diagonal. Sc x e urn vetor, a sentence diagrx) produz uma matriz diagonal com os elementos de x na diagonal principal. Por exernplo, para 0 vetor

diagi

1 ,n)]) fornece uma matriz identidade n X 11 como a seguir:

x = l,n)J

Se A for uma matriz quadrada, entao diag(A) e urn vetor forrnado pelos elementos da diagonal principal de A e diagidiag(A)i

e uma matriz diagonal corn elementos de aparecendo na diagonal. Vel' a seguinte saida MATLAB.

Observe-se que d i ag( 1 . fornece

Se<;ao A-3 / Calculando Funcoes de Matrizes

illlS -
0 0 () 0
() 0 0 0
0 () 0 0
0 0 () I 0
0 0 (J () 2 3;4 J 6;7 8 91;

,lIlS =

I 5 9

801

Alem disso, diag(O:4) fornece

diag(1 :5)
ans =
() 0 0 0
() 2 0 0 0
0 0 3 0 ()
0 0 0 4 0
0 0 0 0 5 Portanto, diag(l :5) - diag(O:4) e uma matriz-identidade ..

E importantc observar que diagiu;n) e bastante diferentc de diag(O:n). A funcao diag(O,n) e uma matriz (n 1) X (n

+ 1) constituida toda de zeros. V er a seguinte saida MA TLA B.

A-4 MODELOS MATEMATICOS DE SISTEMAS LINEARES

ans =
0 0 () 0 0
0 0 0 0
0 0 2 0 0
0 0 0 'J 0
,)
0 0 () 0 ,1 o MAT LAB possui comandos utcis para transforrnar urn modelo matematico de um sistema linear em urn outro modelo, Tais transforrnacoes de sistemas lineares iiteis para a solucao de problemas de engenharia de controle sao listados a seguir.

ans
() 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 U
0 0 0 () 0 Funcao de transferencia para espaco de estados. 0 comando

converte 0 sistema soh a forma de funcao de transferencia

[A,B,C,

= tf2ss(num,dcn)

para a forma no cspaco de estados:

Y(s) num

-- = -- = C(sI -

den

x = Ax + Ell V ex Du

802 Apendice / Fundamentos Necessarlos ao Uso Efetivo do MAT LAB

Espaco de estados para funcao de transferencia. Se a sistema possuir uma entrada e uma saida, a comando

produz a funcao de transferencia Y( si/Uis}.

Se 0 sistema envolver rnais de uma entrada. utiliza-se 0 seguinte cornando:

Este comando converte 0 sistema no espaco de estados

para a funcao de transfercncia

x = Ax + 81.1 V = ex + Du

Y())

-_-'- = .-esimo elemenro del Ct.st> A)-In + DJ U;(s)

Note-se que 0 escalar 'iu' e urn indice das enrradas do sistema c indica qual entrada esta sendo considerada para a resposta.

Considere-se. por exemplo, 0 seguinte sistema, que possui duas entradas Uj e u-:

1~lj = f _~ _1j f.Xll + f.l OJ IUlj

lX2 l - 3 IX2 lO I lU2

y = [1 OJ l::~1 + [0 Oll~:~j

Duas funcoes de transferencia pod em ser obtidas para este sistema. Urna relaciona a saida y com a entrada Uj• e a outra relaciona a saida y com a entrada 112, (Quando se considera a entrada u, adrnite-se que a entrada U2 e igual a zero e viceversa.) Ver a seguinte saida MATLAB.

A partir da saida MATLAB. tem-se

;\ = [0

8 [I

c: 11

0=10

1'-) 0;0 I 0];

OJ;

[nurn.den] = 551t1'(,1\,8,c'0, 1)

nurn

den =

:; 2

[num.denl = ss2tfl;\,B,C,D,2)

Ilum =

() 0

den =

3 2

Secao A·4 / Modelos Matematicos de Sistemas Lineares

803

e

Y(s) U1(S)

s + 3

+ 31' + 2

1

,~---.---

S2 + 3.1 + 2

Expansao em fracoes parciais de de transferencia. Considere-se a funcao de transfcrencia

onde a( 1) '* 0, mas alguns aU) e b(j) podem ser iguais a zero.

Os vetores-linha num eden especificam os coeficicntes do numerador e do denominador da funcao de transferencia.

Isto e.

o comando

num = [h(l) b(2) den = fa(l)

b(n)] a(n)l

[r.p.k] = residueinum.den)

acha os residuos, os polos e os termos diretos da cxpansao em A expansao de B(s)IA(s) em fracoes parciais c dada par

8(.1) A

s --

Como exernplo, considere-se a seguinte funcao de transferencia:

Para esta funcao,

o comando

fornece 0 seguinte resultado:

parciais da relacao dos dois polinornios

e

r( 1 )

A(s)

11.1 6

nurn [2 5 3 61

den II 6 11 61

[r.p.k]

resi clue( nu Ill/den)

= residuemurn.den)

- 6.0000 4.0000 3.0000

p=

- 3.00()O 2.0000 -1.0000

804 Apendice / Fundarnentos Neces sarios ao Uso Efetivo do IVIATLAB

Note-se que os residuos retornam sob a forma de vctor-coluna r, os polos sob a forma de um vetor-coluna p c 0 termo direto na forma de um vetor linha k. Est21 e a MATLAB cla seguinte expansao de em fracoes parciais:

o cornando

B(s) __ 2sl +

+ 3s + 0

(s + 1)(\ + 2)(s + 3)

-6 -4 3

+ .. _>-+-- 12

\+3 s-t-2 +1

inurn.den] = residueir.p.k)

sao os dados na salda MATLAB anterior, converte a expansao em 1'r<1<;:6e5 parciais de volta na relacao pocomo a seguir:

num.den residueir.p.k)
num =
2.(JOOO 5.0000 3.0000 0.0000
den =
1.000() 6.0000 11.000() 6.0000 Conversao de modele continuo no tempo para discrete no tempo. 0 cornando

H] = c2 l),

onde T5 e () pcriodo de arnostragem em segundos, converte () modele de espaco de estados continuo no tempo em discrete no tempo, considerando-se a existencia de urn cxtrapolador de ordern zero nas entradas. ISlO e, com este comando

e convertido para

x = Ax + fiu

+ 1)

Considere-se, por exemplo, 0 seguinte sistema continuo no tempo:

Pode-se obter urn sistema discreto equivalente por meio do cornando [G, HJ = c2d(A,B,Ts). 0 penodo de amostragem T5 e suposto igual a 0,05 s. Ver a seguinte saida MA TLAB.

A [01;-25 -4j;

B = 10;1

format long

iG,H] c2d(i\,B,0.O:;)

Secao A-4 / Modelos Matematicos de Sistemas Lineares

805

0.00116466984723 0.04484704238264

G=

0.97088325381929 0.04484704238264 -1.12117605956599 0.79149508428874

11=

o sistema discreto equivalente no espaco de estados e dado por

r X,I (k + 1 )j' = r 0,9709

IX2(k + 1) I -1,1212

0,',044, S';l, 1Xl,(k)J l,O.oO], ]65J ')

- l + - ut k

O,79b X2(1() O,0448J

Resumo. 0 material apresentado neste apendice constitui urn pre-requisite para 0 MATLAB. Como todos os calculos e graficos nesre livro sao feitos com 0 MATLAB, 0 leitor deve estar farniliarizado com 0 material deste apendice.

806 Apendice / Fundamentos Necessaries ao Gso Efetivo do MATLAB

A-' 1\-3

Ackermann, J. E .. "Der EntwulfLinearer Regclungs Systcmc im ZustanJstrallfll," Rege!uilg.Hechnik IIl1d Proressdtuenverarbeitung. 7( 1(72). pp. 297-300.

Anderson. B. D.O .. C 1. B. Moore. Linear Optimal Control. Lpper Saddle River, N.I: Prentice Hall. 1971.

Athans. 'vI., e P. L. Falb, Otnimol Control.An lntroduction 10 the Theory and Its Applications, New York: McGraw-Hill Book

1965.

Barnet. "Matrices. Polynomials. and I .incar Time-invariant Systems," IEEE Trails. Automatic Control. AC-lS (1973), pp. 1-10.

Bayliss. L. E .. Living Control London: Universities Press Limited. 1966.

Bellman. R .. Introduction to McGraw-Hi!l Book Company. 1960.

New York: Van Nostrand Reinhold. 1945.

Brogan. \V. L.. Modem Control Theorv. Upper River. NJ: Prentice Hall. 1985.

Butman. S .. e R. Sivan (Sussman). "On Cancellations. Controllability and Obscrvability." l El. .. E Trans. Automatic COil/rot, ACl) (1964), pp . .l17-R.

Campbell, D. P .. Process Dvnamics. New York: John

Cannon. R., Dvnamir» of Phvsical Systems. New York: Rook Company. 1967.

Chang. P. M .. e S. Jayasuriya, "A n Evaluation of Several Controller Synthesis Methodologies Using a Rotating Flexible Beam as a Test Bed." ASME J. Dynamic SYSTems. Measurement. and Control, 117 (1995), pp. 360-73.

D. K .. Analysis of Linear Svvtcms. :'vIA: Addison- Wesley Publishing Company. Inc .. 1959.

R. V" Operational Mathematics, 3~ York: McGraw-Hili Book Company. 1972.

Coddington. E. A .. e N. Levinson, Theorv of Ordinary Differentiol New York: McGraw-Hill Book Company. 1955.

Craig. J. J., lntroduction to Robotics, Mechanics and Control. Reading, Addison-Wesley Publishing Company. Inc" 1986.

Cunningham. W . .I" Introduction /0 Nonlinear Analysis. New York: McGraw-HilI Book Companv.tv.ix.

Dorf. R. C. Modern Control Systems. e 6.' ed. MA: Addison-Wesley Publishing Company, Inc., 1<,)92.

Doyle. J.c.. B. A. Francis. C 1\. Tannenbaum. Control Theory. New York: Macmillan. Inc .• 1992.

Enns. M .. J. R. Greenwood Ill. J. K. Matheson. e F. T. Thompson. "Practical Aspects of Stale-Space Methods Pa11 I: System Formulation and Reduction." IEEE Trans. Militar. Electronics, 'ilL-S (\ 9(4). pp. X 1-93.

Evans. W. R .. "Graphical of Control Systems," Allzl: Trans. Pori II. 67 (1948), pp. 547-51.

Evans.W. R .. "Control System by Root I .ocus Method," AlEE Trans. Pori II. 69 (1950). pp. 66-9.

Evans. W. R .. "The Use of Zeros and Poles for Frequency Response or Transient Response," ASivIE Trans .. 76 (1954). pp. 1135-44.

Franklin. G P .. J. D. Powell. e A. Emnmi-Xacini. Feedback Control ofDvnanuc Svstems. Reading. MA: Addison-Wesley PuInc .. 1986.

SYSTem Design. '\ew York: McGraw-Hill Book Company, 1986.

Gonzalez. a C S. G. Lee. Robotics: Control. Sensing. Vision, and intelligence. New York: 'v1cGraw-HiII Rook Company. 1987.

Gantmachcr F. R., Theory ofMatrices. vols! e ll. New York: Chelsea Publishing Company, Inc .. 1959.

Gardner M. F.. e J. I" Barnes. Transients ill Linear \ew York: John Wiley & Sons, Inc .. 1942.

Gibson. 1. E .. Nonlinear Automatic Control. New McGraw-Hili Book Company. 1963.

Gilbert. E. G. "Controllability and in Multivariable Control Systems" .l.SIAM COil/mi. ser. A.I (1963), pp. 12R-Sl.

Graham, ))" C R. C. Lathrop. "The Synthesis Response: Criteria and Standard forms," AlEE Trans. Partll. 72 (1953),

pp. 273-t58.

Hahn. \V .. Theory and Application ojLiapunov's Direct Method. Lpper Saddle River. NJ: Prentice Hall, 1963.

Halmos. P. R., Finite Dimensional Vector New York: Van Nostrand Reinhold. 1958.

D. '1'.. e R. H. Cannon. Jr .. "On the of Unstable Multiple-output Mechanical Systems" ASME Paper 110. 63-WA-

1963.

Irwin. J. D .. Basic Engineering Circuit New York: Macmillan. Inc .. 1984.

.layasuriya, S .. "Frequency Domain Design Performance Lnder Parametric. Lnstrucrurcd, ou Mixed Uncertainties." AS/yIE

.I. Dvnamic Systems. Measurement. and Control, 115 (1993). pp. 439-51.

Kailath, T., Iinear Systems. Lpper Saddle River. N.J: Prentice-Hall, Inc .. 1980.

Kalman. R. E .. "Contributions to the of Optimal Control." Bol. Soc. Mat. Me»: 5 (1960). pp. 102-19.

Kalman, R. E.. "On the General Theory Control Systems," Proc. First Intern. Cong. IFAe, Moscow.1960; Autornatic and

Remote Control. London: Butterworths & Company Limited. 1961 pp. 411 1-92.

Kalman. R. E .. "Canonical Structure of Linear Dynamical Systems," Proc. Natl. A.cad. Sci., USA, 48 (1962), pp. 596-600.

Kalman. R. E. "When Is a Linear Control System ASk/E J. Basic Engineering. ser. D.S6 (1964). pp. 51-60.

Kalman. R. E., e J. E. Bertram, "Control System and Design via the Second Method of Lyapunov: I Continuous-Time

Svsrcms." ASME.l. Basic Engineering. ser. D.82 pp.371-93

B-1 B-2 B-3 B-4 B-5 B-6

C-I C-2 C-j

C4 CoS C-6 C-7 C8 D-l D-2 E-I

E-2 E-3 [-4

F-I

Gl G2 G-3 U-4 G5

H-l H-2 II3

I-I J-l

K-I K-2 K-3

K-4 K-" K6

807

K-7 Kalman. R, E., Y. C. Ho, e K. S. Narcndra. "Controllability of Linear Dynamic Systems, in Contributions to Diflerential Equations, vol .. 1, New York: Wiley-Interscience Publishers, Inc.. 1962.

K-R Kochenburger, R. 1.. "A Frequency Response Method for Analyzing and Synthesizing Contactor Servomechanisms,"AJEETrans .. 69 (1950), pp. 270-83

K-9 Krcindler, E. e P. E. Sarachick, "On the Concepts of Controllability and Observubility of l-inear Systems," [lott: Trans. Automo-

tic Control, AC-9 (1964), pp. 129-36.

K-IO Kuo. B.C.. Automatic Control Systems, 6.' cd, Upper Saddle River. NJ: Prentice HaIL 1991.

L-J LaSalle, J. P., S. Lefschetz. Stability Direct Method with New York: Academic Press, Inc., 1961.

L-2 Luenbcrgcr, D. G., "Observing the State of a System." IEEE Trans. Electr., MIL-S (1964).

L-3 Lur c. ALe E. N. Rozcnvasscr. "On Methods of Constructing Functions in the Theory or Control Syste-

ms," Proc. Firs! Intern. Congo IFAC. Moscou, 1960, Automatic London: Butterworths & Company Limi-

ted, j 961. pp. 928-33.

:VI-I MathWorks, Inc .. M/1TL1B User's Guid«. Natick. Mass.: Marhworks, Inc" 1990.

M-2 MathWorks, Inc., The Student Edition o!fV!ATLAB, versao 3.). Saddle River, t\J: Prentice lJall. 1992

M-3 MathWorks, Inc .. The Student Edition (}t/'vlAILAR. vcrsao 4.0. Saddle River. NJ: Prentice Hall, 1995.

M-.j Melbourne, W. G., "Three Dimensional Optimum Thrust Trajectories for Power, Limited Propulsion Systems' /IRS J.. 31 (1961). pp 1723-8.

1'v1-4 Melbourne. W. G. c C G Sauer. Jr.. "Optimum Interplanetary Rendezvous with PowerLimited Vehicles.' AIA-A.I.. 1 (1963). pp.

54-60.

M-6 Minorsky. N, Nonlinear Oscillations. New York: Van Nostrand Reinhold, 1962.

M-7 Monopoli, R. V .. "Controller Design for Nonlinear and Time-Varying Plants," N!ISA CR-152, de 1965.

N-l Noble, B. e J. Daniel, Applied Linear 2.' ed, Upper Saddle River. NJ: Prentice Hall,

N-2 Nyquist, H" "Regeneration System iel'h. J .. II (1932). pp, 126-47.

0-1 Ogata, K., St.u« Space Analvsis Systems. Upper Saddle River. N.I: Prentice Hall, 1967.

0-2 Ogara, K., System Dvnamu:«, 2.' cd. Upper Saddle River, '\JJ: Prentice Hall. 1992.

0-3 Ogata, K .. Discrete-time Control Systems. 2.' ed. Upper Saddle River. NJ: Prentice Hall. 1995.

0-4 K. Solving Control Engineering Problems wnh MATLAH. Upper Saddle River, t\J: Prentice Hall. 1994.

0-5 K" Linear Control Svstcm, with /vlAILAR. Upper Saddle River, NJ: Prentice Hall, 1994.

p. I D. Harbor. Feedback Control Systems. Saddle River, NJ: Prentice Hall, I 9~8.

P-2 L S., V. C; Holryunskii. R. V. Garnkrclidze. e Mishehcnko. The Mathematical Theory of Optimal Processes. John Wiley & Sons. Inc .. 1962.

R-l Rekasius, Z. V" "A General Performance Index for Analytical Design or Control Systems. IRE Trans. Automatic Control, AC- 6 (1961), pp. 217-22.

S-1 Schultz, D. G, e]. E. Gibson. 'The Variable Gradient Method for Generating Liapunov Functions." AlEE Trans. Port If. 81 (1962). pp.203·0c).

S-2 Schultz, W. C' .. e V. C. Rideout, "Control System Performance Measures: Past, Present. and Future." IRl: 1'1'0111. Automatic COIl-

trol, AC-6 (1961). pp. 22-35.

S·3 Smith. R. J.. Electronics: Circuits and Devices, 2." cd. New York: John

S-4 Staats, P. F .. ,. A Survey of Control Topics" Plan B paper. Eng" University of Minnesota, March 1966.

5-5 Strang. G., Linear Algebru and Applied/ions. New York: Academic Inc .. i 976.

T-l Truxal. J. G, Automatic Feedback Systems Svnthesis. '\Jew York: J'vlcGraw-Hill 800k Company. 1955.

V-I Valkenburg. M. E .. Network Saddle River, NJ: Prentice Hall. 1974.

V-2 Van I.andingharn, H. F, e W. A. "Controller Design for Nonlinear and Time- Varying Plants," Educntionol ;l;Jonogra-

ph, College of Engineering, Oklahoma State University, 1967.

W-I Wadel. L. B" "Describing Function as Power Series," lRL Trans. Automatic Control. AC-7 (]962i. p. 50.

W-2 Waltz. M. D., e K. S" Fu, "A Learning Control System," Pmc. Joint /vutomatir Control Conference. 1964, pp. 1-5.

W-3 Wilcox, R. H .. "Analysis and Synthesis of Dynamics Performance ofIndustrial Organizations - The of Peed back Control Techniques to Organizational Systems," IRE Trans. Automatic Control. AC-7 (1962), Pl"

W-4 Willems, LC; e S. K. Miner. "Cnnuollabiluy. Observability, Pole Allocation. and State Rcconstrucuon." IEEE Trans. AIIIOIl1l)tic Control, AC-16 (197 I), pp. 582-95.

W-5 Wojcik, C. K.. Representation of the Root Locus." ASME J. lJas;'· Engineering, SCI'. D, S6 (1964). pp. 37-'13.

W-6 Wonharn. W. M" Pole Assignment in Multi-Input Controllable Linear Systems:' JEf.'f: T,-mL\. /vutomatic Control. AC-12 (1967). pp. 660-65.

Z-I 1. G .. e :\. B. Nichols, "Optimum Settings fur Automatic Controllers." ASME Tram 64 (19421, pp. 759-68.

Z-2 J. G, e N. H. Nichols. "Process I.ags in Automatic Control Circuits." ASME Trans. 65 (1943), pp. 433-44.

808

Referenclas