首頁 » 軟體資訊 » RoboDK 資訊 » 回到基礎——機器人的運動規劃

回到基礎——機器人的運動規劃

by hiholife
349 瀏覽

“回到基礎”這個系列意在為讀者介紹與工業機器人相關的基礎知識。事實上,之前我們介紹歐拉角與幾何旋轉原理的文章,是本站閱讀量最高的博文之一。

這個月,我們將詳細介紹 RoboDK 內建的運動規劃器。今天的內容作為開篇,將介紹關於機器人運動規劃的原理基礎。

對於市面上大部分已經投入使用的工業機械臂而言,它們在不斷進行著教導/路徑編輯<——>執行重複性任務的循環,而機器人的路徑規劃屬於一種高級編程功能,所以今天我們從基礎開始,介紹它的相關知識。

什麼是機器人運動規劃?

運動規劃是一種算法,用於自動計劃機器人末端從A點到達B點的路線(又稱軌跡,或路徑)。如今,幾乎每個人都熟悉路線計劃器,只是大多數人沒有意識到——感謝帶有衛星定位(GPS)和地圖應用程序的智能手機,讓我們更容易理解運動規劃器的工作內容。這些手機應用使用的就是與機器人運動規劃器相同類型的算法。

你每天都“規劃運動”

想像一下,你想通過手機地圖查出“我怎樣步行找到附近的中國銀行?”
手機地圖應用會顯示兩個位置:

  • 開始位置(你的當前位置)
  • 終點位置(台灣銀行)

在這兩個位置點之間,有相互連接的街道網絡。幾乎有無數條不同路線連接這兩個位置,而地圖應用程序會使用一種規劃來繪製(推薦)兩個位置之間的最佳路線。

但是,應用程序如何知道“最佳路線”是什麼?其實它不知道!也許“最佳”路線是最短的,也許是最快的。只有你知道“最佳”的含義。這就是為什麼該應用要為你提供幾條不同的路線,而你需要在它們之間進行選擇。不過,我們一次最多只能處理3個或4個選項,因此你的應用可能會選擇3條最好的路線,並要求你在其中選擇。

機器人運動規劃器使用相同類型的算法,來決定哪一條應該是機器人採用的最佳路徑。它最常用於看起來與我們的手機地圖示例非常相似的移動機器人中(計劃2D平面路徑)。但是,它也可用於工業機械臂。在這種情況下,規劃問題會稍微複雜一些,因為需要在3D空間中規劃路徑,還要考慮到機器人在不同位置點的位姿。

工業機器人技術中的運動規劃

我們使用運動規劃的主要原因,是因為當機器人處於復雜的環境中時,它可以加快編程過程。運動規劃器可以創建一條或多條可用的路線,以代替我們人腦靠對空間的認知、手動為機器人計劃每一個動作。

請注意,當我們說“機器人處於復雜環境中”時,我們指的是有很多障礙物的環境。對於許多機器人應用來說,其工作空間中任意兩個位置點之間的路徑並沒有障礙。如果是這樣,一個簡單的“關節運動”(Joing Move)命令將會更快、更高效。但是,當環境中有障礙物時,機器人可能會與它們碰撞。在這種情況下,手動計劃會比使用運動規劃器效率低。所以,在使用運動規劃器避免碰撞之前,請確保你沒有更簡單的另一種方法來避免機器人碰撞。

運動規劃器如何工作?

自動計劃路徑的算法有很多,工作原理也略有不同。但是在這裡,我們想列舉3個它們之間的共同點。

1. 配置空間:為什麼你比智能手機聰明?

配置空間描述了機器人可能在環境中定位自己的所有位置和方向(位姿)。在算法進行路線規劃之前,它需要知道該路線上所有可到達的位置點。

讓我們回到智能手機GPS的示例。配置空間就是整個世界上已有的所有街道(是的,可以在你跟中國銀行之間繪製一條繞道馬來西亞再回來的路線)。世界很大,因此規划算法可能會將配置空間限制為起點和終點之間半徑範圍內的所有街道。

重要的是你的配置空間必須準確地代表環境。原因如下:想像一下,你知道去中國銀行的捷徑,該捷徑需要穿過一家飯店的後院並跨過一個柵欄。即使這是最佳路線,該算法也永遠不會使用此方案,因為配置空間不包含穿過後院或者跨過圍欄的線路。

對於機械臂來說,其配置空間與機器人工作空間非常相似,而你可以在RoboDK中查看機器人模型的有效工作空間。

2. 可用空間:機器人可以在哪裡移動?

機器人工作空間中會有一些機器人無法移動到的區域,例如,因為裡面有障礙物。該算法將從配置空間中刪除所有受限的位置。這樣就留下了“可用空間”,其中包含所有可用於運動計劃的位置。

配置空間是固定的。但是,當新對象進入和離開工作環境時,可用空間可能會改變。

3. 計劃:機器人會選擇哪條路徑?

最後,運動規划算法會在可用空間內繪製最佳路線。這裡也是各個的運動規劃器略有不同的地方。

有些算法(稱為組合規划算法)被稱為“完整”算法,這意味著它們將始終找到解決方案(如果方案存在)或者報告失敗。其他方法(稱為基於抽樣的規劃)效率更高,但在某些情況下可能找不到解決方案。

在工業機器人技術中,更有效率的算法會更好,即使它在某些情況下可能錯過一些可用方案。快速獲得答案,比等待運動規划算法對所有可能的路線都測試一遍要有用得多。這就是為什麼人們通常採用基於抽樣的規划算法,例如概率路線圖(PRM),而不是其他的“完整”算法。

在機器人應用中如何使用運動規劃器?

你的機器人應用中需要運動規劃嗎?如果你需要在應用中加入自動軌跡計算,那麼最簡單方法就是使用一款離線編程軟件自帶的運動規劃器。現在,你可以在最新版本的 RoboDK 中使用我們的 PRM 運動規劃器了。下一篇內容中,我們將詳細介紹PRM 的功能。

相關文章

發佈留言