《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于AVR單片機的機載慣性穩(wěn)定云臺設(shè)計
基于AVR單片機的機載慣性穩(wěn)定云臺設(shè)計
2015年電子技術(shù)應(yīng)用第11期
安鶴男,陳 陽,張 軍,潘嬌嬌
(深圳大學(xué) 電子科學(xué)與技術(shù)學(xué)院,廣東 深圳518060)
摘要: 針對多旋翼無人機在航拍時,畫面會隨著巡航時俯仰、橫滾等飛行動作而變得不穩(wěn)定的問題,設(shè)計了一種基于AVR單片機和MEMS陀螺儀的機載慣性穩(wěn)定云臺。該云臺利用經(jīng)卡爾曼濾波(Kalman Filtering)的陀螺儀輸出數(shù)據(jù)對飛機在三個軸向上的角速度變化進行監(jiān)測和判斷,驅(qū)動步進電機對云臺姿態(tài)進行實時反向補償,實現(xiàn)這一系統(tǒng)使攝影機拍攝的畫面能夠時刻保持穩(wěn)定。實驗結(jié)果表明,系統(tǒng)穩(wěn)定、可靠、性能良好。
中圖分類號: TP23
文獻標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2015.11.011

中文引用格式: 安鶴男,陳陽,張軍,等. 基于AVR單片機的機載慣性穩(wěn)定云臺設(shè)計[J].電子技術(shù)應(yīng)用,2015,41(11):41-44.
英文引用格式: An Henan,Chen Yang,Zhang Jun,et al. Design of airborne inertial stabilization camera platform based on AVR microcontroller[J].Application of Electronic Technique,2015,41(11):41-44.
Design of airborne inertial stabilization camera platform based on AVR microcontroller
An Henan,Chen Yang,Zhang Jun,Pan Jiaojiao
College of Electronic Science and Technology, Shenzhen University, Shenzhen 518060,China
Abstract: Aiming at the shortcomings and deficiencies that existed in multirotor UAV aerial photography system, whose camera will be shaking if the UAV has to change the flight attitude, an airborne inertial stabilization camera platform based on AVR microcontroller and MEMS gyro is designed. The system uses Kalman filtered gyro output data to monitor and judge the change of angular velocity in the three axes of the UAV, drives the stepper motors to adjust the attitude of the camera platform, and finally achieve the system, so that the pictures captured by the camera upon the platform are stable all the time. The experimental results show that the system is stable, reliable and well-performanced.
Key words : microcontroller;gyro;Kalman filtering;inertial stabilization platform;UAV;camera platform

 

0 引言

  近年來,隨著自動化技術(shù)、計算機技術(shù)和微電子技術(shù)的飛速發(fā)展,多旋翼無人機如雨后春筍般出現(xiàn),并以航空攝影為核心,在遙感測繪、地質(zhì)勘查、反恐防暴、抗災(zāi)救援、城市服務(wù)等多個領(lǐng)域發(fā)揮著重要作用[1]。

  在傳統(tǒng)的無人機航拍系統(tǒng)結(jié)構(gòu)中,攝像頭往往直接固定于無人機機身或安裝在一個僅能對攝像頭姿態(tài)進行手動調(diào)整的云臺上。這類系統(tǒng)雖然結(jié)構(gòu)簡單,成本低廉,但卻具有較大的不足。當(dāng)無人機在巡航過程中需要改變飛行姿態(tài)時,攝像頭拍攝出來的畫面往往非常不穩(wěn)定。

  為了解決這一問題,本文設(shè)計并實現(xiàn)了一種基于AVR單片機和MEMS陀螺儀的無人機載三軸慣性穩(wěn)定云臺。該云臺能夠在無人機飛行姿態(tài)發(fā)生變化時對攝像頭姿態(tài)進行實時調(diào)整,保證了拍攝畫面的穩(wěn)定。經(jīng)過實驗驗證了該系統(tǒng)的穩(wěn)定性和可靠性。

1 系統(tǒng)硬件電路設(shè)計

  1.1 系統(tǒng)總體方案設(shè)計


