/drone

Raspberry Pi Zero で自律飛行ドローン作成

Primary LanguageC

drone

Raspberry Pi Zero で自律飛行ドローン作成


master branch

image

image

image

Reference

https://qiita.com/shigeru-yokochi/items/0a0a4f06cd8dec553159

https://www.yokochi.jp/categories/drone/

https://www.youtube.com/watch?v=y1wnsGAwrUc


betafpv branch (master -> betafpv)

image

image

image

Reference

https://qiita.com/shigeru-yokochi/items/7f74ccf200a57388e241

https://www.yokochi.jp/post/betafpv-f4-2s-aio2/


VL53L0X_multi_test branch (master -> betafpv -> VL53L0X_multi_test)

image

image

Reference

https://qiita.com/shigeru-yokochi/items/f996d495effdf6dea3fc


QAV210 branch (master -> QAV210)

20200728_212705

構成図

グラフ

youtube movie

高度を維持する方法

以下の状態とイベントに分けて処理します

event\status 1
停止中
2
設定高度以下を上昇中
3
設定高度を超えて上昇中
4
設定高度以下まで降下待ち
5
ランディング中
1
開始
TAKEOFF_POWER
status=2
2
N/A
3
現在高度は最大値超え
LANDING_POWER
status=3
4
下降検知
power+10 TAKEOFF_POWER
status=4
設定高度未満の場合、TAKEOFF_POWER
status=2
5
ランディング
LANDING_POWER
status=5
LANDING_POWER
status=5
LANDING_POWER
status=5

前後左右に衝突しない方法

  • 前後(左右)の距離を測り閾値を超えたら逆方向へ移動する
  • 前後(左右)両方の距離が閾値を超えている場合はエラーとする(今回は何も処理しない)
  • 逆方向へ移動する出力は固定とする(とりあえず)

姿勢制御方法

未実装

PID制御

未実装

BLE制御

未実装

ジャイロ

未実装

気圧センサー

フライトコントローラーに内蔵されているものを使用


betafpv_VL53L0X_single branch (master -> betafpv -> betafpv_VL53L0X_single)

image

高度を維持する方法

以下の状態とイベントに分けて処理します

event\status 1
停止中
2
設定高度以下を上昇中
3
設定高度を超えて上昇中
4
設定高度以下まで降下待ち
5
ランディング中
1
開始
TAKEOFF_POWER
status=2
2
N/A
3
現在高度は最大値超え
LANDING_POWER
status=3
4
下降検知
power+10 TAKEOFF_POWER
status=4
設定高度未満の場合、TAKEOFF_POWER
status=2
5
ランディング
LANDING_POWER
status=5
LANDING_POWER
status=5
LANDING_POWER
status=5

姿勢制御方法

MPU6050より機体の傾斜を検出してrollとpitchの出力値を変更している(debug中)

PID制御

未実装

BLE制御

未実装

衝突防止方法

未実装

ジャイロ

未実装

気圧センサー

未実装

Reference

https://www.yokochi.jp/post/betafpv-f4-2s-aio2/