當前位置:首頁 » 操作系統 » 無人機飛控演算法

無人機飛控演算法

發布時間: 2023-04-17 08:50:04

A. 無人機飛控類別

四軸之所以能夠流行起來,全仰仗於飛控技術的提升。飛控是飛機的大腦,它基本上就是一塊集成了很多感測器的大腦。它接收飛手發送的指令,並通過控制馬達讓飛機達到預期姿態。幾乎所有的飛控都內置慣性導航系統IMU.一些高級的點飛控還會內置氣壓感測器和電子指南針。除了內置的感測器以外,飛控還可以外接很多其他外圍設備,比如GPS、LED、雷達等。接下來我將教大家如何選擇無人機飛控。

選擇飛控固件

固件就是在硬體上跑的飛控軟體,一般情況的不同的硬體對應有不同的固件,但是有些流行的固件也可以同時兼容好多種硬體。比較流行的固件有 Betaflight、PX4、Cleanflight、KISS、Raceflight 等。

由於飛控理論相對來說相對來說還是開放的,很多固件也都是開源的,所以對於本身飛行演算法來說其實並沒有什麼好爛之分。在選擇的時候主要考慮固件的成熟度,擴展能力,以及上位機配套軟體的便利性。由於每個固件的上位機軟體區別還是比較大的,所以有一定的學習成本需要考慮進去。

如果你不知道怎麼選的話這里有個建議就是,單純飛穿越機選擇Betaflight,如果想深入學習飛控演算法並在將來嘗試進行飛控開發,選擇PX4。

處理器

[圖]

2/9

選擇處理器

這里的處理器指的是飛控 上面主MCU,飛控的MCU一般會選擇stm32系列,所以會有F1, F3, F4 and F7等。 目前來說F1的性能已經不太夠用了,現在主流的是F3和F4的MCU,當然高端點的飛控就直接上F7了,尤其是PX4的高級飛控。

3/9

選擇介面

這里說的介面主要說的是可以外接外圍設備的介面,一般有UART、IIC、SPI等。介面的數量受所選的MCU所限制,最終由硬體電路決定留出多少介面,有些飛控為了減少板子尺寸並沒有把所有可用的介面給預留出來。下表是每種MCU可以支持的串口數量。

F1F3F4F72 UART』s3-5 UART』s3-6 UART』s7+ UART』s

介面數量決定了可以外接多少個外圍設備,可以根據實際情況進行選擇。

另外,SPI能夠達到的速度比IIC好高,IIC最大隻能達到4KHz。而且SPI是全雙工的,所以在SPI和

4/9

選擇慣性導航晶元

典型的慣性導航晶元可參考下表

IMU支持的通訊協議最大的采樣頻率MPU6000SPI, i2c8KMPU6050i2c4KMPU6500SPI, i2c32KMPU9150*i2c4KMPU9250*SPI, i2c32KICM20602SPI, i2c32KICM20608SPI, i2c32KICM20689SPI, i2c32K

*其中MPU9150 相當於MPU6050加AK8975指南針,而MPU9250相當於MPU6500加AK8975。

目前來說,使用最廣泛的是MPU6000,雖然說它的采樣頻率只有8kHz,但是它的抗噪魯棒性很好,一般不推薦使用MPU6500和MPU9250,它們雖然采樣頻率很快但是采樣出來的數據雜訊也很高。

采樣頻率本身是個雙刃劍,如果在干凈的電源下面,采樣頻率越高,數據越平滑。但是如果是帶有電調和馬達干擾的電源下面,采樣頻率過高並不能帶來好處,數據可能比低采樣頻率采出來的數據更糟糕。

有些飛控會單獨把慣性導航模塊外置,然後墊個海綿墊進行緩沖。如果沒有外置的話,最好在飛控安裝的時候將整個飛控安裝在海綿墊上面。

[圖]

5/9

選擇功能模塊

飛行控制演算法是飛控的基本功能,但是還有很多其他的功能也很值得考慮。

6/9

選擇OSD

