本技術涉及機器人控制,更具體而言,涉及一種路徑規(guī)劃方法、路徑規(guī)劃裝置、機器人和非易失性計算機可讀存儲介質。
背景技術:
1、目前機器人在進行路徑規(guī)劃的時候,首先會獲得機器人當前的實時位置,然后計算整條路徑上與機器當前位置最近的路徑點,將路徑點作為機器人在路徑中的當前路徑點。接著選取當前路徑點的下一個路徑點作為目標路徑點,以控制機器人的移動路徑。但是這樣在規(guī)劃路徑交叉或者重合的情況下,容易發(fā)生定位出錯的情況,導致機器人丟失部分路徑進而失去部分目標區(qū)域。例如第25個路徑點和第50個路徑點重合,機器人執(zhí)行到第25個路徑點的情況下,將當前路徑點確定成第50個路徑點,并沿著第50個路徑點繼續(xù)行走,如此機器人就會丟失第25個路徑點到第50個路徑點之間的路徑,以及對應的目標區(qū)域。
技術實現(xiàn)思路
1、本技術實施方式提供一種路徑規(guī)劃方法、路徑規(guī)劃裝置、機器人和非易失性計算機可讀存儲介質,以提高目標路徑點的準確度,從而避免丟失規(guī)劃路徑導致目標區(qū)域缺失的問題發(fā)生。
2、本技術實施方式的路徑規(guī)劃方法包括確定機器人的當前位置;獲取所述機器人的當前剩余路徑,所述當前剩余路徑為所述機器人的全局路徑中待行進的路徑,所述全局路徑包括多個路徑點,每個所述路徑點設置有對應的標識號,所述標識號根據(jù)所述全局路徑中的路徑點的經(jīng)過的先后順序由小到大設置;根據(jù)所述當前位置與所述當前剩余路徑中的路徑點的距離,確定至少一個待選路徑點;根據(jù)所述至少一個待選路徑點的標識號的大小,從所述至少一個待選路徑點中,確定一個所述待選路徑點作為當前路徑點;從所述當前剩余路徑中刪除所述當前路徑點之前的路徑,得到目標路徑;將所述當前剩余路徑更新為所述目標路徑,以使所述機器人根據(jù)更新后的所述當前剩余路徑移動。
3、在某些實施方式中,所述根據(jù)所述至少一個待選路徑點的標識號的大小,從所述至少一個待選路徑點中,確定一個所述待選路徑點作為當前路徑點,包括:從所述至少一個待選路徑點中,確定標識號最小的待選路徑點為參考路徑點;確定所述當前位置與所述參考路徑點的連線,確定該連線與所述參考路徑點之后的路徑之間的夾角α;在0°≦α≦90°的情況下,則將所述參考路徑點從所述至少一個待選路徑點中刪除,并重新進入所述從所述至少一個待選路徑點中,確定標識號最小的待選路徑點為參考路徑點的步驟;在90°<α≦180°的情況下,則確定所述參考路徑點為所述當前路徑點。
4、在某些實施方式中,所述根據(jù)所述至少一個待選路徑點的標識號的大小,從所述至少一個待選路徑點中,確定一個所述待選路徑點作為當前路徑點,包括:從所述至少一個待選路徑點中,確定標識號最小的待選路徑點作為所述當前路徑點。
5、在某些實施方式中,在所述從所述至少一個待選路徑點中,確定標識號最小的待選路徑點作為所述當前路徑點之前,該方法還包括:確定所述當前位置與每個所述待選路徑點的連線,確定每個連線與對應的所述待選路徑點之后的路徑之間的夾角β;所述從所述至少一個待選路徑點中,確定標識號最小的待選路徑點作為所述當前路徑點,包括:從夾角β在(90°,180°]的待選路徑點中,確定標識號最小的待選路徑點作為所述當前路徑點。
6、在某些實施方式中,所述根據(jù)所述當前位置與所述當前剩余路徑中的路徑點的距離,確定至少一個待選路徑點,包括:從所述當前剩余路徑中的路徑點中,選擇標識號較小的前n個路徑點為中間路徑點,所述n為正整數(shù);計算每個所述中間路徑點與所述當前位置的距離;根據(jù)每個所述中間路徑點對應的距離,從該n個中間路徑點中,選擇距離較小的前m個中間路徑點作為所述待選路徑點,m為正整數(shù),m不大于n。
7、本技術實施方式的路徑規(guī)劃裝置包括第一確定模塊、第一獲取模塊、第二確定模塊、第三確定模塊、刪除模塊及更新模塊。所述第一確定模塊用于確定機器人的當前位置。所述第一獲取模塊用于獲取所述機器人的當前剩余路徑,所述當前剩余路徑為所述機器人的全局路徑中待行進的路徑,所述全局路徑包括多個路徑點,每個所述路徑點設置有對應的標識號,所述標識號根據(jù)所述全局路徑中的路徑點的經(jīng)過的先后順序由小到大設置。所述第二確定模塊用于根據(jù)所述當前位置與所述當前剩余路徑中的路徑點的距離,確定至少一個待選路徑點。所述第三確定模塊用于根據(jù)所述至少一個待選路徑點的標識號的大小,從所述至少一個待選路徑點中,確定一個所述待選路徑點作為當前路徑點。所述刪除模塊用于從所述當前剩余路徑中刪除所述當前路徑點之前的路徑,得到目標路徑。所述更新模塊用于將所述當前剩余路徑更新為所述目標路徑,以使所述機器人根據(jù)更新后的所述當前剩余路徑移動。
8、在某些實施方式中,所述第三確定模塊用于,從所述至少一個待選路徑點中,確定標識號最小的待選路徑點為參考路徑點;確定所述當前位置與所述參考路徑點的連線,確定該連線與所述參考路徑點之后的路徑之間的夾角α;在0°≦α≦90°的情況下,則將所述參考路徑點從所述至少一個待選路徑點中刪除,并重新進入所述從所述至少一個待選路徑點中,確定標識號最小的待選路徑點為參考路徑點的步驟;在90°<α≦180°的情況下,則確定所述參考路徑點為所述當前路徑點。
9、在某些實施方式中,所述第三確定模塊用于從所述至少一個待選路徑點中,確定標識號最小的待選路徑點作為所述當前路徑點。
10、在某些實施方式中,所述第三確定模塊用于確定所述當前位置與每個所述待選路徑點的連線,確定每個連線與對應的所述待選路徑點之后的路徑之間的夾角β,從夾角β在(90°,180°]內的待選路徑點中,確定標識號最小的待選路徑點作為所述當前路徑點。
11、在某些實施方式中,所述第二確定模塊用于從所述當前剩余路徑中的路徑點中,選擇標識號較小的前n個路徑點為中間路徑點,所述n為正整數(shù);計算每個所述中間路徑點與所述當前位置的距離;根據(jù)每個所述中間路徑點對應的距離,從該n個中間路徑點中,選擇距離較小的前m個中間路徑點作為所述待選路徑點,m為正整數(shù),m不大于n。
12、本技術實施方式的機器人包括處理器、存儲器及計算機程序,其中,所述計算機程序被存儲在所述存儲器中,并且被所述處理器執(zhí)行,所述計算機程序包括用于執(zhí)行上述任一實施方式所述的路徑規(guī)劃方法的指令。
13、本技術實施方式的非易失性計算機可讀存儲介質包括計算機程序,所述計算機程序被處理器執(zhí)行時,使得所述處理器執(zhí)行上述任一實施方式所述的路徑規(guī)劃方法。
14、本技術實施方式的路徑規(guī)劃方法、路徑規(guī)劃裝置、機器人和非易失性計算機可讀存儲介質,首先確定機器人的當前位置并獲取機器人的當前剩余路徑,其中,當前剩余路徑為機器人的全局路徑中待行進的路徑,且全局路徑包括多個路徑點,每個當前路徑點路徑點設置有對應的標識號,當前路徑點標識號根據(jù)當前路徑點全局路徑中的路徑點的經(jīng)過的先后順序由小到大設置。然后,根據(jù)當前位置與當前剩余路徑中的路徑點的距離,選取距離當前位置較近的路徑點作為待選路徑點,以確定至少一個待選路徑點。接著,可根據(jù)待選路徑點的標識號大小,從至少一個待選路徑點中,確定一個待選路徑點作為當前路徑點,以結合待選路徑點在當前剩余路徑中的順序以及待選路徑點和當前位置的距離來確定當前路徑點,從而選取出離當前位置較近,且標識號較小的當前路徑點。然后,從當前剩余路徑中刪除當前路徑點之前的路徑,得到目標路徑,并將當前剩余路徑更新為目標路徑,接著機器人可根據(jù)更新后的當前剩余路徑移動。如此,可準確地選取出能夠反應當前位置在當前剩余路徑中的位置的當前路徑點,并確保機器人能夠根據(jù)刪除當前路徑點之前的路徑確定的當前剩余路徑行進,即使在路徑重疊或交叉,且機器人還未經(jīng)過重疊的路徑點中標識號較小的路徑點的情況下,機器人也不會將重疊的路徑點中標識號較大的路徑點確認為當前路徑點,使得機器人可根據(jù)標識號較小的路徑點行進下去,如此便可確保當前路徑點的準確度,從而避免丟失規(guī)劃路徑導致目標區(qū)域缺失的問題發(fā)生。
15、本技術的實施方式的附加方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本技術的實施方式的實踐了解到。