UF
A
BC
- EIA
R
- Pro
f.
Ma
gn
o
Me
za
Projeto de Controle Discreto - ESZA024-17
Aula Semana 9: Projeto e simula¸c˜
ao de controladores por realimenta¸c˜
ao
de estados no dom´ınio discreto para o controle de posi¸c˜
ao de um
servomecanismo
Prof. Magno Enrique Mendoza Meza Universidade Federal do ABC
Engenharia de Instrumenta¸c˜ao, Automa¸c˜ao e Rob´otica Programa de P´os-gradua¸c˜ao em Engenharia Mecˆanica
Campus Santo Andr´e, Bloco A, Sala 744-1 E-mail: [email protected]
1
Objetivos
O objetivo desta experiˆencia ´e desenvolver um sistemas de realimenta¸c˜ao com o intuito de controlar a posi¸c˜ao do eixo de rota¸c˜ao da carga de um servomotor SRV02 da Quanser. Os compensadores deveram ser projetados para satisfazer um conjunto de especifica¸c˜oes (Quanser, 2012), bem como ao final da aula todos os compensadores dever˜ao ser simulados e mostrados ao professor. Os controladores dever˜ao ser projetados e simulados no dom´ınio do espa¸co de estados discretos (plano z). Os compensadores a serem projetados e simulados s˜ao:
1. Controlador por realimenta¸c˜ao de estados para entrada de referˆencia; 2. Controlador por realimenta¸c˜ao de estados com controle integral; 3. Controlador por realimenta¸c˜ao de estados deadbeat.
Os seguintes t´opicos ser˜ao abordados neste aula pr´atica:
• Projetar, simular e implementar um controlador por realimenta¸c˜ao de estados para uma entrada de referˆencia que controla a posi¸c˜ao do eixo de carga do servomotor conforme a certos requerimentos no dom´ınio do tempo.
• Projetar, simular e implementar um controlador por realimenta¸c˜ao de estados com controle integral que controla a posi¸c˜ao do eixo de cargo do servomotor conforme a certos requerimentos no dom´ınio do tempo.
• Projetar, simular e implementar um controlador por realimenta¸c˜ao de estados deadbeat que controla a posi¸c˜ao do eixo de cargo do servomotor conforme a certos requerimentos no dom´ınio do tempo. • Simular todos os controladores utilizando o modelo desenvolvido da planta e garantir que as
espe-cifica¸c˜oes desejadas foram satisfeitas sem que o atuador seja saturado.
• Implementar os controladores no dispositivo SRV02 da Quanser e avaliar seu desempenho.
2
Planta
O servomecanismo SRV02 ´e constitu´ıdo por um motor DC encaixotado em uma estrutura de alum´ınio s´olido e equipado com uma caixa de engrenagens planet´arias, i.e., o motor tem a sua pr´opria caixa de
UF
A
BC
- EIA
R
- Pro
f.
Ma
gn
o
Me
za
de potenciˆometro que pode ser utilizado para medir a posi¸c˜ao angular da engrenagem de carga, tamb´em pode vir equipado com um encoder para obter a medida digital da posi¸c˜ao e um tacˆometro para medir a velocidade da engrenagem de carga. A Figura 1 mostra a estrutura do servomecanismo que ser´a utilizada na aula pr´atica.
Figura 1: Servomecanismo SRV02.
O aparato experimental utilizado, o motor e a carga utilizados est˜ao mostrado na Figura 2.
Figura 2: Montagem do experimento.
Modelo do servomecanismo
O modelo matem´atico do SRV02 correspondente ao caso de engrenagens altas e carga em disco ´e como segue,
G(s) = Θl(s) Vm(s)
= K
s(τ s + 1) (1)
no qual θl(t) ´e a sa´ıda da posi¸c˜ao que indica a medida do ˆangulo do eixo da carga e vm(t) ´e a tens˜ao de
entrada no SRV02, K ´e o ganho total de malha aberta e τ ´e a constante de tempo de malha aberta do motor. Os valores de K e τ s˜ao dados na Tabela 1, (Quanser, 2012).
UF
A
BC
- EIA
R
- Pro
f.
Ma
gn
o
Me
za
Tabela 1: Tabela de dados do motor.
Descri¸c˜ao S´ımbolo Valor Unidade
Ganho de estado estacion´ario de malha aberta K 1, 53 rad/(V.s) Constante de tempo de malha aberta τ 0, 0254 s
3
Especifica¸
c˜
oes para o controle de posi¸
c˜
ao do SRV02
As especifica¸c˜oes no dom´ınio do tempo para controlar a posi¸c˜ao do eixo de carga do SRV02 s˜ao:
ess= 0 (2)
tp = 0, 20 [s] (3)
Mp = 5, 0% (4)
Assim, quando se rastreie a referˆencia do eixo da carga, a resposta transit´oria dever´a ter um tempo de pico menor ou igual a 0, 20 segundos, um sobressinal menor ou igual a 5% e uma resposta de estado estacion´ario dever´a ter erro m´ınimo (Quanser, 2012).
4
Espa¸
co de estados
Considere que ´e conhecida a fun¸c˜ao de transferˆencia cont´ınua de um sistema gen´erico como mostrado a seguir
X(s) R(s) =
1
ms2+ bs + k. (5)
Sup˜oe que se escolhe as vari´aveis de estados como segue
x1(t) = x(t) e x2(t) = ˙x(t)
desta escolha de vari´aveis de estado ´e obtido a seguinte representa¸c˜ao no espa¸co de estados
˙x = ˙x1 ˙ x2 = ˙x ¨ x = 0 1 −k m −mb x ˙ x + 01 m r(t) = 0 1 −k m −mb x1 x2 + 01 m r(t) (6) y = 1 0 x ˙ x = 1 0 x1 x2 (7)
Das equa¸c˜oes (6) e (7) ´e poss´ıvel identificar a matriz de estados
A = 0 1 −mk −mb a matriz de entrada B = 01 m a matriz de sa´ıda C = 1 0 e matriz de transmiss˜ao direta ´e considerada nula
UF
A
BC
- EIA
R
- Pro
f.
Ma
gn
o
Me
za
Convers˜ao para o dom´ınio discreto
Existe um comando no MATLAB denominado c2d que converte um sistema cont´ınuo dado (quer em uma fun¸c˜ao de transferˆencia ou na forma de espa¸co de estados) para um sistema discreto utilizando o segurador de ordem zero. O comando b´asico do MATLAB para isto ´e sys_d = c2d(sys,T,’zoh’), no qual T ´e o per´ıodo de amostragem. Por exemplo,
sys = ss(A,B,C,D);
sys_d = c2d(sys,Ts,’zoh’)
% Para se obter as matrizes discretas no espa¸co de estados Ad=sys_d.a
Bd=sys_d.b Cd=sys_d.c Dd=sys_d.d
5
Projeto via aloca¸
c˜
ao de polos
O m´etodo conhecido como a t´ecnica de aloca¸c˜ao de p´olos requer as seguintes considera¸c˜oes: (i) que todas as vari´aveis de estado sejam mensur´aveis e estejam dispon´ıveis para realimenta¸c˜ao, (ii) que o sistema considerado seja de estado completamente control´avel para que os p´olos do sistema em malha fechada possam ser localizados em qualquer posi¸c˜ao desejada por meio de uma realimenta¸c˜ao de estados com uma matriz de ganho de realimenta¸c˜ao apropriada, e (iii) que a t´ecnica comece com a determina¸c˜ao dos p´olos desejados em malha fechada, os quais devem de satisfazer os requerimentos de resposta transit´oria e/ou resposta em frequˆencia como velocidade, coeficiente de amortecimento e largura de banda.
A equa¸c˜ao de estado ´e
x(k + 1) = Adx(k) + Bdu(k) (8)
na qual x(k) ´e o vetor de estado (de dimens˜ao n), u(k) ´e o sinal de controle (escalar), Ad ´e a matriz
n× n, Bd´e a matriz n× 1. Supondo que a magnitude do sinal de controle u(k) ´e ilimitado e se o sinal
de controle for
u(k) =−K x(k)
no qual K ´e a matriz de ganho de realimenta¸c˜ao do estado (uma matriz 1× m), ent˜ao o sistema converte-se em um sistema de controle em malha fechada, como o mostrado na Figura 3 e sua equa¸c˜ao de estado fica da seguinte forma
x(k + 1) = (Ad− BdK)x(k) (9)
Cabe ressaltar que a matriz K ´e escolhida de forma que os autovalores de Ad− BdK sejam os p´olos
desejados em malha fechada p1, p2, . . ., pn. Quaisquer autovalores complexos devem vir como pares
conjugados. + x(k + 1) x(k) u(k) + Bd T Ad −K
Figura 3: Sistema de controle em malha fechada com u(k) = −K x(k).
Discuss˜ao: Estude sobre o controle deadbeat e faz uma discuss˜ao de dito controle em rela¸c˜ao `a possibilidade da implementa¸c˜ao.
UF
A
BC
- EIA
R
- Pro
f.
Ma
gn
o
Me
za
6
Sistema de controle com entrada de referˆ
encia
At´e o momento temos considerado sistemas reguladores, nos quais a entrada de referˆencia ´e fixada por um longo per´ıodo e disturbios externos originam estados n˜ao nulos. A equa¸c˜ao caracter´ıstica para o sistema determina a velocidade pelo qual os estados n˜ao nulos aproximam-se da origem. Aqui considera-se o caso no qual o sistema tem uma entrada de referˆencia como mostrado na Figura 4, na qual a planta ´e descrita pelas seguintes equa¸c˜oes de estado e de sa´ıda,
x(k) + x(k + 1) − + r(k) + Bd T Ad K L u(k)
Figura 4: Sistema de controle com realimenta¸c˜ao de estados.
x(k + 1) = Adx(k) + Bdu(k)
y(k) = C x(k) O sinal de controle u(k) ´e dado por
u(k) =−K x(k) + L r(k) (10) Ao eliminar u(k) da equa¸c˜ao de estado, temos
x(k + 1) = (Ad− BdK) x(k) + BdL r(k)
y(k) = C x(k) A equa¸c˜ao caracter´ıstica para o sistema ´e
|z I − Ad+ BdK| = 0
Se o sistema ´e de estado completamente control´avel, ent˜ao a matriz de ganho de realimenta¸c˜ao K pode ser determinada para fornecer os p´olos desejados em malha fechada.
´
E importante salientar que a realimenta¸c˜ao de estados pode mudar a equa¸c˜ao caracter´ıstica corres-pondente ao sistema, mas ao fazˆe-lo o ganho de estado estacionario do sistema completo ´e modificado. Portanto, ´e necess´ario ter um ganho ajust´avel L no sistema. O ganho L deve ser ajustado de maneira que a resposta ao degrau unit´ario do sistema no estado estacion´ario seja a unidade, ou y(∞) = 1.
A transformada z da sa´ıda ´e dada por
Y (z) = C [z In− (Ad− BdK)]−1BdL R(z)
e o erro de rastreamento do erro de estado estacion´ario a uma entrada degrau unit´aria ´e lim z→1(z− 1) (Y (z) − R(z)) = limz→1 C [z In− (Ad− BdK)]−1BdL− In = C [In− (Ad− BdK)]−1BdL− In
Para um erro de estado estacion´ario nulo se requer a condi¸c˜ao
C [In− (Ad− BdK)]−1BdL = In (11)
Se o sistema ´e quadrado e Ad− BdK ´e est´avel, o ganho fica
UF
A
BC
- EIA
R
- Pro
f.
Ma
gn
o
Me
za
7
Controle integral
A lei de controle (10) ´e equivalente a uma a¸c˜ao de controle feedforward determinada por L que resulta em um erro de estado estacion´ario nulo para uma entrada de referˆencia r(k). Por causa que a a¸c˜ao feedforward n˜ao inclui nenhuma realimenta¸c˜ao esta aproxima¸c˜ao n˜ao ´e robusta a incertezas de modelagem. Assim, erros de modelagem sempre acontecem na pr´atica o que resultar´a em um erro de estado estacion´ario n˜ao nulo. Para eliminar tal erro, introduzimos um controle integral como mostrado na Figura 5, com um novo estado adicionado para cada erro de controle integrado.
x(k + 1) + + − r(k) z(k + 1) z(k) x(k) K Ad C Bd −1 K1 + z−1 − u(k) z−1 y(k)
Figura 5: Sistema de controle com realimenta¸c˜ao de estados e controle integral.
x(k + 1) = Adx(k) + Bdu(k)
z(k + 1) = z(k) + r(k)− y(k) y(k) = C x(k)
u(k) =−K x(k) − K1z(k)
no qual z(k) ´e um vetor coluna, por exemplo l× 1. As equa¸c˜oes no espa¸co de estados em termos do vetor de estado aumentado ˜ x(k) = [x(k) z(k)]0 x(k + 1) z(k + 1) = Ad 0 −C Il x(k) z(k) − B0 (K K1) x(k) z(k) + 0 Il r(k) y(k) = [C 0] x(k) z(k) Daqui temos ˜ x(k + 1) =h ˜A− ˜B ˜Kix(k) +˜ 0 Il r(k) (13) y(k) = [C 0] ˜x(k) na qual ˜ A = Ad 0 −C Il , B =˜ B 0 ˜ K = [K K1]
Os autovalores da matriz de estados de malha fechada ˜A− ˜B ˜K podem ser escolhidos arbitrariamente para calcular a matriz de ganho ˜K.
8
Tarefas para o pr´
e-laborat´
orio e Itens que devem ser registrado no
relat´
orio
Observa¸c˜ao 8.1 Para todas as simula¸c˜oes e implementa¸c˜oes, o sinal de referˆencia deve ser uma entrada quadrada com uma amplitude de π/36 radianos e uma frequˆencia de 0, 4 Hz, tempo de simula¸c˜ao de 10 segundos.
UF
A
BC
- EIA
R
- Pro
f.
Ma
gn
o
Me
za
Observa¸c˜ao 8.2 Simule para uma entrada triangular com uma amplitude de π/8 radianos e uma frequˆ en-cia de 0, 4 Hz, tempo de simula¸c˜ao de 10 segundos.
O projeto de cada controlador deve incluir os seguintes itens: 1. Mostrar as contas necess´arias para o c´alculo dos ganhos.
2. Finalmente projetado o compensador, mostrar a estrutura do compensador.
3. Simular o controle projetado no Simulink da planta. Se a simula¸c˜ao for adequada fa¸ca a implemen-ta¸c˜ao, caso contr´ario projete novamente o compensador. Lembre que a tens˜ao Vm n˜ao deve
ultrapassar os limites de ±10 V.
4. Se o compensador projetado n˜ao satisfez as especifica¸c˜oes de projeto, mostrar o compensador ajus-tado de maneira a satisfazer as especifica¸c˜oes. Justificar as suas escolhas. Se ainda assim as especifica¸c˜oes n˜ao foram satisfeitas, mostrar a sua melhor simula¸c˜ao.
5. Mostrar as simula¸c˜oes do melhor sistema compensado para uma entrada conforme Observa¸c˜ao 8.1. Mostre os valores de Mp, ts e ess. Mostrar os gr´aficos da posi¸c˜ao do eixo de carga e da tens˜ao
aplicada ao SRV02.
Referˆ
encias
Quanser, Rotary Experiment 02: Position Control, Quanser Innovate Educate, SRV02 Position Control using QuaRC, 2012.