Você está na página 1de 20

Projeto de um Controlador Utilizando o Lugar

das Raı́zes
Controle de um Servo Motor a partir de sua Função de
Transferência

Daniel Campos Pompermayer and José Carlos Soares de


Campos Júnior

Controle de Sistemas Dinâmicos


Prof. Dr. Hans Holz Kulitz
Instituto Federal do Espı́rito Santo, Brasil.

26 de junho de 2017

1 Introdução
O controle de sistemas dinâmicos é algo fundamental para o bom funcio-
namento dos mais diversos sistemas e plantas utilizadas pelo homem. Embora
pareça trivial a ideia de que as plantas dinâmicas devam ser controladas para
desempenhar bem a sua função, nem sempre esse controle pode ser feito de
forma igualmente trivial.
Um sistema reage aos estı́mulos de um sinal proporcionando respostas
determinadas por aquilo que se chama sua função de transferência. Cada
tipo de função de transferência exige a utilização de uma técnica de controle
diversa, própria para o funcionamento daquele sistema especı́fico.
Como toda função matemática, uma função de transferência também pos-
sui polos e zeros, isto é, valores numéricos que levam a função para um valor
nulo (zeros) ou para valores infinitos (polos). É fundamental que um proje-
tista de controle conheça o posicionamento dos polos e zeros da função de
transferência de um sistema dinâmico no plano complexo para desenhar seu
mecanismo de controle.

1
O controle de sistemas dinâmicos é normalmente feito em malha fechada,
ou seja, o sinal de controle enviado para o sistema não é igual ao sinal de
controle inserido pelo operador, mas igual ao erro existente entre esse sinal
de controle e o estado atual daquele sistema. Se o operador deseja, por
exemplo, que o nı́vel de um reservatório chegue a uma determinada altura, o
sinal de controle enviado para as bombas e válvulas não comporta a altura
desejada, mas a diferença entre a altura desejada e a altura atual. Acontece
que nem sempre essa abordagem é capaz de produzir respostas adequadas
para a operação do sistema. Por vezes o degrau existente entre o estado atual
e o estado desejado é muito grande e o tempo proporcionado pelo sistema
para efetuar a transição de estados é maior do que o esperado ou a variável
controlada oscila muito até se estabilizar no ponto de operação desejado.
Nesses casos é preciso conformar a resposta do sistema.
A posição dos polos de um sistema dinâmico define a maneira como ele
responde aos diversos sinais de entrada. Posicionando os polos do sistema
de maneira adequada, é possı́vel se obter uma resposta comportada em vista
dos parâmetros desejados. Por isso, uma das técnicas de controle empregadas
para a conformação da resposta de um sistema é a manipulação do lugar das
raı́zes.
O lugar das raı́zes é um método desenvolvido por W. R. Evans (Evans,
1950) e consiste da plotagem de todos os locais possı́veis de se posicionar
os polos da função de transferência de um sistema dinâmico em se variando
um dos parâmetros do sistema. Através do lugar das raı́zes o projetista
pode prever o comportamento do sistema quando determinado parâmetro é
alterado e encontrar o ponto de operação desejado.
Neste relatório descreve-se o emprego do método do lugar das raı́zes para
o projeto de um controlador para um servo motor. Serão apresentados a
metodologia seguida para a obtenção da função de transferência do motor,
os ensaios feitos para a comprovação do modelo matemático, o projeto do
controlador e seus resultados. Todo o desenvolvimento apresentado se fun-
damenta no conteúdo correlato do exemplar da 5a edição do livro Modern
Control Engineering (Ogata, 2011).

2 Do Lugar das Raı́zes


A figura 1 apresenta um sistema de controle em malha fechada em que
um sistema dinâmico de resposta G(s) é controlado por uma realimentação
negativa de resposta H(s), isto é, os sinais de comando R(s) são decrescidos
do estado atual proporcionado pelo sistema G(s), alterado pela realimentação
H(s), antes de serem enviados para o sistema.

2
Figura 1: Sistema de Controle
Fonte: Ogata (2011).

