前言:你的回文就是我的動力!!!!這系列文章已經寫到手快斷了,如果你覺得寫得還可以或者從中有學到些甚麼,請按下"回文"隨便留個話,不要吝嗇你的鼓勵喔!!感恩....
會飛的東西就會摔,無人飛機也是這樣。可是為什麼會摔就經常令人摸不著頭緒了!好在APM有內建記錄功能,使用者可以在摔飛機之後,參考這些資料就可以分析出摔機的原因。
APM的紀錄有兩種,一個是內建的記憶體,好像有15Mb的樣子,可以記錄蠻久的,而且取樣頻率也比較高。另外一種是透過數傳記錄在基地台的電腦中,如果是飛機飛丟了的話,這個地方可以找到另外一份紀錄。
首先我要教的是flash memory的記錄檔取得。
請按照以下方式
1. 連接你的APM/PX4到mission planner
2. 到 CONFIG/TURNING>Standard Params 如下圖所示,選擇Default+IMU去啟動姿態的資料到flash中
3. 按下Write Params 寫入資料
4. 接著在 CONFIG/TURNING>Planner裏頭,下方的Advanced View打勾。 上方就會多出SIMULATION跟TERMINAL兩個選項出來
5. 接著就去玩你的飛機
6. 玩好之後,記得拔掉電池,然後把飛機接回mission planner
7. 不需要按下右上角connect,然後到TERMIAL裏頭,按下Connect APM,然後選擇Log Download
會另外跳出一個視窗,把你要下載的資料打勾,然後選擇Download These Log
8. 下載好之後(會等蠻久的,請有耐心),接著按下Log Browse,會讓你選擇剛剛下載好的檔案
9. 接著你會到這個畫面,畫面中間的下拉選單可以選擇你要看哪方面資料,裏頭有
None
Mechanical Failure - Stab
Mechanical Failure - Auto
Vibrations
GPS Glitch
Power Issure
Errors
Battery Issure
比較常用的是Battery Issure 他會顯示ThrIn油門輸入,也就是APM從接收機收到的遙控器訊號。
ThrOut這是油門輸出,也就是APM實際輸出的油門。
最後是Volt R 就是你電池的電壓
Vibrations則是檢查你的震動狀態 有XYZ三軸,3DR建議X跟Y是+-3 Z是-15到-5
Power Issure則是APM本身的供電情況
GPS Glitch則是GPS干擾情況
前言:你的回文就是我的動力!!!!這系列文章已經寫到手快斷了,讀的人應該是不少,如果你覺得寫得還可以或者從中有學到些甚麼,請按下"回文"隨便留個話,給我點鼓勵!感恩....這兩天一直在想接下來要寫點甚麼!其實APM動手做到這邊,剩下來的部分都是功能的強化。比較難分門別類,而且也瑣碎的很。所以關於機體組裝的部分,這一篇應該是關於APM設定的最終章。不過絕對不是完結篇,因為標題就寫了"空拍"兩字。所以第九篇開始會討論關於雲台系統以及無線影音傳輸系統。PID參數調整APM自動飛行控制就跟所有自動控制系統一樣,並不如同大家所想的,飛機被風吹偏了就往反方向飛就好。這種自動修正還必須考慮到整個系統的延遲以及反饋。舉例來說,當飛機被風吹偏移的一瞬間被感應器偵測到,到機器計算完成後送出修正訊號到開始修正需要一段時間,這時候飛機的姿態又變成另外一種狀況了。而當修正訊號傳達到,機體的反應又會因為機體的重量,動力大小...等等對於相同的修正有不同的反應。等到開始修正之後,到自動控制器偵測的新的位置...又回到一開始的循環....在這種情況下,整個系統就會變得相當複雜了....好在無敵個科學家想到一種控制方式,把整個系統存在的問題簡化成PID三個參數。至於每種參數的意義我就不在此說明了。APM手動參數調整:如果要動到PID參數的話,建議就是先把三個參數都歸零,然後先調整P值,調整到過度反應之後,往回退大約15%接著在調整I值,同樣的調到過度之後、再退15%最後調整D值這個調整的過程需要一點耐心。不過這個過程對於新手而言簡直是無法辦到的夢靨,因為新手連飛都飛不起來,又怎麼調整?更別提要怎麼知道何謂修正不足以及修正過度。而且對於老鳥來說,起飛->降落->接上電腦->調整參數 這樣的循環連續坐上幾十次也是非常累人的事情。所以大家可以在Youtube找各式各樣分享調整PID的密技。這個步驟我自己也不曾完美的完成過。不過根據我看一般分享的文章,如果新手要進行手動調整的比較可行的方法可能是把飛機懸空吊著,讓機體能夠自由活動但是又不至於暴衝。然後慢慢測試PID真的很麻煩...自從新版韌體出現之後,APM開始支援所謂的自動調整。可以說是解救了所有APM的使用者。整個調整過程如下。APM自動參數調整:如果你打算使用自動參數調整功能的話,你的遙控器至少需要6個CH。以下以Frsky X9D為例子,請多準備一條雙公頭的伺服器延長線。首先請把接受器的6接到APM的7。(!!注意喔!!是APM的7,不是6)接著到遙控器裏頭的MIX,新增這個CH,在X9D的主畫面按下MENU一次 然後再按PAGE五次 到MIXER的畫面 其中只有CH1-5是有名字的,其中CH5是我們之前在05篇中寫過。 請按下(一)把反白棒下移動到CH6 然後按下ENT 畫面會進入INSERT MIX CH6反白棒會落在 Source S2的S2上按下ENT 反白會閃爍 接著按下(-)好幾次 直到SF出現選擇這時候按下EXIT一直回到主畫面。弄好之後畫面如下。
我們把他設定到SF(右手邊前面的兩段開關)來控制。因為是新加入的頻道,所以請將APM接上電腦,打開MP。然後到INITAL SETUP->Mandatory Hardware->Radio Calibration重新校正遙控器。重新校正遙控器的時機:當你新增頻道,或者更換發射器或者接收機的時候,都需要重新執行遙控器校正程序。請到INITIAL SETUP -> Mandartory Hardware -> Radio Calibration 校正流程在(05 軟體設定)有講過
然後到這裡去把CH5的其中一個飛行模式改成定高模式(AltHold),然後按下SAVE MODE
然後到CONFIG/TUNING->Extended Turning去把CH7的模式改成AUTO TURN,然後按下Write Params因為APM的6號頻道並不支援自動調整,所以剛剛接收機的6才會需要接到APM的7
準備工作都做完之後,請看以下的影片:(中文字幕)
記得,做好之後,不要把自動調整參數的開關切回。降落後啟動保護,把馬達停轉之後,參數就記錄下來了。如果切回在停轉,參數就會消失。整個過程完成之後,如果在無風或者微風的環境下,你的飛機就會像釘在天空中。穩地不得了....自動調整參數的盲點也是在於新手如果不會飛的情況下如何完成。我建議可以使用MP提供的幾個預設參數,直接練飛...那幾個參數雖然操作穩定性不是頂好的。不過拿來一般飛行還是可行。等練到差不多了在執行自動參數調整,這樣子會容易許多。以下為其他常用設定或者功能***測量震動狀態***有動力的機器都免不了會震動,可是對於自動導航儀來說,震動是影響感應器精準度的最大殺手。因為如果震動過大的話,軟體會無法將真正的姿態從震動的雜訊中過濾出來,因此震動越大,你的機體穩定性會越差,就是這個道理。多旋翼機經常會因為螺旋槳以及馬達的不平衡造成的振動,降低了你的飛機穩定性。很多新手會不了解這點,一直將重心放在PID的調整以及重力加速器或者墊子羅盤的校準上。可是如果震動過大的話,無論你做多少次校正的無法解決的。好在如果你的APM有安裝資料回傳的話,他是會自動記錄下所有的資料,請依照下面程序讀取資料,然後想辦法透過平衡馬達、螺旋槳、或者增加避震墊的方式將震動降低。請在在飛行完之後,將MissionPlanner跟你的飛機斷開連線,然後在FLIGHT DATA這一頁面左下的分頁找到Telemetry Logs分頁
然後按下Tlog > Kml or Graph,他會跳出Mavlink Log Graph的小工具
請選擇Graph Log之後,他會請你選擇檔案。每次飛行的檔案會存到C:\Program Files (x86)\Mission Planner\logs\QUADROTOR\1 下面按照日期時間取好名字選擇最新的檔案開啟他又會跳出一個Graph This請將RAW_IMU下面的 xacc yacc zacc三個打勾
原本空白的Mavlink Log Graph就會把剛剛的選擇的三筆資料畫出來
你可以用滑鼠將其中某段時間的資料放大,請按住左鍵之後拉框框,這個工具也可以按下右下角放大為全螢幕。或者使用滾輪也可以放大縮小。
至於資料判讀的話,因為原始網站http://copter.ardupilot.com/wiki/ac_measuringvibration/ 是使用APM內建記憶體去紀錄資料檔案,跟我寫的方式有點不同,所以讀出來的資料也有點不同。不過應該都不超過正負3。 這個部分可以請大家自行研究一下。***自動返航相關參數***不知道你是否有測試過他的自動返航模式!?如果有嘗試過,應該會被嚇一大跳吧,因為這裡頭有幾個預設值可以調整一下。相關參數(CONFIG/TUNING->Standard Params)RTL Altitude: 返航高度1500(單位公分)RTL Final Altitude: 最終返航高度0 (降落到地面)RTL loiter time: 返航到起飛點上空停留多久後開始下降高度50000(單位ms)
***遙控器的失控保護 (Fail safe)***這個設定非常重要。這個功能是由遙控器所提供的,它的功能是在接收機收不到發射器訊號的時候,會把給APM的訊號切到某一個你預先設定的數字。因為無人飛機飛出視距外的機會太大,雖然我介紹的X9D有人可以在空曠環境下超過5km操作,不過無論如何,切記一定要把失控保護設好。方法1:參考下面的影片,X9D的failsafe設定成[No pulese],也就是當接收機失去訊號,就不輸出。INITIAL SETUP->Mandatory Hardware->FailSafe右邊的FS Pwm選擇975以下的數字就可以了,接著你關掉遙控器,你會看到CH3的數字變成900。表示APM的這個通道已經沒有訊號了。
相關參(CONFIG/TUNING->Standard Params)數有:Battery Failsafe Enable: 當電池電量過低的時候要做甚麼Land (降落)GroundStationFailsafeEnable: 當失去地面戰訊號時要做甚麼Disable (甚麼都不做)GPS Failsafe Enable: 當失去GPS訊號的時候要做甚麼?Land (降落)ThrottleFailsafeEnable: 當失去油門訊號時要做甚麼? (這種情況下,等於是完全失去遙控器訊號)Enable always RTL (返航)Throttle Failsafe Value: 油門訊號怎麼樣情況才算失去訊號975以下的數字都可以
方法2:或者是在接收機失去訊號的時候,接收機會輸出把油門定在50%,飛行模式設RTL。這個方式比較方便,就不用MissionPlanner這裡是X9D以及X8R的失控保護設定影片,雖然都是英文的旁白,不過別管他,照著做就可以了。請切記把CH5設定在RTL的位置。