本發(fā)明屬于無(wú)人機(jī)航路規(guī)劃,特別是一種針對(duì)障礙物繞行的民用運(yùn)投無(wú)人機(jī)航路自動(dòng)規(guī)劃方法。
背景技術(shù):
1、無(wú)人機(jī)具有立體機(jī)動(dòng)、快速靈活等優(yōu)點(diǎn),在地面環(huán)境復(fù)雜、樓宇林立、障礙多的城市環(huán)境中,采用無(wú)人機(jī)運(yùn)送小型設(shè)備、藥品、配件等關(guān)鍵物資,對(duì)于解決補(bǔ)給最后5公里配送的問(wèn)題具有明顯優(yōu)勢(shì)。
2、城市物資配送無(wú)人機(jī)大部分體積用于容納貨物,其航線與地面交通不產(chǎn)生沖突,并安裝有感知和避障裝置,可在專業(yè)飛手遠(yuǎn)程監(jiān)視下自主完成運(yùn)投任務(wù),極大程度提升無(wú)人機(jī)運(yùn)輸能力,解決城區(qū)地面障礙多、速度慢、可靠性差等問(wèn)題。但是,城區(qū)空域存在著復(fù)雜性,主要表現(xiàn)在空域管制限制因素多、中低空高障礙威脅,在保障物資運(yùn)投的安全性的前提下,還需要兼顧高時(shí)敏任務(wù)下的運(yùn)投效能,滿足城市運(yùn)輸對(duì)高價(jià)值、小體積、強(qiáng)時(shí)效的物資運(yùn)投需求,因此研究一種針對(duì)障礙物繞行的民用運(yùn)投無(wú)人機(jī)航路自動(dòng)規(guī)劃方法具有十分積極的意義,具有重要的應(yīng)用價(jià)值。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于針對(duì)上述現(xiàn)有技術(shù)存在的問(wèn)題,提供一種針對(duì)障礙物繞行的民用運(yùn)投無(wú)人機(jī)航路自動(dòng)規(guī)劃方法。
2、實(shí)現(xiàn)本發(fā)明目的的技術(shù)解決方案為:一種針對(duì)障礙物繞行的民用運(yùn)投無(wú)人機(jī)航路自動(dòng)規(guī)劃方法,所述方法包括以下步驟:
3、步驟1,獲取民用運(yùn)投無(wú)人機(jī)的運(yùn)投要求,包括起點(diǎn)位置信息、終點(diǎn)位置信息、運(yùn)輸距離和物資信息;所述起點(diǎn)位置信息包括起點(diǎn)經(jīng)緯度、高度,終點(diǎn)經(jīng)緯度高度,所述終點(diǎn)位置信息包括終點(diǎn)經(jīng)緯度、高度,物資信息包括物資類型、數(shù)量、重量;
4、步驟2,根據(jù)所述運(yùn)輸距離和物資信息確定航程、載重、掛載、速度的要求,并基于確定的要求匹配無(wú)人機(jī);
5、步驟3,根據(jù)限飛區(qū),利用改進(jìn)的基于自適應(yīng)變權(quán)重a*算法的航路規(guī)劃算法,規(guī)劃出無(wú)人機(jī)完成任務(wù)的最短路徑;根據(jù)禁飛區(qū)和限飛區(qū),利用改進(jìn)的基于自適應(yīng)變權(quán)重a*算法的航路規(guī)劃方法,規(guī)劃出無(wú)人機(jī)完成任務(wù)的最安全路徑,并對(duì)所述最短路徑、最安全路徑分別進(jìn)行評(píng)分;
6、步驟4,對(duì)所述最短路徑、最安全路徑經(jīng)過(guò)區(qū)域的環(huán)境進(jìn)行評(píng)分;
7、步驟5,對(duì)步驟3和步驟4的評(píng)分結(jié)果進(jìn)行加權(quán)平均,分別獲得所述最短路徑、最安全路徑的綜合評(píng)分;
8、步驟6,將綜合評(píng)分最高的路徑作為最終的規(guī)劃路徑。
9、進(jìn)一步地,步驟2所述基于確定的要求匹配無(wú)人機(jī),具體包括:
10、步驟2-1,選取滿足以下條件的無(wú)人機(jī)作為匹配的無(wú)人機(jī);
11、航程、載重、掛載、速度這四個(gè)屬性均滿足最接近對(duì)應(yīng)的要求;
12、步驟2-2,若不存在滿足上述條件的無(wú)人機(jī),則:
13、對(duì)航程、載重、掛載、速度這四個(gè)屬性進(jìn)行優(yōu)先級(jí)劃分;
14、針對(duì)優(yōu)先級(jí)最高的屬性,選擇最接近對(duì)應(yīng)要求的無(wú)人機(jī)作為匹配的無(wú)人機(jī)。
15、進(jìn)一步地,步驟2還包括:
16、計(jì)算并記錄無(wú)人機(jī)匹配度得分。
17、進(jìn)一步地,所述無(wú)人機(jī)匹配度得分的計(jì)算方式為:
18、分別計(jì)算無(wú)人機(jī)航程、載重、掛載、速度這四個(gè)屬性值接近對(duì)應(yīng)要求的接近程度值;
19、對(duì)計(jì)算得到的接近程度值進(jìn)行降序排列;
20、將最高的接近程度值作為無(wú)人機(jī)匹配度得分。
21、進(jìn)一步地,步驟3中所述改進(jìn)的基于自適應(yīng)變權(quán)重a*算法的航路規(guī)劃算法,具體包括:
22、對(duì)于a*算法中的啟發(fā)函數(shù)與代價(jià)函數(shù),采用曼哈頓距離進(jìn)行計(jì)算;
23、對(duì)自適應(yīng)變權(quán)重a*算法生成的路徑進(jìn)行全局二次優(yōu)化,優(yōu)化過(guò)程為:對(duì)路徑點(diǎn)集合進(jìn)行二次求導(dǎo)后生成拐點(diǎn)集,從起始位置開始依次判斷拐點(diǎn)集中任意連續(xù)點(diǎn)a、b、c?之間是否有障礙物,若沒(méi)有障礙物則直接連接?a、c拐點(diǎn),隨后判斷拐點(diǎn)集中a、c、d?之間是否存在障礙物,若沒(méi)有障礙物則去除冗余節(jié)點(diǎn)c,若有障礙物則保留拐點(diǎn)c,從起點(diǎn)到目標(biāo)點(diǎn)依次判斷可刪除拐點(diǎn),生成拐點(diǎn)集作為最終路徑。
24、進(jìn)一步地,所述改進(jìn)的基于自適應(yīng)變權(quán)重a*算法的航路規(guī)劃算法,具體過(guò)程包括:
25、步驟3-1,讀取輸入的待規(guī)劃地圖;
26、步驟3-2,初始化算法參數(shù),確定無(wú)人機(jī)初始位置與目標(biāo)位置;
27、步驟3-3,分別創(chuàng)建路徑集合列表、可規(guī)劃路徑集合open列表與封閉集合close列表,并初始化可規(guī)劃路徑集合open列表只有無(wú)人機(jī)初始位置,封閉集合close列表為空;
28、步驟3-4,檢查可規(guī)劃路徑集合open列表中已經(jīng)存儲(chǔ)的節(jié)點(diǎn),當(dāng)可規(guī)劃路徑集合open列表中只有初始位置時(shí),表示無(wú)人機(jī)沒(méi)有可行路徑;否則,利用代價(jià)函數(shù)選擇可規(guī)劃路徑集合open列表中的最小節(jié)點(diǎn);
29、步驟3-5,將最小節(jié)點(diǎn)從可規(guī)劃路徑集合open列表中刪除并添加至封閉集合close列表,判斷該點(diǎn)與目標(biāo)位置是否相同,若該點(diǎn)與目標(biāo)位置相同則說(shuō)明已經(jīng)迭代到目標(biāo)點(diǎn),結(jié)束迭代過(guò)程;若當(dāng)前節(jié)點(diǎn)與目標(biāo)位置不相同,則以當(dāng)前節(jié)點(diǎn)作為當(dāng)前起始位置,對(duì)可規(guī)劃路徑集合open列表繼續(xù)進(jìn)行擴(kuò)展,將無(wú)人機(jī)可行路徑點(diǎn)添加到封閉集合close列表,之后執(zhí)行步驟3-6;
30、步驟3-6,輸出封閉集合close列表中規(guī)劃完成的路徑集合,讀取障礙物數(shù)據(jù)庫(kù),根據(jù)經(jīng)緯度高度坐標(biāo)計(jì)算當(dāng)前路徑是否存在障礙物,根據(jù)障礙物坐標(biāo)查詢是否有對(duì)應(yīng)的歷史避障路線,如果存在歷史避障路線,則將歷史避障路線增補(bǔ)進(jìn)規(guī)劃路徑的對(duì)應(yīng)段,否則執(zhí)行步驟3-7;
31、步驟3-7,繼續(xù)檢測(cè)路徑合集列表,若當(dāng)前路徑連線不存在障礙物則刪除多余拐點(diǎn),并保存去除后的冗余節(jié)點(diǎn)集合,之后進(jìn)行路徑平滑處理。
32、步驟3-8,輸出最終的規(guī)劃路徑。
33、進(jìn)一步地,所述方法還包括,在步驟3之前執(zhí)行:構(gòu)建航路規(guī)劃模型,具體包括:
34、劃設(shè)規(guī)劃空域經(jīng)緯高度范圍;
35、將大地坐標(biāo)轉(zhuǎn)換為空間坐標(biāo);
36、對(duì)坐標(biāo)進(jìn)行歸一化處理;
37、結(jié)合空域的現(xiàn)有航線障礙及飛行限制約束進(jìn)行路徑規(guī)劃條件設(shè)定;
38、隨機(jī)生成不在障礙內(nèi)的起始點(diǎn);
39、生成一系列安全飛行航線并以航路點(diǎn)數(shù)據(jù)輸出。
40、進(jìn)一步地,步驟3中所述對(duì)所述最短路徑、最安全路徑分別進(jìn)行評(píng)分,具體包括:
41、針對(duì)所述最安全路徑,評(píng)分為滿分;
42、針對(duì)所述最短路徑,計(jì)算限飛區(qū)中路徑相對(duì)整個(gè)路徑的占比,將占比值作為評(píng)分值。
43、進(jìn)一步地,步驟4所述對(duì)所述最短路徑、最安全路徑經(jīng)過(guò)區(qū)域的環(huán)境進(jìn)行評(píng)分,具體包括:
44、確定影響評(píng)分的各環(huán)境因素;
45、針對(duì)各環(huán)境因素,劃分不同的等級(jí);
46、建立評(píng)分表,包括各環(huán)境因素的不同等級(jí)與評(píng)分值的一一對(duì)應(yīng)關(guān)系;
47、依據(jù)所述評(píng)分表,對(duì)環(huán)境進(jìn)行評(píng)分。
48、進(jìn)一步地,所述方法還包括:
49、步驟7,在無(wú)人機(jī)飛行過(guò)程中,無(wú)人機(jī)通過(guò)攝像頭采集并實(shí)時(shí)分析路徑上的過(guò)頂障礙物,結(jié)合空域航線障礙及飛行限制約束進(jìn)行條件設(shè)定,并根據(jù)所述基于自適應(yīng)變權(quán)重a*算法的航路規(guī)劃算法計(jì)算障礙繞行路線,進(jìn)行臨時(shí)避障;待無(wú)人機(jī)返回后將航路上的避障過(guò)程更新至障礙庫(kù)和避障路徑庫(kù),并儲(chǔ)存歷史避障路線。
50、本發(fā)明與現(xiàn)有技術(shù)相比,其顯著優(yōu)點(diǎn)為:
51、(1)綜合考慮航路規(guī)劃面臨安全性和時(shí)效性問(wèn)題,設(shè)計(jì)了一種針對(duì)障礙物繞行的民用運(yùn)投無(wú)人機(jī)航路自動(dòng)規(guī)劃方法,實(shí)現(xiàn)了從物品需求到航路規(guī)劃再到精準(zhǔn)避障的全流程。
52、(2)以解決民用無(wú)人運(yùn)投任務(wù)為出發(fā)點(diǎn),綜合考慮外部環(huán)境的實(shí)時(shí)變化,利用實(shí)時(shí)障礙探測(cè)結(jié)合歷史避障信息,提高無(wú)人機(jī)的安全規(guī)劃能力,使無(wú)人機(jī)在鬧市、山地、高原等不同環(huán)境下實(shí)現(xiàn)安全、自主的路徑規(guī)劃。
53、(3)以城市環(huán)境下高價(jià)值物資無(wú)人運(yùn)投任務(wù)為導(dǎo)向,提出了安全、時(shí)效均衡的航路規(guī)劃算法。
54、(4)提出了基于實(shí)測(cè)實(shí)飛的障礙庫(kù)構(gòu)建與更新方法,將避障飛行的實(shí)時(shí)路徑規(guī)劃和障礙物信息記錄下來(lái),形成歷史數(shù)據(jù),為后續(xù)數(shù)據(jù)的動(dòng)態(tài)更新和航路規(guī)劃提供數(shù)據(jù)支撐。
55、(5)本發(fā)明在使用自適應(yīng)變權(quán)重a*算法的基礎(chǔ)上,增加歷史避障數(shù)據(jù)適配方法,將歷史避障信息融合到路徑規(guī)劃,從而提高a*算法的避障的能力。
56、下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)描述。