影響四旋翼飛控控制性能的關鍵因素有哪些?試從控制系統的穩定性、快速性和精度角度分析。

從控制系統的角度分析影響目前四旋翼飛控控制性能的關鍵因素,例如影響四旋翼的抗風性能、定點懸停精度的關鍵因素。


好多天沒人回答,說一下自己的淺見。

就目前而言,飛控姿態控制演算法比較固定,基本上是角度環和角速度環組成的串級pid演算法,外加前饋提高響應速度(不排除有更好的解決方案)。

因此就目前的演算法而言,影響飛控性能的因素主要有以下幾點:

1、環路延遲

環路延遲對控制比較致命,引起延遲的因素很多,概況講有以下幾個方面:

1)IMU採樣更新率和濾波器截止頻率

由於受振動等因素影響,IMU輸出需要經過低通濾波,而過大的濾波會嚴重引起相位滯後,引起控制的不穩定性,制約控制性能提高。

2)控制頻率

受限於控制器計算速度,控制頻率低也是引起延遲的因素;

3)電調刷新率率、電機響應速度、螺旋槳慣性

2、機架振動

機架剛性不足,會導致共振,制約了控制帶寬的提升,是影響控制性能的另一方面重要因素,就目前的PID控制而言,高的控制性能都是通過高的伺服帶寬實現的,機械模態頻率是限制帶寬的重要因素。其次過大的振動又會引起IMU測量數據異常,需要設置更低的濾波器參數,反過來又會導致相位滯後。

PS:目前在pixhawk上測試發現,環路延遲相比較機架共振對控制的制約更大,stm32這個平台運算速度不夠快,導致伺服頻率上不去,只有400Hz左右,其次mpu6000採樣頻率和濾波帶來的延遲非常大。等等因素都引起了相位滯後,引起系統不穩定。

抗風和定點懸停的影響因素較多,等理解更深刻的時候進行更新,歡迎討論。


主要是看你用的啥飛控,是貴貨商品控還是廉價開源控


我接觸的飛控工作的過程基本都是這樣:imu採集姿態信息→濾波→解算出姿態→控制電機轉速 然後羅盤來確定方向 gps來確定坐標 工作方式跟imu差不多

要說抗風的話,整個過程里其實處處都能搞,比方說imu,好多飛機都是6050,幾十塊錢一片,雜訊感人,拿來做飛控肯定是很勉強,搞個幾萬塊的imu模塊基本就穩如狗,問題是大部分人用不起啊。一般電調輸出都是幾百hz的pwm信號,而像mk之類的飛控用的是iic的電調,頻率炒雞高,直接把電機當成濾波器來用,飛著效果挺好就是效率不咋地。演算法關係也很大,3dr那些飛控氣壓計上蓋再多海綿定高也不見得比氣壓計裸奔的精靈好使,來陣風照樣上躥下跳。

定點的精度基本就是gps的精度了,想要定點夠准,花點錢搞個rtk就行了,還順帶把定高也解決了,直接釘在天上。還有各種視覺感測器,固定場地的各種光學跟蹤巴拉巴拉的。

說到底還是錢的事兒,有錢上更好的感測器,再加上說得過去的程序,什麼都不是問題。。。。。


飛控的話,更準確的說法,是負責整個系統最終閉環的環節。有位知友的回答中「末端」的說法有待商榷。歡迎就此展開友好討論:)

飛控當然建立在感測器,狀態估計,乃至系統模型,等等的基礎上,畢竟是整個系統的閉環,閉的是所有這些環節的環。

因此,閉環系統所能達到的性能,包括問題中所提到的穩定性、快速性和精度,抗風性能和定點懸停精度,除了與飛控演算法有關之外,也決定於感測器、狀態估計、系統模型精度等所有的這些環節。

但不代表這個飛控是末端,或是不重要。比如請試回答如下問題:

控制定位精度,最好能做到多少?

風或外力干擾的抑制,與感測器和狀態估計雜訊的影響,其間如何 trade off?

滾動拋飛,效果如何?

一個螺旋槳換了,還能飛么?容錯?

換負載的話,需要重新調飛控參數么?自適應?