OSD能將飛行信息顯示在FPV屏幕上,比如電池電壓,飛行時間。攝像頭將圖像數據傳入飛控,飛控會將飛行信息跟圖像數據融合並一並發給圖傳,圖傳可以將帶有OSD的信息發回FPV顯示器顯示。有些還可以支持通過OSD調整參數。

7/9

選擇電流計

飛控能夠通過電流計能夠計算出當前剩餘的電量,這比單單測量電池電壓要好的多。它能更准確的讓你留出降落時間。

8/9

選擇黑盒子

黑盒子聽起來高達上,其實這里只是一個SD卡,飛控可以把飛行數據寫到SD卡上方便後面的分析。這個對於調節PID來說是特別有用的。

9/9

選擇安裝尺寸

安裝尺寸在寫機架的時候也有聊到過,主要是為了保證飛控能夠准確的安裝在飛機上。

通用的飛控尺寸有 30.5×30.5mm, 20x20mm和16x16mm等. 5寸漿或者更大的機架一般使用30.5×30.5mm的飛控,更小點的使用20x20mm的飛控,而16x16mm也在100mm以下的機架上流行起來了。

[圖]

注意事項

如果有幫助到你的麻煩點個贊。

B. 多旋翼無人機飛行控制方法講解

多旋翼無人機飛行控制方法講解

為了克服某些線性控制方法的限制,一些非線性的控制方法被提出並且被運用到飛行器的控制中。下面是我為大家分享多旋翼無人機飛行控制方法講解,歡迎大家閱讀瀏覽。

1 線性飛行控制方法

常規的飛行器控制方法以及早期的對飛行器控制的嘗試都是建立在線性飛行控制理論上的,這其中就又有諸如PID、H∞、LQR以及增益調度法。

1.PID PID控制屬於傳統控制方法,是目前最成功、用的最廣泛的控制方法之一。其控制方法簡單,無需前期建模工作,參數物理意義明確,適用於飛行精度要求不高的控制。

2.H∞ H∞屬於魯棒控制的方法。經典的控制理論並不要求被控對象的精確數學模型來解決多輸入多輸出非線性系統問題。現代控制理論可以定量地解決多輸入多輸出非線性系統問題,但完全依賴於描述被控對象的動態特性的數學模型。魯棒控制可以很好解決因干擾等因素引起的建模誤差問題,但它的計算量非常大,依賴於高性能的處理器,同時,由於是頻域設計方法,調參也相對困難。

3.LQR LQR是被運用來控制無人機的比較成功的方法之一,其對象是能用狀態空間表達式表示的線性系統,目標函數為是狀態變數或控制變數的二次函數的積分。而且Matlab軟體的使用為LQR的控制方法提供了良好的模擬條件,更為工程實現提供了便利。

4.增益調度法 增益調度(Gain scheling)即在系統運行時,調度變數的變化導致控制器的參數隨著改變,根據調度變數使系統以不同的控制規律在不同的區域內運行,以解決系統非線性的問題。該演算法由兩大部分組成,第一部分主要完成事件驅動,實現參數調整。 如果系統的運行情況改變,則可通過該部分來識別並切換模態;第二部分為誤差驅動,其控制功能由選定的模態來實現。該控制方法在旋翼無人機的垂直起降、定點懸停及路徑跟蹤等控制上有著優異的性能。

2 基於學習的飛行控制方法

基於學習的飛行控制方法的特點就是無需了解飛行器的動力學模型,只要一些飛行試驗和飛行數據。其中研究最熱門的有模糊控制方法、基於人體學習的方法以及神經網路法。

1.模糊控制方法(Fuzzy logic)模糊控制是解決模型不確定性的方法之一,在模型未知的情況下來實現對無人機的控制。

2.基於人體學習的方法(Human-based learning) 美國MIT的科研人員為了尋找能更好地控制小型無人飛行器的控制方法,從參加軍事演習進行特技飛行的飛機中採集數據,分析飛行員對不同情況下飛機的操作,從而更好地理解無人機的輸入序列和反饋機制。這種方法已經被運用到小型無人機的自主飛行中。

