方遠(yuǎn)征,劉洪偉,劉 霄,胡春生,王 偉
(國網(wǎng)山東省電力公司檢修公司,山東 濟(jì)南 250118)
超、特高壓線路已成為全國電力網(wǎng)絡(luò)系統(tǒng)的大動脈,為確保電網(wǎng)系統(tǒng)主干網(wǎng)絡(luò)的安全穩(wěn)定運(yùn)行,需對輸電線路本體及線路通道內(nèi)出現(xiàn)的各類情況進(jìn)行掌握,盡早發(fā)現(xiàn)隱患,并及時進(jìn)行處理。在輸電線路巡檢中,無人機(jī)能夠近距離檢查輸電線路本體,其攜帶的各類傳感器能夠拍攝、存儲大量影像資料,給輸電線路運(yùn)維人員進(jìn)行比對、分析,能夠快速判定輸電線路存在的缺陷,相較于人工巡檢,具有檢查線路缺陷效率高、安全系數(shù)高等優(yōu)點[1]。無人機(jī)在巡檢過程中,需保證與帶電線路保持安全距離,利用無人機(jī)自動避障技術(shù),有效避免了碰撞事故的發(fā)生,提高無人機(jī)巡檢的安全水平。
自主研發(fā)的多旋翼無人機(jī)避障系統(tǒng)依據(jù)其測距方法主要可分為3類:一是超聲波測距法;二是飛行時間測距法;三是由多種測距和圖像處理方法相結(jié)合的復(fù)合型測距法[2]。以上3種方法只應(yīng)用在某種特定的無人機(jī)飛控系統(tǒng)自主避障功能的開發(fā)設(shè)計中,當(dāng)開發(fā)者對無人機(jī)構(gòu)造不了解時,以上測距方法不能與無人機(jī)飛控系統(tǒng)相適配。多旋翼無人機(jī)運(yùn)行機(jī)理為遙控器接收機(jī)接收飛行控制信號并將其傳遞給控制模塊,進(jìn)而傳送給無人機(jī)執(zhí)行機(jī)構(gòu)驅(qū)動其飛行。根據(jù)無人機(jī)設(shè)計原理在遙控器接收機(jī)與飛控模塊之間增設(shè)自主避障模塊,其中自主避障模塊由超聲波傳感器和Arduino UNO平臺兩部分組成,如圖1所示。超聲波傳感器通過發(fā)射超聲波信號并收集由障礙物反射回的信息,實時檢測出無人機(jī)與其飛行環(huán)境周圍存在的障礙物之間的距離,并傳遞給Arduino UNO平臺。Arduino UNO平臺通過比對遙控器接收機(jī)接收的無人機(jī)飛行控制信號和采集到的超聲波傳感器檢測的無人機(jī)與障礙物之間的距離信息,進(jìn)行邏輯判斷,進(jìn)而重構(gòu)出飛行控制信號,并將重構(gòu)出的飛行信息傳遞給無人機(jī)系統(tǒng)的執(zhí)行機(jī)構(gòu),當(dāng)無人機(jī)飛行中遇到障礙物時飛機(jī)能夠以準(zhǔn)確姿態(tài)避開,從而在不改變無人機(jī)飛控系統(tǒng)軟硬件的情況下實現(xiàn)精準(zhǔn)避障。
圖1 多適配性無人機(jī)避障系統(tǒng)方案
2.1.1 電源模塊
Arduino UNO控制板作為超聲波傳感器及遙控器接收機(jī)的信息存儲單元,為減少了外界信息的干擾,采用外部獨(dú)立電源供電,圖2為系統(tǒng)供電模塊原理圖,Vin為電源輸入端口,允許輸入電壓范圍為5~10 V,A4端連接二極管,其單向?qū)ǖ奶匦杂行П苊饬讼到y(tǒng)元器件因電源極性接反而被燒毀的問題。
圖2 外部供電模塊
2.1.2 Arduino UNO與飛控接口設(shè)計
Arduino UNO芯片作為Arduino市場的主流產(chǎn)品,端口豐富,功能強(qiáng)大,用戶根據(jù)不同的需求可靈活選擇各類開發(fā)平臺,選取該型號芯片作為自主避障模塊核心控制元件[3]。Arduino是當(dāng)前市場上比較受歡迎的嵌入式開發(fā)平臺,該處理器無論硬件還是軟件都是開源的,用戶可以查看其源代碼、設(shè)計圖表等信息,設(shè)計方式極其靈活。主要包含兩大部分:Arduino電路板和Arduino IDE模塊,前者是起連接系統(tǒng)作用的硬件部分;后者根據(jù)傳感器來感知、反饋周圍環(huán)境的變化,開發(fā)板上的微控模塊可以應(yīng)用其自身的開發(fā)語言進(jìn)行編程,并將翻譯后的機(jī)器代碼,錄入控制芯片內(nèi)。
Arduino UNO控制板與飛控系統(tǒng)之間采用14路數(shù)字信號傳遞數(shù)據(jù)與控制信號,端口工作電壓為5 V,端口輸出接入最大電流為40 mA,外部配置20~50 kΩ上拉電阻。Arduino UNO各芯片引腳的功能為:控制接收信號串口RX(1號),控制發(fā)送信號串口TX(2號),連接信息交換芯片,控制與外部芯片進(jìn)行信息交換;脈寬調(diào)制 PWM(2、3、4、5、6、7)引腳,輸出8位控制數(shù)據(jù)信號;外部觸發(fā)中斷(8號和9號)引腳,為跳沿觸發(fā)方式;SPI(10(SS),11(MOSI),12(MISO),13 (SCK)) 可以 SPI通信接口;LED 燈(13號)測試接口,用于測試Arduino的LED接口,當(dāng)該端口輸出低電位時LED為熄滅狀態(tài),反之該燈被點亮。
2.1.3 超聲波傳感器選型
綜合分析超聲波傳感器測距范圍、測量精度及其質(zhì)量、體積與無人機(jī)負(fù)荷能力相適配等問題,選取尺寸、重量適中,測量范圍較大、精度較高型號為 US100-Y401的超聲波測距傳感器,如圖3所示。
圖3 US100-Y401的超聲波測距傳感器
US100-Y401型超聲波測距系統(tǒng)通過軟硬件結(jié)合可實現(xiàn)串口的全雙工通信,通過設(shè)定不同訪問地址,單個通信口可實現(xiàn)對16個不同地址的設(shè)備的訪問,且在測距中選擇其低功耗模式,能夠大量節(jié)省傳感器熱損耗,在實際應(yīng)用中選擇采集信息的指令校準(zhǔn)功能,能進(jìn)一步提高測量精度。其聲波輸出功率較強(qiáng),能在復(fù)雜的外界干擾條件下(電磁波和聲波),通過實時校準(zhǔn),實現(xiàn)對距離信號的精準(zhǔn)測量。該型號傳感器工作電壓為3.3~5 V,探測功能強(qiáng)大測距范圍可達(dá)700 cm,環(huán)境溫度在-40~65℃范圍內(nèi)正常工作,其高頻率聲波探測能力,避免了被探測物形狀、顏色等干擾因素的影響,從而獲取準(zhǔn)確的距離信息,達(dá)到精準(zhǔn)快速避障的目的。
在探測無人機(jī)飛行環(huán)境周圍的障礙物時,為消除US100-Y401超聲波傳感器的檢測盲區(qū),飛控系統(tǒng)對測距結(jié)果將進(jìn)行分組處理。
2.2.1 軟件流程
基于以上硬件控制平臺,無人機(jī)自主避障模塊軟件設(shè)計流程如圖4所示。Arduino UNO平臺首先接收用戶通過遙控器輸入的無人機(jī)的原始飛行控制信息,然后讀取超聲波傳感器檢測到的無人機(jī)與障礙物間的距離信號,并進(jìn)行邏輯判斷。若通過系統(tǒng)判定得知無人機(jī)與被測量障礙物之間的距離大于系統(tǒng)設(shè)定的安全距離,則無人機(jī)按照遙控器接收機(jī)的原始輸入信息執(zhí)行飛行任務(wù);若通過系統(tǒng)判定知無人機(jī)與被測量障礙物之間的距離在系統(tǒng)設(shè)定的安全距離范圍之內(nèi),則無人機(jī)認(rèn)定障礙物對其安全飛行構(gòu)成威脅,飛控系統(tǒng)賦予飛行器執(zhí)行機(jī)構(gòu)值為K*(安全距離和測量距離之差)的控制信號,使無人機(jī)遠(yuǎn)離障礙物到安全距離以外,其中K值為正系數(shù)避征值,其值越大,無人機(jī)避障反應(yīng)越明顯。
圖4 軟件流程
2.2.2 算法實現(xiàn)
基于以上設(shè)計思想,在設(shè)計完成的Arduino UNO硬件控制平臺上,完成自主避障飛控系統(tǒng)的軟件程序調(diào)試工作。設(shè)計中無人機(jī)的加速與方向舵通道為獨(dú)立控制單元,系統(tǒng)綜合信息判定的結(jié)果只控制升降舵與副翼的運(yùn)行,萬一發(fā)生無法預(yù)料的情況時,可直接控制加速與方向舵調(diào)整飛機(jī)運(yùn)行狀態(tài),避免意外狀況發(fā)生,保證飛機(jī)運(yùn)行安全。自主避障飛控系統(tǒng)軟件程序內(nèi)定義無人機(jī)與障礙物間的距離變量為distance,對于檢測結(jié)果系統(tǒng)首先進(jìn)行濾波處理,若測量距離大于等于40 cm,distance賦值為40 cm。無人機(jī)的安全距離設(shè)置為40 cm,其目的是在無人機(jī)與障礙物之間設(shè)定了一個0~40 cm敏感區(qū)域,若無人機(jī)進(jìn)入該范圍,系統(tǒng)認(rèn)定無人機(jī)為非安全飛行狀態(tài)。自主避障模塊運(yùn)行時,由系統(tǒng)設(shè)定的安全距離減去變量distance并將差值賦予變量error,若error值為0,無人機(jī)機(jī)按照遙控器原始輸入信號飛行;若測量知無人機(jī)與障礙物之間的距離為30 cm,則error值為10 cm,通過調(diào)整比例系數(shù)飛控系統(tǒng)獲取控制信息驅(qū)動無人機(jī)調(diào)速機(jī)構(gòu)飛離障礙物,至安全距離大于40 cm,從而實現(xiàn)準(zhǔn)確避開障礙物的目的,無人機(jī)避障反應(yīng)與變量error值成正比例關(guān)系。
為驗證設(shè)計的有效性,需進(jìn)行飛行測試,選擇六軸六漿的多旋翼無人機(jī)平臺Wookong-M飛控系統(tǒng)進(jìn)行試驗。試驗時,操作人員操作無人機(jī)勻速接近障礙物時,無人機(jī)避障反應(yīng)明顯,當(dāng)無人在雷達(dá)區(qū)域外時,可穩(wěn)定懸停在空中。無人機(jī)操作人員對其飛行環(huán)境周邊的障礙物做出提前預(yù)判,及時調(diào)整飛機(jī)運(yùn)行姿態(tài),為保障無人機(jī)與輸電線路的安全提供保障。該型號超聲波傳感器檢測障礙物的范圍達(dá)700 cm,辨識精確度達(dá)到0.1 cm[4]。此外,該型號傳感器對采樣數(shù)據(jù)可以進(jìn)行濾波處理,其指令集中有校準(zhǔn)功能指令,能進(jìn)一步提高測量精確度,通過實際驗證測量模塊得出如下特點:1)測量角度30°錐形;2)與地面平行飛行不受電磁干擾;3)超聲波傳感器波束方向與被測物因測量夾角存在的誤差,不影響其自主避障功能的實現(xiàn);4)測量最小能見度1.5 cm2左右;5)物體最大測量面積700 cm2左右??紤]無人機(jī)巡視輸電線路時的飛行環(huán)境,綜上可知選用US100-Y401型傳感器能夠滿足使用要求。
系統(tǒng)采用Arduino UNO和超聲波傳感器相結(jié)合的方式,超聲波傳感器探測無人機(jī)飛行環(huán)境周圍存在的障礙物,Arduino UNO平臺收集輸入的相關(guān)信息進(jìn)行邏輯信息重構(gòu),進(jìn)而驅(qū)動無人機(jī)調(diào)速器改變飛機(jī)運(yùn)行姿態(tài),準(zhǔn)確避開障礙物。本設(shè)計具有超強(qiáng)的抗電磁干擾能力,整個系統(tǒng)按照國標(biāo)設(shè)計,靜電抗擾度和電磁抗擾度等級均達(dá)到500 kV輸電線路運(yùn)行要求。 同時充分考慮了系統(tǒng)應(yīng)用環(huán)境的變化,系統(tǒng)應(yīng)用到不同型號無人機(jī),可根據(jù)環(huán)境的不同,用戶要求的不同,靈活地調(diào)整系統(tǒng)設(shè)置。
多適配性無人機(jī)避障模塊介于遙控接收機(jī)和飛行控制系統(tǒng)之間,采用外接電源進(jìn)行獨(dú)立供電,選用US100-401超聲波傳感器進(jìn)行測距,并將超聲波雷達(dá)與Arduino UNO硬件控制平臺相融合,發(fā)射探測信號,采集反饋信息,接收遙控器接收機(jī)數(shù)據(jù),實現(xiàn)了接收機(jī)與飛控系統(tǒng)的互聯(lián)。通過對試飛過程的跟蹤觀察,和無人機(jī)在飛行過程中對障礙物的感知和躲避的分析確認(rèn),能夠?qū)崿F(xiàn)有效躲避障礙物,提高了無人機(jī)巡檢的安全性,推廣使用將充分發(fā)揮避障系統(tǒng)的實時性、可靠性、易用性和可擴(kuò)展性。