Trabalho Final Laboratório de Robótica Móvel
Por: Alana Dias Falqueto • 6/8/2021 • Relatório de pesquisa • 1.389 Palavras (6 Páginas) • 140 Visualizações
Universidade Federal de Juiz de Fora
Trabalho Final Laboratório de Robótica Móvel
Alana Falqueto Gabrielly Carvalho Lucas Cantarino Isabella Pires
Professor: Ana Sophia Cavalcanti Alves Vilas Boas
Juiz de Fora 2021
Sumário
- Objetivo 2
- Resultados 2
- Prática 2 2
- Prática 3 2
- Prática 4 3
- Prática 5 3
- Prática 6 4
- Prática 7 5
- Prática 8 7
- Prática 9 8
- Prática 10 10
Objetivo
Este trabalho tem por objetivo apresentar os resultados encontrados nas práticas da disciplina encontrados a partir de códigos em Arduino simulados no robô da Figura abaixo:
[pic 1]
Figura 1: Robô utilizado
Resultados
Prática 2
O objetivo desta prática foi fazer o acionamento nos sentidos horário e anti-horário e parada dos motores através da porta serial, além de verificar o valor mínimo de PWM para o qual os motores são acionados. O valor mínimo de PWM foi encontrado iniciando a variável com o valor 25 e diminuindo uma unidade a cada segundo.Desta forma, para o PWM desejado, foi encontrado o valor 8.
Prática 3
Esta aula teve como objetivo estabelecer uma comunicação entre o Arduino e o MA- TLAB, para direcionamento do robô através do teclado do computador.O caracter digi- tado é lido pelo MATLAB e enviado para o arduino, que aciona os motores através do XBEE. As teclas definidas foram as setas para direcionamento e espaço para a parada
dos motores. O objetivo foi alcançado e foi possível definir a trajetória do robô utilizando MATLAB e Arduino.
Durante o teste para robô se mover para frente, ao usar a mesma velocidade para ambos os motores, o robô se deslocava inclinado para direita, deste modo foi observado que o motor usado para a roda esquerda era mais potente que o motor da direita. Em um caso ideal, ambos os motores se comportariam da mesma forma, com a mesma potência e valores de velocidades iguais.
Identificamos que, ao testar a movimentação só com uso da bateria, no caso da bateria ficar com menos energia, o motor DC menos potente começa a falhar. Nesta ocasião ocorre erro de movimentação do robô ou a roda interrompe o giro, provocando problemas nas contagens de pulsos, acarretando principalmente problemas no cálculo da angulação.
Prática 4
Na aula 4 foi possível fazer o teste dos encoders do robô, medindo-se a velocidade angular dos motores. Os resultados obtidos para as velocidades máximas de cada roda (esquerda e direita) em RPM estão apresentados na figura a seguir:
[pic 2]
Figura 2: Velocidade máxima em RPM
Prática 5
Nesta aula, foram criados dois programas : no MATLAB para gerar um sinal de entrada aleatório para o sistema, que foi enviado para o arduino e no arduino para ler o sinal de entrada enviado pelo matlab, configurar os motores com esse sinal de entrada, realizar a leitura dos encoders e enviar essas leituras para o matlab.
[pic 3]
Figura 3: Tarefa 5 - Leitura encoders x tempo
Prática 6
A aula 6 teve como objetivo a coleta de dados de velocidade dos motores para identi- ficação do sistema, utilizando os códigos das práticas anteriores. Os gráficos que ilustram os resultados para sentido Anti-horário com e sem carga, e horário com e sem carga, respectivamente, estão a seguir:
[pic 4]
Figura 4: Tarefa 6 - Anti-horario com carga
[pic 5]
Figura 5: Tarefa 6 - Anti-horario sem carga
[pic 6]
Figura 6: Tarefa 6 - Horario com carga
[pic 7]
Figura 7: Tarefa 6 - Horario sem carga
Prática 7
O objetivo desta aula foi a identificação do sistema com os dados obtidos na prática anterior, além da validação do sistema identificado através de um programa no MATLAB.
Os gráficos obtidos para cada arquivo de coleta estão apresentados a seguir :
[pic 8]
Figura 8: Sentido horário com carga
[pic 9]
Figura 9: Sentido horário sem carga
[pic 10]
Figura 10: Sentido anti- horário com carga
[pic 11]
Figura 11: Sentido anti- horário sem carga
A partir da movimentação do robô no próprio eixo, podemos calcular o valor do ângulo de giro θ através do número de pulsos para uma rotação como descrito na equação abaixo:
θ número de pulsos gerados
2π = número de pulsos gerados para uma rotação[pic 12][pic 13]
(1)
Por meio do ângulo de giro, conseguimos construir o modelo da planta utilizada. Assim, é possível escolher os parâmetros do controlador para que seja possível minimizar o erro em relação ao valor de referência.
Após os testes com ambos motores em sentido horário e anti-horário é possível perceber que a planta calculada dos motores se semelhante à planta real seja no sentido horário ou anti-horário, e com carga ou sem carga, apenas com a ressalva de que para os testes no sentido anti-horário para a roda direita o sistema real se mostrou mais instável que o identificado.
Além disso, para os ensaios realizados, encontramos valores próximos de θ para os casos com carga e sem carga, como visto nas Figuras 8 e 9.
...