Baixe o app para aproveitar ainda mais
Prévia do material em texto
INSTITUTO FEDERAL CATARINENSE – CÂMPUS Luzerna Componente curricular: Controle Discreto Controle da posição do carro Daniela Iagher Dildey Luzerna, 14 de novembro de 2017 O trabalho foi feito considerando as seguintes especificações: Topologia em série; 𝑚𝑠 = 272 𝑘𝑔, 𝑚𝑢 = 48 𝑘𝑔, 𝑘𝑠 = 18500 ே , 𝑐𝑠 = 1100𝑁. ௦ , 𝑘𝑡 = 168000 ே Diminuir o tempo de estabilização em 10% e sobressinal menor que 25%; A Equação (1) define a topologia em série que foi implementada através de blocos no simulink, para ser aproximada por um sistema de segundo grau. 𝑥�̈� = −𝑐𝑠 𝑚𝑠 (𝑥�̇� − 𝐹) − 𝑘𝑠 𝑚𝑠 (𝑥𝑠 − 𝑥𝑢) 𝑥�̈� = 𝑐𝑠 𝑚𝑢 (𝐹 − 𝑥�̇�) + 𝑘𝑠 𝑚𝑢 (𝑥𝑠 − 𝑥𝑢) − 𝑘𝑡 𝑚𝑢 (𝑥𝑢 − 𝑥𝑟) (1) A Equação (2) mostra o sistema com os valores das variáveis 𝑥�̈� = −4,0441(𝑥�̇� − 𝐹) − 68,0147(𝑥𝑠 − 𝑥𝑢) 𝑥�̈� = 22,9166(𝐹 − 𝑥�̇�) + 385,4166(𝑥𝑠 − 𝑥𝑢) − 3500(𝑥𝑢 − 𝑥𝑟) (2) Nas equações, 𝑚𝑠 é a massa após o sistema de suspensão, ou seja, a massa do carro que está sendo suportada por aquela roda, 𝑥𝑠 é o deslocamento da massa 𝑚𝑠, 𝑘𝑠 é a constante da mola, 𝑐𝑠 é a constante de amortecimento do amortecedor hidráulico, 𝑥𝑢 é o deslocamento da massa mu antes da suspensão, ou seja, roda e eixo do carro, 𝑥𝑟 é o deslocamento do pneu devido à perturbações na estrada, F é a força exercida pelo atuador e 𝑘𝑡 é a constante elástica do pneu. Depois de implementado no simulink os blocos para simulação do sistema através das equações 𝑥�̈� e 𝑥�̈�, foi possível obter a resposta do sistema à um degrau, Figura 1. Figura 1 - Sistema real da posição Na Figura 1 pode-se observar um sobressinal de 𝑂𝑆(%) = 42,52% e um tempo de pico de 𝑡𝑟 = 0,4𝑠, através desses dados é possível aproximar esse sistema à um sistema de 2° ordem que pode ser descrito pela Equação 3, após o ajuste do ganho. Gୟ୮ = 4,807 𝑠ଶ + 4,275 + 66,253 (3) Na Figura 2, pode-se observar a comparação do sistema real com a aproximação. Figura 2 - Comparação dos sistemas aproximado e real A planta foi discretizada utilizando um tempo de amostragem (Ts=0,001s) e a planta obtida pode ser observada na Equação 4. G = 2,4 ∗ 10ି𝑧 + 2,4 ∗ 10ି 𝑧ଶ − 1,996 + 0,9957 (4) Para que o sistema tenha um sobressinal menor do que 25% e um tempo de assentamento 10% menor (1,235s), já que o tempo de assentamento em malha aberta era menor que o especificado. O ponto desejado é (0,9978, 0,078311) para que o sistema tenha essas características. É necessário um controlador com integrador, ou seja, com um polo em 1, para que o sistema siga referências Então o controlador resultante pode ser observado na Equação (5). 𝐶 = 338730(𝑧 − 0,7946)(𝑧 − 0,9886)(𝑧 + 0,551) (𝑧 − 1)(𝑧 + 0,9617)(𝑧 + 0,550) (5) Para o projeto do controlador, depois de adicionado o polo em 1 e um zero em 0,7946 faltava ainda uma contribuição de aproximadamente 150º, mas depois de acrescentar mais um controlador de atraso e um de avanço foi necessário o uso do sisotool para fazer os ajustes mais finos. Depois de definidos os parâmetros que eram necessários, foram feitos ajustes acompanhando a resposta ao degrau e tentando manter os polos da malha fechada dentro da região preestabelecida, o ganho também foi alterado de maneira a atingir os pré-requisitos. O lugar das raízes da planta em malha fechada com o controlador pode ser observada na Figura 3. Figura 3 – Lugar das raízes da planta controlada Após o sistema estar controlado pode-se observar uma melhora grande no tempo de assentamento, assim como no sobressinal apresentado. O tempo de assentamento precisou ser bem menor do que o planejado, pois o sobressinal também precisava ser atendido. Na Figura 4 podemos observar o sistema em malha fechada. Figura 4 - Sistema em malha fechada A ação de controle do controlador pode ser observada na Figura 5. Figura 5- Ação de controle A rejeição à perturbação também foi atingida com sucesso e pode ser observada na Figura 6, esse teste foi feito com a referência em zero. Figura 6 - Sistema rejeitando perturbação A ação de controle para rejeitar essa perturbação é na ordem de 10ସ. Não foi possível projetar um controlador com uma ação de controle menor para que atendesse os dois pré- requisitos. A ação de controle pode ser observada na Figura 7. Figura 7 - Ação de controle para rejeitar perturbação Para desenvolver o código é necessário encontrar as equações à diferenças. Y(z) U(z) = 2,4 ∗ 10ି𝑧 + 2,4 ∗ 10ି 𝑧ଶ − 1,996 + 0,9957 Y(z) ∗ (𝑧ଶ − 1,996 + 0,9957) = U(z) ∗ (2,4 ∗ 10ି𝑧 + 2,4 ∗ 10ି) y(𝑘) = +1,996𝑦(𝑘 − 1) − 0,9957𝑦(𝑘 − 2) + 2,4 ∗ 10ିu(k − 1) + 2,4 ∗ 10ି𝑢(𝑘 − 2) (6) U(z) e(z) = 338730 ∗ (𝑧ଷ − 1.233 𝑧ଶ − 0.1961𝑧 + 0.4322) 𝑧ଷ + 0.5117 𝑧ଶ − 0.9828 𝑧 − 0.5289 u(k) = −0,5117u(k − 1) + 0,9828u(k − 2) + 0,5289u(k − 3) + 338730(e(k) − 1,233e(k − 1) − 0,1961e(k − 2) + 0,4322e(k − 3)) (7) O programa em C pode ser visualizado abaixo, primeiro foram definidas as variáveis globais e a partir do recebimento do valor do erro. int u1,u2,u3,u4,e1,e2,e3,e4; //Definição de variáveis globais e1 = 0; // Erros passados e2 = 0; e3 = 0; u1 = 0; //Ações de controle passadas u2 = 0; u3 = 0; float calculo_controle(float e4){ u4 = -0.5117*u3+0.9828*u2+0.5289*u1+338730*(e4-1.233*e3-0.1961*e2 + 0.4322*e1); //Cálculo da ação de controle u1 = u2; u2 = u3; u3 = u4; //Faz com que a ação de controle atual seja //passada à u3 e assim por diante e1 = e2; e2 = e3; e3 = e4; //Atualiza os valores dos erros return u4; //Resulta na ação de controle } Conclui-se que a simulação através do simulink foi satisfatória para a análise e atendimento dos pré-requisitos solicitados pelo professor. Foi possível projetar um controlador com as características necessárias e que atendesse os pré-requisitos de uma forma satisfatória através de um projeto de LGR. A função escrita em linguagem C poderá ser inserida em um algoritmo que recebe o erro do sistema e calcula o controle a ser realizado pelo controlador.
Compartilhar