摘 要: 四旋翼飛行器的制作與研究日漸火熱,而且其應用價值日漸凸顯,當今四旋翼飛行器大都使用飛控板控制,其優(yōu)點是操作簡單,穩(wěn)定性比較好,但很多的復雜功能無法自定義,僅僅能使用其固有的動作。源于市面上飛控板的這一不足,設(shè)計了具有自主特色的控制思路,重點講解在研究過程中的角度平衡的數(shù)據(jù)處理思路與方法。
關(guān)鍵詞: 四旋翼飛行器;平衡;陀螺儀;加速度計
1 四旋翼飛行器結(jié)構(gòu)框圖與描述
該飛行器由一主控MCU從傳感器讀取加速度計輸出的重力加速度模擬量與陀螺儀輸出的角速度模擬量,對其進行比例融合相互補償獲得真實的角度值,以備主控控制電機的轉(zhuǎn)速來保持平衡。圖1為飛行器簡略結(jié)框圖。得到準確的角度值是控制平衡的關(guān)鍵之處。當前市面上購買的飛控板大都采用卡爾曼算法和互補算法,對比這些算法可謂各有利弊,但這些算法也都是對模擬量進行濾波融合。
2 角度值輸出誤差的問題與發(fā)現(xiàn)
角度值是控制平衡核心參考量,MCU對傳感器的模擬量進行讀取,而后將當前加速度計模擬量G和陀螺儀模擬量A分別減去各自固定的常數(shù)(平衡點重力加速度GK、平衡點角速度常數(shù)AK),得到當前的凈輸出重力加速度GO和凈輸出角速度AO,再經(jīng)過濾波算法對當前GO和AO比例擬合得到當前角度Aangle。此處最關(guān)鍵點在于GK、AK這兩個常數(shù)的確定,它們的準確與否直接影響到角度Aangle的正確與否。計算角度過程中,常用的思想就是事先測試出一個合適的靜態(tài)AK,然后將當前從陀螺儀讀取來的A減去這個靜態(tài)AK得到凈輸出角速度值A(chǔ)O。將AO進行積分得到理論角度值,然后將從加速度計讀取到的G減去測試出來的靜態(tài)GK得到凈輸出GO,而后用得出的GO按一定權(quán)重(1/T)去補償角速度積分出來的角度值,最后將補償后的角度值乘以一個固定常量比例值(S),便可以得到當前角度值A(chǔ)angle。圖2為角度融合的總體流程框圖[1-2]。
但由于陀螺儀與加速度計溫移比較嚴重,因此平衡零點模擬量無法準確確定,而且陀螺儀靜止時角速度輸出噪聲(如圖3所示),更進一步加大了平衡零點確定的難度系數(shù)。
3 動態(tài)平衡零點常數(shù)的引入
通常采用靜態(tài)平衡點常數(shù)來計算當前角度,其弊端是當環(huán)境溫度變化時便無法輸出正確角度值。針對靜態(tài)平衡點適應性差的問題,動態(tài)設(shè)定平衡點的思想還是很有必要的。所謂動態(tài)平衡點就是飛行器在起飛之前維持其處于水平且靜止狀態(tài),然后讀取當前的加速度計和陀螺儀輸出模擬量讀取N次求平均值之后將其設(shè)定為平衡點常數(shù)GKt、AKt,而后便可以穩(wěn)定起飛。
其中,Gt為當前讀取的重力加速度計模擬量,At為當前讀取的陀螺儀輸出模擬量。
4 動態(tài)平衡零點設(shè)定的優(yōu)化
當飛行器剛上電,系統(tǒng)各種電路模塊不夠穩(wěn)定導致電源電壓出現(xiàn)波動,此時的輸出模擬量存在一定偏差,動態(tài)平衡點確定是要求飛行器各個電路模塊要處于穩(wěn)定狀態(tài),所以要求在上電之后稍作延時再設(shè)定平衡點常數(shù)GK、AK。當各個電路模塊穩(wěn)定以后,對模擬量的讀取常用的方法是取N次便設(shè)定為平衡零點模擬量,因為在角度值的確定過程中角速度起主導作用,其輸出偏差大小很大程度影響到計算的角度值,而重力加速度值只是用來修正和補償計算角度值的,這里不作過多討論,重點放在角速度積分環(huán)節(jié)上。
圖4為不同時刻讀取N次角速度均值輸出波形。
從圖4可以看出AK(1 630,1 645),顯然動態(tài)AK是一個范圍值,而非確切值。當設(shè)定值為最高點AK=max(1 630,1 645)時,積分不久之后便會使計算角度再次偏大,當設(shè)定值為最底點AK=min(1 630,1 645)時,積分不久之后便會使計算角度再次偏小Aangle(i)<Aangle實際,使飛行器失去平衡而至炸機。因此動態(tài)AK的設(shè)定存在一定的偶然性??梢钥闯黾铀俣扔嬙陟o止時會圍繞某一個固定值(此處大約為1 637)上下波動,所以對現(xiàn)在輸出平均模擬量進行累加之后再求一次平均值,便可以得到要得到的最近似平衡零點,如圖5所示,其中水平線為比較理想Ak。
5 優(yōu)化后的角度跟隨圖像分析
融合并優(yōu)化后的波形圖像如圖6所示,其從上到下波形依次為凈輸出重力加速度GO,融合之后的實際角度Aangle,凈輸出角速度AO。
6 結(jié)論
在使用模擬量加速度計和陀螺儀計算角度值時,動態(tài)平衡常數(shù)有其存在的必要性,動態(tài)平衡常量解決了靜態(tài)平衡點適應性差的缺點,但動態(tài)平衡常量的引入也帶來了一定的弊端,其使得平衡常量值是一個范圍值而非確切數(shù)值,解決辦法是適當提高平衡常量設(shè)定時對模擬量的讀取次數(shù),多次讀取求平均值能使得平衡常量更加逼近最優(yōu)常量值,從而得到更精確的角度值。
參考文獻
[1] 鄒伯敏.自動控制理論(第三版)[M].北京:機械工業(yè)出版社,2007.
[2] 智能車競賽秘書處.電磁組直立行車參考設(shè)計方案(版本2.0)[Z].2012.03.