Implementação de um Sistema de Navegação
Por: Juliana2017 • 20/11/2017 • 1.100 Palavras (5 Páginas) • 283 Visualizações
...
Assim, com os dados dos sensores tratados, os valores das velocidades linear e angular são enviadas para o modelo do robô através das seguintes linhas de comando:
Vx = V+2*Vaux; % Velocidade linear final
Wx = W+2*Waux; % Velocidade angular final
Ksir = [Vx ; 0 ; Wx]; Vetor com os dados acima
Ksi_I = R\Ksir; % Modelo do robô
O robô executa duas funções em paralelo: a primeira é a tentativa de chegar ao destino e a segunda é evitar a colisão com obstáculos. Mas, enquanto o robô executa a ação de desviar de obstáculos, o robô pode ficar sem rumo. Para contornar este problema, implementou-se o seguinte artifício: uma variável recebe o resto da divisão da variável de controle de tempo (i) com 2. Cada vez que esse resto for zero, o tratamento dos sensores é executado. Caso contrário apenas a função de ir ao ponto de destino é executada. Isso faz com que as duas funções sejam executadas de forma alternada.
Quando o robô está a 50cm do ponto de chegada a função de evitar obstáculos é desativada e o robô executa apenas a função de chegar no ponto final.
-
Simulação
Para a simulação do sistema, elaborou-se cinco mapas diferentes. Para cada mapa foram utilizados os seguintes parâmetros:
- Velocidade = 50;
- Ponto de partida (coordenada) = (100, 400);
- Ponto de chegada = a depender do mapa.
Após cada teste foram coletados os seguintes dados:
- Situação = sucesso ou falhou;
- Tempo = tempo de navegação até a chegada ou uma colisão;
- Mínimos locais = se ocorreu ou não.
-
Resultados
A tabela com todos os resultados obtidos na simulação está no final dessa seção. Alguns testes apresentaram problemas com mínimos locais, mas é possível perceber que o robô conseguiu sair dessa região alcançando os objetivos. Com exceção do último mapa, todos os testes foram realizados com sucesso. Com relação ao último mapa, que possui uma complexidade alta, não foi possível para o robô chegar até o ponto final, resultando assim em colisão nos três testes primeiros testes. Mas, fazendo algumas alterações nos parâmetros do robô, foi possível fazê-lo chegar até o ponto final, com algumas resalvas que serão expostas em breve. Nos testes 3 e 4 foram utilizadas velocidade = 20 e a distância mínima para desativação da função de evitar obstáculos foi aumentada para 100cm.
A simulação dos dois últimos testes apresentou um problema de origem ainda desconhecida. Quando o robô se aproximava do ponto de chegada ele não seguia em direção do mesmo. Ele sofria uma rotação e se chocava com a parede do labirinto. Mas, apesar deste problema, pode-se considerar que o robô chegou ao seu destino.
---------------------------------------------------------------
[pic 4]
---------------------------------------------------------------
---------------------------------------------------------------
-
Conclusões
Apesar deste sistema não tratar mínimos locais, apenas tentar evitar que o robô fique preso a eles, também por ser um sistema reativo, os resultados se mostraram de certa forma satisfatório, visto principalmente pela complexidade de alguns mapas utilizados na simulação. Pôde-se perceber também que dados como velocidades linear e angular influenciam diretamente na navegação do robô, como aconteceu com o último mapa, onde a redução da velocidade linear fez com que o robô chegasse ao seu destino, apesar do problema com a aproximação do mesmo ao ponto de chegada. Assim, conclui-se que este sistema, com algumas resalvas, cumpriu seu objetivo.
-
Bibliografia
(Sem bibliografia)
...