飛行器及飛行器避障方法
【專利摘要】本發(fā)明公開了一種飛行器,所述飛行器包括機(jī)身,搭載在機(jī)身下的云臺,設(shè)置在云臺上的障礙物檢測模塊,設(shè)置在機(jī)身內(nèi)的獲取模塊、選擇模塊和控制模塊,其中:所述障礙物檢測模塊,用于檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物;所述獲取模塊,用于當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),獲取所述飛行器的運(yùn)行狀態(tài);所述選擇模塊,用于根據(jù)所述飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略;所述控制模塊,用于根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物。本發(fā)明還公開了一種飛行器避障方法。采用本發(fā)明,可靈活的對飛行器進(jìn)行控制,避開障礙物,避免飛行器受損。
【專利說明】
飛行器及飛行器避障方法
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及飛行器領(lǐng)域,尤其涉及一種飛行器及飛行器避障方法。
【背景技術(shù)】
[0002]目前,飛行器廣泛應(yīng)用于民用、商用及軍事領(lǐng)域,該飛行器如四軸飛行器、多旋翼飛行器、無人機(jī)飛行器、航模等。在民用領(lǐng)域,越來越多的極限運(yùn)動愛好者使用飛行器進(jìn)行攝錄,在商用領(lǐng)域,除搭載攝像設(shè)備對各項(xiàng)體育賽事進(jìn)行跟蹤航拍以外,并已進(jìn)入物流行業(yè),可以將貨物送往人力配送較難、較慢的偏遠(yuǎn)地區(qū),因此,飛行器有著廣泛的應(yīng)用范圍及廣闊的市場前景。飛行器的飛行模式一般包括手動模式和自動模式。在現(xiàn)有技術(shù)中,飛行器在飛行過程中,飛行器無法自動避障,容易撞到障礙物,導(dǎo)致飛行器受損,如:在手動模式下,人為控制控制遙控器,對飛行器進(jìn)行完全控制,人可以主動的觀察飛行器周圍的環(huán)境,防止飛行器撞到障礙物上,但是當(dāng)飛行器離視野較遠(yuǎn)、飛行環(huán)境復(fù)雜、操作失誤、新手進(jìn)行操作等一些因素,飛行器也會撞到障礙物上,導(dǎo)致飛行器受損,嚴(yán)重的導(dǎo)致墜機(jī);在自動模式下,飛行器完全自動飛行,飛行器只會按著預(yù)定的航線飛行,如果飛行器遇到障礙物時(shí),并不會繞開,飛行器撞到障礙物的幾率就更大。
[0003]上述內(nèi)容僅用于輔助理解本發(fā)明的技術(shù)方案,并不代表承認(rèn)上述內(nèi)容是現(xiàn)有技術(shù)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的主要目的在于提供一種飛行器及飛行器避障方法,旨在解決現(xiàn)有技術(shù)中,飛行器在運(yùn)行時(shí),無法自動避障,導(dǎo)致飛行器撞到障礙物,造成飛行器受損的技術(shù)問題。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明提供一種飛行器,所述飛行器包括:機(jī)身,搭載在機(jī)身下的云臺,設(shè)置在云臺上的障礙物檢測模塊,設(shè)置在機(jī)身內(nèi)的獲取模塊、選擇模塊和控制模塊,其中:
[0006]所述障礙物檢測模塊,用于檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物;
[0007]所述獲取模塊,用于當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),獲取所述飛行器的運(yùn)行狀態(tài);
[0008]所述選擇模塊,用于根據(jù)所述飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略;
[0009]所述控制模塊,用于根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物。
[0010]優(yōu)選地,所述選擇模塊還用于:
[0011]當(dāng)所述飛行器的運(yùn)行狀態(tài)為懸停狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇被動避障策略;
[0012]當(dāng)所述飛行器的運(yùn)行狀態(tài)為飛行狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇主動避障策略。
[0013]優(yōu)選地,所述控制模塊包括:
[0014]第一判斷單元,用于在所述避障策略為被動避障策略時(shí),判斷所述飛行器的預(yù)設(shè)范圍內(nèi)的障礙物是否只有一個(gè);
[0015]確定單元,用于在飛行器的預(yù)設(shè)范圍內(nèi)的障礙物只有一個(gè)時(shí),根據(jù)所述障礙物的飛行方向確定所述飛行器的第一飛行方向,所述第一飛行方向與所述障礙物的飛行方向成一第一預(yù)設(shè)角度;
[0016]第一控制單元,用于控制所述飛行器按照所述第一飛行方向飛行,以使飛行器避開障礙物。
[0017]優(yōu)選地,所述控制模塊還包括:
[0018]第一計(jì)算單元,用于在飛行器的預(yù)設(shè)范圍內(nèi)的障礙物有多個(gè)時(shí),以所述飛行器為圓心,依次計(jì)算相鄰兩個(gè)障礙物之間的角度,得到相鄰兩個(gè)障礙物之間的角度;
[0019]選擇單元,用于從相鄰兩個(gè)障礙物之間的角度中選擇出最大角度;
[0020]第二判斷單元,用于判斷所述選擇出的最大角度是否大于或等于預(yù)設(shè)的最小安全角度;
[0021]第二控制單元,用于在選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度時(shí),控制飛行器從所述最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛過,以使飛行器避開障礙物;及用于在選擇出的最大角度小于預(yù)設(shè)的最小安全角度時(shí),控制飛行器向上或向下飛行預(yù)設(shè)高度,以使飛行器避開障礙物。
[0022]優(yōu)選地,所述控制模塊包括:
[0023]第二計(jì)算單元,用于在所述避障策略為主動避障策略時(shí),根據(jù)飛行器的當(dāng)前飛行速度和預(yù)設(shè)的減速值,計(jì)算得到飛行器的目標(biāo)飛行速度;
[0024]第三控制單元,用于控制所述飛行器在當(dāng)前飛行方向按照目標(biāo)飛行速度飛行;
[0025]檢測單元,用于檢測以所述飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域是否有障礙物;
[0026]所述第三控制單元,還用于在以所述飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域沒有障礙物時(shí),控制所述飛行器向與當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域飛行,以使飛行器避開障礙物。
[0027]此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提供一種飛行器避障方法,應(yīng)用于上述的飛行器,所述方法包括:
[0028]檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物;
[0029]當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),獲取所述飛行器的運(yùn)行狀態(tài);
[0030]根據(jù)所述飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略;
[0031 ]根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物。
[0032]優(yōu)選地,根據(jù)所述飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略的步驟包括:
[0033]當(dāng)所述飛行器的運(yùn)行狀態(tài)為懸停狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇被動避障策略;
[0034]當(dāng)所述飛行器的運(yùn)行狀態(tài)為飛行狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇主動避障策略。
[0035]優(yōu)選地,所述根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的步驟包括:
[0036]當(dāng)所述避障策略為被動避障策略時(shí),判斷所述飛行器的預(yù)設(shè)范圍內(nèi)的障礙物是否只有一個(gè);
[0037]當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)的障礙物只有一個(gè)時(shí),根據(jù)所述障礙物的飛行方向確定所述飛行器的第一飛行方向,所述第一飛行方向與所述障礙物的飛行方向成一第一預(yù)設(shè)角度;
[0038]控制所述飛行器按照所述第一飛行方向飛行,以使飛行器避開障礙物。
[0039]優(yōu)選地,所述根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的步驟還包括:
[0040]當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)的障礙物有多個(gè)時(shí),以所述飛行器為圓心,依次計(jì)算相鄰兩個(gè)障礙物之間的角度,得到相鄰兩個(gè)障礙物之間的角度;
[0041]從相鄰兩個(gè)障礙物之間的角度中選擇出最大角度;
[0042]判斷所述選擇出的最大角度是否大于或等于預(yù)設(shè)的最小安全角度;
[0043]當(dāng)選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度時(shí),控制飛行器從所述最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛過,以使飛行器避開障礙物;
[0044]當(dāng)選擇出的最大角度小于預(yù)設(shè)的最小安全角度時(shí),控制飛行器向上或向下飛行預(yù)設(shè)高度,以使飛行器避開障礙物。
[0045]優(yōu)選地,根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的步驟包括:
[0046]當(dāng)所述避障策略為主動避障策略時(shí),根據(jù)飛行器的當(dāng)前飛行速度和預(yù)設(shè)的減速值,計(jì)算得到飛行器的目標(biāo)飛行速度;
[0047]控制所述飛行器在當(dāng)前飛行方向按照目標(biāo)飛行速度飛行;
[0048]檢測以所述飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域是否有障礙物;
[0049]當(dāng)以所述飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域沒有障礙物,則控制所述飛行器向與當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域飛行,以使飛行器避開障礙物。
[0050]本發(fā)明的飛行器及飛行器避障方法,該飛行器包括機(jī)身,搭載在機(jī)身下的云臺,設(shè)置在云臺上的障礙物檢測模塊,設(shè)置在機(jī)身內(nèi)的獲取模塊、選擇模塊和控制模塊,其中:所述障礙物檢測模塊,用于檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物;所述獲取模塊,用于當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),獲取所述飛行器的運(yùn)行狀態(tài);所述選擇模塊,用于根據(jù)所述飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略;所述控制模塊,用于根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物;可及時(shí)檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物,在該飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),根據(jù)飛行器的飛行狀態(tài)選擇避障策略,并根據(jù)選擇的避障策略控制飛行器飛行,可靈活的對飛行器進(jìn)行控制,避開障礙物,避免飛行器受損。
【附圖說明】
[0051 ]圖1為本發(fā)明飛行器的一實(shí)施例的結(jié)構(gòu)示意圖;
[0052]圖2為本發(fā)明飛行器中的控制模塊的一實(shí)施例的結(jié)構(gòu)示意圖;
[0053]圖3為本發(fā)明飛行器中的控制模塊的另一實(shí)施例的結(jié)構(gòu)示意圖;
[0054]圖4為本發(fā)明中障礙物分布示意圖;
[0055]圖5為本發(fā)明飛行器中的控制模塊的又一實(shí)施例的結(jié)構(gòu)示意圖;
[0056]圖6為本發(fā)明飛行器避障方法的一實(shí)施例的流程示意圖;
[0057]圖7為本發(fā)明飛行器避障方法中的根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的第一實(shí)施例的流程示意圖;
[0058]圖8為本發(fā)明飛行器避障方法中的根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的第二實(shí)施例的流程示意圖;
[0059]圖9為本發(fā)明飛行器避障方法中的根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的第三實(shí)施例的流程示意圖。
[0060]本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說明。
【具體實(shí)施方式】
[0061]應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0062]參照圖1,圖1為本發(fā)明飛行器的一實(shí)施例的結(jié)構(gòu)示意圖,該飛行器包括:機(jī)身,搭載在機(jī)身下的云臺,設(shè)置在云臺上的障礙物檢測模塊10,設(shè)置在機(jī)身內(nèi)的獲取模塊20、選擇模塊30和控制模塊40,其中:
[0063]該障礙物檢測模塊10,用于檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物;
[0064]該獲取模塊20,用于當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),獲取該飛行器的運(yùn)行狀態(tài);
[0065]該選擇模塊30,用于根據(jù)該飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略;
[0066]該控制模塊40,用于根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物。
[0067]該飛行器可以是四軸飛行器、多旋翼飛行器、無人機(jī)飛行器、航模等。
[0068]該障礙物檢測模塊10固定在云臺上,該障礙物檢測模塊10保持水平狀態(tài),不管飛行器當(dāng)前是水平飛行還是以一傾角飛行,該障礙物檢測模塊10都可以檢測到以該飛行器為圓心,周圍處于水平面的障礙物。
[0069]該障礙物檢測模塊10包括測距傳感器和馬達(dá),該測距傳感器固定在馬達(dá)上,隨著馬達(dá)旋轉(zhuǎn)而旋轉(zhuǎn),具體的,該測距傳感器隨著馬達(dá)旋轉(zhuǎn)在水平方向旋轉(zhuǎn),以測量飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物。該馬達(dá)每秒鐘可旋轉(zhuǎn)預(yù)設(shè)圈數(shù),旋轉(zhuǎn)角度的精度為I??蛇x的,該測距傳感器的量程為15米。該測距傳感器可以為超聲波測距傳感器、紅外測距傳感器、激光測距傳感器、雷達(dá)測距傳感器等。
[0070]該預(yù)設(shè)范圍可根據(jù)需要設(shè)置,可選的,該預(yù)設(shè)范圍為以飛行器為圓心,以第一預(yù)設(shè)距離為半徑的水平范圍,該第一預(yù)設(shè)距離可根據(jù)需要設(shè)置,在一實(shí)施例中,該第一預(yù)設(shè)距離為8米。
[0071]該障礙物檢測模塊10檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物,具體的,該障礙物檢測模塊10檢測飛行器的預(yù)設(shè)范圍內(nèi)是否連續(xù)預(yù)設(shè)個(gè)數(shù)的單位角度對應(yīng)的區(qū)域有障礙物且障礙物與飛行器的距離小于或等于預(yù)設(shè)安全距離,若該飛行器的預(yù)設(shè)范圍內(nèi)連續(xù)預(yù)設(shè)個(gè)數(shù)的單位角度對應(yīng)的區(qū)域有障礙物且障礙物與飛行器的距離小于或等于預(yù)設(shè)安全距離,則確定該飛行器的預(yù)設(shè)范圍內(nèi)有障礙物。該單位角度為I,該預(yù)設(shè)個(gè)數(shù)可根據(jù)需要設(shè)置,如,在一實(shí)施例中,該預(yù)設(shè)個(gè)數(shù)為3,該預(yù)設(shè)安全距離為8米,則該障礙物檢測模塊10檢測該飛行器的預(yù)設(shè)范圍內(nèi)是否連續(xù)3個(gè)I對應(yīng)的區(qū)域有障礙物且障礙物與飛行器的距離小于或等于8米,如果該飛行器的預(yù)設(shè)范圍內(nèi)連續(xù)3個(gè)I對應(yīng)的區(qū)域有障礙物且障礙物與飛行器的距離小于或等于8米,則確定該飛行器的預(yù)設(shè)范圍內(nèi)有障礙物。
[0072]該獲取模塊20獲取飛行器的運(yùn)行狀態(tài),該運(yùn)行狀態(tài)包括:懸停狀態(tài)、飛行狀態(tài)。其中,該飛行器的飛行模式可以為自動模式或手動模式。
[0073]預(yù)先設(shè)置避障策略列表,在該避障策略列表中,通常的,不同運(yùn)行狀態(tài)對應(yīng)不同的避障策略。該避障策略包括主動避障策略和被動避障策略。
[0074]該選擇模塊30根據(jù)飛行器的運(yùn)行狀態(tài),從該避障策略列表中選擇對應(yīng)的避障策略??蛇x的,該選擇模塊30還用于:當(dāng)該飛行器的運(yùn)行狀態(tài)為懸停狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇被動避障策略;當(dāng)該飛行器的運(yùn)行狀態(tài)為飛行狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇主動避障策略。
[0075]該控制模塊40根據(jù)選擇的避障策略控制飛行器飛行,具體的,修改該飛行器的飛行參數(shù),如,修改該飛行器的飛行方向、飛行速度或飛行高度等,以使飛行器避開障礙物。
[0076]采用上述實(shí)施例,通過檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物,當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),獲取該飛行器的運(yùn)行狀態(tài);并根據(jù)該飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略;再根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物;可及時(shí)檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物,在該飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),根據(jù)飛行器的飛行狀態(tài)選擇避障策略,并根據(jù)選擇的避障策略控制飛行器飛行,可靈活的對飛行器進(jìn)行控制,避開障礙物,避免飛行器受損。
[0077]進(jìn)一步的,如圖2所示,該控制模塊40包括:
[0078]第一判斷單元41,用于在該避障策略為被動避障策略時(shí),判斷該飛行器的預(yù)設(shè)范圍內(nèi)的障礙物是否只有一個(gè);
[0079]確定單元42,用于在飛行器的預(yù)設(shè)范圍內(nèi)的障礙物只有一個(gè)時(shí),根據(jù)該障礙物的飛行方向確定該飛行器的第一飛行方向,該第一飛行方向與該障礙物的飛行方向成一第一預(yù)設(shè)角度;
[0080]第一控制單元43,用于控制該飛行器按照該第一飛行方向飛行,以使飛行器避開障礙物。
[0081 ]該第一判斷單元41在該避障策略為被動避障策略時(shí),判斷該飛行器的預(yù)設(shè)范圍內(nèi)的障礙物是否只有一個(gè);具體的,該第一判斷單元41接收障礙物檢測模塊10檢測到的該飛行器在預(yù)設(shè)范圍內(nèi)的障礙物數(shù)據(jù),并根據(jù)接收的障礙物數(shù)據(jù)確定障礙物是否只有一個(gè),該障礙物數(shù)據(jù)包括障礙物距離、障礙物角度和障礙物數(shù)量,其中,障礙物角度可根據(jù)障礙物檢測模塊1中的馬達(dá)的當(dāng)前旋轉(zhuǎn)位置確定。
[0082]該第一預(yù)設(shè)角度可根據(jù)需要設(shè)置,如在一實(shí)施例中,該第一預(yù)設(shè)角度為90或-90度。
[0083]該確定單元42根據(jù)該障礙物的飛行方向確定該飛行器的第一飛行方向,該第一飛行方向與該障礙物的飛行方向不同,該第一飛行方向與該障礙物的飛行方向成一第一預(yù)設(shè)角度,如在一實(shí)施例中,該障礙物在飛行器的正后方,朝著飛行器飛行,則該飛行器的第一飛行方向與該障礙物的飛行方向成90或-90,即該飛行器沿水平方向向左偏90或沿水平方向向右偏90飛行。
[0084]該第一控制單元43控制該飛行器按照該第一飛行方向飛行,具體的,可控制該飛行器按照該第一飛行方向飛行預(yù)設(shè)時(shí)長或第二預(yù)設(shè)距離,可選的,控制該飛行器按照該第一飛行方向以默認(rèn)的飛行速度飛行。該預(yù)設(shè)時(shí)長和第二預(yù)設(shè)距離可根據(jù)需要設(shè)置,如在一實(shí)施例中,該預(yù)設(shè)時(shí)長為2秒鐘,該第二預(yù)設(shè)距離為20米。
[0085]進(jìn)一步的,如圖3所示,該控制模塊40還包括:
[0086]第一計(jì)算單元44,用于在飛行器的預(yù)設(shè)范圍內(nèi)的障礙物有多個(gè)時(shí),以該飛行器為圓心,依次計(jì)算相鄰兩個(gè)障礙物之間的角度,得到相鄰兩個(gè)障礙物之間的角度;
[0087]選擇單元45,用于從相鄰兩個(gè)障礙物之間的角度中選擇出最大角度;
[0088]第二判斷單元46,用于判斷該選擇出的最大角度是否大于或等于預(yù)設(shè)的最小安全角度;
[0089]第二控制單元47,用于在選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度時(shí),控制飛行器從該最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛過,以使飛行器避開障礙物;及用于在選擇出的最大角度小于預(yù)設(shè)的最小安全角度時(shí),控制飛行器向上或向下飛行預(yù)設(shè)高度,以使飛行器避開障礙物。
[0090]該第一計(jì)算單元44在該飛行器的預(yù)設(shè)范圍內(nèi)的障礙物有多個(gè)時(shí),依次計(jì)算相鄰兩個(gè)障礙物之間的角度,得到相鄰兩個(gè)障礙物之間的角度,具體的,以飛行器為圓心,分別計(jì)算相鄰兩個(gè)障礙物之間的角度,如圖4所示,在一實(shí)施例中,障礙物共有5個(gè),分別為Z1、Z2、Z3、Z4和Z5,飛行器所在位置為O點(diǎn),該第一計(jì)算單元44依次計(jì)算Zl與Z2之間的角度、Z2與Z3之間的角度、Z3與Z4之間的角度、Z4與Z5之間的角度、Z5與Zl之間的角度,得到相鄰兩個(gè)障礙物之間的角度分別為01、(12、€[3、€[4、€[5。
[0091]該選擇單元45從第一計(jì)算單元44計(jì)算出的相鄰兩個(gè)障礙物之間的角度中選擇出最大角度,如第一計(jì)算單元44計(jì)算出的角度有(11、€[2、€[3、€[4、€[5,其中,α4最大,則該選擇單元45選擇出的最大角度為α4。
[0092]該預(yù)設(shè)的最小安全角度αΟ可根據(jù)需要預(yù)先設(shè)置,該最小安全角度為飛行器能順利通過的最小角度。
[0093]該第二判斷單元46判斷選擇單元45選擇出的最大角度是否大于或等于預(yù)設(shè)的最小安全角度,如果選擇單元45選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度,則說明飛行器可從該選擇的最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛出去,如果選擇單元45選擇出的最大角度小于預(yù)設(shè)的最小安全角度,則說明飛行器不能從該選擇的最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛出去,即該飛行器飛在水平方向上飛向任何角度都無法繞開障礙物。如,該第二判斷單元46判斷該選擇單元45選擇出的最大角度α4是否大于或等于預(yù)設(shè)的最小安全角度αΟ。
[0094]該第二控制單元47在選擇單元45選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度時(shí),控制飛行器從該最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛過,如選擇單元45選擇出的最大角度α4大于或等于預(yù)設(shè)的最小安全角度αΟ,該最大角度α4對應(yīng)的相鄰兩個(gè)障礙物為Ζ4和Ζ5,則控制該飛行器從該障礙物Ζ4和Ζ5之間飛過,以使飛行器避開障礙物。即在選擇單元45選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度時(shí),該第二控制單元47控制該飛行器從水平方向飛出障礙物的包圍。
[0095]該第二控制單元47在選擇單元45選擇出的最大角度小于預(yù)設(shè)的最小安全角度時(shí),控制飛行器向上或向下飛行預(yù)設(shè)高度,即在選擇單元45選擇出的最大角度小于預(yù)設(shè)的最小安全角度時(shí),說明飛行器在水平方向向任何角度飛都無法避開障礙物,因此,飛行器放棄水平突破,轉(zhuǎn)而進(jìn)行垂直突破,即第二控制單元47控制飛行器向上或向下飛行預(yù)設(shè)高度,可選的,可控制飛行器以默認(rèn)的飛行速度向上或向下飛行預(yù)設(shè)高度,如,當(dāng)飛行器處于室外時(shí),可控制飛行器向上飛行預(yù)設(shè)高度;當(dāng)飛行器處于室內(nèi)時(shí),可控制飛行器向下飛行預(yù)設(shè)高度。
[0096]進(jìn)一步的,如圖5所示,該控制模塊40包括:
[0097]第二計(jì)算單元48,用于在該避障策略為主動避障策略時(shí),根據(jù)飛行器的當(dāng)前飛行速度和預(yù)設(shè)的減速值,計(jì)算得到飛行器的目標(biāo)飛行速度;
[0098]第三控制單元49,用于控制該飛行器在當(dāng)前飛行方向按照目標(biāo)飛行速度飛行;
[0099]檢測單元50,用于檢測以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域是否有障礙物;
[0100]該第三控制單元49,還用于在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域沒有障礙物時(shí),控制該飛行器向與當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域飛行,以使飛行器避開障礙物。
[0101]該預(yù)設(shè)的減速值可根據(jù)需要預(yù)先設(shè)置。
[0102]該第二計(jì)算單元48在該該避障策略為主動避障策略時(shí),即該飛行器的運(yùn)行狀態(tài)為飛行狀態(tài)時(shí),獲取飛行器的當(dāng)前飛行速度,并根據(jù)該飛行器的當(dāng)前飛行速度和預(yù)設(shè)的減速值,得到飛行器的目標(biāo)飛行速度,該目標(biāo)飛行速度通過以下公式計(jì)算得到,V = Vl-VO,其中,V表示飛行器的目標(biāo)飛行速度,Vl表示飛行器的當(dāng)前飛行速度,VO表示預(yù)設(shè)的減速值。
[0103]該第三控制單元49控制飛行器在當(dāng)前飛行方向按照目標(biāo)飛行速度飛行,即當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物,且飛行器當(dāng)前處于飛行狀態(tài)時(shí),先對該飛行器進(jìn)行減速。
[0104]該檢測單元50在第三控制單元49控制飛行器減速的同時(shí),檢測以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域是否有障礙物,該第二預(yù)設(shè)角度和安全半徑可根據(jù)需要設(shè)置,如該第二預(yù)設(shè)角度為90或-90,該安全半徑為8米;則該檢測單元50檢測以該飛行器為圓心,以飛行器當(dāng)前飛行方向成90或-90且在安全半徑為8米內(nèi)的區(qū)域是否有障礙物。
[0105]該第三控制單元49還用于在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域沒有障礙物時(shí),控制該飛行器向與當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域飛行,以使飛行器避開障礙物。如在一實(shí)施例中,該檢測單元50檢測到與該飛行器為圓心,與飛行器當(dāng)前飛行方向成90或-90且在安全半徑為8米內(nèi)內(nèi)的區(qū)域沒有障礙物,則控制控制器沿水平方向向左偏90或沿水平方向向有偏90飛行,此時(shí)飛行器在做減速運(yùn)動,速度尚未減到O,加上90°或-90°的水平方向的運(yùn)動,飛行器實(shí)際運(yùn)動方向是兩個(gè)分運(yùn)動的矢量合運(yùn)動。在該飛行器避開障礙物后,該第三控制單元49控制飛行器返回到原來的航線上飛行。
[0106]可選的,該檢測單元50還用于在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域有障礙物時(shí),檢測以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第三預(yù)設(shè)角度至第四預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域是否有障礙物,該第三預(yù)設(shè)角度的絕對值大于或等于第二預(yù)設(shè)角度的絕對值,該第四預(yù)設(shè)角度的絕對值大于第三預(yù)設(shè)角度的絕對值;如在一實(shí)施例中,該第二預(yù)設(shè)角度為90°,該第三預(yù)設(shè)角度為90°,該第四預(yù)設(shè)角度為180° ;在另一實(shí)施例中,該第二預(yù)設(shè)角度為-90°,該第三預(yù)設(shè)角度為-90°,該第四預(yù)設(shè)角度為-180°。
[0107]可選的,該第三控制單元49還用于在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第三預(yù)設(shè)角度至第四預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域沒有障礙物時(shí),控制飛行器向與當(dāng)前飛行方向成第五預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域飛行,以使飛行器避開障礙物。該第五預(yù)設(shè)角度在該第三預(yù)設(shè)角度至第四預(yù)設(shè)角度之間。如該第三預(yù)設(shè)角度為90°,該第四預(yù)設(shè)角度為180°,則該第五預(yù)設(shè)角度可以為120°。
[0108]可選的,該第三控制單元49還用于在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域有障礙物時(shí),或在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第三預(yù)設(shè)角度至第四預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域有障礙物時(shí),控制飛行器懸停,并發(fā)出報(bào)警信息。該報(bào)警信息為聲音信息或光信息,如通過喇叭發(fā)出報(bào)警信息或通過飛行器上的LED閃爍發(fā)出報(bào)警信息。
[0109]參照圖6,圖6為本發(fā)明飛行器避障方法的一實(shí)施例的流程示意圖,該方法應(yīng)用于上述任一實(shí)施例的飛行器上,該方法包括:
[0110]S10、檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物。
[0111]該飛行器包括:機(jī)身,搭載在機(jī)身下的云臺,設(shè)置在云臺上的障礙物檢測模塊,設(shè)置在機(jī)身內(nèi)的獲取模塊、選擇模塊和控制模塊。
[0112]該飛行器可以是四軸飛行器、多旋翼飛行器、無人機(jī)飛行器、航模等。
[0113]該障礙物檢測模塊固定在云臺上,該障礙物檢測模塊保持水平狀態(tài),不管飛行器當(dāng)前是水平飛行還是以一傾角飛行,該障礙物檢測模塊都可以檢測到以該飛行器為圓心,周圍處于水平面的障礙物。
[0114]該障礙物檢測模塊包括測距傳感器和馬達(dá),該測距傳感器固定在馬達(dá)上,隨著馬達(dá)旋轉(zhuǎn)而旋轉(zhuǎn),具體的,該測距傳感器隨著馬達(dá)旋轉(zhuǎn)在水平方向旋轉(zhuǎn),以測量飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物。該馬達(dá)每秒鐘可旋轉(zhuǎn)預(yù)設(shè)圈數(shù),旋轉(zhuǎn)角度的精度為I??蛇x的,該測距傳感器的量程為15米。該測距傳感器可以為超聲波測距傳感器、紅外測距傳感器、激光測距傳感器、雷達(dá)測距傳感器等。
[0115]該預(yù)設(shè)范圍可根據(jù)需要設(shè)置,可選的,該預(yù)設(shè)范圍為以飛行器為圓心,以第一預(yù)設(shè)距離為半徑的水平范圍,該第一預(yù)設(shè)距離可根據(jù)需要設(shè)置,在一實(shí)施例中,該第一預(yù)設(shè)距離為8米。
[0116]在該步驟中,該障礙物檢測模塊檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物,具體的,該障礙物檢測模塊檢測飛行器的預(yù)設(shè)范圍內(nèi)是否連續(xù)預(yù)設(shè)個(gè)數(shù)的單位角度對應(yīng)的區(qū)域有障礙物且障礙物與飛行器的距離小于或等于預(yù)設(shè)安全距離,若該飛行器的預(yù)設(shè)范圍內(nèi)連續(xù)預(yù)設(shè)個(gè)數(shù)的單位角度對應(yīng)的區(qū)域有障礙物且障礙物與飛行器的距離小于或等于預(yù)設(shè)安全距離,則確定該飛行器的預(yù)設(shè)范圍內(nèi)有障礙物。該單位角度為I,該預(yù)設(shè)個(gè)數(shù)可根據(jù)需要設(shè)置,如,在一實(shí)施例中,該預(yù)設(shè)個(gè)數(shù)為3,該預(yù)設(shè)安全距離為8米,則該障礙物檢測模塊檢測該飛行器的預(yù)設(shè)范圍內(nèi)是否連續(xù)3個(gè)I對應(yīng)的區(qū)域有障礙物且障礙物與飛行器的距離小于或等于8米,如果該飛行器的預(yù)設(shè)范圍內(nèi)連續(xù)3個(gè)I對應(yīng)的區(qū)域有障礙物且障礙物與飛行器的距離小于或等于8米,則確定該飛行器的預(yù)設(shè)范圍內(nèi)有障礙物。
[0117]S20、當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),獲取該飛行器的運(yùn)行狀態(tài)。
[0118]在該步驟中,該獲取模塊獲取飛行器的運(yùn)行狀態(tài),該運(yùn)行狀態(tài)包括:懸停狀態(tài)、飛行狀態(tài)。其中,該飛行器的飛行模式可以為自動模式或手動模式。
[0119]S30、根據(jù)該飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略。
[0120]預(yù)先設(shè)置避障策略列表,在該避障策略列表中,通常的,不同運(yùn)行狀態(tài)對應(yīng)不同的避障策略。該避障策略包括主動避障策略和被動避障策略。
[0121]在該步驟中,該選擇模塊根據(jù)飛行器的運(yùn)行狀態(tài),從該避障策略列表中選擇對應(yīng)的避障策略。可選的,根據(jù)該飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略的步驟包括:當(dāng)該飛行器的運(yùn)行狀態(tài)為懸停狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇被動避障策略;當(dāng)該飛行器的運(yùn)行狀態(tài)為飛行狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇主動避障策略。
[0122]S40、根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物。
[0123]在該步驟中,該控制模塊根據(jù)選擇的避障策略控制飛行器飛行,具體的,修改該飛行器的飛行參數(shù),如,修改該飛行器的飛行方向、飛行速度或飛行高度等,以使飛行器避開障礙物。
[0124]采用上述實(shí)施例,通過檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物,當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),獲取該飛行器的運(yùn)行狀態(tài);并根據(jù)該飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略;再根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物;可及時(shí)檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物,在該飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),根據(jù)飛行器的飛行狀態(tài)選擇避障策略,并根據(jù)選擇的避障策略控制飛行器飛行,可靈活的對飛行器進(jìn)行控制,避開障礙物,避免飛行器受損。
[0125]參照圖7,圖7為本發(fā)明飛行器避障方法中的根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的第一實(shí)施例的流程示意圖,詳述如下:
[0126]S41、當(dāng)該避障策略為被動避障策略時(shí),判斷該飛行器的預(yù)設(shè)范圍內(nèi)的障礙物是否只有一個(gè)。
[0127]在該步驟中,該控制模塊中的第一判斷單元在該避障策略為被動避障策略時(shí),判斷該飛行器的預(yù)設(shè)范圍內(nèi)的障礙物是否只有一個(gè);具體的,該第一判斷單元接收障礙物檢測模塊檢測到的該飛行器在預(yù)設(shè)范圍內(nèi)的障礙物數(shù)據(jù),并根據(jù)接收的障礙物數(shù)據(jù)確定障礙物是否只有一個(gè),該障礙物數(shù)據(jù)包括障礙物距離、障礙物角度和障礙物數(shù)量,其中,障礙物角度可根據(jù)障礙物檢測模塊中的馬達(dá)的當(dāng)前旋轉(zhuǎn)位置確定。
[0128]該第一預(yù)設(shè)角度可根據(jù)需要設(shè)置,如在一實(shí)施例中,該第一預(yù)設(shè)角度為90或-90度。
[0129]S42、當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)的障礙物只有一個(gè)時(shí),根據(jù)該障礙物的飛行方向確定該飛行器的第一飛行方向,該第一飛行方向與該障礙物的飛行方向成一第一預(yù)設(shè)角度。
[0130]在該步驟中,該控制模塊中的確定單元根據(jù)該障礙物的飛行方向確定該飛行器的第一飛行方向,該第一飛行方向與該障礙物的飛行方向不同,該第一飛行方向與該障礙物的飛行方向成一第一預(yù)設(shè)角度,如在一實(shí)施例中,該障礙物在飛行器的正后方,朝著飛行器飛行,則該飛行器的第一飛行方向與該障礙物的飛行方向成90或-90,即該飛行器沿水平方向向左偏90或沿水平方向向右偏90飛行。
[0131]S43、控制該飛行器按照該第一飛行方向飛行,以使飛行器避開障礙物。
[0132]在該步驟中,該控制模塊中的第一控制單元控制該飛行器按照該第一飛行方向飛行,具體的,可控制該飛行器按照該第一飛行方向飛行預(yù)設(shè)時(shí)長或第二預(yù)設(shè)距離,可選的,控制該飛行器按照該第一飛行方向以默認(rèn)的飛行速度飛行。該預(yù)設(shè)時(shí)長和第二預(yù)設(shè)距離可根據(jù)需要設(shè)置,如在一實(shí)施例中,該預(yù)設(shè)時(shí)長為2秒鐘,該第二預(yù)設(shè)距離為20米。
[0133]參照圖8,圖8為本發(fā)明飛行器避障方法中的根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的第二實(shí)施例的流程示意圖。
[0134]基于上述根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的第一實(shí)施例,根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的步驟還包括:
[0135]S44、當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)的障礙物有多個(gè)時(shí),以該飛行器為圓心,依次計(jì)算相鄰兩個(gè)障礙物之間的角度,得到相鄰兩個(gè)障礙物之間的角度。
[0136]在該步驟中,該控制模塊中的第一計(jì)算單元在該飛行器的預(yù)設(shè)范圍內(nèi)的障礙物有多個(gè)時(shí),依次計(jì)算相鄰兩個(gè)障礙物之間的角度,得到相鄰兩個(gè)障礙物之間的角度,具體的,以飛行器為圓心,分別計(jì)算相鄰兩個(gè)障礙物之間的角度,如圖4所示,在一實(shí)施例中,障礙物共有5個(gè),分別為Z1、Z2、Z3、Z4和Z5,飛行器所在位置為O點(diǎn),該第一計(jì)算單元依次計(jì)算Zl與Z2之間的角度、Z2與Z3之間的角度、Z3與Z4之間的角度、Z4與Z5之間的角度、Z5與Zl之間的角度,得到相鄰兩個(gè)障礙物之間的角度分別為<11、(12、(13、(14、(15。
[0137]S45、從相鄰兩個(gè)障礙物之間的角度中選擇出最大角度。
[0138]在該步驟中,該控制模塊中的選擇單元從第一計(jì)算單元計(jì)算出的相鄰兩個(gè)障礙物之間的角度中選擇出最大角度,如第一計(jì)算單元計(jì)算出的角度有α1、α2、α3、α4、α5,其中,α4最大,則該選擇單元選擇出的最大角度為α4。
[0139]S46、判斷該選擇出的最大角度是否大于或等于預(yù)設(shè)的最小安全角度。
[0140]該預(yù)設(shè)的最小安全角度αΟ可根據(jù)需要預(yù)先設(shè)置,該最小安全角度為飛行器能順利通過的最小角度。
[0141]在該步驟中,該控制模塊中的第二判斷單元判斷選擇單元選擇出的最大角度是否大于或等于預(yù)設(shè)的最小安全角度,如果選擇單元選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度,則說明飛行器可從該選擇的最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛出去,如果選擇單元選擇出的最大角度小于預(yù)設(shè)的最小安全角度,則說明飛行器不能從該選擇的最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛出去,即該飛行器飛在水平方向上飛向任何角度都無法繞開障礙物。如,該第二判斷單元判斷該選擇單元選擇出的最大角度α4是否大于或等于預(yù)設(shè)的最小安全角度αΟ。
[0142]S47、當(dāng)選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度時(shí),控制飛行器從該最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛過,以使飛行器避開障礙物。
[0143]在該步驟中,該控制模塊中的第二控制單元在選擇單元選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度時(shí),控制飛行器從該最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛過,如選擇單元選擇出的最大角度α4大于或等于預(yù)設(shè)的最小安全角度αΟ,該最大角度α4對應(yīng)的相鄰兩個(gè)障礙物為Ζ4和Ζ5,則控制該飛行器從該障礙物Ζ4和Ζ5之間飛過,以使飛行器避開障礙物。即在選擇單元選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度時(shí),該第二控制單元控制該飛行器從水平方向飛出障礙物的包圍。
[0144]S48、當(dāng)選擇出的最大角度小于預(yù)設(shè)的最小安全角度時(shí),控制飛行器向上或向下飛行預(yù)設(shè)高度,以使飛行器避開障礙物。
[0145]在該步驟中,該控制模塊中的第二控制單元在選擇單元選擇出的最大角度小于預(yù)設(shè)的最小安全角度時(shí),控制飛行器向上或向下飛行預(yù)設(shè)高度,即在選擇單元選擇出的最大角度小于預(yù)設(shè)的最小安全角度時(shí),說明飛行器在水平方向向任何角度飛都無法避開障礙物,因此,飛行器放棄水平突破,轉(zhuǎn)而進(jìn)行垂直突破,即第二控制單元控制飛行器向上或向下飛行預(yù)設(shè)高度,可選的,可控制飛行器以默認(rèn)的飛行速度向上或向下飛行預(yù)設(shè)高度,如,當(dāng)飛行器處于室外時(shí),可控制飛行器向上飛行預(yù)設(shè)高度;當(dāng)飛行器處于室內(nèi)時(shí),可控制飛行器向下飛行預(yù)設(shè)高度。
[0146]參照圖9,圖9為本發(fā)明飛行器避障方法中的根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的第三實(shí)施例的流程示意圖,詳述如下:
[0147]S49、當(dāng)該避障策略為主動避障策略時(shí),根據(jù)飛行器的當(dāng)前飛行速度和預(yù)設(shè)的減速值,計(jì)算得到飛行器的目標(biāo)飛行速度。
[0148]該預(yù)設(shè)的減速值可根據(jù)需要預(yù)先設(shè)置。
[0149]在該步驟中,該控制模塊中的第二計(jì)算單元在該該避障策略為主動避障策略時(shí),即該飛行器的運(yùn)行狀態(tài)為飛行狀態(tài)時(shí),獲取飛行器的當(dāng)前飛行速度,并根據(jù)該飛行器的當(dāng)前飛行速度和預(yù)設(shè)的減速值,得到飛行器的目標(biāo)飛行速度,該目標(biāo)飛行速度通過以下公式計(jì)算得到,V = Vl-VO,其中,V表示飛行器的目標(biāo)飛行速度,Vl表示飛行器的當(dāng)前飛行速度,VO表示預(yù)設(shè)的減速值。
[0150]S50、控制該飛行器在當(dāng)前飛行方向按照目標(biāo)飛行速度飛行。
[0151]在該步驟中,該控制模塊中的第三控制單元控制飛行器在當(dāng)前飛行方向按照目標(biāo)飛行速度飛行,即當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物,且飛行器當(dāng)前處于飛行狀態(tài)時(shí),先對該飛行器進(jìn)行減速。
[0152]S51、檢測以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域是否有障礙物。
[0153]在該步驟中,該控制模塊中的檢測單元在第三控制單元控制飛行器減速的同時(shí),檢測以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域是否有障礙物,該第二預(yù)設(shè)角度和安全半徑可根據(jù)需要設(shè)置,如該第二預(yù)設(shè)角度為90或-90
°,該安全半徑為8米;則該檢測單元檢測以該飛行器為圓心,以飛行器當(dāng)前飛行方向成90或-90且在安全半徑為8米內(nèi)的區(qū)域是否有障礙物。
[0154]S52、當(dāng)以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域沒有障礙物,則控制該飛行器向與當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域飛行,以使飛行器避開障礙物。
[0155]在該步驟中,該控制模塊中的第三控制單元還用于在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域沒有障礙物時(shí),控制該飛行器向與當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域飛行,以使飛行器避開障礙物。如在一實(shí)施例中,該檢測單元檢測到與該飛行器為圓心,與飛行器當(dāng)前飛行方向成90或-90且在安全半徑為8米內(nèi)內(nèi)的區(qū)域沒有障礙物,則控制控制器沿水平方向向左偏90或沿水平方向向有偏90飛行,此時(shí)飛行器在做減速運(yùn)動,速度尚未減到O,加上90°或-90°的水平方向的運(yùn)動,飛行器實(shí)際運(yùn)動方向是兩個(gè)分運(yùn)動的矢量合運(yùn)動。在該飛行器避開障礙物后,該第三控制單元控制飛行器返回到原來的航線上飛行。
[0156]可選的,該檢測單元還用于在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域有障礙物時(shí),檢測以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第三預(yù)設(shè)角度至第四預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域是否有障礙物,該第三預(yù)設(shè)角度的絕對值大于或等于第二預(yù)設(shè)角度的絕對值,該第四預(yù)設(shè)角度的絕對值大于第三預(yù)設(shè)角度的絕對值;如在一實(shí)施例中,該第二預(yù)設(shè)角度為90°,該第三預(yù)設(shè)角度為90°,該第四預(yù)設(shè)角度為180° ;在另一實(shí)施例中,該第二預(yù)設(shè)角度為-90°,該第三預(yù)設(shè)角度為-90°,該第四預(yù)設(shè)角度為-180°。
[0157]可選的,該第三控制單元還用于在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第三預(yù)設(shè)角度至第四預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域沒有障礙物時(shí),控制飛行器向與當(dāng)前飛行方向成第五預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域飛行,以使飛行器避開障礙物。該第五預(yù)設(shè)角度在該第三預(yù)設(shè)角度至第四預(yù)設(shè)角度之間。如該第三預(yù)設(shè)角度為90°,該第四預(yù)設(shè)角度為180°,則該第五預(yù)設(shè)角度可以為120°。
[0158]可選的,該第三控制單元還用于在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域有障礙物時(shí),或在以該飛行器為圓心,與飛行器當(dāng)前飛行方向成第三預(yù)設(shè)角度至第四預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域有障礙物時(shí),控制飛行器懸停,并發(fā)出報(bào)警信息。該報(bào)警信息為聲音信息或光信息,如通過喇叭發(fā)出報(bào)警信息或通過飛行器上的LED閃爍發(fā)出報(bào)警信息。
[0159]以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。
【主權(quán)項(xiàng)】
1.一種飛行器,其特征在于,所述飛行器包括機(jī)身,搭載在機(jī)身下的云臺,設(shè)置在云臺上的障礙物檢測模塊,設(shè)置在機(jī)身內(nèi)的獲取模塊、選擇模塊和控制模塊,其中: 所述障礙物檢測模塊,用于檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物; 所述獲取模塊,用于當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),獲取所述飛行器的運(yùn)行狀態(tài);所述選擇模塊,用于根據(jù)所述飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略; 所述控制模塊,用于根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物。2.如權(quán)利要求1所述的飛行器,其特征在于,所述選擇模塊還用于: 當(dāng)所述飛行器的運(yùn)行狀態(tài)為懸停狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇被動避障策略; 當(dāng)所述飛行器的運(yùn)行狀態(tài)為飛行狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇主動避障策略。3.如權(quán)利要求2所述的飛行器,其特征在于,所述控制模塊包括: 第一判斷單元,用于在所述避障策略為被動避障策略時(shí),判斷所述飛行器的預(yù)設(shè)范圍內(nèi)的障礙物是否只有一個(gè); 確定單元,用于在飛行器的預(yù)設(shè)范圍內(nèi)的障礙物只有一個(gè)時(shí),根據(jù)所述障礙物的飛行方向確定所述飛行器的第一飛行方向,所述第一飛行方向與所述障礙物的飛行方向成一第一預(yù)設(shè)角度; 第一控制單元,用于控制所述飛行器按照所述第一飛行方向飛行,以使飛行器避開障礙物。4.如權(quán)利要求3所述的飛行器,其特征在于,所述控制模塊還包括: 第一計(jì)算單元,用于在飛行器的預(yù)設(shè)范圍內(nèi)的障礙物有多個(gè)時(shí),以所述飛行器為圓心,依次計(jì)算相鄰兩個(gè)障礙物之間的角度,得到相鄰兩個(gè)障礙物之間的角度; 選擇單元,用于從相鄰兩個(gè)障礙物之間的角度中選擇出最大角度; 第二判斷單元,用于判斷所述選擇出的最大角度是否大于或等于預(yù)設(shè)的最小安全角度; 第二控制單元,用于在選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度時(shí),控制飛行器從所述最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛過,以使飛行器避開障礙物;及用于在選擇出的最大角度小于預(yù)設(shè)的最小安全角度時(shí),控制飛行器向上或向下飛行預(yù)設(shè)高度,以使飛行器避開障礙物。5.如權(quán)利要求2所述的飛行器,其特征在于,所述控制模塊包括: 第二計(jì)算單元,用于在所述避障策略為主動避障策略時(shí),根據(jù)飛行器的當(dāng)前飛行速度和預(yù)設(shè)的減速值,計(jì)算得到飛行器的目標(biāo)飛行速度; 第三控制單元,用于控制所述飛行器在當(dāng)前飛行方向按照目標(biāo)飛行速度飛行; 檢測單元,用于檢測以所述飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域是否有障礙物; 所述第三控制單元,還用于在以所述飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域沒有障礙物時(shí),控制所述飛行器向與當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域飛行,以使飛行器避開障礙物。6.—種飛行器避障方法,應(yīng)用于上述權(quán)利要求1-5任一項(xiàng)所述的飛行器,其特征在于,所述方法包括: 檢測飛行器的預(yù)設(shè)范圍內(nèi)是否有障礙物; 當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)有障礙物時(shí),獲取所述飛行器的運(yùn)行狀態(tài); 根據(jù)所述飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略; 根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物。7.如權(quán)利要求6所述的飛行器避障方法,其特征在于,根據(jù)所述飛行器的運(yùn)行狀態(tài)從預(yù)設(shè)的避障策略列表中選擇對應(yīng)的避障策略的步驟包括: 當(dāng)所述飛行器的運(yùn)行狀態(tài)為懸停狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇被動避障策略; 當(dāng)所述飛行器的運(yùn)行狀態(tài)為飛行狀態(tài)時(shí),從預(yù)設(shè)的避障策略列表中選擇主動避障策略。8.如權(quán)利要求7所述的飛行器避障方法,其特征在于,所述根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的步驟包括: 當(dāng)所述避障策略為被動避障策略時(shí),判斷所述飛行器的預(yù)設(shè)范圍內(nèi)的障礙物是否只有一個(gè); 當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)的障礙物只有一個(gè)時(shí),根據(jù)所述障礙物的飛行方向確定所述飛行器的第一飛行方向,所述第一飛行方向與所述障礙物的飛行方向成一第一預(yù)設(shè)角度; 控制所述飛行器按照所述第一飛行方向飛行,以使飛行器避開障礙物。9.如權(quán)利要求8所述的飛行器避障方法,其特征在于,所述根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的步驟還包括: 當(dāng)飛行器的預(yù)設(shè)范圍內(nèi)的障礙物有多個(gè)時(shí),以所述飛行器為圓心,依次計(jì)算相鄰兩個(gè)障礙物之間的角度,得到相鄰兩個(gè)障礙物之間的角度; 從相鄰兩個(gè)障礙物之間的角度中選擇出最大角度; 判斷所述選擇出的最大角度是否大于或等于預(yù)設(shè)的最小安全角度; 當(dāng)選擇出的最大角度大于或等于預(yù)設(shè)的最小安全角度時(shí),控制飛行器從所述最大角度對應(yīng)的相鄰兩個(gè)障礙物之間飛過,以使飛行器避開障礙物; 當(dāng)選擇出的最大角度小于預(yù)設(shè)的最小安全角度時(shí),控制飛行器向上或向下飛行預(yù)設(shè)高度,以使飛行器避開障礙物。10.如權(quán)利要求7所述的飛行器避障方法,其特征在于,根據(jù)選擇的避障策略控制飛行器飛行,以使飛行器避開障礙物的步驟包括: 當(dāng)所述避障策略為主動避障策略時(shí),根據(jù)飛行器的當(dāng)前飛行速度和預(yù)設(shè)的減速值,計(jì)算得到飛行器的目標(biāo)飛行速度; 控制所述飛行器在當(dāng)前飛行方向按照目標(biāo)飛行速度飛行; 檢測以所述飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域是否有障礙物; 當(dāng)以所述飛行器為圓心,與飛行器當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域沒有障礙物,則控制所述飛行器向與當(dāng)前飛行方向成第二預(yù)設(shè)角度且在安全半徑內(nèi)的區(qū)域飛行,以使飛行器避開障礙物。
【文檔編號】G05D1/10GK105912018SQ201610270721
【公開日】2016年8月31日
【申請日】2016年4月27日
【發(fā)明人】張顯志
【申請人】深圳電航空技術(shù)有限公司, 深圳一電航空技術(shù)有限公司