本發明屬于agv導航,具體涉及一種agv路徑導航方法。
背景技術:
1、agv(自動導引車)導航是物流自動化領域的關鍵技術之一。其主要功能是使agv能夠準確、高效地在指定路線上行駛,完成貨物的搬運任務。agv導航系統通常依賴于傳感器獲取環境信息,通過算法處理這些信息,從而實現自主導航。
2、agv導航系統主要由以下幾個部分組成:激光雷達、控制器、驅動器和執行器。激光雷達作為核心傳感器,負責收集周圍環境信息,為agv導航提供精確的數據支持。控制器負責處理激光雷達采集的數據,制定行駛策略。驅動器接收控制器的指令,驅動agv的電機運行。執行器包括電機、車輪及中間傳動機構,負責實現agv的具體動作,如轉彎、加減速等。
3、傳統的agv導航方式是在slam(同時定位與建圖)激光建圖后進行點位和路徑關系的建立實現的。導航前,先在圖中建立點位,這里的點位包含了agv必然經過的工作點,還包含了為了實現路徑導航的大量,然后編輯點位之間的路徑關系,最后agv基于建立好的路徑關系進行導航。這種方式的缺陷在于:每個點位的每條路徑關系都喲啊進行手動編輯,對于幾百個點位的場景,可能需要編輯上千條路徑,部署和維護的工作量極大。在一些關鍵點位前或者是較為復雜的場景中,需要手動建立大量的輔助點用于過渡,進一步增加了工作量。
技術實現思路
1、本發明提出了一種環境自適應的agv路徑導航方法,其目的是:解決設置點位之間路徑關系工作量大的問題。
2、本發明技術方案如下:
3、一種環境自適應的agv路徑導航方法,步驟包括:
4、步驟1、agv掃描并建立地圖,明確地圖中障礙物的具體坐標;
5、步驟2、在地圖中選擇agv工作時必然經過的工作點,并確定工作點之間的連接關系;
6、步驟3、確定每一個連接關系所對應的路徑;
7、步驟4、當agv收到當前的移動任務后,搜尋當前所在的工作點與目標工作點之間所有的通過已知連接關系所能構成的路線,根據步驟3確立的路徑得到每條路線中每一連接關系對應的路徑長度,從而得到每條路線的總路徑長度,選擇總路徑長度最短的路線作為最終路線執行移動任務。
8、作為所述的環境自適應的agv路徑導航方法的進一步改進:步驟2中,還要確定每個工作點的默認朝向;工作時,agv到達某工作點后,將自動旋轉至該點的默認朝向。
9、作為所述的環境自適應的agv路徑導航方法的進一步改進:
10、設某個連接關系兩端的工作點分別是工作點a和工作點b,則確定該段路徑的具體方式為:
11、步驟3-1、如果工作點a和工作點b之間無障礙,則將工作點a和工作點b之間的直線段作為該連接關系的路徑;否則執行步驟3-2;
12、步驟3-2、通過選擇側方控制點的方式構建一條連接工作點a與工作點b且經過控制點的曲線,將該曲線作為該連接關系的路徑;如果不能構建滿足要求的曲線,則執行步驟3-3;
13、步驟3-3、通過逐步搜尋中間點的方式確立從工作點a到工作點b的路徑。
14、作為所述的環境自適應的agv路徑導航方法的進一步改進,步驟3-2中,構建所述曲線的方式為:
15、步驟3-2-1、選擇控制點c的初始位置;
16、步驟3-2-2、構建從工作點a到工作點b且經過控制點c的二階貝塞爾曲線,該曲線的公式為:
17、x(t)=(1-t)2xa+2t(1-t)xc+t2xb;
18、y(t)=(1-t)2ya+2t(1-t)yc+t2yb;
19、其中,t為該路徑內歸一化至[0,1]的時間參數,xa、ya分別為工作點a的x軸坐標和y軸坐標,xb、yb分別為工作點b的x軸坐標和y軸坐標,xc、yc分別為控制點c的x軸坐標和y軸坐標;
20、步驟3-2-3、計算當前構建的曲線的評估函數f;
21、步驟3-2-4、如果控制點c的更新迭代次數小于等于預設值,且本次的評估函數與上一次的評估函數之差小于預設閾值,則執行步驟3-2-6;如果控制點c的更新迭代次數小于等于預設值,且本次的評估函數與上一次的評估函數之差大于等于預設閾值,則跳轉至步驟3-2-5;如果控制點c的更新迭代次數大于預設值,則結束步驟3-2,執行步驟3-3;
22、步驟3-2-5、基于當前評估函數f的梯度更新控制點c的位置,然后跳轉至步驟3-2-2;
23、步驟3-2-6、將當前得到的曲線作為當前連接關系所對應的路徑。
24、作為所述的環境自適應的agv路徑導航方法的進一步改進,步驟3-2-5中更新控制點c的位置的方式為:
25、設當前控制點c的x軸坐標和y軸坐標分別為和則更新后的控制點c的x軸坐標和y軸坐標分別為:
26、
27、其中,η是學習率。
28、作為所述的環境自適應的agv路徑導航方法的進一步改進,所述評估函數f的計算方式為:
29、
30、其中,α、β和γ為預設的權重系數,l為當前構建的曲線的路徑長度,s為該曲線與障礙物之間的最小距離值,p為曲線的平滑度。
31、作為所述的環境自適應的agv路徑導航方法的進一步改進,評估函數f中:
32、路徑長度l的計算方式為:
33、
34、其中,
35、最小距離值s的計算方式為:
36、s=mint∈[0,1]distance(t);
37、其中,distance(t)為歸一化時間參數為t對應的曲線上的點與障礙物之間的距離;
38、平滑度p的計算方式為:
39、
40、作為所述的環境自適應的agv路徑導航方法的進一步改進,步驟3-3的具體過程為:
41、步驟3-3-1、初始化延伸距離step;
42、步驟3-3-2、將工作點a的坐標作為當前坐標(xnow,ynow),將構建地圖時為工作點a設置的默認朝向作為當前朝向θ;
43、步驟3-3-3、按當前朝向θ和延伸距離step確定一中間點d,其坐標為:
44、xd=xnow+step·cos(θ);
45、yd=ynow+step·sin(θ);
46、步驟3-3-4、判斷當前得到的中間點d是否滿足無障礙判斷條件,滿足則執行步驟3-3-5,否則執行步驟3-3-6;
47、所述無障礙判斷條件是指:從當前坐標位置移動到中間點d無障礙,且中間點d與最近障礙物之間的距離大于安全閾值sthreshold;所述安全閾值是指移動過程中agv與障礙物之間的最小安全距離;
48、步驟3-3-5、記錄下中間點d作為路徑途經點之一;如果當前中間點d與工作點b之間無障礙,則將工作點a、b以及所有記錄下的途經點用直線相連接,構成所要確定的路徑,結束步驟3-3,否則將中間點d的坐標作為當前坐標(xnow,ynow),將從上一位置至中間點d的方向作為當前朝向θ,然后跳轉至步驟3-3-2,尋找下一個中間點;
49、步驟3-3-6、更新延伸距離step=step-△s,△s為步長;如果當前延伸距離step大于0,則跳轉至步驟3-3-3,沿原朝向以新的延伸距離尋找下一個中間點;如果當前延伸距離step小于等于0,則將延伸距離step恢復至初始值,然后改變當前朝向θ,再跳轉至步驟3-3-3,按新的朝向尋找下一個中間點。
50、作為所述的環境自適應的agv路徑導航方法的進一步改進:將所述延伸距離step的初始值設定為安全閾值sthreshold的3倍,步長中△s=sthreshold/2。
51、作為所述的環境自適應的agv路徑導航方法的進一步改進:所述連接關系包括單向連接和雙向連接。
52、相對于現有技術,本發明具有以下積極效果:
53、1、本發明只需要標注少量的工作點和工作點之間的連接關系,在此基礎上,算法能夠自動確立每一個連接關系所對應的路徑,從而減少現場實施人員的工作量,提高工作效率。
54、2、傳統的導航方式,agv需要從大量的點位中確立需要經過的點位,才能確定下移動路線,計算量較大。而本發明只需要基于少量的工作點即可確定路線,降低了導航時的計算量,響應更加及時。
55、3、本發明充分考慮到了無障礙、有障礙兩種不同情況,同時對于有障礙的情況,進一步提出了貝塞爾曲線擬合和迭代搜索途經點兩種路徑確定方式,前者綜合考慮了路徑長度、安全距離和平滑度,可以得到較為理想的路徑,而后者則確保能夠到達目標位置,最終實現了路徑的有效、合理規劃。