Smart Motion vs. Planejador de Movimento Sem Colisões

No RoboDK, tanto o Smart Motion quanto o Planejador de Movimento Sem Colisões (PRM) foram projetados para ajudar um robô a se mover sem colidir com obstáculos. No entanto, eles utilizam matemática e fluxos de trabalho diferentes para realizar essa tarefa.

O recurso de planejamento de movimento do Planejador de Movimento Sem Colisões cria automaticamente trajetórias livres de colisões dentro do espaço de trabalho do robô, utilizando um algoritmo de planejamento de movimento chamado “rotas probabilísticas” (PRM).

Como conectar alvos

A maior diferença entre os dois planejadores de movimento é a quantidade de trabalho de preparação necessária antes que o robô se mova.

O planejador PRM é uma ferramenta que funciona como a construção de uma rede viária permanente. Primeiramente, ele executa uma “fase de construção”, na qual são gastos vários minutos posicionando pontos aleatoriamente e tentando conectá-los em um mapa-rota gigante. Uma vez concluído esse mapa, encontrar uma trajetória é instantâneo, pois as “estradas” já estão construídas. No entanto, se você mover apenas uma mesa, uma caixa ou qualquer outro objeto na estação, todo o mapa se torna inútil e é necessário reconstruí-lo do zero.

O Smart Motion foi desenvolvido para ser muito mais flexível. Não há uma etapa demorada de construção de mapas. Ele analisa exatamente onde o robô está e para onde precisa ir e, em seguida, encontra um “túnel” seguro através dos obstáculos. É um processo de uma única etapa: selecione os alvos, clique em “Gerar” e ele se move. Se você mover um objeto em sua célula, basta clicar em “Gerar Trajetória” novamente, sem esperar por um novo mapa.

Tempo de cálculo

A velocidade no planejamento de trajetória não se resume apenas à rapidez com que o robô se move, mas também ao tempo que o planejador leva para realizar os cálculos.

A “fase de consulta” no planejador PRM (localização da trajetória no mapa) é muito rápida, mas também é acompanhada por uma “fase de construção” bastante demorada. Isso é ótimo se a estação permanecer sempre estática, mas leva tempo caso haja alterações frequentes.

O Smart Motion utiliza um algoritmo incrivelmente rápido para resolver um único problema do tipo “de A a B”. Ele começa a busca a partir de ambas as extremidades da trajetória ao mesmo tempo e se encontra no meio. Isso torna o “tempo de raciocínio” quase imperceptível para a maioria das tarefas comuns.

Navegação em espaços apertados

O foco de qualquer planejador de movimento é a detecção e prevenção de colisões. Portanto, a precisão das trajetórias seguras geradas é um fator muito importante.

O planejador PRM baseia-se nos pontos aleatórios que colocou durante a fase de mapeamento. Se os pontos aleatórios não caírem dentro de um espaço estreito, o robô considerará que está bloqueado, mesmo que haja espaço de sobra. Um número maior de amostras e mais arestas por amostra produzirão um mapa mais detalhado, cuja geração levará mais tempo, mas resultará em uma solução mais precisa.

O Smart Motion inclui uma opção de “Espaço Restrito” para esses pontos complexos. Quando essa opção está ativada, o solucionador é forçado a operar no espaço articular, em vez do espaço cartesiano. Dessa forma, garante-se que, ao testar uma pose, o sistema identifique uma configuração de articulação única, o que evita problemas relacionados a múltiplas soluções possíveis para uma única pose cartesiana. Em resumo, isso ajuda o planejador a lembrar a posição e a configuração do robô para garantir que a trajetória encontrada seja preservada.

Suavidade e segurança

Ambos os planejadores de movimento permitem controlar o quanto o robô “se preocupa” com o ambiente ao seu redor.

Para obter uma trajetória mais suave ou mais segura usando o planejador PRM, o “Número de amostras” e o “Número de arestas por amostra” precisam ser aumentados proporcionalmente. Isso melhora o mapa, mas aumenta o tempo de espera.

O Smart Motion utiliza um simples controle deslizante de “Qualidade da Trajetória” com os seguintes limites:

1.Grossa: é utilizada em espaços amplos e abertos para obter uma resposta imediata.

2.Fino: É utilizado para tarefas complexas. Obriga o robô a dar “pequenos passos” para verificar se há colisões e gerar uma trajetória geral suave.