Cinemática de robôs móveis terrestres

Cinemática de robôs móveis terrestres


Introdução

Para movimentar um robô pelo espaço, é necessário conhecer a relação entre
  • o comando aplicado em seus atuadores;
  • e as acelerações/velocidades realizadas pelo chassi do robô.
Por exemplo, veja a relação de velocidade das hélices de um drone e a movimentação que ele realiza no ar.
Nota-se que é crucial modelar a relação de causa e efeito entre as forças/velocidades aplicadas pelos atuadores e o que isto implica na movimentação do robô.
O enfoque da aula será na modelagem de robôs móveis terrestres do tipo diferencial, pois é a arquitetura da plataforma que iremos construir nesta disciplina.

Objetivos da aula

  • Introduzir a cinemática de robôs móveis terrestres com arquitetura diferencial.

O robô diferencial

Veículos móveis com arquitetura do tipo diferencial caracterizam-se essencialmente por duas rodas fixas (i.e., não esterçáveis) alinhadas paralelamente e acopladas a um chassi central de maneira que o eixo virtual entre as duas rodas passe pelo centro de rotação do chassi. Neste tipo de veículo, se ambas as rodas são rotacionadas na mesma velocidade, o chassi se move em linha reta; se uma das rodas rotaciona mais rápido do que a outra, o robô realiza uma curva enquanto também se desloca linearmente. Nota-se então que o termo "diferencial" vem desta característica em que as velocidades desenvolvidas pelo chassi serem função da composição e diferença de velocidade entre suas rodas.
Considerando outra característica relevante, como o eixo entre as rodas passa pelo centro de rotação do chassi, não há derrapagem lateral das rodas sobre o piso quando o robô realiza curvas, característica importante para o modelo cinemático (que será apresentada mais a frente nesta aula). Além disto, se uma roda gira em um sentido e a outra rotaciona com igual módulo mas em sentido inverso, o robô rotaciona sobre o próprio eixo sem se deslocar linearmente. Tais características conferem grande manobrabilidade a estes veículos mesmo possuindo uma mecânica mais simples, o que torna a arquitetura diferencial popular em plataformas robóticas.
Como exemplo, veja o vídeo a seguir que apresenta o robô móvel terrestre Pioneer 3-DX, que possui arquitetura do tipo diferencial. Ao assistir o vídeo, dê atenção em como o robô coordena as velocidades angulares de suas rodas para atingir velocidades lineares e angulares desejadas com seu chassi.

Modelagem cinemática do robô diferencial

A fim de se controlar a movimentação de um robô diferencial pelo ambiente, percebe-se logo a relevância de se estabelecer uma relação matemática entre as velocidades angulares das rodas e as velocidades lineares e angulares desenvolvidas pelo chassi. Em robótica, este tipo de relação matemática é denominada modelo cinemático.
O modelo cinemático do robô diferencial pode ser obtido por análise geométrica, avaliando seus parâmetros construtivos e a relação de causa e efeito que há entre a rotação das rodas e as velocidades que aparecem nos demais componentes do robô.

Definições básicas

Como toda boa modelagem, busca-se primeiro identificar e nomear os parâmetros e variáveis relevantes. Para um robô diferencial, tais elementos são os ilustrados pelo bloco interativo a seguir.
Robô diferencial: medidas e variáveisinterativo
Carregando interativo…
Representação dos sistemas de coordenadas e variáveis propostos para descrever a modelagem de um robô diferencial. Na figura, o sistema corresponde ao adotado no texto, a bitola corresponde a , e assume-se aqui .
Os parâmetros construtivos relevantes são: (i) o raio da roda ; (ii) e a distância entre as rodas . As velocidades angulares das rodas são denotados por e para as rodas esquerda e direita, respectivamente. Define-se então um sistema de coordenadas atrelado ao chassi do robô, que será considerado como referência para a definição de suas velocidades lineares e angulares. Por conveniência, denominamos este sistema como e definimos sua origem sobreposta ao centro de rotação do chassi, localizada sobre o eixo comum às duas rodas do robô, à meia-distância entre ambas. Por convenção, definimos apontando para "a frente" (heading) do robô e o eixo apontando para cima.

