Qual é o modelo adequado para robôs de duas rodas? Ou seja, quais equações de movimento descrevem a dinâmica de um robô de duas rodas.
Modelos de fidelidade variável são bem-vindos. Isso inclui modelos não lineares, bem como modelos linearizados.
Qual é o modelo adequado para robôs de duas rodas? Ou seja, quais equações de movimento descrevem a dinâmica de um robô de duas rodas.
Modelos de fidelidade variável são bem-vindos. Isso inclui modelos não lineares, bem como modelos linearizados.
Respostas:
Não há muita informação aqui. Vamos fixar as rodas separadas pela distância , e cada roda tem orientação em relação à linha que as une. Então assuma que cada roda pode ser acionada independentemente com uma velocidade angular .
Se as rodas forem acionadas independentemente, mas fixadas na direção, , você terá algo como uma transmissão diferencial (banda de rodagem do tanque). Vale ressaltar que, supondo que as rodas não deslizem perpandicularmente à sua orientação, é possível resolver o movimento da base do robô de forma fechada, dados os comandos de velocidade que são fixados por um período de tempo pequeno (como é geralmente o caso dos robôs sob software) ao controle). O iCreate é uma plataforma assim como os pioneiros menores e o Husky by Clearpath. Em seguida, a alteração na orientação da base, rotulada como abaixo, pode ser encontrada na forma fechada.
O modelo usual para essas coisas, em que é a velocidade base e ω b é a velocidade angular da base, é:
ωb=1
Para um incremento de tempo fixo, , é possível encontrar a alteração na orientação e a distância linear percorrida usando-as. Observe que o robô viaja ao longo de um círculo nesta janela de tempo. A distância ao longo do círculo é exatamente δ t ⋅ v b , e o raio do círculo é R = b . Isso é suficiente para se conectar a essas equações:segmentos circulares- particularmente a equação do comprimento da corda, que descreve a distância que o robô desloca de sua localização original. ConhecemosReθ, resolvemos paraa.
Portanto, supondo que o robô comece com a orientação e a posição ( 0 , 0 ) e se mova ao longo da janela de tempo δ t com velocidades v (roda esquerda) e v 2 (roda direita), sua orientação será: θ 1 = δ t com posição: p x = cos ( θ 1
Observe que, como o limite é p y = 0
como esperado.
Atualizar por quê?
Reorganize para que:
Isso é coberto por toda a Internet, mas você pode começar aqui: http://rossum.sourceforge.net/papers/DiffSteer/ ou aqui: https://web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/ kinematics-mobot.pdf
Se as rodas não estiverem fixas na direção, como você pode variar a velocidade e a orientação, fica mais complicado. Nesse sentido, um robô pode se tornar essencialmente holonômico (ele pode se mover em direções e orientações arbitrárias no avião). No entanto, aposto que a orientação é fixa, você acaba com o mesmo modelo.
Existem outros modelos para duas rodas, como o modelo de bicicleta, fácil de imaginar como definindo as velocidades e variando apenas uma orientação.
É o melhor que posso fazer por enquanto.
Px=dt*v
se v1 = v2
. Temos sin(theta/2)
como parte da multiplicação, portanto, quando v1=v2 -> theta = 0
, obtemos sin(0/2)=0
e como conseqüência Px = 0
. O que estou perdendo?
Se você realmente deseja mergulhar na matemática, aqui está o artigo seminal que unificou e categorizou a maioria dos modelos para robôs de rodas.
A resposta para isso é simples, mas as outras respostas ofuscam a dinâmica.
Os robôs de acionamento diferencial podem ser modelados com a dinâmica de monociclo da forma: