[飛控]從零開始建模(一)-牛頓歐拉方程

對無人機建模對新手無疑是個大難題,我需要急需模型幫助我們分析問題,但是卻不知從哪開始,毫無頭緒,一個月前我也備受困擾。
上知乎查了一下如何對四旋翼飛行器進行精確的數學建模?
得到的是這樣的答案

[飛控]從零開始建模(一)-牛頓歐拉方程的圖1

我的天!完全看不懂呀,這些公式都是哪來的呀?
查閱資料后發現建模還是有跡可循的,你只需要一點點物理知識即可。ok,讓我們忘記復雜的公式從零開始。

0.建模的目的

不少同學容易把整個控制系統的搭建和被控對象建模搞混,我們常說的建模通常都是對被控對象建模,建模后再進行控制系統搭建,控制系統除了有模型,還有動力分配,狀態更新的過程。

[飛控]從零開始建模(一)-牛頓歐拉方程的圖2

我們先來講講建模,建模的目的是希望得到模型的受力分析,我們給它一個力,它會出現什么狀態?

1.從F=ma開始

所以我們很早其實就接觸過建模了,翻開你從初中物理。

[飛控]從零開始建模(一)-牛頓歐拉方程的圖3
這個公式其實就可以代表一個模型,假設有一個理想的小車,你告訴的它的質量m,根據這個公式我就知道我給一個力F,會產生一個a,有了這個a根據下面的公式你就可以知道小車的速度和位移,我的天!只要我們知道了小車的質量我們幾乎知道了小車的一切。

[飛控]從零開始建模(一)-牛頓歐拉方程的圖4

所以建模是一個跟力有關的過程,你看其實很簡單吧。

2.平移過程

對四旋翼建模也是同樣的思路,只不過四旋翼有三個運動方向,前,右,上。

[飛控]從零開始建模(一)-牛頓歐拉方程的圖5
很好理解吧,有個地方注意一下,這里的加速度a是相對于地理坐標系的,那么飛機受到的有哪些力呢?我們先只考慮最重要的重力,還有四個電機產生的力f1,f2,f3,f4,如果我們假設z軸向上為正,可以得到:

[飛控]從零開始建模(一)-牛頓歐拉方程的圖6
這樣是不是很簡單,四個電機的力都是在z軸方向的,重力也是z軸方向的,但是電機產生的力是機體坐標系下的,我們分析的加速度是在地理坐標系下的所有我們需要加一步坐標變換,還記得我們的好朋友機體坐標系轉地理坐標系的旋轉矩陣嗎?(c表示cos,sb表示sin)

[飛控]從零開始建模(一)-牛頓歐拉方程的圖7
[飛控]從零開始建模(一)-牛頓歐拉方程的圖8
然后我們就得到書上的公式了,什么?不太像!,簡寫一下就一樣了,你看變成一個專業的微分方程了。

[飛控]從零開始建模(一)-牛頓歐拉方程的圖9
聰明的你可以繼續得到:

[飛控]從零開始建模(一)-牛頓歐拉方程的圖10
搞定了,看吧,建模本質上還是個F=ma

3.旋轉過程

這個移動過程就是這么簡單,但是四旋翼不光能移動還能旋轉那可怎么辦?這個旋轉過程就需要翻開你的大學物理了,記住關鍵詞剛體的旋轉,搜索它所有的問題都能迎刃而解。
物體如何旋轉跟力矩有關,力矩與力F和距離l有如下公式:

[飛控]從零開始建模(一)-牛頓歐拉方程的圖11
(這里的力矩與機型有關)如果是‘十’字型的飛機

[飛控]從零開始建模(一)-牛頓歐拉方程的圖12

x,y,z軸的力矩為:
[飛控]從零開始建模(一)-牛頓歐拉方程的圖13

d是機體中心到每個螺旋槳的距離,b是一個系數
具體推導過程參考

《Quadcopter Dynamics, Simulation, and Control》

進而根據歐拉方程:

[飛控]從零開始建模(一)-牛頓歐拉方程的圖14
其中J是慣量矩陣,ω是角速度,ε是角加速度,這里的運算是叉乘

通常我們假設四旋翼進行小角度運動,那么角速度為:

[飛控]從零開始建模(一)-牛頓歐拉方程的圖15
所以角加速度為:

[飛控]從零開始建模(一)-牛頓歐拉方程的圖16
慣量矩陣為:

[飛控]從零開始建模(一)-牛頓歐拉方程的圖17
整理上述公式可得:

[飛控]從零開始建模(一)-牛頓歐拉方程的圖18

4.牛頓-歐拉方程

可以看到建模的其實就是為了得到輸入的力與加速度的關系,通過牛頓方程可以得到平動的加速度,通過歐拉方程可以得到角加速度,所以這種建模方法也叫牛頓-歐拉方程

[飛控]從零開始建模(一)-牛頓歐拉方程的圖19
建模到這里已經完成了大部分工作,現在還剩下兩個問題

  • 電機產生的力f1,f2,f3,f4怎么求

  • 這個方程里有很多參數如何確定,比如系數b,轉動慣量矩陣等等

電機產生的力這部分叫做動力系統建模,是跟你的電機,電調有關,通常可以認為:
[飛控]從零開始建模(一)-牛頓歐拉方程的圖20
C_T為升力系數,w為螺旋槳的轉速,帶入模型中可得:

[飛控]從零開始建模(一)-牛頓歐拉方程的圖21
轉動慣量J,升力系數C_T,扭力系數C_M,要確定模型里這些未知的參數需要用到系統辨識的相關知識。但是目前我們可以使用一種簡單的方法來確定。
使用北航可靠飛行控制研究組飛行測評軟件( http://www.flyeval.com/ )
只要我們選擇想要的機型

[飛控]從零開始建模(一)-牛頓歐拉方程的圖22

就可以得到想要的參數

[飛控]從零開始建模(一)-牛頓歐拉方程的圖23

5.總結

對四旋翼進行建模,使用了剛體運動的知識,質心平動用牛頓方程描述,繞質心的轉動用歐拉方程定義。最后得到一組牛頓歐拉方程,通過系統辨識等工具得到方程中的參數,有了方程,有了參數,只要給我電機產生的力就可以得到加速度和角加速度了。
但是我們想要的狀態不僅僅包括加速度,我們還想得到速度,位置,角速度,姿態等信息。

[飛控]從零開始建模(一)-牛頓歐拉方程的圖24

下一篇為大家介紹,狀態更新,敬請期待。
關注微信公眾號【zinghd的思考】,回復【建模】為您提供超經典的建模資料。


[飛控]從零開始建模(一)-牛頓歐拉方程的圖25


同時歡迎加我的個人微信交流,聽說加我的人不用建模也有對象哦^_^

[飛控]從零開始建模(一)-牛頓歐拉方程的圖26

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

2
1
3