Vetor de estados

Considerando as definições feitas acima, define-se um vetor que contém todas as possíveis velocidades desenvolvidas pelo sistema do chassi expressas em seu próprio sistemas de coordenadas:
onde
  • , e são as velocidades lineares de ao longo de seus eixos , e ;
  • , e representam as velocidades angulares de em torno destes mesmos três eixos.
Nota
Note que a Eq. deixa bem explícito que estas velocidades lineares e angulares estão expressas no próprio sistemas de coordenadas do chassi do robô. Colocamos desta maneira aqui para fins didáticos; eventualmente porém, estes índices podem ser omitidos para simplificar a notação, tornando-a mais legível.
Entretanto, analisando a operação do robô, sabe-se que ele se movimenta somente sobre um piso plano sem realizar saltos ou tombementos laterais/frontais. Assim, o vetor definido na Eq. … pode ser simplificado para:
que representa os estados relevantes para a operação do robô sobre o plano.

Modelo cinemático por análise geométrica

Com as definições estabelecidas até aqui, pode-se dizer que o modelo cinemático procurado é uma função que relaciona as velocidades angulares das rodas com as velocidades lineares e angulares desenvolvidas pelo chassi, ou seja:
A função pode ser encontrada pela análise geométrica e cinemática dos componentes do robô.

Velocidade linear de cada roda

Sabe-se que a relação entre a velocidade linear que a roda desenvolve tangencialmente em seu perímetro (i.e., a velocidade de contato da roda com o terreno) e sua velocidade angular pode ser estabelecida através da equação , onde é o raio da roda. Assim, para o robô diferencial, pode-se escrever a seguinte relação vetorial:

Velocidades no frame do robô

Agora, a análise busca estabelecer as contribuições das velocidades lineares desenvolvidas por cada roda nas velocidades lineares e angulares desenvolvidas pelo frame do robô. A estratégia é considerar um sistema linear, identificando o que a movimentação de cada roda em separado causa em cada grau de liberdade de e somando-se as componentes encontradas.
Primeiramente, analisamos as contribuições das velocidades lineares e das rodas na velocidade linear do chassi. Percebe-se que, caso a roda esquerda esteja parada () e a roda direita aplica uma velocidade qualquer , o robô começa a rotacionar tendo a roda esquerda como centro de rotação. Neste caso, surge uma velocidade linear ao longo de , uma vez que a origem de está à meia distância entre as rodas. De maneira recíproca, se a roda esquerda aplica e , surge uma velocidade ao longo de . Assim, somando-se ambas as contribuições das velocidades lineares de cada roda à velocidade do frame ao longo de seu eixo , obtem-se a relação:
Agora analisa-se as contribuições das velocidades lineares e das rodas na velocidade linear . Fazendo-se porém o exercício análogo de considerar uma roda operando por vez, percebe-se que suas rotações não geram nenhuma velocidade no frame ao longo de seu eixo , obtendo-se assim a relação
Nota
Devido às características construtivas do robô, note que é impossível que as rodas gerem velocidades lineares ao longo de do robô, o que caracteriza uma restrição não-holonômica.
Por último, analisa-se as contribuições das velocidades lineares das rodas e na velocidade angular de em torno de seu eixo . Considerando primeiro a roda esquerda parada () e a roda direito aplicando uma velocidade (), nota-se que novamente que o eixo de rotação do robô está no ponto central da roda da esquerda, com uma velocidade angular neste ponto igual a . Como a velocidade angular de um corpo em rotação é igual em qualquer ponto de sua extensão, infere-se que . Analisando agora a situação em que a roda esquerda atua () e a direita está parada (), facilmente infere-se que a velocidade angular que aparece em é igual a . Somando-se assim a contribuição de ambas as rodas, obtem-se a expressão que
As Equações , e descrevem conjuntamente a relação das velocidades lineares aplicadas pelas rodas às velocidades que aparecem no frame . É possível combiná-las na forma matricial para se obter diretamente o vetor (Eq. …), obtendo assim a relação
Como o objetivo do modelo cinemático é relacionar as velocidades angulares das rodas às lineares/angulares do chassi (c.f., Eq. …), realiza-se em Eq. … a substituição das velocidades lineares das rodas pelas relações descritas na Eq. … e isola-se as velocidades angulares em um vetor separado, chegando à equação
que é denotada como a equação do modelo cinemático do robô diferencial (o bloco interativo a seguir ilustra esta relação).
Cinemática direta: das rodas ao chassiinterativo
Carregando interativo…
Nota
A Eq. assume rolamento sem escorregamento e contato pontual de cada roda com o solo: a velocidade do ponto de contato da roda esquerda é e a da direita é , ambas ao longo de .