A função de transferência de um sistema é dada pela razão dos sinais de


saı́da e entrada nesse sistema. Assim, a função de transferência para a malha
fechada apresentada na figura 1 é dada por:

C(s) G(s)
= (1)
R(s) 1 + G(s)H(s)
Ao se igualar o denominador dessa equação a zero, obtém-se a equação
caracterı́stica do sistema, equação cujas raı́zes são os polos do sistema de
malha fechada. A equação caracterı́stica do sistema apresentado na figura 1
é dada por:

G(s)H(s) = −1 (2)
Uma vez que s é uma grandeza complexa, a equação 2 pode ser decom-
posta em duas equações em se equacionando ângulo e magnitude:

|G(s)H(s)| = 1 (3)

6 G(s)H(s) = ±180(2k + 1) (k = 0, 1, 2, ...) (4)


As equações 3 e 4 são conhecidas respectivamente como condição de
magnitude e condição de ângulo do sistema de controle. Qualquer valor
de s que satisfaça ambas as condições é um polo do sistema. Um valor de s
que satisfaça apenas a condição de ângulo é um lugar de raiz do sistema.
Os lugares de raiz do sistema são obtidos quando um dos parâmetros
do produto G(s)H(s) é alterado. A forma mais comum de se alterar esses
parâmetros é a adição série de um bloco de ganho K. O assim chamado
lugar das raı́zes de um sistema, é o conjunto de valores de s que satisfazem
a condição de ângulo obtidos em se variando o valor do ganho K.

3
Figura 2: Modelo do servo motor em termos de seus elementos constituintes
(a), em diagrama de bloco (b) e diagrama de bloco da malha fechada (c)
Fonte: Ogata (2011).

3 Do Servo Motor
Como dito anteriormente, o produto deste trabalho é o controle da posição
de um servo motor. Um sistema de servo simples é constituı́do de um sistema
de controle e elementos de carga tais como a inércia e atrito viscoso. A
figura 2 (a) apresenta um modelo do servo motor em termos de seus elementos
constituintes.
A equação que descreve o comportamento do sistema servo em termos de
seus elementos constituintes é:

J c̈ + B ċ = T (5)
Na equação 5, T é o torque proporcionado pelo sistema de controle, en-
quanto B e J são os elementos constituintes de atrito viscoso e inércia do
sistema e c é a posição atual do eixo do servo.
Ao se aplicar a transformada de Laplace à equação 5 obtém-se:

4
Js2 C(s) + BsC(s) = T (s) (6)
A função de transferência G(s) do sistema é então dada por:

C(s) 1
G(s) = = (7)
T (s) s(Js + B)
Considerando um sistema em malha fechada com realimentação negativa
unitária (i.e. H(s) = 1) e um bloco série de ganho K, da equação 1, tem-se
que a função de transferência da malha fechada é dada por:

C(s) KG(s) K K1
Gmf (s) = = = 2 = 2 B J (8)
T (s) 1 + KG(s) Js + Bs + K s + J s + K J1

A raiz quadrada da razão de K e J representa a frequência de oscilação


não amortecida do sistema em malha fechada (ωn ), grandeza que representa
o quanto a variável controlada varia em torno do valor do ponto de ajuste.
Um outro importante fator obtido dos parâmetros do sistema é o fator de
amortecimento (ζ) que indica o quão rapidamente a oscilação é atenuada. ζ
é dado pela equação:
B
ζ= √ (9)
2 JK
Uma vez que ζ é calculado a partir das inércias e do ganho do sistema,
esse fator é necessariamente positivo. Por outro lado, sistemas que possuem
ζ menor do que 1 apresentam oscilação na variável de controle em resposta
a uma mudança de estado. Esses sistemas recebem o nome de sistemas
subamortecidos. Sistemas que possuem ζ maior do que 1 não apresentam
oscilação na variável de controle, mas tendem a ser mais lentos em seu ajuste.
Esses sistemas recebem o nome de sistemas superamortecidos. Quando ζ
é igual a 1, o sistema se encontra no limiar das duas condições e é chamado
de sistema criticamente amortecido.
Substituindo ωn e ζ na equação 8, obtém-se a nova função de transferência
da malha fechada:

ωn2
Gmf (s) = (10)
s2 + 2ζωn s + ωn2
e a função de transferêcia de malha aberta:

ωn2
G(s) = (11)
s(s + 2ζωn ))

5
A partir da equação 10 é possı́vel se obter os zeros da equação carac-
terı́stica do sistema (i.e. polos):

s2 + 2ζωn s + ωn2 = 0
s2 + 2ζωn s = −ωn2
s2 + 2ζωn s + ζ 2 ωn2 = −ωn2 + ζ 2 ωn2
(s + ζωn )2 = −ωn2 (1 − ζ 2 )
p
|s + ζωn | = jωn 1 − ζ 2
p
s + ζωn = ±jωn 1 − ζ 2
p
s = −ζωn ± jωn 1 − ζ 2
(12)
Os polos obtidos na equação 12 podem ser escritos na forma polar:

ωn 6 β (13)
−1
onde β = cos (ζ).
A figura 3 apresenta o posicionamento dos polos do sistema em função
de seus parâmetros de frequência de oscilação não amortecida e fator de
amortecimento.


p
ωn 1 − ζ2

ωn

ζωn σ

Figura 3: Posicionamento dos polos do sistema em função de seus parâmetros

O servo motor a ser controlado possui como elemento gerador de tor-


que um motor elétrico e como elemento de transdução da posição um po-
tenciômetro. Dessa forma, tanto os sinais de controle (torque) quanto os

6
sinais de saı́da (posição) são dados em unidades de volts. Deve-se atentar
também para o fato de que o motor elétrico presente no servo motor possui
uma zona morta de em torno de 1,5V.
Visando obter a função de transferência do servo motor, o sistema foi
submetido a um ensaio de resposta ao degrau em malha aberta. Neste ensaio
um sinal de ajuste foi inserido de maneira a variar abruptamente de zero a
5V. A figura 4 apresenta a resposta ao degrau obtida.

25
20 Sinal de Ajuste
Posicao
15
Posição (V)

10
5
0
-5
-10
-15
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Tempo (s)

Figura 4: Resposta do servo motor ao sinal de controle

É notável na figura 4 a existência de um ponto de não linearidade. Esse


ponto ocorre no valor máximo da posição (10 V) referente ao ponto de 360o
do potenciômetro. A figura 5 mostra o ponto de não linearidade e a porção
linear da curva de resposta do sistema.

25
20 Posicao
Porção Linear
15
Posição (V)

10
5
0
-5
-10
-15
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Tempo (s)

Figura 5: Não linearidade da resposta do servo motor ao sinal de controle

Uma vez que a não linearidade ocorre após o ponto de operação do sistema

7
(após 360o ), escolheu-se modelar o sistema para uma curva que se aproxime
da porção linear.
Como mostrado na equação 11, a função de transferência do servo motor
em malha aberta é dada por:

ω2
G(s) = (11)
s(s + 2ζω)
Separando essa equação em frações parciais e aplicando a transformada
inversa de Laplace em cada fração obtida encontra-se a resposta temporal
em malha aberta do sistema servo que é dada por:
γ1
g(t) = γ1 t − (1 − e−γ2 t ) (14)
γ2
em que γ é um vetor de coeficientes.
O vetor γ pode ser então determinado através de um processo numérico
iterativo em que seus valores são obtidos em um processo de regressão não
linear inúmeras vezes até que o modelo encontrado se aproxime dos pon-
tos experimentais. Os autores produziram um script para o software GNU
Octave, de nome tempoParaFT.m (apêndice A), para a resolução deste
problema.
A função de transferência G(s) obtida foi de:
166
G(s) = (15)
s(s + 32, 91)
A figura 6 apresenta uma comparação entre o modelo matemático obtido
e a resposta temporal oriunda do ensaio.

30
25 Ensaio
20 Modelo
Posição (V)

15
10
5
0
-5
-10
-15
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Tempo (s)

