ドローン制御の勉強をしてみようー2回目

2回目は開発の進め方と使用した機材を紹介したいと思います。

開発の進め方は、大まかに次の流れで行いました。本丸は後回し的な流れです。

 

  1. プロポ受信機からデータを読み取り

  2. ESC(Electronic Speed Controller)でブラシレスモーターを制御する

  3. センサー(加速度・角速度・磁気)の読み取り

  4. PID(Proportional-Integral-Differential)制御を使って姿勢制御を行う

 

ドローン制御は厳密には 4. だけなのですが、1.はドローンを実際に飛ばそうとした場合必ず必要な要素、2.と3.は4.のPID制御で入出力の対象として必ず必要となる要素となるものです。

なお、「ひもで吊り下げたドローン」の状態では1.を使うと開発がやりにくくなり、パソコンとドローンをUSBケーブルで直接繋げてキーボードにプロポの操作を割り付けることで代用する結果となりました。電源もケーブルで12Vを供給しました。

 

今回使用した機材および開発環境を記載しておきます。

 

ドローンフレーム

DJI450の赤と黒のもの

ESC

不明(OPTO 30A 11.1V~14.8V)

ブラシレスモーター

 

DJI 2212/920KV

プロペラ

不明(以前買って部屋に転がっていたものを使用)

フライトコントローラーボード

Crius MultiWii All In One Pro

  • 加速度・角速度センサー:MPU2050

  • 磁気センサー:HMC5883L

  • 気圧センサー:MS5611-01BA01(今回は使わなかった)

開発環境

Arduino IDE 1.8.5 (Mega 2560)

 

「自力で作る」とうたっていますが、「参考にさせて頂いたWebサイトの情報(サンプルコードも含む)」、「オープンソースで公開されているArduinoのライブラリ」等の助けを借りております。あらかじめそのことをお断りしておくとともに情報をご提供いただいた方々には感謝致します。

 

今回はここまで。

次回「1. プロポ受信機からデータを読み取り」を書きたいと思います。