Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Linuxベースのオープンソース フライトコントローラーの概要( #ABC2015S )

31,820 views

Published on

hsgucciさん資料を代理アップ
2015/7/20に開催されたABC2015Sのドローントラック #6

Published in: Science
  • DOWNLOAD TH1S BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK Here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB EBOOK Here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK Here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB EBOOK Here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc EBOOK Here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Linuxベースのオープンソース フライトコントローラーの概要( #ABC2015S )

  1. 1. Linuxベースのオープンソース フライトコントローラの概要 日本Androidの会 ドローンWG hsgucci
  2. 2. I. Linuxベースのドローン用フライトコント ローラの紹介(NAVIO+とErle Brain) II. フライトコントローラのソフト構成 III.マルチコプターの制御方法 IV.フィルター処理と応用
  3. 3. フライトコントローラって何? • 姿勢制御やナビゲーションを行う装置 呼び方はいろいろ 「姿勢制御装置」「オートパイロット」「飛行制御装置」 機体に積むのが「フライトコントローラ」 地上のPC,タブレットなどが「グラウンドステーション」
  4. 4. ドローンでやりたい事 • FCをソースコードレベルで書き直す • PCソフトを自作する 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci • ドローン本体を機能拡張したい!! • 作業結果データをスマートに管理したい DJI 3DR 機体: 地上側: 機体: 地上側: Dronecode DroneKit Onboard SDK Mobile SDK 現状 大手メーカーの動き 無茶言うな!
  5. 5. ラジオコントロール航空機 センサ GNSS マイクロコンピュータ •ジャイロ •加速度 •コンパス •気圧 …etc. センサ・コンピュータを使って ラジコンを姿勢制御すること →フライ・バイ・ワイヤ制御 GNSSを使ってラジコンの移動を 自動化すること →ウェイポイント・ナビゲーション ケイアンドエス Sparkfun InvenSense •8bit •16bit •32bit •64bit(?) •GPS •GLONASS •Galileo •北斗 •みちびき (グローバルナビゲーションサテライトシステム) 日本Androidの会 ドローンWG Copyright hsgucci フライトコントローラ
  6. 6. フライトコントローラ(FC) ① ラジコン操縦にはミキシングが必要 ② フライバイワイヤで自動制御 ③ GNSSを使って完全自動飛行 日本Androidの会 ドローンWG Copyright hsgucci2015/7/23
  7. 7. ①ミキシング • 送信機のスティックを1つ動かすだけで, 複数のサーボモータorモータアンプを動かす機能. 車だとスロットルアンプ1つだけ 前進命令 ヘリだと3つのサーボを同時に動かす ケイアンドエス 日本Androidの会 ドローンWG Copyright hsgucci2015/7/23
  8. 8. ②フライ-バイ-ワイヤ制御 • マイコンとセンサを利用した 「フライトコントローラ(FC)」が自動的にミキシング 操縦が飛躍的に簡単に! •ジャイロセンサ •加速度センサ •磁気方位センサ •気圧センサ •GNSS 姿勢 方向 高度 緯度経度 センサで機体の状況を計測し、 機体を自動制御 初期のフライトコントローラはミキサーが主。 センサはジャイロだけで補助的な役割だった。 現在では 日本Androidの会 ドローンWG Copyright hsgucci2015/7/23
  9. 9. ③GNSSを使った自動飛行 • 緯度経度の座標(ウェイポイント)を指定す れば,そこへ自動飛行してくれる
  10. 10. ドローンをつくるには
  11. 11. 最低限の構成 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci 本体フレーム プロペラ&モータ&モータ駆動回路 フライトコントローラ
  12. 12. 便利なキットを買う 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci http://www.sekido-rc.com/?pid=52727659 セキドラジコンセレクト
  13. 13. FCを買う • 何を買う? 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci
  14. 14. NAVIO+ Erle Brain Raspberry Pi B+または2がベース Beagle Bone Blackがベース そこでLinuxベースのフライトコントローラを!
  15. 15. 様々なFC 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci
  16. 16. kkMultiCopter (ATmega168p) Eagle X6 ArduPilot (ATmega328p) ArduPilot Mega (ATmega2560) ArduPilot Mega2.x (ATmega2560) PX4 (STM32F427) MultiWii (ATmega328p) 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci Naze32 (STM32F103C) SmartAP (STM32F405) ミニサーベイヤAP Pixhawk (STM32F427) DJI A2 ZERO-UAV YS-X4 Xaircraft Super-X Tarrot ZYX-M
  17. 17. フライトコントローラの流れ 1. ATmega(ライタで書込) 2. Arduino 3. Cortex-M 4. Cortex-A 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci KKmulticopter ArduPilot, ArduPilot Mega, MultiWii PX4, Pixhawk, baseflight, CC3D, SmartAP Raspberry Pi 2, Beagle Bone Black
  18. 18. FCの開発 1. フルスクラッチで書く 2. Arduino,mbed,Teensyなどに乗っかる 3. RTOSを組み込んで動かす 4. Linuxで動かす 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci イマココ
  19. 19. ドローンでやりたい事 • FCをソースコードレベルで書き直す • PCソフトを自作する 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci • ドローン本体を機能拡張したい!! • 作業結果データをスマートに管理したい DJI 3DR 機体: 地上側: 機体: 地上側: Dronecode DroneKit Onboard SDK Mobile SDK 現状 大手メーカーの動き 無茶言うな!
  20. 20. NAVIO+ Erle Brain Raspberry Pi B+または2がベース Beagle Bone Blackがベース LinuxベースのフライトコントローラでDronecode!
  21. 21. Linuxベースだと何が良い? • こだわりたいところだけイジればいい – >姿勢制御(フィルタとか制御則とか) – >GNSSの精度(RTKとか) – >無線方式の変更 – >センサの追加 – >アクチュエータの追加 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci
  22. 22. I. Linuxベースのドローン用フライトコント ローラの紹介(NAVIO+とErle Brain) II. フライトコントローラのソフト構成 III.マルチコプターの制御方法 IV.フィルター処理と応用
  23. 23. NAVIO+のセットアップ • EMLIDのドキュメントページ • ハードウェアのセットアップ • Raspberry Piのセットアップ • APMのセットアップ 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci http://docs.emlid.com/ http://docs.emlid.com/Navio-APM/hardware-setup-navio-plus/ http://docs.emlid.com/Navio-APM/configuring-raspberry-pi/ We provide an SD card image of Raspbian with fully preemptive real-time Linux kernel. リアルタイムカーネル入りの Raspbianが最初からある! wget http://emlid.com/files/APM/apm.deb sudo dpkg -i apm.deb ラジコン受信機はPPM(CPPM)だけなので注意 http://docs.emlid.com/Navio-APM/installation-and-running/ Debianのパッケージが 最初からある! テレメトリはUARTでもTCP or UDPでも可
  24. 24. おまけ • ラズパイ2ならビデオストリーミングも可能 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci Streaming real-time video from a drone powered by a Raspberry Pi 2 has never been easier. sudo apt-get install gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-libav
  25. 25. ということで • Dronecodeに準拠したシステムは 比較的簡単に準備が可能 • 地上の操作者は Mission Planner Droid Planner DroneKit 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci (Win) (Android) を使う
  26. 26. I. Linuxベースのドローン用フライトコント ローラの紹介(NAVIO+とErle Brain) II. フライトコントローラのソフト構成 III.マルチコプターの制御方法 IV.フィルター処理と応用
  27. 27. 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci ロール・ピッチ・ヨー角 wikipedia
  28. 28. 基本原理 • 前後や左右の回転数を変えて、 推力のバランスを崩すことで姿勢を変える 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci
  29. 29. 基本原理 • 旋回 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci 前 後 右左 CWの回転数を上げ、CCWの回転数を下げると、 反作用の相殺のバランスが崩れてヨー方向に回転する。 シングルコプターは テールロータで相殺
  30. 30. 基本原理 • 並進移動 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci 揚力 高度を維持する 浮上力 前進力 高度を維持する 浮上力 高度を維持する 浮上力 高度を維持する 浮上力 後進力 左移動力右移動力 揚力 揚力 揚力
  31. 31. 制御項目 • ロール・ピッチ・ヨー角 • 高度 • 緯度・経度 • ウェイポイントナビゲーション • 送信機入力に対する反応 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci 制御周期 最速が400Hz(2.5ms)周期 ブラシレスモーター駆動回路(アンプ)が 400Hzのサーボパルスなので
  32. 32. Mission Plannerのチューニング画面 http://copter.ardupilot.com/wiki/configuration/tuning/
  33. 33. 制御アルゴリズム 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci センサー値の取得 フィルタ処理 制御則の計算 モータへの出力 PID制御 ミキシング計算 サーボパルス 機体の構造に応じて変更 数値積分、相補、カルマン…etc ほとんどのセンサはI2Cで取得
  34. 34. センサー • ジャイロ・加速度センサー MPU-6050 • 電子コンパス HMC-5883L • 気圧 MS5611 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci Amazonだと600円前後。。。 PixhawkだとMPU-6000 派生版のMPU-9150,9250もある Amazonだと300円前後。。。 10cm精度 MultiWiiではBMP180を使用
  35. 35. センサー • GNSS ubloxシリーズ 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci 3DRobotics: LEA-6H RTK-LIB: LEA-6T NAVIO+: NEO-M8N DJIや3DRのGNSSモジュールは 電子コンパスも同じ基板に実装。 磁石から距離を離すため DJIや3DRのGPSモジュール
  36. 36. フィルタ処理 • ローパスフィルタ(ノイズ除去) • 相補フィルタ(センサフュージョン) 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci この辺のフィルタ処理が「制御」をややこしく見せている
  37. 37. PID制御 • ブロック線図... KP KI KD 1 𝑠 𝑠 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci + + +目標値と 現在値の差 出力 多くの本がブロック線図でPIDを説明する ワカンネエ
  38. 38. 例:原始的なPIDプログラム now = millis(); timeChange = (now - lastTime); error = x_desire – x_now; errSum += error * timeChange; dErr = (error - lastErr) / timeChange; Output = kp * error + ki * errSum + kd * dErr; lastErr = error; lastTime = now; // 現在時刻取得 // サンプリングタイム算出 // 目標値 ー 現在値 // 差の積分(長方形の面積) // 差の微分 // 次回のループで使用 P項 I項 D項 もちろん、積分や微分の計算方法は、もっと複雑で正確な式がある 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci
  39. 39. フライトコントローラの発展 • ロール・ピッチ・ヨー角 • カルマンフィルタ • PID 2015/7/23 日本Androidの会 ドローンWG Copyright hsgucci クォータニオンへ 姿勢推定精度の向上 内部センサだけで移動 ジンバルロックのない角度表現スタイルへ セルフチューニング 現代制御理論

×