Figura 6: Comparação entre o modelo e o resultado do ensaio

8
Uma vez obtido o modelo foi possı́vel verificar que o sistema formado
unicamente pelo possui fator de amortecimento de 1,28 (i.e superamortecido).
Para que o efeito do controle projetado neste trabalho fosse mais evidenciado,
resolveu-se adicionar ao sistema um ganho artifical de 40 V/V, levando-o ao
estado de subamortecido. Embora esse ganho artificial não faça parte do
sistema original, deste ponto em diante este trabalho o considerará como
parte integrante do sistema.
De posse do modelo em malha aberta do sistema servo, deduziu-se a
função de transferência do sistema em malha fechada com realimentação
negativa unitária, já considerando o ganho artificial adicionado ao sistema.
A equação 16 apresenta a função obtida.
6641
Gmf (s) = (16)
s2 + 32, 91s + 6641
Aplicando ao modelo apresentado na equação 16 um degrau de 5 V e
comparando o resultado obtido com a resposta apresentada pelo sistema em
um ensaio de malha fechada nas mesmas condições, foi possı́vel verificar que
o modelo matemático para malha fechada falha gravemente em se aproximar
da resposta real, apresentando um coeficiente de determinação negativo. A
figura apresenta a comparação entre o modelo e o resultado do ensaio.

10
Sinal de Ajuste
8 Modelo
Ensaio
Posição (V)

6
4
2
0
-2
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Tempo (s)

Figura 7: Comparação entre o modelo e o resultado do ensaio em malha


fechada

Essa falha, entretanto, não é inesperada. O sistema servo possui, além


da zona morta do motor elétrico e da não linearidade nas porções finais do
potenciômetro, uma outra não linearidade: seu circuito de acionamento, um
modulador PWM, apresenta saturação em sua saı́da, isto é, não permite que
todo e qualquer valor de sinal de controle seja enviado ao motor.

9
Afim de poder acrescentar mais essa não linearidade ao modelo, lançou-se
mão do módulo Xcos do software Scilab para representar o sistema propria-
mente e validá-lo. A figura 8 apresenta o modelo montado no software.

Figura 8: Modelo do sistema montado no software Scilab/Xcos

Lembra-se que o ganho de 40 V/V presente no modelo não faz parte


de nenhuma estratégia de controle e sim do ganho artificial adicionado ao
circuito conforme explicado anteriormente.
A resposta do modelo apresentado na figura 8 a um degrau de 5 V e
o resultado do ensaio nas mesmas condições é apresentado na figura 9. É
possı́vel verificar que o modelo se aproxima com muito mais exatidão da
resposta empı́rica possuindo com esta um coeficiente de determinação de
0,99. É possı́vel observar, porém, que mesmo com um tão elevado coeficiente
de determinação, o modelo apresenta uma pequena divergência nos valores
de sobressinal e de frequência de oscilação não amortecida. Essa divergência
foi tolerada neste trabalho.

8 Setpoint
Modelo
6 Ensaio
Posição (V)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8


Tempo (s)

Figura 9: Comparação entre o modelo e o resultado do ensaio em malha


fechada

Afim de garantir que o modelo fosse realmente válido, ele foi submetido

10
a dois outros testes: resposta a um sinal senoidal e resposta a um sinal
triangular. As figuras 10 e 11 apresentam uma comparação do resultado
obtido nos modelos com os resultados apresentados nos ensaios.

5
4 Sinal de Ajuste
Modelo
3 Ensaio
Posição (V)

2
1
0
-1
-2
-3
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Tempo (s)

Figura 10: Respostas do modelo e ensaio a um sinal senoidal em malha


fechada

5
4 Sinal de Ajuste
Modelo
3 Ensaio
Posição (V)

2
1
0
-1
-2
-3
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Tempo (s)

Figura 11: Comparação entre o modelo e o resultado do ensaio em malha


fechada

Em ambos os experimentos o modelo foi capaz de se aproximar dos re-


sultados empı́ricos de tal maneira a possuir com eles um coeficiente de de-
terminação de 0,97.