001.jpg

  如圖1所示,系統(tǒng)由一個中央控制單元和三個運動控制單元組成。中央控制單元的主要功能是根據(jù)上位機的指令對整個系統(tǒng)進行控制和調(diào)度,同時對系統(tǒng)各部分的運行狀態(tài)進行實時監(jiān)測和調(diào)整。三個運動控制單元分別在三個軸向上對經(jīng)卡爾曼濾波的陀螺儀輸出數(shù)據(jù)進行實時監(jiān)測,在云臺姿態(tài)發(fā)生變化時驅(qū)動步進電機,穩(wěn)定現(xiàn)有姿態(tài)。三個運動控制單元在系統(tǒng)進入自穩(wěn)定狀態(tài)后同時開始工作,協(xié)同運行,提高了系統(tǒng)的實時性和可靠性。此外,系統(tǒng)還在三個軸向上分別設(shè)置了一個行程限位開關(guān),用于云臺姿態(tài)的上電復(fù)位。

  本系統(tǒng)各控制單元均采用ATmega系列AVR單片機作為控制器。該系列單片機具有高效、穩(wěn)定、外圍電路簡單、性價比高等優(yōu)點,內(nèi)置10位高精度A/D轉(zhuǎn)換器,非常適合本系統(tǒng)的設(shè)計使用。另外,本系統(tǒng)采用層次化、模塊化的設(shè)計架構(gòu),有利于系統(tǒng)的測試及維護,可靠性與穩(wěn)定性好。

  1.2 中央控制單元設(shè)計


002.jpg


  在本系統(tǒng)中,中央控制單元基于Atmel公司的ATmega1280單片機開發(fā)。如圖2所示,ATmega1280單片機具有4個異步串口。在本系統(tǒng)中,這4個異步串口分別連接上位機和3個軸向的運動控制單元,用于系統(tǒng)控制指令和狀態(tài)數(shù)據(jù)的雙向傳遞。

  中央控制單元的主要功能是負責(zé)接收上位機發(fā)來的指令,并根據(jù)指令對相應(yīng)軸向的運動控制單元發(fā)出二級指令,調(diào)度和控制各運動控制單元,使之能夠協(xié)調(diào)地完成云臺姿態(tài)的實時穩(wěn)定保持以及手動控制操作。此外,中央控制單元還負責(zé)對系統(tǒng)各部分的運行狀態(tài)進行實時監(jiān)控并適時做出調(diào)整。

  1.3 運動控制單元設(shè)計

  系統(tǒng)設(shè)有3個運動控制單元,分別與云臺航向、俯仰和橫滾3個軸向上的陀螺儀和步進電機驅(qū)動模塊相連,用于云臺的實時姿態(tài)調(diào)整。當(dāng)云臺在相應(yīng)軸向上發(fā)生姿態(tài)變化時,陀螺儀的輸出電壓也會跟隨著發(fā)生線性變化。運動控制單元檢測到這一變化后,向步進電機驅(qū)動模塊發(fā)出控制信號和驅(qū)動脈沖,驅(qū)動相應(yīng)軸向上的步進電機對云臺姿態(tài)進行實時反向補償,消除外界振動或飛行姿態(tài)的變化對云臺產(chǎn)生的影響,使云臺保持穩(wěn)定。

  3個運動控制單元的硬件結(jié)構(gòu)相同,都是由ATmega32單片機和外圍電路構(gòu)成。運動控制單元的電路原理圖如圖3所示。

003.jpg

  電源VCC的電壓為直流5 V;U1是ATmega32單片機,內(nèi)置10位高精度A/D轉(zhuǎn)換器,量程為0~5 V,分辨率約4.88 mV;U2是Silicon Sensing公司的CRS03-02型MEMS陀螺儀,該陀螺儀能夠以電壓模擬量的方式輸出其安裝位置的軸角角速度,量程0~±100°/s,其輸出端直接與單片機U1的A/D轉(zhuǎn)換器模擬量輸入引腳相連;J1和J3分別是運動控制單元與中央控制單元同步進電機驅(qū)動模塊的通信接口。

  此外,運動控制單元還設(shè)置了一個行程限位開關(guān)S1與U1單片機的中斷0引腳連接。當(dāng)系統(tǒng)上電時,運動控制單元會將U1中斷0引腳置高電平并驅(qū)動步進電機,讓云臺平面以較低的角速度向有限位開關(guān)的一側(cè)運動。當(dāng)云臺觸碰到限位開關(guān)后,U1中斷0引腳與地接通,U1的低電平中斷被觸發(fā)。由于云臺平面在各軸向上的最大旋轉(zhuǎn)角度在機械結(jié)構(gòu)設(shè)計完成后就是一個固定的參數(shù),因此,運動控制單元接著驅(qū)動步進電機,將云臺平面旋轉(zhuǎn)到中間的平衡位置,完成云臺姿態(tài)的上電復(fù)位。

  1.4 步進電機驅(qū)動模塊設(shè)計


