Help us understand the problem. What is going on with this article?

Raspberry Pi Zero で自律飛行ドローンを作るぞ(第3回:フライトコントローラを使いました...)

More than 1 year has passed since last update.

はじめに

前回のRaspberry Pi Zero で自律飛行ドローンを作るぞ(第2回:姿勢制御は簡単にできないぞ!!) から約5か月

いろいろ試してみたが納得する成果は得られませんでした。。。。

で?

うーん。ここまで進捗が無いのは想定外。このまま進めても納得する成果が出る見立てはなく。。
しかも、9歳の息子からはまだ飛ばないの?と言われ続け父親としての面目が立たない。。
ということで、フライトコントローラに手を出しました。

結果は?

姿勢制御はフライトコントローラー任せなので飛ばすことはできました。
息子は凄く喜んでくれたので良かったですが、複雑な気分です。。

飛ばした構成

フライトコントローラをPWMドライバとESCの間に組み込みます。
選択したフライトコントローラはCC3D,フライトコントローラ設定用アプリはLibrePilotを使用しました。
※フライトコントローラの設定については割愛します。

drone構成.PNG

動作検証

RaspberryPiからは、まだスロットル制御だけなのでどこに飛んでいくかわからない状態です。
なので少しだけ上昇することを確認しました。

設定値(スロットル値は上昇3秒後に2秒下降するような値を探して設定したが結構難しい。。)
#define DEBUG_MAINLOOP_TO    5.0    //デバッグ用メインループタイムアウト指定(sec)
#define FLIGHT_TIME          3      //DEBUG_MAINLOOP_TO - FLIGHT_TIME = landing time
#define OFFSET_POWER         350
#define LANDING_POWER        310

20170812.PNG

動画はこちら(YouTube)
IMAGE ALT TEXT HERE

機体の外観

  • 上側

2.jpg

  • 下側

1.jpg

振り返り

約5か月良い勉強ができました。
悔しいけど、RaspberryPiのみでは、
ロール/ピッチ/ヨーに対する加速度/ジャイロ/PID制御からESCへのPWM値計算処理能力不足で機体のふらつきを抑えるのが困難でした。RTOSを使っても処理は追い付かない気がします。

フライトコントローラを使えば飛ばすことはできると思っていましたが、
実際に使ってみたらほんとに簡単に飛ばすことができました。スロットルを上げるだけでした。
でも、初めからフライトコントローラを使っていたら姿勢制御の難しさはわからなかったと思います。
ちなみに、今回使ったフライトコントローラは2000円程度。凄すぎ!

次にやること(やりたいこと)

  • 飛んでいる位置を制御したい。
  • 安全に高度を上げたい

ということで、まだまだ挑戦は継続します。

この続きは、Raspberry Pi Zero で自律飛行ドローンを作るぞ(第4回:気圧センサで高度を維持させる)

コード(GitHub)

https://github.com/shigeru-yokochi/drone

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away