11
4 Do Controlador
Desejou-se controlar o sistema servo de tal maneira que o erro estacionário
do sistema (ess ) fosse nulo para uma entrada degrau, o tempo de acomodação
(ts ) fosse menor do que 0,5 s e o máximo sobressinal (mp ) fosse de 5%.
Definiu-se assim a tipologia do controlador:

A. Uma vez que o sistema possui em si um integrador ( 1s ), o erro esta-


cionário em malha fechada é naturalmente zero, conforme apresenta o
desenvolvimento abaixo. Com erro estacionário nulo, torna-se desne-
cessária a implementação de um integrador no controlador.

B. Como controles derivativos só são necessários em sistemas de lenta


atuação, optou-se por um controle unicamente proporcional.

ess = limt→∞ e(t)


1
= lims→0 s U (s)
1 + G(s)
s(s + 32, 91) 1
= lims→0 s 2
s + 32, 91s + 6641 s
s + 32, 91
= lims→0 s 2
s + 32, 91s + 6641
=0

Resta escolher um ganho adequado o controlador proporcional para que


sejam satisfeitas as condições impostas.
A função de transferência do modelo em um sistema de malha fechada
com controle proporcional é dada por:
6641Kp
GmfK = (17)
s2 + 32, 91s + 6641Kp
Como todo sistema de 2a ordem padrão, as grandezas de sobressinal (mp )
e tempo de acomodação (ts ) estabelecem um lugar geométrico no plano com-
plexo.
O tempo de acomodação é dado por:
4
ts = (18)
ζωn
Uma vez que ts deve ser menor do que 0,5 s, então ζωn > 8.

12
O sobressinal, por sua vez, é dado por:
ζ
−√ π
mp = e 1−ζ 2 (19)
Como mp deve ser menor do que 0,05 e ζ só existe para valores positivos,
então ζ > 0, 69.
Essas condições estabelecem o seguinte lugar geométrico:

A. σ < −8

B. −0, 80931 < β < 0, 80931

Da equação 15 tem-se que os polos do sistema em malha aberta são s = 0


e s = −32, 9. Uma vez que o ganho artificial de 40 V/V é considerado
neste trabalho parte integrante do sistema, os polos de malha fechada com
ganho unitário são s = −16, 45 ± j79, 82. Os polos em malha fechada com
ganho infinito, encontram-se em s = −16, 45 ± j∞. A figura 12 apresenta o
lugar das raı́zes do sistema e o lugar geométrico imposto pelas condições de
operação.

150

100

50

-50

-100 Lugar Geométrico


Lugar das Raı́zes
-150
-35 -30 -25 -20 -15 -10 -5 0 5

Figura 12: Lugar das raı́zes do sistema e lugar geométrico imposto pelas
condições de operação

Uma vez que não há intercessão entre o lugar das raı́zes do sistema e
o lugar geométrico imposto pelas condições de operação, o sistema servo
(com ganho artificial adicionado) não pode ser satisfatoriamente controlado
por um controlador puramente proporcional. Faz-se necessário o uso de um
compensador para a conformação da resposta do sistema.

13
5 Do Compensador
O compensador é um sistema Gc (s) adicionado à malha de controle de
um sistema G(s) de maneira a reposicionar os polos e zeros deste sistema
no plano complexo. Neste trabalho escolheu-se usar um compensador ligado
em série com o sistema servo no interior da malha de controle. A figura 13
apresenta uma representação da malha de controle obtida.

Figura 13: Compensador Série


Fonte: Ogata (2011).

Afim de que o sistema opere segundo os parâmetros apontados na seção


