曹逸凡 張正華 張帥帥 陳韓 徐杰
摘要:由于無人機(jī)的自動(dòng)控制依賴常規(guī)的人工操作,難以提升可靠性和有效的設(shè)備安全保障。提出了基于多傳感器的低成本自動(dòng)控制系統(tǒng),采用單片機(jī)控制連接Pixhawk飛控板,實(shí)現(xiàn)無遙控器條件下對(duì)無人機(jī)的自動(dòng)控制??刂瓢鍖⒖刂菩盘?hào)傳輸至Pixhawk飛控板,在無人遙控的情況下控制無人機(jī)行動(dòng),并在無指令情況下保障機(jī)體安全降落。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)能夠?qū)崿F(xiàn)對(duì)無人機(jī)基本的自動(dòng)控制,并在工作狀態(tài)中有效保障工作人員及無人機(jī)機(jī)體的安全。
關(guān)鍵詞:多傳感器;無人機(jī);Pixhawk;自動(dòng)控制系統(tǒng)
中圖分類號(hào):TP212 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1008-1739(2019)03-56-3
0 引言
隨著科學(xué)技術(shù)的進(jìn)步,以智能化的機(jī)器人代替人工來完成許多耗費(fèi)人力的工作已成為當(dāng)今潮。目前,在森林防火、電路巡檢等許多方面已經(jīng)能夠看到無人機(jī)的身影,而無人機(jī)的用途也隨著時(shí)間的推移在快速拓展。森林防火方面,無人機(jī)具有高效、安全、便捷等先天優(yōu)勢,能夠抵達(dá)護(hù)林人員無法抵達(dá)的山區(qū),快速查看林場情況,便于部署各項(xiàng)措施。電路巡檢方面,無人機(jī)能夠輕易抵達(dá)巡檢人員難以抵達(dá)的高處,高效且安全地實(shí)現(xiàn)對(duì)輸電網(wǎng)絡(luò)的檢測,保證工作人員人身安全,提升巡檢效率。另外,在物流配送、智慧倉儲(chǔ)和空中網(wǎng)關(guān)等諸多民用方面無人機(jī)也開始嶄露頭角。無人機(jī)在多領(lǐng)域的應(yīng)用已成為未來的發(fā)展趨勢,微型無人機(jī)在室內(nèi)的應(yīng)用也已經(jīng)成為重要發(fā)展方向。
無人機(jī)的大規(guī)模應(yīng)用勢必造成無人機(jī)操作人員短缺,培養(yǎng)一名操作人員需要極高的成本,完全采用人工操作無人機(jī)的成本過高。本文構(gòu)建了一種基于多傳感器與高性能低成本的STM3 2F103單片機(jī)平臺(tái)的自動(dòng)控制系統(tǒng),其較高的運(yùn)算速度保證了飛行器工作的流暢性,保證飛行器在空中安全飛行,同時(shí)飛行器在初次起飛指令后會(huì)預(yù)留一段安全時(shí)間,保證用戶有足夠的時(shí)間撤出靠近飛行器的危險(xiǎn)區(qū)域,防止意外發(fā)生。
1 系統(tǒng)總體設(shè)計(jì)
當(dāng)今多種飛控板功能日趨完備,系統(tǒng)采用的Pixhawk更是其中較為先進(jìn)的飛控,故系統(tǒng)設(shè)計(jì)由飛控板基礎(chǔ)功能實(shí)現(xiàn)對(duì)無人機(jī)的基礎(chǔ)控制,選擇STM3 2F103作為系統(tǒng)控制板,在有效控制成本的同時(shí)模擬遙控器信號(hào)對(duì)飛控下達(dá)指令,使無人機(jī)能夠脫離遙控器獨(dú)立工作,采集板布置傳感器,組成傳感器組,與飛控傳感器采集的數(shù)據(jù)共同反饋至控制板,由控制板模擬遙控器向Pixhawk飛控板發(fā)出指令,控制無人機(jī)從起飛到降落全程的自動(dòng)控制,系統(tǒng)體系結(jié)構(gòu)如圖1所示。
2 系統(tǒng)硬件設(shè)計(jì)
2.1 Pixhawk飛控板
Pixhawk是一種較為普及且具備高性能自動(dòng)駕駛儀,適用于多旋翼飛行器、固定翼飛行器和小車等多種平臺(tái)。其前身是APM,但現(xiàn)今APM早已無法滿足愈加復(fù)雜的運(yùn)算需求。Pixhawk的優(yōu)勢在于它繼承了多線程的編程環(huán)境,新的自動(dòng)駕駛儀功能及預(yù)設(shè)飛行模式,基于PX4的底層驅(qū)動(dòng)保障全周期處理。這些選項(xiàng)賦予了無人機(jī)進(jìn)行高自由度飛行的能力。
2.2 基于STM32F103的自動(dòng)控制板
系統(tǒng)由基于STM32F103的控制板接收傳感器的反饋,對(duì)無人機(jī)的運(yùn)動(dòng)狀態(tài)進(jìn)行檢測,并模擬遙控器向飛控板發(fā)出指令,由飛控板控制飛行器進(jìn)行運(yùn)動(dòng)。因此最重要的是用STM32模擬遙控器的各種指令的信號(hào),包括起飛、著陸、懸停等基礎(chǔ)操作,及當(dāng)無指令時(shí)控制飛行器安全著陸,保障機(jī)體安全,減少損失。
待控制板基礎(chǔ)功能構(gòu)筑完成后,可添加更多傳感器,使無人機(jī)功能多樣化,能夠執(zhí)行更加復(fù)雜的任務(wù)。STM3 2F103單片機(jī)預(yù)留了多種接口,使本系統(tǒng)能夠有更大的拓展性,可搭載其他模塊實(shí)現(xiàn)功能的豐富。
2.3 多傳感器模塊設(shè)計(jì)
定高模塊主要用于工作的開始,使飛行器在合適的高度展開作業(yè),是飛行器自主工作的基礎(chǔ),其模塊流程如圖2所示。
定高模塊硬件采用bmp085氣壓傳感器來測量大氣壓并將其轉(zhuǎn)為實(shí)時(shí)海拔高度,將二者相減便得到了無入機(jī)距離地面的高度,是無人機(jī)常用的傳感器,選擇HC-SR04超聲波傳感器來測量無人機(jī)實(shí)時(shí)高度,將2種傳感器反饋數(shù)據(jù)相結(jié)合,使得無人機(jī)的控制更加精確。
3 系統(tǒng)軟件設(shè)計(jì)
3.1 控制板操作模塊設(shè)計(jì)
通過模擬遙控器信號(hào)的方式將飛機(jī)的控制權(quán)交由控制板,操控者再以按鍵的方式開始飛行器的工作流程,飛行器收到信號(hào)后開始進(jìn)入啟動(dòng)流程,3s安全時(shí)間之后飛行器自檢并解鎖啟動(dòng),保證操作人員有足夠的時(shí)間撤離至規(guī)定的安全距離(6m)外,并等待下—步指示,其原理如圖3所示。
控制器部分程序代碼如下:
static void SysCtrl_Update_Act_Find_St(void)
{
NodeShape_t shape_i;
NodeShape_t shape_new=NodeShape_Notlung;
if((FindStartPoint_ms_Left<0)&&(Msg_FMUToCtrl.Pkg.Alt_Sonar>FIND_START_POINT_CM_MIN))
{
FindStartPoint_ms_Lefi=FIND_START_POINT_MS_MAX;
Beep_On0;
}
if((FindStartPoint_ms_Lefi>0) && (NodeShape_Curt!=NodeShape_StartPoint))
{
for(shape_i=NodeShape_Nothing,shape_i {if(NodeShapeProb[shape_i]>0){ NodeShapePtob[shape_i]--; }} 3.2 無人機(jī)基本姿態(tài)控制 3.2.1 自動(dòng)啟動(dòng) 自動(dòng)啟動(dòng)功能是一切功能的基礎(chǔ),可實(shí)現(xiàn)操作人員在遠(yuǎn)程對(duì)無人機(jī)進(jìn)行解鎖與控制,對(duì)無人機(jī)自動(dòng)控制有著重要意義,部分自動(dòng)啟動(dòng)程序如下: { static uint32 Hover_Start_Stamp; uint32 Sys_ms_Now; switch(Demo_St_Act) { caseDemo_St_Act_Climb:{ if(SysPID[Alt].PID [Pos].err_abs) &&(SysPID[Alt].PID[Pos].err_abs<10)) { Demo_St Act=Demo_St Act_Stable; Demo_LostInfo.FeatureValid=No; }}break; 3.2.2 自動(dòng)降落并鎖定 當(dāng)無人機(jī)完成所有指示或未明確指令時(shí),系統(tǒng)將控制無人機(jī)自動(dòng)著陸并鎖定,部分自動(dòng)降落與鎖定代碼如下: {Sys_ms_Now=Sys_ms; if((Sys_ms_Now-Hover_Start_Stamp)>(5*1000)) {Demo_St_Act=Demo_St_Act_Land; Demo_Losthifo.FeatureValid=No; DroneLanding=Yes;}}break; case Demo St Act Land://自動(dòng)著陸 {if(Get_Height() {Demo_St_Act=Demo_St_Act_Lock; MsgToFMU_Lock=Yes; Demo_LostInfo.FeatureValid=No;}}break; case_Demo_St_Act_Lock://自動(dòng)鎖定 {}break;} 4 實(shí)驗(yàn)結(jié)果與分析 考慮到系統(tǒng)主要應(yīng)用于小型無人機(jī)于室內(nèi)的應(yīng)用,于4m×4m×2m的室內(nèi)實(shí)驗(yàn)場地中進(jìn)行了多次實(shí)驗(yàn),測試系統(tǒng)的易用性與穩(wěn)定性。實(shí)驗(yàn)結(jié)果如表1所示。 測試結(jié)果表明系統(tǒng)能夠?qū)崿F(xiàn)飛行器完成既定任務(wù)過程中的全程穩(wěn)定控制,對(duì)比其他無人機(jī)控制方案及市場上現(xiàn)有的自動(dòng)控制手段,具有易用性強(qiáng)、成本低等優(yōu)勢,對(duì)比人工操作,自動(dòng)控制的時(shí)間更短,穩(wěn)定性更高,且能有效節(jié)約人力成本,但在室外環(huán)境中難以實(shí)現(xiàn)有效控制,更適用于室內(nèi)小型無人機(jī)的自動(dòng)控制。系統(tǒng)的最大優(yōu)勢在于對(duì)無人機(jī)從解鎖到降落鎖定過程中的全程控制,這對(duì)于通過無人機(jī)實(shí)現(xiàn)自動(dòng)化工作有著重要意義。 5 結(jié)束語 在研究過程中,系統(tǒng)著眼于室內(nèi)自動(dòng)化流程的需要,將技術(shù)突破重點(diǎn)放在了小型無人機(jī)的室內(nèi)全程自動(dòng)化控制,與以往人工控制無人機(jī)并切換自動(dòng)模式不同,系統(tǒng)可以在全程自主控制的情況下讓無人機(jī)完成簡單的自動(dòng)工作流程,結(jié)合實(shí)驗(yàn)數(shù)據(jù)可以看出,系統(tǒng)運(yùn)行穩(wěn)定,能夠基本實(shí)現(xiàn)無人機(jī)的自動(dòng)控制。但出于傳感器精度等不足,室外光線、風(fēng)力和氣壓等因素更加復(fù)雜等多種原因,系統(tǒng)在室外工作效果并不理想,今后的研究將從改進(jìn)傳感器組人手,努力解決無人機(jī)的室外自動(dòng)工作問題,實(shí)現(xiàn)無人機(jī)的全天候自動(dòng)化。