基于GD32F103VCT6的四軸飛行器整體方案及試飛效果
3 PID
PID分兩種,位置式和增量式,我采用的是位置式,將 Ki和Kd用Ti和Td的形式來表達(dá),并帶入到式2-3中,ek=角度 的期望-傳感器輸出的角度,所用的PID三個參數(shù)是:Kp、 Ti、Td。公式如下所示:
四軸PID控制的目的就是將接收到的遙控的控制信號(一般有油門THR、升降舵ELE(對應(yīng)pitch)、副翼Ail(對 應(yīng)roll)、方向舵RUD(對應(yīng)yaw))與飛控板本身計算得出 pitch、roll、yaw做比較,分別得出它們之間的誤差值,然后 將Kp、Ti、Td與這個誤差值結(jié)合得出PID輸出(PID_pitch、 PID_roll或者PID_yaw),再將這三個PID輸出與油門結(jié)合在 一起算出送到每一個電調(diào)的PWM數(shù)值,從而控制每一個電 機(jī)的轉(zhuǎn)動。PID參數(shù)的調(diào)試我是用的土辦法,分別對俯仰、翻滾和 偏航做PID調(diào)試,x模式下先同時上Kp和Td,光靠Kp是穩(wěn)不 住四軸的,調(diào)的差不多了上Ti消除靜態(tài)誤差。在調(diào)這三個參 數(shù)時,要相輔相成,切忌把某一個參數(shù)固定下來,因為它們
之間都會相互影響。我們還需要考慮三個問題,這三個問題都是圍繞讓自己的四軸怎樣轉(zhuǎn)動:
1. 飛行時是使用“+”模式還是使用“x”模式;
2. 四個電機(jī)分別該如何旋轉(zhuǎn),是逆時針還是順時針;
3 . 每 個 電 機(jī) 該 怎 樣 旋 轉(zhuǎn) 才 能 讓 我 們 的 四 軸 上 升 、 下 降、左翻、右翻、上仰、俯沖、左轉(zhuǎn)頭或者右轉(zhuǎn)頭。
對于第一個問題來說:一般“+”模式比較好操作,也 比較好調(diào)節(jié)PID的那三個參數(shù),而“x”模式飛行起來比較 靈活,可以做很多復(fù)
雜動作,但是比較難操作,這里我用的 是“x”模式,對于新手來說,包括我,雖然“x”模式難一 些,不過最多也就是需要時間來
學(xué)習(xí)和熟練罷了,其實也沒 什么難的。
對于第二個問題:首先要確定飛控板的xyz軸正方向如 何放置,然后確定4個電機(jī)的旋轉(zhuǎn)方向分別是什么,我定義 的方式如上圖,Y正
方向為四軸前進(jìn)方向。
M1、M2、M3、M4分別為4個電機(jī),其中M1和M4順時 針旋轉(zhuǎn),M2和M3逆時針旋轉(zhuǎn)。
對于第三個問題:還是看上圖,我定義三點(diǎn):
1 . x y z 軸 的 正 方 向 為 : y 指 向 正 北 , x 指 向 東 , z 指 向 天;
2.繞y旋轉(zhuǎn)是roll,繞x旋轉(zhuǎn)是pitch,繞z旋轉(zhuǎn)是yaw;
3.Yaw北偏西為正,pitch往上為正,roll“右翼”下沉 為正。
令:“+”表示增加該電機(jī)的旋轉(zhuǎn)速度,“-”表示減小 該電機(jī)的旋轉(zhuǎn)速度,那么“x”模式下的控制規(guī)律如下:
最后得出每個電機(jī)需要的PWM輸出計算公式:
其中Limit_PWMOUT函數(shù)是限制PWM的輸出,根據(jù)電調(diào)的
PWM占空比來確定。
還有一點(diǎn)需要注意的,就是槳葉的安裝,槳葉是分正 反漿的,通俗地說,安裝時要保證4個槳葉轉(zhuǎn)動時都是往下 吹風(fēng)的。
4 四軸零件之間的接線與簡單說明
4個電調(diào)的正負(fù)極需要并聯(lián)(紅色連一起,黑色連1一 起),并接到電池的正負(fù)極上;
電調(diào)3根黑色的電機(jī)控制線,連接電機(jī),交換任意兩根 黑色的連線,可改變電機(jī)轉(zhuǎn)動方向,以此來改變槳的旋轉(zhuǎn)方 向;
電調(diào)有個BEC輸出,共3根線,紅、黑線用于輸出5V的 電壓,給飛行控制板供電,另外一根線用于接收飛行控制板 的PWMout信號;
遙控接收器連接在飛行控制器的PWMin上,輸出遙控 信號給飛控板,并同時從飛行控制板上得到5V供電。
5 關(guān)于PWMin和PWMout
對于我的天地飛7通遙控+WFT07接收機(jī)來說,遙控發(fā) 送給接收機(jī)的信號是PPM,而接收機(jī)輸出的信號是標(biāo)準(zhǔn)的 PWM。
對于接收機(jī)來說,我們只需要關(guān)心它輸出的高電平時 間,也就是PWMin,不用管占空比,因此TIM_Period設(shè)定為
0xFFFF。我的WFT07接收機(jī)的PWM周期是20ms,高電平是
1ms~2ms。
對于給電調(diào)的輸入來說,也就是P WMout,要確定其 占 空 比 , 一 般 根 據(jù) 自 己 的 電 調(diào) 來 確 定 這 個 占 空 比 , 我 用的是好盈天行者20A, 頻率為50~432Hz, 所 以我的P WM周 期 設(shè) 定 為 2 . 5 m s 頻 率 4 0 0 H z , 高 電 平 持 續(xù) 時 間 限 制 在0.875ms~2.0ms,高電平一般在周期的20%~80%。
6 如何將遙控的PW Min轉(zhuǎn)化為期望的角度
expect先看一個公式:e(t)=expect – measured,這是PID中的誤 差e(t),等于遙控期望值減去傳感器的測量值。而將遙控的PWMin轉(zhuǎn)化為期望的角度expect所達(dá)到的目 的就是將PWMin轉(zhuǎn)化為expect,使expect的范圍大小(不是單 位,PWMin的單位可以看成已經(jīng)是角度單位了)與measured 的對應(yīng)起來,并限制expect的范圍,對新手來說好操控。
評論