中國電子科技集團公司第四十一研究所裝備事業部 姚光樂 王守雷
針對在GPS信號缺失的室內環境下四旋翼無人機的定位和自主飛行問題,構建了一個基于激光雷達和超聲波傳感器的四旋翼無人機控制系統。基于機器人操作系統(ROS)構建了通信網絡系統,并選用英偉達TX2運行該系統,采用pixhawk飛行控制板運行核心控制部分。測試結果表明,搭建的無人機能實現較精確的自主懸停。
近年來,旋翼無人機發展迅速,其按照旋翼的個數可分為三旋翼、四旋翼、六旋翼和八旋翼,其中使用頻率最高、應用最廣泛、最為常見的是四旋翼無人機,同時它是世界無人機發展的主要方向。
隨著競爭日益激烈,提高飛控的開發速度,降低飛控的開發成本成為無人機開發領域的迫切需求,從而使得開源飛行控制器備 受行業相關者的關注。目前,針對多旋翼低空下的高度測量,市面上開源飛控普遍采用氣壓計定高的方式,而位置的獲取方式普遍采用GPS。低成本氣壓計內部噪聲會有影響,還會受到速度、溫度、濕度的影響,而只能在室外有GPS環境實現其位置的獲取,然而在室內中GPS信號缺失,需要一個可靠的定位系統對無人機進行定位和姿態估計。近年來為了解決在全球導航衛星系統信號缺失情況下無人機自主飛行問題,越來越多的研究人員將單目/雙目視覺、光流傳感器、激光雷達、超聲波傳感器引入無人機室內自主導航研究領域。本文采用激光雷達和超聲波傳感器的方式,設計一種基于Pixhawk開源飛控的室內飛行系統,可根據任務需求快速實現無人機的自主飛行。
本文搭建的四旋翼無人機系統主要包括:英偉達TX2機載電腦、pixhawk飛行控制板(PX4)、激光雷達、超聲波傳感器、無刷電機和供電模塊。機載電腦實時處理激光雷達和超聲波傳感器采集的距離數據,對無人機進行位置估計,通過位置控制將加速度命令發送給pixhawk飛行控制板,另外,從pixhawk飛行控制板獲得無人機姿態數據。pixhawk飛行控制板將加速度命令轉換為4個無刷電機的轉速,然后無刷電機帶動螺旋槳轉動,從而控制無人機飛行,實現四旋翼無人機室內定位和自主飛行,另外,pixhawk飛行控制板實時處理無人機姿態數據,將姿態數據發送給機載電腦。本文搭建的四旋翼無人機的硬件架構如圖1所示。

圖2 英偉達TX2

圖1 硬件架構圖
無人機的主要飛行控制行為和航跡計算均是在機載電腦中完成的。基于機器人操作系統(ROS)的架構,本文使用MAVROS第三方軟件包負責機載主控系統與傳感器的對接,以獲取通信數據,包括激光雷達、超聲波數據。信息回傳給控制節點后,在主控程序進行數據處理,再發送運動控制指令。將激光雷達所測量的數據轉化為ros下標準的點云數據,然后供激光SLAM使用,并使用cartographer計算出位置信息,獲得無人機水平位置信息。將超聲波傳感器的數據經過一階濾波,獲得無人機的高度信息。

圖3 pixhawk圖
機載電腦作為傳感器數據處理核心,承載著信息的交互和處理任務。而在系統的選擇與開發中,還要充分考量到計算能力的情況,在滿足計算能力需求的同時保證無人機的輕量化。基于種種考量,本文選擇了芯片處理能力、系統可擴展性和輕量便攜性均較為出色的Jetson TX2作為上位機系統。英偉達TX2外形小巧、節能高效,如圖2所示,非常適合機器人、無人機、智能攝像機和便攜醫療設備等邊緣設備。

圖4 思嵐A2雷達

