Hier gibt es nicht viele Informationen. Lassen Sie uns die Räder durch den Abstand getrennt fixieren , und jedes Rad hat die Ausrichtung θ ibθi with respect to the line joining them. Then assume each wheel can be independently driven with an angular velocity vi.
Wenn die Räder unabhängig voneinander angetrieben werden, aber eine feste Richtung haben ( , haben Sie so etwas wie einen Differentialantrieb (Tanklaufflächen). Es ist erwähnenswert, dass Sie, vorausgesetzt, die Räder rutschen nicht quer zu ihrer Ausrichtung, die Bewegung der Roboterbasis in geschlossener Form mit Geschwindigkeitsbefehlen auflösen können, die über eine kurze Zeitdauer festgelegt sind (wie dies normalerweise bei Robotern unter Software der Fall ist) Steuerung). Der iCreate ist eine solche Plattform, genau wie die kleineren Pioniere und der Husky von Clearpath. Dann kann die Orientierungsänderung der Basis, die unten mit θ bezeichnet ist, in geschlossener Form gefunden werden.θ1=θ2=90∘θ
Das übliche Modell für diese Dinge, wobei die Grundgeschwindigkeit und ω b istvbωb die Winkelgeschwindigkeit der Basis ist, ist:
ωb=
vb=12⋅(v1+v2)
ωb=1b(v2−v1)
For a fixed time increment, δt, you can find the change in orientation, and linear distance traveled using these. Note that the robot travels along a circle in this time window. The distance along the circle is exactly δt⋅vb, and the radius of the circle is R=b2⋅v1+v2v2−v1Rθa
0(0,0)δtv1v2 (right wheel), it's orientation will be:
θ1=δtb(v2−v1)
with position:
px=cos(θ12)⋅(2Rsin(θ12))
py=sin(θ12)⋅(2Rsin(θ12))
Note that as v1→v2=v the limit is
px=δt⋅v
py=0
as expected.
Update why?.
Rearrange px so that:
px=cos(v2−v12b)∗2∗(bv1+v22(v2−v1))∗sin(v2−v12b)
px=cos(v2−v12b)∗(v2+v1)2∗sin(v2−v12b)v2−v12b
Now note that we have three limits as v2→v1.
cos(v2−v12b)→1
(v2+v1)2→v1==v2
sin(v2−v12b)v2−v12b→1 (see sinc function)
This is covered all over the internet, but you might start here: http://rossum.sourceforge.net/papers/DiffSteer/ or here: https://web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/kinematics-mobot.pdf
If the wheels are not fixed in direction, as in you can vary the speed and orientation, it gets more complicated. In that sense, a robot can become essentially holonomic (it can move in arbitrary directions and orientations on the plane). However, I bet for fixed orientation, you end up with the same model.
There are other models for two wheels, such as a bicycle model, which is easy to imagine as setting the velocities, and only varying one orientation.
That's the best I can do for now.