4, faz-se necessário que o sistema compensado possua polos posicionados no
interior do lugar geométrico imposto pelas condições de operação desejadas.
Para não desperdiçar recursos, optou-se por posicionar esses polos na borda
do lugar geométrico, nos pontos mı́nimos capazes de proporcionar a resposta
desejada.
Os polos podem ser obtidos a partir das grandezas de frequência de os-
cilação não amortecida desejada e fator de amortecimento desejado, essas
últimas oriundas da aplicação dos valores de tempo de acomodação desejado
e valor máximo de sobressinal desejado nas equações 18 e 19:
A. ζ = 0, 69
B. ωn = 11, 594
Ao se aplicar esses valores na equação 12 obtém-se os polos s = −8 ±
j8, 39.
Neste trabalho lançou-se mão de um compensador de avanço de fase de
s−zc
primeira ordem cuja função de transferência é dada por Gc (s) = Kc s−p c
.
Um dos polos do sistema está localizado na origem. Embora esse polo es-
teja fora do lugar geométrico estabelecido pelas condições de funcionamento
desejadas, ele confere ao sistema a interessante caracterı́stica do efeito inte-
gral. Esse efeito, como já demonstrado, anula o erro estacionário em resposta
a um sinal degrau. Decidiu-se, por isso, mantê-lo em sua posição. O outro
polo, porém, localizado sobre o eixo real em -32m9, também está posicio-
nado fora do lugar geométrico e afeta negativamente a operação do servo.

14
Por essa razão, escolheu-se posicionar o zero do compensador sobre o eixo
real em -32,9 de maneira a neutralizar o polo original.
Para que os polos desejados sejam compatı́veis com o sistema controlado
é necessário que as condições de ângulo e magnitude sejam atendidas. No
ponto s = −8 + j8, 39, 6 G(s) = 207, 75o . O sistema carece, então de ser
adiantado de 27,75o , isto é:

hGc (s)is=−8+j8,39 = −27, 75o (20)


 
s + 32, 9
= −27, 75o
s − pc s=−8+j8,39
 
−8 + j8.39 + 32, 9
= −27, 75o
−8 + j8, 39 − pc
 
o −1 8, 39 − imag(pc )
18, 621 − tan = −27, 75o
−8 − real(pc )
8, 39 − imag(pc )
= tan(46, 371)
−8 − real(pc )
8, 39 − imag(pc )
= 1, 049
−8 − real(pc )
Optou-se, por comodidade, posicionar o polo do compensador sobre o
eixo real (i.e. imag(pc ) = 0). Assim, pc = 16.
Por fim, resta determinar o valor do ganho Kc que proporcione o cumpri-
mento da condição de magnitude, isto é:

s + 32, 9 6641, 2
Kc =1 (21)
s + 16 s(s + 32, 9) s=−8+j8,39


Kc 6641, 2
(−8 + j8, 39)(8 + j8, 39) = 1



−Kc 6641, 2
=1 (22)
134, 39
Kc = 0, 02
Finalmente, a equação apresenta a função de transferência do compensa-
dor.
s + 32, 9
Gc (s) = 0, 02 (23)
s + 16
A figura 14 apresenta os resultados da simulação do sistema com o com-
pensador série.

15
4
Sinal de Ajuste
Modelo
Limite de 5%
3 Tempo de Acomodação
Posição (V)

-1
0 0.5 1 1.5 2 2.5 3 3.5 4
Tempo (s)

Figura 14: Simulação do sistema com compensador

6 Resultados
Com o objetivo de validar o projeto, realizou-se um novo ensaio no qual
o compensador série projetado foi testado junto ao sistema servo.
O circuito compensador empregado foi o circuito eletrônico apresentado
na figura 15.

Figura 15: Compensador lead eletrônico

A equação 24 descreve função de função de transferência deste circuito.


R2 · R4 R1 · C1 · s + 1
Gc (s) = · (24)
R1 · R3 R2 · C2 · s + 1

16
É possı́vel observar que:
−1
C1 · R1 = (25)
zerocompensador
−1
C2 · R2 = (26)
polocompensador
R4 zerocompensador
= · Kc (27)
R3 polocompensador
Foram escolhidos capacitores C1 = C2 = 1 µF e resistor R3 = 10 kΩ.
Aplicando esses valores às equações 25, 26 e 27 obtém-se os valores:

Componente Valor
C1 1 µF
C2 1 µF
R1 30 kΩ
R2 62 kΩ
R3 10 kΩ
R4 (390 + 20) Ω

