Fernando Henrique Fernandes
Realize o controle da posição do manipulador robótico abaixo usando o método de Linearização por Realimentação, sabendo que a sua equação de movimento é dada por
Para isso, siga os seguintes passos:
-
Implementar o método de Runge-Kuttta de 4ª ordem para a simular a dinâmica do manipulador.
-
Projetar um controlador pelo método de linearização por realimentação de modo que a garra vá para a posição
$\left(\sqrt{3}/2, 1/2\right)$ . -
Aproveitando esse mesmo controlador faça com que o manipulador oscile de acordo com a função
${\theta}_d = \frac{\pi}{6}\left(1-\text{cos} 2 \pi t \right)$ . -
Ainda aproveitando o mesmo controlador, verifique a influência que o atrito seco na junta de rotação causa no controle do braço. O atrito é modelo pela adição do termo
$0.25 \text{sgn} \theta$ no lado esquerdo da equação de movimento apresentada anteriormente.
Toda a implementação necessária para a simulação e resolução do problema proposto foi feita em Python. Para que o modelo ele represente a imagem mostrada no problema, uma pequena alteração foi realizada, pois a equação diferencial foi encontrada considerando que o
Antes da implementação da solução numérica da EDO, temos que ter todas as variáveis que representam as propriedades físicas do modelo. Esses valores foram oferecidos junto com o problema e estão exibidos na tabela abaixo no sistema internacional (SI).
| Variável | Valor |
|---|---|
| 0.12 kg m² | |
| 1 kg | |
| 1 m | |
| 0.5 m | |
| 9.81 m/s² |
Além disso, também foram fornecidos os valores iniciais da equação diferencial que são
Primeiramente, a equação diferencial ordinária (EDO) de 2ª ordem foi manipulada para que fosse utilizada pelo método. Para tal, é necessário transformá-la em um sistema de EDO de 1ª ordem. Isso é facilmente realizado por manipulação algébrica simples, como mostrado abaixo.
Isolando
Definido
Agora que a equação diferencial já está manipulada de forma apropriada para a solução, podemos calcular o seu resultado. Para verificar se o método está funcionando corretamente, foi simulado e plotado os resultados das soluções das EDO considerando as condições iniciais dadas e
Essa imagem mostra os resultados da simulação do manipulador. Como esperado, o comportamento é idêntico ao de um pêndulo simples, movimento harmônico. Isso fica ainda mais claro nos gráficos da posição e velocidade angular abaixo.
Com esses resultados podemos concluir que o método de Range-Kutta de quarta ordem implementado pela biblioteca está funcionando corretamente.
O controlador utiliza a técnica de linearização por realimentação, para que o erro decaia de forma exponencial. Para tal, a atuação na dinâmica deve ocorrer através da variável
Reorganizado a EDO
Do método de linearização por realimentação, temos
Para esse modelo, ficamos com
Portanto, o torque para realizar o controle é
Assim, só precisamos implementar essa equação no algoritmo de controle para a dada variação no valor de referência
O primeiro teste consistiu em verificar a convergência do manipulador para uma posição inicial desejada fixa que correspondeu a
A simulação mostra que de fato o algoritmo é capaz de realizar o controle do manipulador de forma satisfatória. Isso fica ainda mais claro observando os gráficos da simulação, onde pode ser notado que a posição angular converge da maneira esperada para o valor esperado.
Nessa imagem temos vários gráficos interessantes. O primeiro, em vermelho, mostra que o torque inicia em um valor alto e diminui a medida que o manipulador está chegando na posição desejada e se mantém nesse valor. O segundo podemos notar como o erro da velocidade angular faz com que o erro da posição convirja para zero. Por fim, o terceiro e quarto gráficos mostram a dinâmica das variáveis de estados
Nesse teste se manteve as condições iniciais do anterior, entretanto, foi definido uma restrição física o motor do manipulador. Essa restrição foi feita através da limitação do torque no intervalo
Nesse caso, pode-se notar que a limitação do torque fez com que o controlador fosse incapaz de fazer o manipulador chegar na posição desejada. No caso anterior, o torque máximo aplicado foi de
O gráfico do torque revela a limitação em
Agora para testar se o controlador é capaz de fazer com que o manipulador execute um movimento mais complexo, vamos definir a posição desejada como uma função oscilatória definido pela equação
Da primeira e segunda derivada dessa função são retirados os valores de
Podemos notar que o controlador é capaz de simular a função proposta relativamente rápido. Para agilizar a convergência para a posição desejado poderíamos ajustar o valor de
Aqui podemos notar como o comportamento oscilatório da posição desejada reflete um comportamento oscilatório dos gráficos. No gráfico 3, constata-se que a posição está se aproximando cada vez da função desejada ao ponto que, no tempo 10, as curvas já estão praticamente sobrepostas. Também pode-se notar que no gráfico da velocidade angular ocorre uma certa convergência entre a função desejada e o valor atual nesse intervalo de tempo.
Por fim, iremos adicionar o modelo matemático de atrito seco na equação diferencial da simulação, porém não iremos alterar a equação do controlador. Como explicado em sala de aula, o atrito representa uma incerteza do modelo, de modo que não há garantia se o erro do controlador convergirá para zero. Os testes serão feitos em exemplos que já foram calculados para percebermos as principais diferenças.
Todas as condições do Teste 1 foram aproveitadas, no entanto, agora o modelo possui o componente do atrito. Nesse caso, apenas a simulação está mostrada abaixo.
Pode-se notar que a adição do atrito fez com que o torque calculado pelo controlador fosse insuficiente de ultrapassar a posição de 90º. Assim, fazendo com que o manipulador em equilíbrio na posição inicial, de maneira semelhante ao que aconteceu com o Teste 2, sendo que o torque não está sendo limitado, e sim o controlador que está mandando torque insuficiente.
Para se ver o desempenho do controlador nesse caso, aumentou-se o valor de
Inicialmente, podemos perceber que o manipulador está se aproximando do valor desejado, entretanto, com o passar do tempo podemos notar que o braço estagna à uma certa distância da posição desejada. Como dito anteriormente, isso é um reflexo de uma parte desconhecida do modelo para o controle e que, consequentemente, não está sendo considerada no controlador. Ou seja, uma das principais desvantagens desse método de controle é a inflexibilidade em relação a incerteza do modelo do manipulador. Isso também faz com que seja um ótimo tipo de controlador em modelos que atuam em ambiente de alto grau de precisão e certeza.
No gráfico do torque podemos notar que ele converge para um valor insuficiente. Nos outros gráficos fica nítido como o ângulo não converge para o valor desejado, apensar de se aproximar consideravelmente.
Mantendo todas as considerações do teste 3, com exceção da adição do atrito e definindo
Semelhante ao caso anterior, a posição final não nunca é alcançada no tempo desejado. Entretanto, o movimento descrito pela função é alcançado, mesmo que não seja no tempo desejado.
Nesse caso, vemos que que o erro no final é bem pequeno já que apenas há uma pequena defasagem entre a posição atual e desejada. O gráfico violeta mostra uma geometria estranha causada pela adição do atrito no problema.
O projeto se mostrou de grande importância no aprofundamento do conhecimento ministrados na disciplina. Desde a análise do comportamento das soluções das equações diferenciais do sistema até a influência que perturbações externas causam no tipo de controle estudado. Também pode-se perceber as vantagens e desvantagens desse tipo de controlador, como a necessidade de um bom modelo dinâmico do sistema.
Por fim, o trabalho também ajudou no desenvolvimento de ferramentas computacionais que podem ser facilmente adaptadas para serem utilizadas em outras disciplinas ou problemas semelhantes.