3.神經網路法(Neural networks) 經典PID控制結構簡單、使用方便、易於實現, 但當被控對象具有復雜的非線性特性、難以建立精確的數學模型時,往往難以達到滿意的控制效果。神經網路自適應控制技術能有效地實現多種不確定的、難以確切描述的非線性復雜過程的控制,提高控制系統的魯棒性、容錯性,且控制參數具有自適應和自學習能力。

3 基於模型的非線性控制方法

為了克服某些線性控制方法的限制,一些非線性的控制方法被提出並且被運用到飛行器的控制中。這些非線性的控制方法通常可以歸類為基於模型的非線性控制方法。這其中有反饋線性化、模型預測控制、多飽和控制、反步法以及自適應控制。

1.反饋線性化(feedback linearization) 反饋線性化是非線性系統常用的一種方法。它利用數學變換的方法和微分幾何學的知識,首先,將狀態和控制變數轉變為線性形式,然後,利用常規的線性設計的方法進行設計,最後,將設計的結果通過反變換,轉換為原始的狀態和控制形式。反饋線性化理論有兩個重要分支:微分幾何法和動態逆法,其中動態逆方法較微分幾何法具有簡單的推算特點,因此更適合用在飛行控制系統的設計上。但是,動態逆方法需要相當精確的飛行器的模型,這在實際情況中是十分困難的。此外,由於系統建模誤差,加上外界的各種干擾,因此,設計時要重點考慮魯棒性的因素。動態逆的'方法有一定的工程應用前景,現已成為飛控研究領域的一個熱點話題。

2.模型預測控制(model predictive control)模型預測控制是一類特殊的控制方法。它是通過在每一個采樣瞬間求解一個有限時域開環的最優控制問題獲得當前控制動作。最優控制問題的初始狀態為過程的當前狀態,解得的最優控制序列只施加在第一個控製作用上,這是它和那些預先計算控制律的演算法的最大區別。本質上看模型預測控制是求解一個開環最優控制的問題,它與具體的模型無關,但是實現則與模型相關。

3.多飽和控制(nested saturation)飽和現象是一種非常普遍的物理現象,存在於大量的工程問題中。運用多飽和控制的方法設計多旋翼無人機,可以解決其它控制方法所不能解決的很多實際的問題。尤其是對於微小型無人機而言,由於大傾角的動作以及外部干擾,致動器會頻繁出現飽和。致動器飽和會限制操作的范圍並削弱控制系統的穩定性。很多方法都已經被用來解決飽和輸入的問題,但還沒有取得理想的效果。多飽和控制在控制飽和輸入方面有著很好的全局穩定性,因此這種方法常用來控制微型無人機的穩定性。

4.反步控制(Backstepping)反步控制是非線性系統控制器設計最常用的方法之一,比較適合用來進行在線控制,能夠減少在線計算的時間。基於Backstepping的控制器設計方法,其基本思路是將復雜的系統分解成不超過系統階數的多個子系統,然後通過反向遞推為每個子系統設計部分李雅普諾夫函數和中間虛擬控制量,直至設計完成整個控制器。反步方法運用於飛控系統控制器的設計可以處理一類非線性、不確定性因素的影響,而且已經被證明具有比較好穩定性及誤差的收斂性。

5.自適應控制(adaptive control) 自適應控制也是一種基於數學模型的控制方法,它最大的特點就是對於系統內部模型和外部擾動的信息依賴比較少,與模型相關的信息是在運行系統的過程中不斷獲取的,逐步地使模型趨於完善。隨著模型的不斷改善,由模型得到的控製作用也會跟著改進,因此控制系統具有一定的適應能力。但同時,自適應控制比常規反饋控制要復雜,成本也很高,因此只是在用常規反饋達不到所期望的性能時,才會考慮採用自適應的方法。

;
熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:333
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:377
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:610
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:31
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:942
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:739
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:802
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:510
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:371