2015年12月2日 星期三

F450 四軸直升機起飛


停頓了超過一年,今天終於讓我的 F450 飛起來了。

機架:F450
馬達:新西達2212 1000KV
電變:新西達30A
槳:1045
飛控:CC3D
電池:2200mAh 3S 11.1V 25C

硬體組裝真的只佔整個DIY過程不到四分之一的時間,沒經驗的狀況下,調整參數真是超級消磨精神的。

最後是把飛機頭尾用繩子綁住,讓飛機懸吊,只能做翻滾的動作。然後把 Reta Stabilization(Inner Loop)裡面的所有PID數值全部歸零,Attitude Stabilization(Outer Loop)回歸Default。從這個狀態下開始做測試。

一開始先慢慢增加Roll的P值,一面增加,一面觀察飛機的姿態,直到飛機開始在Roll方向出現震盪的狀況,再稍微縮減P值,直到飛機不再震盪。這時雖不振盪,但是有可能不會維持機身水平。

下一個步驟,開始增加I值,要縮減機身沒有保持水平的穩態誤差。慢慢增加I值,應該可以發現飛機開始能夠保持水平的姿態了。一樣,當I值加過頭,飛機又會開始震盪。再縮減I值,直到飛機姿態穩定。

最後開始加D值。理論上D值會抑制Over Shoot 的問題,不過在我今天的試驗裡,D值只要稍微增加一點,飛機就開始胡亂震動。原因我也不清楚,所幸就讓D值保持在0。

把Roll的PID值,複製到Pitch,然後就開始試飛。上天保佑!! 能飛了!!!

能飛之後,再開始調整Yaw的PID,一樣從全部都0開始,先調P,再加I,D還是維持0。嗯嗯~也許不算調得很棒,不過至少飛起來了,超感動的啦!!!

Openpilot官方教學裡面,調整PID得那影片裡有提到,如果用Reta模式飛行,就要調Reta Stabilization的PID,Attitude飛行模式,就只要調Attitude Stabilization PID。這是完全錯誤的!!我被誤導好久。Inner Loop PID控制,跟用哪種模式飛行,似乎沒有直接的對應關係。

綁飛機用到的繩結技巧,可以參考這個youtube 影片:


沒有留言:

張貼留言