編集履歴一覧に戻る
Shuntarohのアイコン画像

Shuntaroh が 2021年02月28日23時57分10秒 に編集

コメント無し

記事種類の変更

+

製作品

本文の変更

# はじめに 私は趣味で様々な大きさの自作ドローンを飛ばしています。 墜落して破損することもよくあります。ですが大きな機体であればあるほど、墜落したときの機体へのダメージと周囲への被害は大きくなります。 そこでドローンに取り付けるパラシュートを作ってみてはどうかと考えました。 調べてみると市販されていましたが、高い高い… とても個人が買えるような値段のものではありませんでした。 パラシュートを買う代わりに新しいドローンを変えるような金額です。 そこでできるだけ安価に、できるだけ実用的なパラシュートを作ろうというのがこの制作の目的です。 # ハードウェア 墜落して周囲へ被害が広がるほどの大きさの機体であればある程度の重さのものは運ぶことができます。そのため、今回は重量についてはそれほど深く考えずに制作しました。 以下、制作で使用したものです。 - Arduino nano - 3軸加速度センサモジュール KXR94-2050 - SG90サーボモータ 収める筐体は3Dプリンタで制作しました。これも例によって重量については全く考えておりません(おいっ) ![設計したもの](https://camo.elchika.com/223d791ac580c68ffa6326515859f71f70c8af5a/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f64643234643334612d346333372d346537642d393166612d3639656164326363333230342f37633439343165362d376232612d343632302d396132392d333064363137646261653231/) ![できたもの](https://camo.elchika.com/a4253442b969530da72a701530c4baadbe7361ad/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f64643234643334612d346333372d346537642d393166612d3639656164326363333230342f37643230316435642d353536332d343563642d623263322d386337393065303038663865/) 設定が良くなかったのか、一部割れてしまっていますが強度への影響はなさそうだったのでそのまま使用することにしました。 重量を図ってみると70gほどでした。これくらいであれば大丈夫だと思います。 ![70gくらい](https://camo.elchika.com/fd361a11ddc23a77057c53f8b02763638a6a6a49/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f64643234643334612d346333372d346537642d393166612d3639656164326363333230342f39326664663536642d613035652d343262312d383132312d613834363766363533313435/) 次にパラシュートを作ります。 素材は「リップストップナイロン」と呼ばれるもので、本物のパラシュートなんかにも使われていたりします。 半径80cmに切断し、中央に空気が逃げるための穴を半径20cmの大きさで空けました。外形は正八角形になるように周辺を切断し、頂点となる部分からタコ糸を伸ばして中央でまとめました。 ![結構大きい](https://camo.elchika.com/8bc097487edfc72555237742d656b54a352e9a52/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f64643234643334612d346333372d346537642d393166612d3639656164326363333230342f66666262383263612d623833312d346236382d623739352d643461646164366264353362/) そのあとは糸とパラシュートをミシンで縫い付けたりいろいろして… ![かなり丈夫にできた](https://camo.elchika.com/9cef387bdb7f02603375bd684f6c1339b855a4c5/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f64643234643334612d346333372d346537642d393166612d3639656164326363333230342f30653431323237312d393966302d346463612d626639362d376134363038643866323235/) 重量を図ってみると61gでした。大きさの割には軽い方だと思います。 ![61g](https://camo.elchika.com/5e2c91525b376021a268766fc5b17d56b40b9a9b/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f64643234643334612d346333372d346537642d393166612d3639656164326363333230342f33656165656265332d343039342d343766392d623636632d313239316565623363643336/) 次にArduino nanoと加速度センサをくっつけます。ついでにサーボモータを接続するピンもくっつけます。

+

配線図です。 ![信号線がD2です。](https://camo.elchika.com/5efce9bb0ae2cad4d1da1b2d4fef640512b3b577/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f64643234643334612d346333372d346537642d393166612d3639656164326363333230342f39313465663934362d643261322d346634352d393261622d633632323832373736356463/)

![無理して作ったらこうなりました。](https://camo.elchika.com/3073178823974b6acc78df411f85d2138cc10580/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f64643234643334612d346333372d346537642d393166612d3639656164326363333230342f38656531373463622d626363372d343831622d623033612d356434653961343036353163/)

+

# ソフトウェア Arduino IDEでコードを書きました。 以下プログラムです。 それほど難しいことはしておらず、一定の時間の間に大きく傾いたら(通常傾かないほど傾いたら)サーボモータを動作させるという仕組みになっています。 ```arduino:パラシュート展開判定 #include <stdlib.h> #include<Servo.h> Servo myservo; int pos=0; int value=0; void setup() { myservo.attach(2); Serial.begin(9600); } void loop() { int a,b,i,c; long x , y , z ; // 各データを10回読込んで平均化する x = y = z = 0 ; for (i = 0 ; i < 10 ; i++) { x = x + analogRead(3) ; // X軸を読込む y = y + analogRead(4) ; // Y軸を読込む z = z + analogRead(5) ; // Z軸を読込む } x = x / 10 ; y = y / 10 ; z = z / 10 ; a=0; //使う関数を宣言 b=0; if(x<300 || x>700) //傾いているかどうかを判断させる a=1; if(y<300 || y>700) b=1; c=0; if(a==1 || b==1){ //サーボモーターを一度だけ作動させる myservo.write(50); delay(90) ; myservo.write(90); delay(100) ; exit(0); } a=0; b=0; } ``` # まとめ 完成したパラシュートはこんな感じです。 ![意外と重い](https://camo.elchika.com/daecfedca86c22af3d9d50c04e6e6871244ebcf4/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f64643234643334612d346333372d346537642d393166612d3639656164326363333230342f35623932646466662d623233632d343538352d393835382d336462396533623633386438/) これだと使用はできるものの、重量がかさんでしまって飛行時間が低下してしまいそうです。 第二号は重量を重視して作っていこうと思います。