如何處理地效?

如何應對空氣稀薄?

如何應對氣流?實時學習?

如此等等~

話又說回來,感測器、狀態估計、模型精度等,對最終飛控閉環性能的影響,如何定量分析?這大概是這個問題想要問的吧?

感測器、數據融合、狀態估計,乃至系統性質等,當然重要。那就要問了,比如:

知道感測器的雜訊曲線,信息融合和狀態估計精度最好能到多少?

非線性和非高斯呢?

EKF、UKF與例子濾波性能的定量分析?

除了 variance 與 bias 之外呢?

給定某狀態估計精度,閉環控制的精度能最好到多少?

給定某系統,閉環控制的抗風性能做到如何?

如此等等~

歡迎回答~


我來說說我的碩士時期一門課程的 期末作業吧,當時正巧是建立個四軸。

期末作業的要求是將這個小四軸建模並設計其控制環節,嵌入編寫以及調試。

當時系主任帶我們這門課,當時他有兩個要求:

1.除了PID,其他隨便用什麼控制器都行。 當時他說完便引來一陣白眼,問其原因,回答曰 PID "too simple" (是不是還漏了半句?)

2. 用線性編程的技巧,完成一個輔助任務(比如讓飛機上的LED小燈根據其空中姿態biubiubiu地閃閃閃之類的)。當時全班的同學大部分瞬間黑人問號臉.jpg,什麼是tmd線性編程?顯然這個問題對於CS出身的同學如同家常便飯小菜一碟,然而對於我們這些天天在那兒「算矩陣的」控制工程師而言,這到底是什麼鬼? 對此,CS出身的系主任的解釋如下:「如果程序員會一點控制,或許只是興趣愛好, 卻很難深入;但如果控制工程師會寫一點程序,那將對你們的職業生涯有著極大的幫助。」 好吧,就算我們強行吃下了這劑安利。

希望能用較少的語言和專業術語把過程解釋清楚。

首先是建模

首先,作為一個可旋轉的剛體,四軸飛行器可以用牛頓-歐拉公式來描述其動態特性。

一個飛行器在三維空間中的姿態無外乎有三種形式:roll(滾),pitch(翻),yaw( 偏航/平轉)

從我畫的簡單的示意圖來看,我們將 分別繞x,y,z三軸的旋轉作為roll,pitch,和yaw。

(突然好餓啊。。。做飯去了。。。有空繼續寫。。。)


樓上的回答是從專業的演算法上進行評價的,我就從實際操作上來說說吧,飛控的性能,主要是一些從開源飛控的基礎是上做的,飛控性能也就是在硬體基礎,進行演算法上的優化,優化的有pid的數據等等,還有一些飛控外設的光溜,超聲等等!都是在硬體的基礎上進行演算法優化,優化的越好飛控的性能就越好!


你們什麼時候才能明白飛控在整個工程之中只是末端,甚至還不是最重要的末端。

你控制部分再牛逼,觀測到的信息是一坨翔也沒用。我見過用幾十塊錢的氣壓計把直升機高度控的穩如狗的,也見過用了(消費級中)頂級的感測器但是飛機姿態差的很最後導致炸雞的,但是他們的控制系統其實是很相似的(因為來源近似啊:)),區別只是對感測器信息進行解算的過程不一樣。對於多旋翼控制,畢竟執行機構簡單,百分之九十九的多旋翼也沒有變距結構,也不存在MIMO的強耦合,最主要的部分是對狀態的獲取(觀測)。

至於控制,你找兩個本科生培訓半年都能寫出來一個能用的pid,足夠把一個四軸控好了,真的。拋卻獲取信息就是談控制是耍流氓的行為,控制系統作為一個系統工程,單獨拿出來說某一部分(甚至不是關鍵部分)真的大丈夫?


推薦閱讀:

為什麼那麼多人學控制學到最後覺得學控制像學玄學,練內功一樣?
三菱Q系列PLC 和FX系列PLC 有何不同?
如何理解PI雙閉環控制?
如何理解最小相位系統和非最小相位系統?

TAG:控制系統 | 自動控制 | 無人機Drone | 飛行控制 | DJI大疆創新 |