Qual è un modello adatto per i robot a due ruote? Cioè, quali equazioni del movimento descrivono la dinamica di un robot a due ruote.
Sono ben accetti modelli di fedeltà variabile. Ciò include modelli non lineari e modelli linearizzati.
Qual è un modello adatto per i robot a due ruote? Cioè, quali equazioni del movimento descrivono la dinamica di un robot a due ruote.
Sono ben accetti modelli di fedeltà variabile. Ciò include modelli non lineari e modelli linearizzati.
Risposte:
Non ci sono molte informazioni qui. Fissiamo le ruote come separate dalla distanza , e ogni ruota ha orientamento rispetto alla linea che le unisce. Quindi supponiamo che ogni ruota possa essere guidata indipendentemente con una velocità angolare .θ i v i
Se le ruote sono guidate indipendentemente, ma fissate nella direzione, , hai qualcosa come una trasmissione differenziale (battistrada). Vale la pena notare che, supponendo che le ruote non scivolino perpendicolarmente al loro orientamento, è possibile risolvere il movimento della base del robot in forma chiusa dati i comandi di velocità che vengono fissati su una breve durata (come di solito accade con i robot con software controllo). ICreate è una piattaforma del genere, così come i pionieri più piccoli, e Husky di Clearpath. Quindi il cambio di orientamento della base, etichettato seguito, può essere trovato in forma chiusa. θ
Il solito modello per queste cose, dove è la velocità di base e è la velocità angolare della base, è:ω b
ωb=1
Per un incremento di tempo fisso, , puoi trovare il cambio di orientamento e la distanza lineare percorsa usando questi. Si noti che il robot percorre un cerchio in questa finestra temporale. La distanza lungo il cerchio è esattamente e il raggio del cerchio è . Basta collegarsi a queste equazioni: segmenti circolari - in particolare l'equazione della lunghezza degli accordi, che descrive la distanza che il robot sposta dalla sua posizione originale. Conosciamo e , risolviamo per .δ t ⋅ v b R = b Rθa
Quindi supponendo che il robot inizi con l'orientamento , la posizione e si sposta lungo la finestra temporale con le velocità (ruota sinistra) e (ruota destra), il suo orientamento sarà: con posizione:
Si noti che come il limite è
come previsto.
Aggiorna perché ?.
Riorganizzare modo che:
Ora nota che abbiamo tre limiti come .
Questo è coperto su Internet, ma potresti iniziare qui: http://rossum.sourceforge.net/papers/DiffSteer/ o qui: https://web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/ cinematica-mobot.pdf
Se le ruote non sono fisse in direzione, come in te puoi variare la velocità e l'orientamento, diventa più complicato. In tal senso, un robot può diventare essenzialmente olonomico (può muoversi in direzioni e orientamenti arbitrari sul piano). Tuttavia, scommetto per l'orientamento fisso, si finisce con lo stesso modello.
Esistono altri modelli per due ruote, come un modello di bicicletta, che è facile immaginare come impostare le velocità e variando solo un orientamento.
Questo è il meglio che posso fare per ora.
Px=dt*v
se v1 = v2
. Abbiamo sin(theta/2)
come parte della moltiplicazione quindi, quando v1=v2 -> theta = 0
, otteniamo sin(0/2)=0
e come conseguenza Px = 0
. Cosa mi manca
Se vuoi davvero immergerti nella matematica, ecco il documento fondamentale che ha unificato e classificato la maggior parte dei modelli per robot a ruote.
La risposta a questa è semplice, ma le altre risposte offuscano la dinamica.
I robot di unità differenziali possono essere modellati con la dinamica unicycle del modulo: dove ed sono coordinate cartesiane del robot, e è l'angolo tra la direzione e la -axis il vettore di ingresso. costituito da input di velocità lineari e angolari.xyθ∈(-π,π]x[v,ω]T