本發(fā)明涉及機械臂領域,具體為一種機械臂路徑規(guī)劃方法及系統(tǒng)。
背景技術:
1、在現(xiàn)代工業(yè)自動化中,機械臂作為重要的執(zhí)行工具,廣泛應用于制造、裝配、焊接、搬運等領域。為了實現(xiàn)高效、精確的作業(yè),機械臂路徑規(guī)劃(robot?arm?path?planning)技術成為了關鍵研究方向。路徑規(guī)劃的核心任務是在滿足機械臂運動學約束、動態(tài)約束的前提下,找到從初始位置到目標位置的最優(yōu)路徑。這個過程需要考慮機械臂在工作空間中的避障要求、作業(yè)任務的時效性以及能耗等多種因素。同時,隨著工業(yè)4.0和智能制造的推進,柔性生產(chǎn)的需求增加,機械臂的路徑規(guī)劃技術必須更加靈活和智能,以應對復雜、多變的工作環(huán)境。因此,如何實現(xiàn)機械臂的智能、高效、安全的路徑規(guī)劃,成為了工業(yè)機器人領域中的重要課題。
技術實現(xiàn)思路
1、為了解決上述問題,本發(fā)明提供了?一種機械臂路徑規(guī)劃方法,所述方法包括以下步驟:
2、獲取機械臂的起始位置和目標位置,初始化一棵樹,根節(jié)點為所述起始位置,樹的節(jié)點集初始為所述起始位置;在機械臂的工作空間隨機生成一個采樣點,找到與采樣點最近的節(jié)點,將所述最近的節(jié)點沿著采樣點的方向延伸預設距離得到新節(jié)點;
3、基于默認鄰域半徑內(nèi)障礙物分布和節(jié)點密度確定新節(jié)點的鄰域半徑,在所述鄰域半徑的范圍內(nèi)找到使得新節(jié)點到達起始位置代價最小的父節(jié)點,將新節(jié)點加入到節(jié)點集中;并對于所述鄰域半徑的范圍內(nèi)的節(jié)點,將新節(jié)點作為父節(jié)點后,如果代價降低,則將節(jié)點的父節(jié)點修改為所述新節(jié)點;
4、當滿足迭代終止條件時,輸出多個可達路徑,對多個可達路徑進行優(yōu)化,從優(yōu)化后的路徑中確定目標路徑。
5、優(yōu)選地,所述基于默認鄰域半徑內(nèi)障礙物分布和節(jié)點密度確定新節(jié)點的鄰域半徑,具體為:
6、計算在默認鄰域半徑的范圍內(nèi),障礙物在所述范圍內(nèi)的占比,并計算在所述范圍內(nèi)節(jié)點密度;
7、基于所述占比和所述節(jié)點密度確定新節(jié)點的鄰域半徑。
8、優(yōu)選地,所述對多個可達路徑進行優(yōu)化,具體為:
9、對于每個可達路徑,找到距離當前節(jié)點最遠且和當前節(jié)點的連線沒有與障礙物碰撞的節(jié)點,從所述可達路徑的節(jié)點集合中刪除當前節(jié)點到與當前節(jié)點連續(xù)的節(jié)點之間的節(jié)點,更新節(jié)點集合,在更新后的節(jié)點集合中從當前節(jié)點的下一個節(jié)點開始重復上面操作,直到節(jié)點集合的最后一個節(jié)點;
10、找到每個可達路徑中所有相鄰兩個節(jié)點構成的線段,判斷線段與障礙物的距離小于閾值的區(qū)域,沿著與所述線段垂直的方向,確定一個到障礙物的距離等于所述閾值的點,在所述節(jié)點集合的所述線段的兩個端點節(jié)點之間插入確定的點;在插入確定的點后更新節(jié)點集合,重復上述操作,直到所有線段不存到障礙物的距離小于閾值的區(qū)域。
11、優(yōu)選地,所述從優(yōu)化后的路徑中確定目標路徑,具體為:
12、計算起始位置和目標位置之間的直線距離,獲取優(yōu)化后路線長度,將所述路線長度和所述直線距離的比值作為優(yōu)化后路線的繞行程度;
13、計算優(yōu)化后路徑中所有相鄰線段之間的夾角的平均值,將所述平均值與2?的比值作為優(yōu)化后路線的平滑度;
14、基于所述繞行程度和平滑度從優(yōu)化后的路徑中確定目標路徑。
15、優(yōu)選地,所述基于所述繞行程度和平滑度從優(yōu)化后的路徑中確定目標路徑,具體為:
16、計算平滑度與繞行程度的比值,按照所述比值從大到小的順序?qū)?yōu)化后的路徑進行排序,將排序后的第一個路徑作為目標路徑。
17、第二個方面,本發(fā)明提供了一種機械臂路徑規(guī)劃系統(tǒng),所述系統(tǒng)包括以下模塊:
18、新節(jié)點生成模塊,用于獲取機械臂的起始位置和目標位置,初始化一棵樹,根節(jié)點為所述起始位置,樹的節(jié)點集初始為所述起始位置;在機械臂的工作空間隨機生成一個采樣點,找到與采樣點最近的節(jié)點,將所述最近的節(jié)點沿著采樣點的方向延伸預設距離得到新節(jié)點;
19、優(yōu)化模塊,用于基于默認鄰域半徑內(nèi)障礙物分布和節(jié)點密度確定新節(jié)點的鄰域半徑,在所述鄰域半徑的范圍內(nèi)找到使得新節(jié)點到達起始位置代價最小的父節(jié)點,將新節(jié)點加入到節(jié)點集中;并對于所述鄰域半徑的范圍內(nèi)的節(jié)點,將新節(jié)點作為父節(jié)點后,如果代價降低,則將節(jié)點的父節(jié)點修改為所述新節(jié)點;
20、最優(yōu)路徑確定模塊,用于當滿足迭代終止條件時,輸出多個可達路徑,對多個可達路徑進行優(yōu)化,從優(yōu)化后的路徑中確定目標路徑。
21、優(yōu)選地,所述基于默認鄰域半徑內(nèi)障礙物分布和節(jié)點密度確定新節(jié)點的鄰域半徑,具體為:
22、計算在默認鄰域半徑的范圍內(nèi),障礙物在所述范圍內(nèi)的占比,并計算在所述范圍內(nèi)節(jié)點密度;
23、基于所述占比和所述節(jié)點密度確定新節(jié)點的鄰域半徑。
24、優(yōu)選地,所述對多個可達路徑進行優(yōu)化,具體為:
25、對于每個可達路徑,找到距離當前節(jié)點最遠且和當前節(jié)點的連線沒有與障礙物碰撞的節(jié)點,從所述可達路徑的節(jié)點集合中刪除當前節(jié)點到與當前節(jié)點連續(xù)的節(jié)點之間的節(jié)點,更新節(jié)點集合,在更新后的節(jié)點集合中從當前節(jié)點的下一個節(jié)點開始重復上面操作,直到節(jié)點集合的最后一個節(jié)點;
26、找到每個可達路徑中所有相鄰兩個節(jié)點構成的線段,判斷線段與障礙物的距離小于閾值的區(qū)域,沿著與所述線段垂直的方向,確定一個到障礙物的距離等于所述閾值的點,在所述節(jié)點集合的所述線段的兩個端點節(jié)點之間插入確定的點;在插入確定的點后更新節(jié)點集合,重復上述操作,直到所有線段不存到障礙物的距離小于閾值的區(qū)域。
27、優(yōu)選地,所述從優(yōu)化后的路徑中確定目標路徑,具體為:
28、計算起始位置和目標位置之間的直線距離,獲取優(yōu)化后路線長度,將所述路線長度和所述直線距離的比值作為優(yōu)化后路線的繞行程度;
29、計算優(yōu)化后路徑中所有相鄰線段之間的夾角的平均值,將所述平均值與2?的比值作為優(yōu)化后路線的平滑度;
30、基于所述繞行程度和平滑度從優(yōu)化后的路徑中確定目標路徑。
31、優(yōu)選地,所述基于所述繞行程度和平滑度從優(yōu)化后的路徑中確定目標路徑,具體為:
32、計算平滑度與繞行程度的比值,按照所述比值從大到小的順序?qū)?yōu)化后的路徑進行排序,將排序后的第一個路徑作為目標路徑。
33、此外,本發(fā)明還提供了一種計算機設備,所述計算機設備至少包括存儲器和處理器,在所述存儲器上存儲有計算機程序,所述計算機程序在被處理器執(zhí)行時實現(xiàn)如第一個方面所述的方法。
34、另外,本發(fā)明提供一種計算機可讀存儲介質(zhì),所述可讀存儲介質(zhì)上存儲有計算機程序,其特征在于,所述計算機程序在被處理器執(zhí)行時實現(xiàn)如第一個方面所述的方法。
35、本發(fā)明對路徑規(guī)劃中新節(jié)點的鄰域半徑進行改進,在節(jié)點分布稀疏的區(qū)域能夠增大鄰域半徑,提高參與節(jié)點優(yōu)化的節(jié)點數(shù),而對于節(jié)點密集的區(qū)域,降低鄰域半徑,減少系統(tǒng)開銷,同樣地,對于障礙物密集的區(qū)域,減小鄰域半徑,能夠顯著減少碰撞檢測的計算開銷。此外,本發(fā)明還對得到路徑進一步篩選,根據(jù)路徑的長度和平滑度找到最適合機械臂的路徑。