Velocidades do robô em relação a um frame inercial

Em problemas de robótica, normalmente é necessário calcular a movimentação de um robô em relação a um outro sistema de coordenadas (e.g., um referencial fixo).

Expressão do robô em relação a outro frame

Assim, podemos expressar as coordenadas de em relação a um segundo sistema de coordenadas denotado aqui por , como ilustrado na .
Fig. 1

Velocidades do robô no frame inercial

Agora, temos que expressar as velocidades do robô no sistema de coordenadas inercial . Queremos então encontrar uma relação do tipo:
Como encontrar esta relação?
Resposta: Uma transformada que converte velocidades expressas em para o sistema é:
Unindo as Eq. e , chegamos a uma fórmula que relaciona as velocidades das juntas do robô ( e ) com as velocidades lineares e angulares que ele descreve no plano em relação ao sistema inercial :

Odometria

Na robótica, odometria refere-se ao ato de calcular o deslocamento que o robô executa no espaço físico tendo como informação de entrada somente as velocidades angulares desenvolvidas por suas rodas.
O objetivo então é calcular a pose do robô em função do tempo expressa em à medida que velocidades lineares e angulares vão sendo aplicadas às suas juntas. Isto pode ser alcançado ao se integrar a Eq. , levando a:
Utilizando-se de um computador, é recorrente calcular tais deslocamentos lineares e angulares de forma discreta, amostrando o tempo a cada intervalo e fazendo-se:
onde é o deslocamento acumulado no -ésimo intervalo (e analogamente para e ). Assim, é possível aproximar a Eq. através da seguinte relação discreta:
Note que e dependem de (c.f., Eq. …), de modo que a orientação precisa ser atualizada a cada passo antes de se avaliar as velocidades lineares do passo seguinte. O bloco interativo a seguir ilustra esta relação.
Odometria comandando as rodasinterativo
Carregando interativo…
Atenção
Perceba que na integração numérica da Eq. …, valores maiores de levam a uma menor acurácia nos cálculos do modelo. Isto é o que causa a diferença entre as trajetórias calculadas pelo modelo e a efetivamente realizada pelo robô (perceptível nas duas linhas do bloco interativo).
Exercício 1·Odometria de um robô diferencial
Faça um algoritmo que:
  • receba um array de vetores coluna concatenados contendo a informação
  • calcule um array com as poses do robô a cada instante de tempo .
  • plote o deslocamento de posição do robô no plano ao longo da trajetória.

Referências

  1. Correll, N., Hayes, B., Heckman, C., & Roncone, A. (2022). Introduction to autonomous robots: mechanisms, sensors, actuators, and algorithms. Mit Press.

Autor: FILIPE A. S. ROCHA

Publicado em 30 de março de 2026· Atualizado em 08 de setembro de 2026