004.jpg

  本云臺系統(tǒng)的步進電機驅(qū)動模塊基于Toshiba公司的TA8435H步進電機驅(qū)動芯片開發(fā)。圖4是步進電機驅(qū)動模塊的電路原理圖,供電電壓VDD為直流24 V,VCC為直流5 V。

  圖中M1是兩相步進電機,整步的步距角為1.8°;U1是步進電機驅(qū)動芯片TA8435H,細分設(shè)置為1/8,這使得步進電機每步的步距角縮小至0.225°,大大增加了系統(tǒng)的運行精度和穩(wěn)定性。

  圖中J1是模塊與運動控制單元連接的數(shù)據(jù)接口,其中引腳2為步進電機的正反轉(zhuǎn)控制引腳,當(dāng)該引腳的輸入為低電平時,步進電機按順時針方向轉(zhuǎn)動,當(dāng)輸入為高電平時,步進電機按逆時針方向轉(zhuǎn)動;引腳3為步進電機轉(zhuǎn)速控制引腳,向該引腳每輸入一個上升沿,步進電機能夠向指定方向轉(zhuǎn)動0.225°,通過改變輸入信號中每兩個上升沿之間的時間間隔,即可控制步進電機的轉(zhuǎn)速。

2 系統(tǒng)軟件設(shè)計

  2.1 中央控制單元軟件設(shè)計

  系統(tǒng)中央控制單元的主要功能是完成上位機指令的判別與傳遞以及系統(tǒng)各運動控制單元的綜合調(diào)度,軟件工作流程如圖5所示。