圖5 US-100超聲波測距儀
pixhawk飛行控制板運行飛行控制系統的核心控制部分,決定著無人機姿態和航跡的穩定性,在控制飛行中起著決定性的作用。pixhawk飛行控制板如圖3所示。在實際的無人機組建過程中將機載電腦和Pixhawk飛控相連接,使數據主要通過飛控的UART進行上機位的USB通信。Pixhawk可應用于多種平臺,如多旋翼無人機、固定翼飛行器、小車、潛艇等。其優勢在于它繼承了多線程的編程環境,模塊化的架構,便于二次開發及新功能的開發,基于PX4的底層驅動保障全周期處理。
定位傳感器模塊由激光雷達測距儀和超聲波傳感器組成,激光雷達安裝于四旋翼無人機的頂端,用于測量無人機距離周邊物體的距離,超聲波傳感器安裝于無人機底端,用于測量無人機與地面的距離。激光雷達選擇思嵐A2雷達,如圖4所示,其為全360°2D平面掃描型雷達,掃描測量半徑為12m,可進行每秒8000次的測距動作,在一般室內均可實現定位功能。超聲波測距儀采用US-100,如圖5所示,該傳感器的探測范圍為2~450cm,精度為0.3cm±1%,從而可以對距離實現精確測量,達到室內定位的精確度。并且,US-100帶有溫度補償功能,其測距精度不會因溫度而產生變化。
軟件部分主要完成系統間的通信,傳感器數據的采集,位置估計和位置控制的實現。基于ROS的架構,機載電腦內部節點采用MAVROS進行信息的訂閱和發布,機載電腦與pixhawk飛行控制板的信息通訊采用MAVLINK通訊協議。MAVLINK通訊協議被廣泛應用于無人機通信,其是一種為微形飛行器設計的非常輕巧的、只由頭文件構成的信息編組庫。無人機的控制、狀態、位置等信息都可編譯為MAVLINK數據包,地面控制站與無人機間傳遞這些數據包。

圖6 軟件架構圖

圖7 自主起飛階段和懸停階段的高度變化曲線

圖8 懸停水平位置曲線
本無人機系統的軟件架構如圖6所示。MAVROS通訊節點為機載電腦內部節點之間、機載電腦與Pixhawk飛行控制板之間的信息傳輸樞紐。MAVROS通訊節點發布無人機水平位置、垂直距離、無人機姿態數據,這些數據由無人機位置控制節點訂閱,并發布加速度指令,經MAVROS通訊節點傳遞到Pixhawk控制系統,繼而實現無人機飛行控制。無人機水平位置來自激光雷達采集的云數據,由激光SLAM節點進行點云匹配與對比,計算出激光雷達相對運動的距離,并將無人機水平位置發布到MAVROS通訊節點。基于MAVLINK通訊協議,Pixhawk控制系統將姿態數據傳遞給MAVROS通訊節點,并實時獲得無人機加速度指令。
無人機位置控制節點通過MAVROS獲取無人機當前位置和姿態數據,計算出加速度指令,將加速度指令傳遞到Pixhawk系統,由姿態控制模塊是實現無人機自主起飛和懸停功能。無人機飛行前,設定的懸停位置為x=0,y=0,z=0.5。其在自主起飛過程中的高度變化曲線如圖7所示,在穩定懸停狀態下無人機的水平位置曲線如圖8所示。從實驗結果可以看出,在起飛階段,高度方向會產生0.5m的超調量;在懸停階段,高度方向的誤差范圍在±0.1m內,其水平懸停位置能保持在±0.2m的范圍內,達到了較好的懸停效果。
結論:本文提出了一種基于機載電腦和Pixhawk飛行控制板的四旋翼無人機室內飛行設計方案。使用激光雷達和超聲波傳感器作為室內定位傳感器,在英偉達TX2機載電腦上搭載ROS,采用Pixhawk控制系統進行姿態控制,基于MAVROS進行通信實現了無人機位置控制。本文詳細闡述了四旋翼無人機室內飛行方案,包括硬件及軟件設計方式,對于使用Pixhawk開源飛行控制器的開發者進行二次開發具有很好的借鑒意義。實驗測試結果表明:本文設計開發的四旋翼無人機具有室內環境的定位能力,并實現了自主起飛、懸停功能,自主懸停的實驗結果表明此系統具有了一個較高的飛行精度,起飛階段的試驗數據顯示高度方向具有較大超調量,需要進行起飛控制器的改良及研究。