O resultado obtido no experimento é apresentado na figura 16.

4
Sinal de Ajuste
Modelo
Limite de 5%
3 Tempo de Acomodação
Posição (V)

-1
0 0.5 1 1.5 2 2.5 3 3.5 4
Tempo (s)

Figura 16: Ensaio do sistema com compensador

17
Na figura 16 se verifica que a resposta do sistema real não é totalmente
igual à resposta prevista. O sistema não apresenta nenhum sobressinal e
possui erro estacionário. Essa discrepância de certo é resultado da ação da
zona morta do motor elétrico, efeito que inviabiliza a operação do motor com
baixos sinais de controle como aqueles que são gerados quando a variável de
processo se aproxima do sinal de ajuste. Entretanto, como as condições
de tempo de acomodação e sobressinal máximo foram cumpridas e o erro
estático é mı́nimo, o circuito projetado se mostrou eficaz, comprovando a
metodologia adotada.

Apêndice
A Script tempoParaFT.m
## -*- texinfo -*-
## @deftypefn {Function File} {@var{[G Gmf]} =} tempoParaFT (@var{t},
@var{d}, @var{k}, @var{r2})
##
## Retorna as funç~
oes de transfer^
encia de malha aberta (G) e de malha
fechada (Gmf) de um sistema a partir de sua resposta temporal (t,y) a
um degrau de amplitude d.
##
## As funç~
oes s~
ao aproximadas de forma que o modelo obtido e a resposta
possuam entre si um coeficiente de determinaç~ao maior do que r2.
##
## Autores: Daniel Campos Pompermayer <github.com/DanielPompermayer> e
José Carlos Soares de Campos Júnior
##
## Instituiç~
ao: Instituto Federal do Espı́rito Santo, Ifes - Coordenadoria
de Engenharia Elétrica <http://eletrica.vi.ifes.edu.br/>
##
## @seealso{R2}
## @end deftypefn

function [G Gmf] = tempoParaFT(t,y,d,K,r2)

%=================================================================================
% Pacotes necessários para utilizaç~
ao da funç~
ao
%=================================================================================
pkg load optim
pkg load control

18
%=================================================================================
% Molde da funç~
ao de regress~
ao
%=================================================================================
molde=@(t,j)(j(1)*t-(j(1)/j(2))*(1-exp(-j(2)*t)));

%=================================================================================
% Inicializaç~
ao de Variáveis de controle
%=================================================================================

% Grau do polin^
omio inicial
j0=[1;1];

%=================================================================================
% Malha "faça até" para garantir obtenç~
ao do R2 desejado
%=================================================================================

% Enquanto R2 for menor do que o desejado


do
[modelo j]=leasqr(t,y,j0,molde);

%Atualizar semente
j0=j;
until (R2(modelo,y)>r2)

den = [1 j(2) 0];


num = [zeros(1,length(den)-1) j(1)*j(2)/d];
G = tf(num,den);
Gmf = tf(K*num,den+K*num);
end

B Script R2.m
## -*- texinfo -*-
## @deftypefn {Function File} {@var{r2} =} R2 (@var{modelo}, @var{y})
##
## Retorna o coeficiente de determinaç~
ao entre um modelo e um vetor y.
##
## Autores: Daniel Campos Pompermayer <github.com/DanielPompermayer> e
José Carlos Soares de Campos Júnior
##
## Instituiç~
ao: Instituto Federal do Espı́rito Santo, Ifes - Coordenadoria
de Engenharia Elétrica <http://eletrica.vi.ifes.edu.br/>
##
## @end deftypefn

function r2=R2(modelo,y)

19
sqres = sum((modelo-y).^2);
sqtot = sum(((y-mean(y))).^2);
r2 = 1 - (sqres/sqtot);

endfunction

Referências
Evans, W. R. (1950). Control system by root locus method. Transactions of
AIEE, 69:66–69.

Ogata, K. (2011). Modern Control Engineering. Pearson.

20

Você também pode gostar