005.jpg

  2.2 運動控制單元云臺姿態(tài)自穩(wěn)定算法設(shè)計

  2.2.1 卡爾曼濾波

  當(dāng)運動控制單元收到來自上位機的自穩(wěn)定指令并進入慣性穩(wěn)定狀態(tài)后就開始不斷對陀螺儀輸出的模擬量進行采樣和模數(shù)轉(zhuǎn)換,將陀螺儀輸出的模擬量轉(zhuǎn)化為數(shù)字量并進行讀取和處理。

  由于陀螺輸出的原始數(shù)據(jù)中包含一系列干擾和噪聲,因而需要對原始數(shù)據(jù)進行預(yù)處理,降低這些干擾和噪聲。本系統(tǒng)選用卡爾曼濾波算法對原始數(shù)據(jù)進行去噪處理。

  卡爾曼濾波是一種利用線性系統(tǒng)狀態(tài)方程和測量方程,通過觀測數(shù)據(jù)對系統(tǒng)自身狀態(tài)進行估計,使估計的均方誤差達到最小的濾波算法[2]。

  設(shè)系統(tǒng)的狀態(tài)方程為:

  Xk=Ak,k-1 Xk-1+Bk,k-1 Wk(1)

  測量方程為:

  Yk=Ck Xk+Vk(2)

  其中,Xk為k時刻系統(tǒng)的狀態(tài)向量;Ak,k-1為k到(k-1)時刻的狀態(tài)轉(zhuǎn)移矩陣;Bk,k-1為k到(k-1)時刻的過程噪聲驅(qū)動矩陣;Yk為k時刻系統(tǒng)的輸出向量;Ck為測量矩陣;Wk和Vk分別為過程噪聲和測量噪聲,并且被假設(shè)為高斯白噪聲[2-3]和隨機數(shù)噪聲[4]。

  根據(jù)狀態(tài)方程和測量方程,有卡爾曼濾波的五個遞推公式:

  狀態(tài)一步預(yù)測:

  15.png

  其中,yk是k時刻卡爾曼濾波前的數(shù)據(jù)。根據(jù)上述5個方程,只要給定初值X0和P0,即可根據(jù)k時刻的觀測值Yk計算出k時刻的狀態(tài)估計k。為達到最佳效果,選取[2]:

  6B$KNPA9TT2C5K(4C{SO0~X.png

  2.2.2 云臺姿態(tài)自穩(wěn)定算法設(shè)計

  系統(tǒng)進入自穩(wěn)定狀態(tài)后,3個軸向的運動控制單元同時對云臺在各自軸向上的姿態(tài)進行實時姿態(tài)保持。各軸向的運動控制單元軟件工作流程如圖6所示。

006.jpg

3 系統(tǒng)測試及分析

  3.1 卡爾曼濾波性能測試及分析

  為了驗證2.2.1節(jié)所述卡爾曼濾波算法的有效性,以運動控制單元中的MEMS陀螺儀在平衡狀態(tài)下的輸出量作為卡爾曼濾波器的輸入,其處理結(jié)果及濾波前后對比如圖7所示。濾波前后的數(shù)據(jù)特征對比如表1所示。

  從圖7可以直觀地看出,卡爾曼濾波對陀螺輸出數(shù)據(jù)的作用明顯。濾波前,陀螺輸出信號中含有較多白噪聲,濾波后,這部分白噪聲被很大程度地削弱了且均值保持不變,濾波前后數(shù)據(jù)特征對比見表1。這說明本文2.2.1節(jié)所述的卡爾曼濾波算法對消除MEMS陀螺輸出信號中的噪聲有效。

  3.2 云臺姿態(tài)自穩(wěn)定算法性能測試及分析

  本文2.2.2節(jié)提出了無人機載云臺姿態(tài)的自穩(wěn)定算法。為了驗證這一算法的實際性能,云臺上安裝了一個3軸角速度傳感器,當(dāng)云臺處于慣性穩(wěn)定的狀態(tài)下,在云臺的3個軸向上同時以0~±100°/s范圍內(nèi)的任意角速度對云臺基座進行變速晃動。每次實驗持續(xù)1分鐘,每隔5 s記錄一次云臺穩(wěn)定平面在3個軸向上的角速度值,以判斷云臺平面在自穩(wěn)定狀態(tài)下的精度和誤差,實驗共重復(fù)20次。

  根據(jù)20次實驗的結(jié)果,方位軸角速度均值為0.025 °/s,方差均值為0.001 6,俯仰軸角速度均值為0.013 °/s,方差均值為0.000 8,橫滾軸角速度均值為0.016 °/s,方差均值為0.001 0。

  以上試驗數(shù)據(jù)表明,云臺在慣性穩(wěn)定狀態(tài)下能夠較好地保持云臺姿態(tài)。云臺角速度樣本方差較表1所示靜止?fàn)顟B(tài)下的角速度方差略大,可能的原因是步進電機在運行過程中,步與步之間產(chǎn)生了輕微的機械振動。

4 結(jié)論

  本文所提出的基于ATmega單片機的無人機載三軸慣性穩(wěn)定云臺系統(tǒng),能夠有效地在每軸向0~±100 °/s的角速度變化范圍內(nèi)實現(xiàn)無人機在飛行過程中云臺的姿態(tài)保持,確保了無人機在進行航空拍攝時畫面的穩(wěn)定。

  與其他機載慣性穩(wěn)定云臺相比,本系統(tǒng)具有3個彼此獨立的運動控制單元,并且由中央控制單元統(tǒng)一進行調(diào)度和管理,而其他機載慣性穩(wěn)定云臺系統(tǒng)往往只有一個負責(zé)云臺姿態(tài)自穩(wěn)定的處理芯片。

  當(dāng)系統(tǒng)進入慣性自穩(wěn)定狀態(tài)后,一般的機載慣性穩(wěn)定云臺系統(tǒng)往往只能以時間片輪詢的方式來實現(xiàn)各個軸向姿態(tài)穩(wěn)定功能的同時進行運行,實時性和可靠性較低;本系統(tǒng)具有3個獨立的運動控制單元,能夠?qū)?個軸向的狀態(tài)進行實時并行處理,有效地縮短了系統(tǒng)的響應(yīng)時間,提高了系統(tǒng)的實時性和可靠性。

  另外,相較于其他一些基于FPGA等類型嵌入式處理器開發(fā)的慣性平臺[5],本系統(tǒng)在成本上具有較大優(yōu)勢。經(jīng)過大量驗證,本系統(tǒng)穩(wěn)定、可靠、精度高,具有較高的應(yīng)用價值。

參考文獻

  [1] 辛哲奎,方勇純,張雪波.小型無人機地面目標(biāo)跟蹤系統(tǒng)機載云臺自適應(yīng)跟蹤控制[J].控制理論與應(yīng)用,2010,27(8):1001-1006.

  [2] 楊慶輝,杜紅英,陳雄,等.微機電陀螺隨機漂移建模與卡爾曼濾波[J].計算機仿真,2015,32(3):68-72.

  [3] 王正生,仇雅芳,王琳,等.卡爾曼濾波算法在單站無源定位中的應(yīng)用[J].艦船電子對抗,2014,37(5):27-30.

  [4] 關(guān)吉.卡爾曼濾波器的MATLAB仿真實現(xiàn)[J].東南傳播,2014(6):178-180.

  [5] 高迎彬,胡昌華,何華鋒,等.基于FPGA的慣性平臺嵌入式調(diào)平系統(tǒng)設(shè)計[J].電子測量技術(shù),2011,34(6):60-63.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。