Contents — find the section you need

Bir yol geometrik bir şekildir; bir yörünge ise bu yolun ne zaman ve hangi hız, ivme ve sarsıntıyla geçileceğini belirtir. Bir koridorun orta çizgisi, yüklü bir arabaya, esnek bir robot koluna veya işbirlikçi bir manipülatöre ne kadar hızlı dönebileceğini veya durabileceğini söylemez. Bir planlayıcıdan gelen çarpışma içermeyen bir çokgen çizgi bile imkansız direksiyon hareketleri gerektirebilir, bir eklemi doyurabilir, titreşime neden olabilir veya yükünü dökebilir. Yörünge oluşturma, geometrik uygulanabilirliği zaman ve dinamiklere duyarlı yürütülebilirliğe dönüştürür.

Bu giriş, yamuk/üçgen hız profillerini, beşinci dereceden polinomları ve minimum sarsıntıyı karşılaştırır. Ayrıca limitleri, güvenliği, uygulamayı ve ROS 2 ile yol planlaması arasındaki sınırı da ele alır. Yol Planlama Temelleri, ROS 2 Temelleri ve Görsel SLAM Temelleri'e bakınız.

Pratik Sonuç

  • Trapezoidal profiller maksimum hızı ve ivmeyi netleştirir. Kısa hareketler, seyir segmenti olmayan üçgen profiller haline gelir. İdeal ivme adımları, esnek mekanikleri ve yükleri harekete geçirebilen sonsuz sarsıntı anlamına gelir.

  • Beşinci dereceden bir polinom, her iki uçta da konum, hız ve ivme sınır koşullarını karşılar. Sıfır hız ve ivme uç noktaları, segmentler arasında konumu ivme yoluyla sürekli hale getirir.

  • Minimum sarsıntı, belirtilen uç nokta koşulları altında \int j(t)^2dt'ı en aza indirir; sabit süreyle beşinci dereceden bir polinom verir. "Minimum", seçilen amaca uygulanır, otomatik olarak enerjiye, çarpışma riskine veya güvenliğe değil.

  • Konum, hız, ivme, sarsıntı, limitler, akım, durma mesafesi, izleme hatası ve harita güncelliğini birlikte izleyin. Bir yörünge oluşturucu, acil durdurma veya çarpışma emniyet sistemi değildir.

Bir yolun zaman parametrelendirilmesi

Uzamsal yol p(s) ve zaman t içindeki ilerleme s\in[0,1] için yörünge p(s(t))'tür. Burada \dot s ilerleme hızıdır:

\dot p=\frac{dp}{ds}\dot s,\qquad \ddot p=\frac{d^2p}{ds^2}\dot s^2+\frac{dp}{ds}\ddot s

Yüksek eğrilik, yanal ivmeyi artırır. Bir mobil robot yaklaşık olarak a_{lat}=v^2\kappa'ye uyar, burada \kappa eğriliktir, bu nedenle yanal bir limit a_{lat,max} v\le\sqrt{a_{lat,max}/|\kappa|} verir. Bir köşeyi yumuşatmadan hızı artırmak, bir izleyiciden imkansız bir yönlendirme ister. Bir kol için, düzgün bir uç efektör yolu bile kinematik tekilliğe yakın yüksek eklem hızı oluşturabilir; el, araç, eklem ve aktüatör kısıtlamaları birlikte kontrol edilmelidir.

Trapezoidal ve üçgen hız

D mesafesi, v_{max} maksimum hızı ve a_{max} ivme büyüklüğü için, ivme süresi t_a=v_{max}/a_{max} ve sadece ivmelenme/yavaşlama mesafesi D_{tri}=v_{max}^2/a_{max}'tir. İvme limiti a_{max}'dır. Eğer D\ge D_{tri} ise, seyir süresi

t_c=\frac{D-D_{tri}}{v_{max}}

Eğer D<D_{tri} ise, seyir kaybolur ve tepe hızı v_p=\sqrt{Da_{max}} olur. Bu profil şeffaftır ve basit sürücülerde kolayca uygulanabilir. Anlık ivme değişimleri fiziksel değildir: S eğrisi profili, ivmeyi kademeli olarak artırarak sarsıntıyı sınırlar, şoku ve titreşimi azaltırken hareketi genel olarak uzatır.

Diagram 1 · Use the button to switch views
Trapezoidal profile: position, velocity, acceleration and jerk

Diyagram: Duskcoil, kavramsal. İdeal bir trapezoidde ivme süreksizlikleri sarsıntıyı dürtüsel hale getirir; bu, ölçülen bir makine tepkisi değildir.

Beşinci dereceden polinomlar ve minimum sarsıntı

Şöyle olsun:

p(t)=a_0+a_1t+a_2t^2+a_3t^3+a_4t^4+a_5t^5

Altı uç nokta koşulu—başlangıç zamanındaki konum, hız, ivme ve T—altı katsayısını belirler. Kısaca bunlar p(0),\dot p(0),\ddot p(0),p(T),\dot p(T),\ddot p(T) ve, durağan noktadan durağan noktaya hareket için, p(0)=0,p(T)=D,\dot p(0)=\dot p(T)=\ddot p(0)=\ddot p(T)=0'dır. Seçilen mesafe boyunca durağan noktadan durağan noktaya hareket için, \tau=t/T ile,

p(t)=D(10\tau^3-15\tau^4+6\tau^5)

Minimum sarsıntı çözümü

\min_p\int_0^T\left(\frac{d^3p}{dt^3}\right)^2dt

uç nokta konumuna, hızına ve ivmesine bağlı olarak. Euler-Lagrange koşulu altıncı türevi sıfır yaparak beşinci dereceden bir denklem verir. T'u kısaltmak, gereken hızı, ivmeyi ve sarsıntıyı hızla artırır, bu nedenle süre seçimi, uç nokta konumlarının seçimi kadar önemlidir.

Diagram 2 · Use the button to switch views
Minimum sarsıntı ve yamuk profil karşılaştırması

Diyagram: Duskcoil. Karşılaştırma, zaman, enerji veya güvenlik hakkında evrensel olarak ölçülen bir iddia değil, uç nokta düzgünlüğü ile ilgilidir.

Uygulama ve ROS 2 bağlantısı

Tek bir eklem için, q_0'den q_f'e hareketi tanımlayın, q_d,\dot q_d,\ddot q_d'ü beşinci dereceden örnekleyin ve bunları bir konum/hız/çaba döngüsüne verin; hız ve ivme ileri beslemeyi destekleyebilir. Sadece eklem başına enterpolasyon, uç efektörü bir engele yaklaştırabilir, bu nedenle Kartezyen yolu, ters kinematik, eklem aralığı ve kendi kendine çarpışmayı da kontrol edin.

Mobil bir robot için, A* veya RRT'den bir rotayı düzeltin, eğriliğe bağlı hız sınırları uygulayın, bir yamuk/S eğrisi/minimum sarsıntı zaman yasası seçin ve oluşturulan hızı v(t) tekerlek hızlarına veya direksiyon ve ivmeye çevirin. Bir kişi yerel maliyet haritasında görünüyorsa, eski düzgün varışın korunması, yavaşlama, durma veya yeniden planlamadan daha az önemlidir. Küresel yol planlaması yerel güvenlik değildir.

ROS 2'de, yol, yörünge ve kontrol-komut zaman damgalarını birbirinden ayırın. Saat atlamaları, gecikmeli yörünge mesajları, iptal, değiştirme ve kaçırılan kontrol dönemleri için davranış tanımlayın; eski yörüngeleri reddedin ve değiştirme sırasında hız süreksizliğinden kaçının. ROS 2 Primer'de açıklanan ROS 2 yaşam döngüsü ve donanım sınırları, bu sorumlulukların tahsis edilmesine yardımcı olur, ancak gerçek zamanlı veya işlevsel güvenliği garanti etmez.

Sınırlar, güvenlik ve kontroller

Sınırlar arasında |v|\le v_{max}, |a|\le a_{max} ve |j|\le j_{max}'in yanı sıra eklem aralığı, tork/akım/termal kapasite, lastik sürtünmesi, direksiyon hızı, yük, algılama, iletişim gecikmesi ve durma mesafesi de yer almaktadır. Basit bir tahmin olan d_{stop}\simeq v^2/(2a_{brake})+v t_{latency}, algılama ve hesaplama gecikmesi sabit kalırken fren mesafesinin hızla karesel olarak arttığını göstermektedir. Bir jeneratörün, izleme hatası, pozisyon belirsizliği, doygunluk, engel algılama veya eski harita bir zarfı aştığında bir yörüngeyi terk etmesine izin verilmelidir.

Problem Muhtemel neden İzleme Örnek yanıt
Köşelerde hata hız/eğrilik uyumsuzluğu yanal hata, direksiyon doygunluğu yavaş, düzgün rota, eğrilik sınırı
Yük salınımı yüksek sarsıntı/esnek mod IMU, ivme, titreşim S-eğrisi, daha uzun süre, rezonanstan kaçınma
Hedef değişikliğinde atlama süreksiz sınır hızı v,a,j, akım sorunsuz ekleme ve yeniden enterpolasyon
Durdurulamaz gecikme/frenleme/harita hatası tazelik, durma mesafesi hız limiti ve güvenli durma
Limit noktasında eklem IK/zaman yasası uyumsuzluğu konum, hız, tork yeniden planlama, hedefi reddetme, yavaşlatma

Uygulama kontrol listesi

  1. Yol ile yörünge, kareler, hedef zaman ve kontrol periyodunu tanımlayın.

  2. Ölçülen aktüatör, yük ve durma limitlerinden v,a,j'i ayarlayın.

  3. Üçgen/yamuk geçiş ve hedef değiştirme sınır koşullarını test edin.

  4. Beşinci dereceden süreyi azaltırken maksimum türevleri kontrol edin.

  5. Harita güncellemesinde, yerelleştirme sıçramasında, izleme sapmasında, iletişim kaybında veya engel tespitinde eski yörüngeleri atın.

  6. Yörünge yazılımı başarısız olursa, bağımsız acil durdurma, tork limitleri ve hareket limitlerini doğrulayın.

Anlayışınızı kontrol edin
Düzgün bir konum eğrisi uygulanabilir hareketi garanti eder mi?

Zamanlama, hızı, ivmeyi ve sarsıntıyı belirler. Bunların limitlerini ve geometrik yolu kontrol edin.

Referanslar

Related reading

Explore another aspect of this fieldMPC Laboratuvarı — bir ufuk ve direksiyon sınırları içinde eğrilik dizisini yeniden çözmeExplore another aspect of this fieldYol takibi karşılaştırma Laboratuvarı — PP, APP, RPP, Stanley ve MPC'yi aynı koşullar altında çalıştırın