Professional Documents
Culture Documents
Divinopolis
2015
Orientador: Valter J
unior de Souza Leite
Divinopolis
2015
Resumo
O Presente relat
orio visa apresentar as atividades realizadas durante desenvolvimento do trabalho final da disciplina de Controle Digital e Laboratorio de Controle
Digital, o qual consiste no controle de altura de uma plataforma atuada por cabos.
Desenvolveu-se uma plataforma na qual um motor CC ira enrolar ou soltar uma
corda de forma a alterar a altura de uma plataforma suspensa. O sensor utilizado
para aferic
ao da altura e um sensor ultrassom modelo HC-SR04. Para modelagem
do processo utilizou-se tecnica de caixa cinza. Validou-se o sistema com excitacao
do tipo ruido branco, de forma a garantir fidelidade do modelo com o sistema real.
Para controle desenvolveu-se controlador PID, atraves de duas tecnicas, estes foram
implementados na placa Arduino atraves de um algoritimo para o PID.
Palavras-chave: Controle de altura. Plataforma atuada por cabos. Controle Digital.
iii
Sumario
Lista de Figuras
vi
1 Introdu
c
ao
1.1 Objetivos do Trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Aplicac
oes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1
1
2 Revis
ao Bibliografica
2.1 Modelagem de Sistemas . . . . . . . . . . . .
2.2 Linearizac
ao de Sistemas . . . . . . . . . . . .
2.3 Avaliac
ao de estabilidade . . . . . . . . . . .
2.4 Avaliac
ao de controlabilidade do sistema . . .
2.5 Avaliac
ao de observabilidade do sistema . . .
2.6 Transformada Z . . . . . . . . . . . . . . . . .
2.7 Teorema da amostragem de Nyquist-Shannon
2.8 Controlador PID . . . . . . . . . . . . . . . .
2.8.1 Ac
ao Proporcional . . . . . . . . . . .
2.8.2 Ac
ao Integral . . . . . . . . . . . . . .
2.8.3 Ac
ao Derivativa . . . . . . . . . . . .
2.9 PID Discreto . . . . . . . . . . . . . . . . . .
2.9.1 Aproximac
ao Foward Difference . . .
2.9.2 Aproximac
ao Backward Difference . .
2.9.3 Aproximac
ao Bilinear de Tustin . . .
2.10 Sintese de controlador por curva de reacao . .
2.11 Filtro Digital . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2
2
3
4
4
4
5
5
6
6
7
7
7
8
8
9
10
10
3 Desenvolvimento
3.1 Materiais Utilizados . . . . . . . . . . . . . .
3.2 Modelagem do sistema . . . . . . . . . . . . .
3.2.1 Modelagem do sistema mecanico . . .
3.2.2 Sistema eletrico . . . . . . . . . . . . .
3.2.3 Equac
ao Diferencial do Sistema . . . .
3.3 Validac
ao do Modelo . . . . . . . . . . . . . .
3.4 Linearizac
ao do Modelo . . . . . . . . . . . .
3.5 Escolha do perodo de amostragem . . . . . .
3.6 Discretizac
ao do sistema . . . . . . . . . . . .
3.6.1 Avaliac
ao do sistema em malha aberta
3.7 Controladores . . . . . . . . . . . . . . . . . .
3.7.1 Discretizac
ao de controlador PID . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
11
11
12
12
13
14
15
17
17
18
18
20
20
iv
Sum
ario
3.8
20
21
4 Resultados
23
5 Conclus
oes
25
Refer
encias
26
A C
odigos
27
Lista de Figuras
2.1
Efeito do Aliasing
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
de amplitude 170 .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
12
13
15
16
16
16
19
19
20
4.1
4.2
Controlador no sisotool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Controlador discretizadol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
24
vi
Captulo
Introducao
O presente trabalho visa desenvolver e controlar uma plataforma atuada por cabo. Nesta
plataforma um motor CC ir
a enrolar ou soltar uma corda de forma a alterar a altura de uma
plataforma suspensa. O sensor utilizado para afericao da altura e um sensor ultrassom modelo
HC-SR04. Para controle ser
a desenvolvido um controlador PID digital implementado na placa
arduino UNO, que garante erro de regime 0, e baixo overshoot.
1.1
Objetivos do Trabalho
Neste trabalho objetivou-se de maneira geral o controle de altura, mensurado por ultrassom,
de uma plataforma icada por cabos.
Levantamento de um modelo matematico obtido atraves de tecnica de caixa cinza.
Validac
ao do modelo obtido
Escolha do periodo de amostragem do sistema
Discretizac
ao do PID obtido anteriormente
Desenvolvimento de um controlador do tipo PID atraves do sisotool.
Desenvolvimento de um c
odigo para PID
1.2
Aplica
c
oes
O projeto prop
oe o controle de altura de uma plataforma icada por cabos atraves de um
sensor ultrassom. Sua finalidade e manter uma distancia pre determinada do solo a qualquer
instante. Este sistema e uma simplificacao de 1 DOF do sistema de camera guiada por cabos
utilizado por redes televisivas para filmagens de jogos esportivos, conhecido como sky cam. O
estudo de um modelo simplificado e um primeiro passo para desenvolvimento de um sistema
completo de controle para uma c
amera.
Captulo
Revisao Bibliografica
O capitulo introduz os metodos de modelagem de sistemas por caixa branca, preta e cinza,
demonstrado as vantagens e desvantagens de cada metodo. A seguir e feita uma introduc
ao
sobre controladores PID discretos e por fim discute-se o controle por realimentacao de estados.
2.1
Modelagem de Sistemas
A modelagem matem
atica e a
area do conhecimento que estuda maneiras de desenvolver e
implementar modelos de sistemas reais. Modelos que se aproximem da realidade e sejam de
facil manipulac
ao podem fazer a diferenca entre um projeto ser bem sucedido ou apenas uma
ferramenta sem uso pr
atico.
A precis
ao do modelo obtido tambem reflete diretamente no desempenho da ferramenta a ser
implementada, possibilitando ao sistema trabalhar mais proximo do seu ponto de rendimento
otimo e tornando-o mais robusto.
Uma das maneiras de modelar o sistema e conhecido como modelagem caixa preta, uma
caracterstica deste tipo de tecnica e que pouco ou nenhum conhecimento previo do sistema e
necessario, este metodo e conhecido como identificacao de sistemas.(AGUIRRE, 2007)
Uma outra forma de realizar a modelagem e a chamada modelagem caixa branca, no qual e
necessario um conhecimento profundo do sistema a ser modelado e das relacoes matematicas que
descrevem os fen
omenos envolvidos. Na identificacao caixa branca, todos os termos da estrutura,
e seus par
ametros, possuem significado fsico.
Como desvantagens da identificacao caixa-preta pode-se citar, em geral, o fato de a estrutura
do modelo n
ao possuir significado fsico, a dificuldade para sua selecao e, em muitos casos, o
n
umero excessivo de par
ametros. Como vantagens, em geral, sao enumeradas a relativa facilidade
de obtenc
ao e a possibilidade de se escolher estruturas mais adequadas para o projeto de sistemas
AGUIRRE, 2004)
de controle.(CORREA;
Como desvantagem da modelagem caixa-branca, destaca-se a dificuldade de obtencao do
modelo. Em geral, as equac
oes fsicas envolvidas em um processo, assim como seus parametros,
nao sao totalmente conhecidas. Muitas vezes, as relacoes sao por demais complexas e nao podem
ser determinadas. Como principal vantagem, destaca-se o significado fsico do modelo obtido.
2
Modelagem por caixa branca e por caixa preta podem ser interpretadas como os dois extremos
de tecnicas de modelagem. A rigor, qualquer procedimento que nao esteja em nenhum desses
extremos pode ser denominada de identificacao caixa-cinza. Esta area de conhecimento busca
combinar as vantagens dos procedimentos de identificacao caixa-preta e caixa-branca. Nesse
caso, tanto dados de entrada e sada obtidos no sistema, quanto informacao auxiliar sao usados
na identificac
ao. A identificac
ao caixa-cinza e uma area bastante ampla e por se tratar de um
assunto relativamente novo, muitos problemas estao praticamente em aberto. (AGUIRRE, 2007)
De posse dos modelos, e comum uma etapa de validacao, onde os modelos encontrados s
ao
submetidos a diversas formas de avaliacao a fim de ser determinar a adequacao do mesmo. H
a
diversas formas de serem feitas estas analises, sendo a mais comum a exposicao dos modelos a
uma nova realidade experimental. (ORENSTEIN, 2013)
As perturbac
oes aplicadas no sistema podem ter diversas formas, dependendo da finalidade
do modelo, da regi
ao de frequencia que se deseja mapear, limites de operacao das entradas ou
alguma outra particularidade, que delimitam as condicoes de contorno do problema. Embora
existam infinitas formas de perturbar um sistema, a forma mais classica e a excitacao por meio
de degrau, ou uma onda quadrada que essencialmente e a aplicacao de diversos degraus de forma
sucessiva. Outra forma menos usual de excitacao e o Sinal Binario Pseudo Aleatorio (PRBS).
O PRBS e um sinal peri
odico que alterna entre dois nveis pre-fixados de forma determinstica, com intuito de simular as caractersticas na frequencia de um rudo branco. Duas
caractersticas interessantes deste sinal para o uso em identificacao sao o fato que a sua media
tende assintoticamente a zero e a sua covariancia se aproxima ao rudo branco, na medida em
que a sua durac
ao tende ao infinito. Estas caractersticas garantem uma distribuicao proxima `
a
uniforme para o espectro de potencia.
2.2
Lineariza
c
ao de Sistemas
A equacao encontrada atraves desta expansao e uma aproximacao linear precisa, uma vez que
a hipotese de pequenos sinais e aplicavel ao problema. Com a linearizacao da funcao pode-se
entao aplicar diversa tecnicas para analise e controle do sistema.
2.3
Avalia
c
ao de estabilidade
2.4
Avalia
c
ao de controlabilidade do sistema
Um sistema descrito pelas matrizes (A,B) pode ser dito controlavel se existir um sinal de
controle u(t) sem restric
oes que possa transferir qualquer estado inicial x(0) para qualquer outra
possvel determinar se o sistema e controlavel avaliando-se a
localizacao desejada para x(t). E
condicao algebrica:
h
posto B AB A2 B . . . An1 B = n
(2.1)
Pc = B AB A2 B . . . An1 B
(2.2)
2.5
Avalia
c
ao de observabilidade do sistema
C
CA
Q=
...
CAn1
4
(2.3)
2.6. Transformada Z
2.6
Transformada Z
x(k)z k
(2.4)
k=
eT s ,
k= |x(k)z
k |
< . E z e equivalente
(2.5)
Da mesma maneira que pode-se transformar um sinal no tempo para frequencia atraves da
transformada Z, pode-se tambem passar o sinal da frequencia para o domnio do tempo atraves
da transformada Z inversa. Para a transformada X(z) a sua inversa e:
1
x(n) =
2j
x(k)z k1 dz
(2.6)
2.7
1
2f0
(2.7)
O teorema coloca que amostrando o sinal com uma frequencia pelo menos duas vezes maior
que a maior das componentes em frequencia do sinal, e possvel recuperar toda a informac
ao a
partir das amostras. Esta frequencia e conhecida como frequencia de Nyquist.
Devido ao encobrimento do espectro do sinal original, aparece em sua replica um efeito de
distorcao conhecido como Aliasing, ou seja, ocorre o falseamento do sinal, que impede a correta
recuperac
ao do sinal original. O efeito do Aliasing pode ser visto abaixo:
2.8
Controlador PID
Segundo
ASTROM;
HAGGLUND
(2005), o controlador PID pode ser descrito pela Equac
ao
2.8.
Z t
u(t) = Kp e(t) + Ki
e(t)dt + Kd
0
d
e(t)
dt
(2.8)
2.8.1
Ac
ao Proporcional
(2.9)
2.8.2
Ac
ao Integral
A acao integral em um controlador gera uma sada proporcional `a integral do err, ou seja:
Z t
e(t)dt
.u(t) = Ki
(2.10)
Rt
0
2.8.3
Ac
ao Derivativa
A acao derivativa e baseada em variacoes do erro. Uma acao ideal de controle derivativo
pode ser expressa pela Equac
ao 2.11.
u(t) = Kd
Em que Kd e o ganho derivativo e
de(t)
dt
(2.11)
de(t)
representa a variacao do erro num dado intervalo
dt
de tempo.
2.9
PID Discreto
Para implementac
ao de um PID digital, pode-se realizar a transformada z da Equacao ??,
dada pela Equac
ao:
Ki
+ Kd (1 z 1 ) E(z)
1 z 1
U (z) = Kp +
(2.12)
Rearranjando-se a Equac
ao 2.12 e obtem-se
U (z) =
E(z)
(2.13)
Definindo:
Ki = Kp + Ki + Kd
K2 = Kp 2Kd
(2.14)
K3 = Kd
Assim, a Equac
ao 2.12 pode ser reescrita como observa-se na Equacao 2.15.
(2.15)
(2.16)
Dependendo da aproximac
ao utilizada para a integral e a derivada, Ci (z) e Cd (z) podem
assumir v
arias formas. Desse modo, a implementacao de um controlador PID digital pode ser
obtida a partir de aproximac
oes discretas. (DORF; BISHOP, 2011)
Essas aproximac
oes s
ao chamadas de: forward differences, backward differences e bilinear de
Tustin.
2.9.1
Aproximac
ao Foward Difference
Esta aproximac
ao tem relac
ao entre o dominio s e o dominio z e dada por:
s=
z1
T
(2.17)
T
1
T
= Kp
= Kp
z1
Ti (z 1)
i (z 1)
com
i =
Ti
T
(2.18)
d =
Td
T
(2.19)
E para calculo da ac
ao derivativa:
Cd (z) = Kd
z1
z1
= Kp Td
= Kp d (z 1) com
T
T
1
+ Kp d (z 1)
i (z 1)
(2.20)
C(z) = Kp d
1
i d i + 1
z+
d
d i
z1
(2.21)
A func
ao de transferencia possui dois zeros reais ou complexos, um polo em z = 1 . Essa
aproximac
ao possui uma implementacao problematica, uma vez que dela deriva uma func
ao
impropria. Desse modo, opta-se pela utilizacao das outras aproximacoes que nao apresentam tal
problema.
2.9.2
Aproximac
ao Backward Difference
A transformac
ao Backward e uma das maneiras de mapear o eixo imaginario no circulo
unitario. Porem, ao realizar este tipo de aproximacao, nem toda a regiao de estabilidade do
plano z e utilizada, e portanto, para este metodo a regiao de estabilidade e menor que o circulo
unitario.
Nesta aproximac
ao a relac
ao entre o dominio s e o dominio z e dada por:
s=
z1
Ts
(2.22)
Realizando-se a aproximac
ao Backward Difference num PID tem-se que os coeficientes Ci (z)
e Cd (z) s
ao:
Ci (z) = Ki
z
Tz
= Kp
=
z1
i (z 1)
(2.23)
z1
z+1
= Kp d
Tz
z
(2.24)
Cd (z) = Kd
Tem-se ent
ao que a func
ao do PID discreto utilizando a aproximacao Backward sera:
z2
1
C(z) = Kp (1 + + d )
i
1+2d
z
1+ 1i +d
d
1+ 1i +d
(2.25)
z(z 1)
A func
ao de transferencia possui dois zeros reais ou complexos, um polo em z = 1 e um polo
em z = 0
2.9.3
Aproximac
ao Bilinear de Tustin
2 z1
T z+1
(2.26)
Realizando-se a aproximac
ao por Tustin num PID tem-se que os coeficientes Ci (z) e Cd (z)
sao:
Ci (z) = Ki
T z+1
1
z
T z+1
= Kp
= Kp
2 z1
2Ti z 1
2i i (z 1)
com
i =
Ti
T
(2.27)
E para c
alculo da ac
ao derivativa:
Cd (z) = Kd
2 z1
2 z1
z1
= Kp Td
= Kp d 2
T z+1
T z+1
z+1
com
d =
Td
T
(2.28)
1 z+1
z1
+ Kp d 2
2i z 1
z+1
(2.29)
C(z) = Kp 1 +
1
+ 2d
2i
1
i 4d
z
+ 21i + 2d
1
2i
+ 2d 1
1+
(z + 1)(z 1)
1
2i
+ 2d
(2.30)
A func
ao de transferencia possui dois zeros reais ou complexos, um polo em z = 1 e um polo
em z = 1.
2.10
intercepta o eixo do tempo. E importante ressalta que a variavel utilizada para o metodo e S ,
que denota a inclinac
ao normalizada, isto e, S =
S
p ,
2.11
Kp
1
S
0,9
S
1,2
S
3,33S
3,33
1
S
Filtro Digital
Os sistemas pr
aticos est
ao sujeitos a rudos e perturbacoes aleatorias que podem dificultar
os procedimentos de an
alise. . Para contornar estes problemas tem-se recorrido a utilizac
ao
de filtros, a fim de se capturar somente os sinais com as dinamicas de interesse presentes no
sistema. Filtrar um sinal e deixar passar pelo sistema a informacao de interesse e bloquear a
informacao indesejada. Filtros podem ser aplicados nao somente para diminuir a influencia do
rudo do processo, mas tambem para ?suavizar? o resultado de nao homogeneidade de misturas.
Os filtros digitais garantem aspectos interessantes: repetibilidade, pois, diferentemente dos
filtros anal
ogicos, independem de tolerancias e sao invariantes no tempo (nao ha degradac
ao de
componentes eletr
onicos como capacitores e indutores); alterabilidade e modularidade.
Um dos tipos mais comuns de filtro digital e o FIR (Finite Impulse Response), ou filtro de
resposta ao impulso finita, caracterizado por uma resposta ao impulso que se torna nula ap
os
um tempo finito. Estes filtros apresentam funcoes de transferencia:
Y (z)
=
X(z)
PM
k=0 ak z
zM
(M k)
(2.31)
10
Captulo
Desenvolvimento
No presente capitulo ser
ao relatados os materiais e metodos utilizados para desenvolvimento
do sistema de controle. Inicialmente e detalhado o processo de modelagem em caixa branca, a
seguir e demonstra-se o processo de obtencao dos coeficientes de ganho para um controlador PID
digital e dos ganhos para um controlador por realimentacao de estados. Por fim apresenta-se
o desenvolvimento de cogido para implementacao do PID e do controle por realimentac
ao de
estados na placa Arduino.
3.1
Materiais Utilizados
c
Software Matlab 2014b
c
Ferramenta Simulink
Arduino UNO R3
Circuito integrado L298
Motor 12V - 80 rpm
Estrutura met
alica com polias
Balanca digital de precis
ao
Paqumetro
A estrutura met
alica foi desenvolvida com base de comprimento de 700mm, altura das barras
verticais de 450mm, espacamento entre as barras verticais de 450mm, espessura das barras de
30mm. Alem da confecc
ao em aco, pintou-se a estrutura com tinta preta de forma a evitar a
oxidacao e assim melhorar a durabilidade da planta a longo prazo. Confeccionou-se um mancal,
tres polias e tres cantoneiras em alumnio, para fixacao do motor e passagem dos cabos utilizados
na suspens
ao da plataforma.
O elemento atuador da planta e um motor CC com reducao mecanica interna que leva
a rotacao de sada do motor para 80RP M com torque maximo de 3Kg/cm. Sua tensao de
11
alimentac
ao e de 12V , sendo sua corrente sem carga e de 100mA e a corrente maxima de
500mA. O driver de controle utilizado para acionamento e inversao do sentido de rotacao foi
um modulo que utiliza o CI de ponte H L298.
Para a aquisic
ao da dist
ancia da plataforma ao solo utilizou-se um sensor ultrassom modelo
HC- SR04, que mede uma faixa de distancia de 20 a 4000mm, com resolucao de 3mm. Este sensor
baseia-se no princpio de propagac
ao das ondas mecanicas, emitindo uma onda ultrassonica em
uma direc
ao, que retorna ao encontrar algum obstaculo. Como a amostragem deste sensor ocorre
antes da realizac
ao da medic
ao, este sensor e praticamente imune a efeitos de aliasing.
Nesta plataforma o motor CC ira enrolar ou soltar o cabo de forma a alterar a altura da
plataforma suspensa. A seguir ser
a detalhado a modelagem deste processo.
3.2
Modelagem do sistema
Inicialmente utilizou-se tecnica de caixa branca para modelagem do sistema. No equacionamento do sistema eletrico os par
ametros escolhidos se baseiam na estrutura do funcionamento de
um motor CC, o mesmo sendo controlado pela corrente de armadura. Para modelagem do sistema mec
anico utilizou-se de equac
oes da mecanica newtoniana. Por fim uniu-se os dois sistemas
para modelagem final da planta.
3.2.1
O Sistema mec
anico do projeto foi modelado utilizando as leis de Newton-Euler, para tanto
considerou-se o sistema visto na figura abaixo:
12
Assim tem-se que o torque de carga aplicado pelo sistema mecanico no motor e:
Tc =
mp g sen()
Rm
2
(3.1)
a2
a
+ (H h)2
(3.2)
(L Rm )2 a2
(3.3)
3.2.2
a
mp g
q
Rm
p
2
a2 + (H H (L Rm )2 a2 )2
(3.4)
Sistema el
etrico
Para o controle do motor decidiu-se pelo acionamento pela corrente de armadura. Por
meio de uma tens
ao Va e gerada entao uma corrente que percorre a bobina do motor, como
resposta a excitac
ao eletrica a esta bobina ocorre a geracao de torque exercido pelo eixo, que
sera respons
avel pela din
amica do processo. O esquema eletrico de um motor CC pode ser visto
abaixo:
Tm = Ka
Va
Ra
(3.5)
Em que:
Ka e uma constante, que depende de caractersticas construtivas do motor
Va e a tens
ao de entrada do sistema
Ra e a resistencia de armadura
Tm e o torque fornecido
Para modelagem do motor para a planta de controle de altura inicialmente definiu-se a
resistencia de armadura deste por meio de teste de rotor bloqueador, encontrando-se resistencia
de 15,51. O valor da indut
ancia pode ser desprezado devido a insignificancia de sua grandeza.
A seguir alimentou-se o motor com uma tensao fixa de 8V , mediu-se no ampermetro uma
corrente Ia de 20mA, e com a utilizacao de um tacometro digital TC-5030 para monitoramento
da velocidade de rotac
ao obteve-se medida de 63.2 rpm. Para aumentar a confianca no resultados
posteriores aferiu-se novamente a rotacao do motor para uma excitacao de 11V e com corrente
de 30mA, obtendo-se ent
ao a velocidade angula de 84.5rpm.
Calculou-se ent
ao a constante Ka atraves de:
Ka =
Ea
rad
(3.6)
Sendo que Ea e:
Ea = Va Ra Ia
(3.7)
2 rpm
60
(3.8)
Encontrou-se ent
ao que rad = 6,6183rad/s
Substituindo-se as equac
oes 3.7 e 3.8 em 3.6, encontra-se que Ka = 1,177
3.2.3
Equac
ao Diferencial do Sistema
Com a din
amica do sistema eletrico e do sistema mecanico definidos, pode-se obter a equac
ao
que rege a din
amica da planta como um todo.
O torque aplicado pelo motor ao sistema mecanico e:
Tm =
Ka
(Va Ka )
Ra
(3.9)
Em que Va e a tens
ao aplicada nos terminais do motor, e e a velocidade do motor, dada
em radianos por segundo.
14
(3.10)
O torque total do sistema e utilizado para gerar o movimento efetivo na polia do motor.
Dessa forma tem-se que:
Ttotal
=
J0
(3.11)
(3.12)
3.3
Valida
c
ao do Modelo
Apos desenvolvimento do modelo, utilizou-se a ferramenta simulink em conjunto com a toolbox Arduino IO para realizar a validacao. Para tanto utilizou-se como entrada uma onda
quadrada com frequencia de 0,1Hz e amplitude de 170, equivalente a 8Volts. Este sinal foi
enviado ao modelo e a planta, e os sinais adquiridos plotados em conjunto, como pode ser visto
abaixo na figura 3.4 :
15
3.4
Lineariza
c
ao do Modelo
Apos validac
ao, pode-se utilizar o modelo para desenvolvimento de controladores.
Para tal fim inicialmente encontrou-se os pontos de equilbrio do sistema, que sao os pontos
nos quais o sistema se encontra em estado estacionario. Matematicamente os pontos de equilbrio
sao aqueles em que a derivada dos estados do sistema e igual a zero. Para encontrar estes pontos
utilizou-se o comando trim do software Matlab em conjunto com o modelo da planta desenvolvido
na ferramenta Simulink.
A utilizac
ao do comando trim necessita da insercao de valores das condicoes iniciais dos
estados em radianos, e do valor da sada em milmetros para essa mesma condicao inicial. Para
as condic
oes:
"
9,9
x(0) =
0
"
180
e y(0) =
0
(3.13)
"
h
i
h
i
9,1131
, y = 168,266 e u = 11,734
x=
0
(3.14)
Sendo que o valor encontrado de dx e muito pequeno, e pode ser considerado 0. A seguir
utilizou-se o comando linmod para linearizar o sistema proximos ao ponto de equilbrio encontrado pelo comando trim. Os coeficientes da matriz de estados para o sistema linearizado
sao:
"
0
1
A=
0,0081 0,5768
h
C = 15.2292 0
3.5
"
0
e B=
0,0210
h i
e D= 0
(3.15)
(3.16)
Para escolha de um perodo de amostragem adequado para o sistema, utilizou-se como criterio
a posicao dos polos desejados em malha fechada. Estes polos foram escolhidos atraves de criterios
de desempenho j
a obtidos na materia de teoria de controle, utilizou-se estes pois sabe-se que s
ao
realizaveis. Os criterios foram:
M P O = 15%
Ts = 10 segundos
Sabendo que o tempo de acomodacao de um sistema de segunda ordem e dado por:
Ts =
(3.17)
17
reconstruir o sinal amostrado com precisao, sem a presenca de aliasing, mas tambem deve
ser grande o suficiente para que os polos do sistema no domnio z nao sejam alocados muito
perto de 1, pois isso faz com que a dinamica destes polos se aproximem da de um integrador.
Considerando-se as condic
oes acima uma boa pratica para projeto e:
T
5
10
(3.18)
1
10
3.6
Discretiza
c
ao do sistema
"
0,9998
0,2328
A=
0,001897 0,8655
"
0,0006271
B=
0,004899
h
C = 15,23 0
(3.20)
(3.21)
D=0
3.6.1
(3.19)
(3.22)
Avaliac
ao do sistema em malha aberta
Com o sistema j
a discretizado, realizou-se a analise deste. Inicialmente avaliou-se a estabilidade deste calculando os autovalores da matriz A, obtendo-se:
"
0,9964
eig(A) =
0,8688
(3.23)
Os autovalores da matriz A s
ao os polos do sistema, portanto, como estes sao maiores que
1 e menores do que 1 o sistema e estavel.
Utilizando-se a equac
ao 2.2, pode-se verificar que o sistema tem todos os estados control
aveis,
pois oo determinantes da matriz de controlabilidade tem valore de 5,999 105
Para avaliac
ao da observabilidade substituiu-se as matrizes A e C na equacao 2.3, obtendo-se
assim o valor de 53,9909, o que mostra que todos os estados do sistema sao observaveis.
Avaliando-se o zeros do sistema, que esta em z = 0,9531, pode-se representar o sistema
como func
ao de transferencia na forma:
Gz =
0,00955z + 0,009102
z 2 1,865z + 0,8657
18
(3.24)
O Lugar das razes para Gz pode ser visto abaixo: Esta configuracao tem os seguintes
19
3.7. Controladores
3.7
Controladores
Nesta sec
ao e apresentado o desenvolvimento dos controladores utilizados na planta de controle de altura. Utilizou-se como formas de encontrar um controlador 3 metodos: a discretizac
ao
de um controlador calculado no domnio continuo, a utilizacao da toolbox sisotool e o metodo
polinomial:
Como j
a citado na sec
ao 3.5, definiu-se como criterios de desempenho a serem atendidos:
M P O = 15%
Ts = 10 segundos
3.7.1
Discretizac
ao de controlador PID
3.7.2
3.8
C
odigo PID
Implementou-se um algortimo de PID para controle da planta na linguagem da placa Arduino, este pode ser visto no apendice A.
O funcionamento do Arduino baseia-se em duas funcoes principais do tipo void. Sao elas o
setup() e o loop(). Sendo que sua operacao se inicia realizando os comandos presentes no setup()
e permanece em execuc
ao permanente das acoes presentes no loop().
A inicializac
ao do setup define que o Timer1, nativo do microcontrolador ATMEGA, realizar
a
uma interrupc
ao `
a cada perodo de amostragem do filtro, definido em 100Hz. Estabelece tambem
os pinos necess
arios para operac
ao do sensor ultrassom (13 e 12), a presenca de comunicac
ao
serial com o computado e os pinos de controle do motor via ponte H (10 e 11).
A func
ao loop, de operac
ao continua, fica responsavel por definir os momentos em que a
necessario que o filtro
funcao filtro() ser
a executada e quando a funcao controla() ira operar. E
realize oito amostras do sensor para que a funcao controla opere apenas uma vez. Tal configuracao permite que o sinal enviado para a funcao controla opere com caractersticas mais proximas
do comportamento da planta reduzindo significantemente o rudo proveniente do sensor. A
interrupc
ao age ent
ao incrementando contadores que sao comparados dentro do loop.
A func
ao f iltro() foi implementada com o objetivo de aplicar um filtro digital do tipo FIR
de quinta ordem no sinal proveniente do sensor ultrassom. A primeira operacao que este realiza
e desconsiderar distancias superiores a 450 e inferiores `a 50mm. Tais situacoes sao impossveis
de se obter na planta.
Concluda esta etapa, este apresenta um vetor com a leitura atual e cinco leituras anteriores
realizadas pelo ultrassom. A essas amostras sao aplicados coeficientes obtidos a partir de do
codigo contido no apendice ??, de modo a definir o sinal de distancia filtrado (distf ilt). Os
coeficientes do Filtro foram calculados para uma frequencia de corte de 5Hz e sao:
B0 =0,0264077249232381
B1 =0,140531362762416
B2 =0,333060912314346
B3 =0,333060912314346
B4 =0,140531362762416
B5 =0,0264077249232381
Concluda a realizac
ao de 8 iteracoes da funcao filtro(), a funcao controla() e entao executada
baseada no erro presente entre o set point e o sinal de distancia filtrado. O sinal de controle u
e obtido a partir de:
Kp eatual +
X
Kd
(eatual eanterior ) + Ki Ts
eanteriores
Ts
21
(3.25)
22
Captulo
Resultados
Apos projeto dos controladores avaliou-se na planta a resposta. No presente captulo ser
ao
apresentados as imagens referentes `
a resposta do sistema para os controladores obtidos na sec
ao
anterior, assim como seus ndices de desempenho.
A figura 4.1 apresenta a rejeicao a pertubacao do sistema ao utilizar o controlador obtido
atraves do SISOTOOL.
23
Nota-se que a resposta da planta aparenta nao estar com erro de regime permanente igual a
zero, tal fato se deve a resoluc
ao do sensor, que e de 3 milmetros.
A Figura 4.2 apresenta a resposta do sistema ao utilizar o controlador obtido atraves da
discretizac
ao do controlador continuo obtido por curva de reacao.
24
Captulo
Conclusoes
No presente trabalho objetivou-se modelar o sistema da plataforma atuada por cabos e
projetar um controlador no dominio z para a mesma. Apos desenvolvimento da modelagem por
caixa cinza, o modelo obtido foi validado, e este que mostrou-se coerente com o sistema, com
resposta ao degrau similar ao da planta e resposta a um sinal do tipo ruido branco que remete
a dinamica do sistema.
Atraves da linearizac
ao do modelo, desenvolveu-se dois controladores para o sistema, um
utilizando o toolbox SISOTOOL e outro utilizando a tecnica discretizacao em um PID ja existente. Notou-se que o controlador projetado pelo sisotool apresenta resposta lenta, demorando a
zerar o erro de regime permanente, porem com tempo de subida rapido. controlador discretizado
apresenta resposta mais r
apida , porem com maior overshoot.
Em suma, pode-se desenvolver um modelo que representasse adequadamente o sistema e
projetar um controlador que levasse o sistema a erro de regime nulo. Estes porem nao apresentam
a melhor resposta devido a incerteza gerada pelo sensor, que tem resolucao de 3mm.
25
Referencias
AGUIRRE, L. Introduc
ao `
a identificac
ao de sistemas: tecnicas lineares e nao lineares aplicadas
a sistemas reais. [S.l.: s.n.], 2007.
CORREA,
M. V.; AGUIRRE, L. Identificacao nao-linear caixa-cinza: uma revisao e novos
resultados. SBA: Controle & Automac
ao, [S.l.], v.15, n.2, p.109126, Junho 2004.
DORF, R. C.; BISHOP, R. H. Modern Control Systems. [S.l.]: Pearson Prentice Hall, 2011.
MOUDGALYA, K. M. Digital Control. [S.l.: s.n.], 2007.
ORENSTEIN, L. P. Procedimento para identificac
ao de sistemas din
amicos em ambiente industrial. 2013. Dissertac
ao (Mestrado em Ciencia da Computacao) Universidade Federal do
Rio de Janeiro. Instituito Luiz Coimbra, Rio de Janeiro, RJ.
PAGANOS, D. J. Teoria de Sistemas Amostrados e Controle Digital. Florianopolis, SC, 2010.
ASTROM,
K. J.; HAGGLUND,
T. Advanced PID Control. [S.l.]: ISA, 2005.
VISIOLI, A. Practical PID Control. 2006.ed. [S.l.]: Springer, 2006. (Advances in Industrial
Control).
26
Apendice
Codigos
#include <TimerOne.h>
#define trigger
13
#define echo
12
27
void loop() {
if(contador_tsf){
contador_tsf=0;
filtro();
}
if(contador_ts==ts/ts_f){
contador_ts=0;
controla();
}
}
void interrupcao(){
contador_ts++;
contador_tsf++;
}
float altura(){
digitalWrite(trigger, HIGH);// disparar pulso
delayMicroseconds(10);
digitalWrite(trigger, LOW);
/* Rotina de convers~
ao para altura */
float tempo = pulseIn(echo, HIGH);// medir tempo de ida e volta do pulso ultrass^
onico
return (tempo / 2.94 / 2); // calcular as dist^
ancias em mm
}
void filtro(){
static int i_c=0;
static float dist_vec[6]={0,0,0,0,0,0};
int iter=i_c;
float distancia=altura();
//if(distancia>450) return;
//if(distancia<50) return;
dist_vec[i_c]=distancia;
28
dist_filt=0;
for (int i=0;i<=6;i++){
dist_filt+=b[i]*dist_vec[iter];
iter--;
if (iter<0)iter=5;
}
//Serial.println(dist_filt);
i_c++;
if(i_c>5)i_c=0;
}
void controla()
{
#define kp 9.1
#define kd (0.054)
#define ki (6.64)
#define setpoint 150
static float ie=0,eant=0;
float u=0,e=0;
int y1,y2;
if(dist_filt < 0){
dist_filt= 0;
}
e = (setpoint - dist_filt);
u = kp*e + (kd/ts)*(e-eant) + ki*(ie+e*ts);
if (u>0){
y1=abs(u)+60;
y2=0;
if(y1>255){
digitalWrite(10,HIGH);
digitalWrite(11,LOW);
}
else{
analogWrite(10,y1);
analogWrite(11,y2);
29
}
}
else{
y1=0;
y2=abs(u)+60;
if(y2>255){
digitalWrite(11,HIGH);
digitalWrite(10,LOW);
}
else{
analogWrite(10,y1);
analogWrite(11,y2);
}
}
if ((u>=-255) && (u<=255))
{
ie = ((e*ts) + ie);
}
eant = e;
//Serial.print("Altura: ");
Serial.print(dist_filt);
Serial.print("
");
Serial.print(y1);
Serial.print("
");
Serial.print(y2);
Serial.print("
");
Serial.println(u);
30