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.
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 .
◫ Interativo: Robô diferencial: medidas e variáveis
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 .
Disponível interativamente na versão web.
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).
◫ Interativo: Cinemática direta: das rodas ao chassi
Disponível interativamente na versão web.
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…
x̂IŷI{I}IpRθẋIẏIexemplo: ωₗ = 3.00 ωᵣ = 6.00 rad/s · Δt = 0.10 s → ᴵξR(6.0 s) = (0.09 m, 0.89 m, 172°)
◫ Interativo: Odometria comandando as rodas
Disponível interativamente na versão web.
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