İki tekerlekli robotlar için uygun model nedir?


30

İki tekerlekli robotlar için uygun model nedir? Bu, iki tekerlekli bir robotun dinamiklerini tanımlayan hareket denklemleridir.

Değişken sadakat modeli açıktır. Bu, doğrusal olmayan modelleri ve doğrusallaştırılmış modelleri içerir.


1
Bu soru çok geniş görünüyor. Eğer "hareket denklemlerini" ne olduğunu açıklayan bir wikipedia makalesine (örneğin) bağlarsanız yardımcı olur. Ayrıca, robotu daha spesifik olarak belirtmelisiniz. Örneğin, pasif tekerlekler var mı? İki tekerleğin tipleri nelerdir? Vb
Shahbaz

1
Bisiklet tarzı veya segway tarzı? Daha spesifik olmalısın.
Paul,

Yanıtlar:


23

Burada çok fazla bilgi yok. Tekerlekleri mesafesiyle ayrılmış olarak sabitleyelim ve her bir tekerlek kendilerine çizgiye göre oryantasyona sahiptir. Daha sonra, her bir tekerleğin bağımsız bir şekilde açısal bir hızla .bθivi

Tekerlekler bağımsız olarak sürülüyorsa, ancak yönünde sabitleniyorsa, , bir diferansiyel tahrik gibi bir şeye sahipsin (tank kullanımları). Tekerlerin yönlerine dik olarak düşmediğini varsayarsak, robot tabanının hareketini küçük bir süre zarfında sabitlenen hız komutları verilen (genellikle yazılımın altında olduğu robotlarda olduğu gibi) kapalı formda çözebileceğinizi unutmayın. kontrol). İCreate, daha küçük öncüler ve Clearpath'tan Husky gibi bir platformdur. Daha sonra, aşağıdaki etiketli kaidenin yönündeki değişiklik , kapalı biçimde bulunabilir. θθ1=θ2=90θ

...

taban hız ve ω b'nin tabanın açısal hız olduğu bu şeyler için normal model :vbωb

ωb=1

vb=12(v1+v2)
ωb=1b(v2v1)

Sabit bir zaman artışı için, , yönelimdeki değişimi ve bunları kullanarak kat edilen doğrusal mesafeyi bulabilirsiniz. Robotun bu zaman penceresinde bir daire boyunca hareket ettiğini unutmayın. Daire boyunca olan mesafe tam olarak δ t v b'dir ve dairenin yarıçapı R = b'dirδtδtvb . Bu denklemleri bağlamak için bu yeterli:dairesel bölümler- özellikle robotun orijinal konumundan çıkardığı mesafeyi tanımlayan akor uzunluğu denklemi. BiliyoruzRveθiçin çözmekbir.R=b2v1+v2v2v1Rθa

Bu nedenle, robot yönlendirme ile başlar varsayılarak ve pozisyon ( 0 , 0 ) zaman penceresi boyunca, ve hareket δ t ile hızları h 1 (sol tekerlek) ve V 2 (sağ tekerlek), 's yönlendirme olacaktır: θ 1 = δ t0(0,0)δtv1v2pozisyonlu: px=cos( θ 1

θ1=δtb(v2v1)
py=günah(θ1
px=cos(θ12)(2Rsin(θ12))
py=sin(θ12)(2Rsin(θ12))

Not olarak bu sınırı p x = δ t v p y = 0v1v2=v

px=δtv
py=0

beklenildiği gibi.

Neden güncelle ?

px

px=cos(v2v12b)2(bv1+v22(v2v1))sin(v2v12b)

px=cos(v2v12b)(v2+v1)2sin(v2v12b)v2v12b

v2v1

cos(v2v12b)1

(v2+v1)2v1==v2

sin(v2v12b)v2v12b1 (see sinc function)

Bu, tüm internet üzerinden kaplıdır, ancak buradan başlayabilirsiniz: http://rossum.sourceforge.net/papers/DiffSteer/ veya buradan: https://web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/ kinematik-mobot.pdf

Eğer tekerlekler yönünde sabitlenmemişse, sizin de hız ve yön değiştirebildiğiniz gibi, daha karmaşık hale gelir. Bu anlamda, bir robot esasen holonomik hale gelebilir (düzlemde isteğe bağlı yönlerde ve yönlerde hareket edebilir). Ancak, sabit oryantasyon için bahse girerim, aynı modelle bitirdiniz.

İki tekerlek için hızları ayarlamak gibi hayal etmesi kolay olan ve sadece bir yönünü değiştiren bisiklet modeli gibi başka modeller de var.

Şimdilik yapabileceğim en iyi şey bu.


1
Belki biraz geciktim değilim ama neden göremiyorum Px=dt*veğer v1 = v2. Biz sin(theta/2)bu nedenle, çarpma bir parçası olarak v1=v2 -> theta = 0, biz almak sin(0/2)=0ve sonuç olarak Px = 0. Neyi özlüyorum?
Long Smith,

θ0

4

Eğer onun matematiğine gerçekten dalmak istiyorsanız, işte tekerlekli robotlar için çoğu modeli birleştiren ve kategorize eden seminal makale.


2
Üzgünüm, sadece bağlantı cevapları StackExchange'te önerilmez. Bu bağlantının içeriğini birkaç paragrafa sığdırabilir ve burada tutabilir misiniz (gerçek bağlantıyla birlikte). Bu bağlantı çürüklüğünü önlemeye yardımcı olur.
Manishearth

Tabii ki, bu hafta bunun için yeterli zamanım olur olmaz bunu yapacağım. Bunun için üzgünüm, bu politikadan haberdar değildim ve bağlantının olduğu gibi faydalı olacağını düşündüm.
georgebrindeiro

Mükemmel kağıt - bağlantı için teşekkürler! Oldukça uzun bir haftasonu da :-)
uhoh

0

Buna cevap basit ama diğer cevaplar dinamikleri engelliyor.

Diferansiyel tahrik robotları, formun tek tekerlekli bisiklet dinamikleri ile modellenebilir:

[x˙y˙θ˙]=[cOs(θ)0sbenn(θ)001][vω],
nerede x ve y robotun Kartezyen koordinatları ve θ(-π,π] Başlık ile açı arasındaki açıdır. x-Axis. Giriş vektör[v,ω]T Doğrusal ve açısal hız girişlerinden oluşur.

-1 Bu sadece farklı koordinatlar arasında bir dönüşümdür. Robotun dinamiklerini, soruda istendiği gibi modellemiyor. Diğer cevapların “ şaşırtması ”, bazı soyut girdi vektörlerini değil, kontrol edilecek iki tekerleği olduğunu dikkate almalarıdır. Böyle bir vektör, soruda istenen modelin sonucu olabilir.
Bükme Birimi 22

Benim sunduğum model, bilgi istemini ele alıyor, tartışmaya katkıda bulunuyor ve aslında, holonomik olmayan bir diferansiyel tahrik robotunun dinamiğinin bir modelidir (her ne kadar iki tekerlekli olmasa da güçlüdür). Giriş hızı vektörü (aka büküm) bir soyutlama olsa da, büküm girişini kullanmak birçok iki tekerlekli platform için standarttır. Bununla birlikte, bu durum, devlet temsillerinin keyfi olduğunu vurgulamaktadır. Tekerlek hızlarının kontrol edilmesi, motor akımlarını kontrol etmekten bir soyutlama olan kontrol tekerleği torklarından bir soyutlamadır.
JSycamore
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.