カワリモノ息子の技術メモ的な~

カワリモノ息子とその母の技術メモ的な〜

学校が苦手な息子くんの作品とその母の作品、はたまた日常などいろいろを在宅エンジニア母が綴る

ラズパイ搭載モデルロケットを飛ばしてきました


ロケットに載せる記録システムが完成しました

 先日ブログに書いたこちら、打ち上げの日が近づいてきて最後は焦りつつバタバタと完成させました。
blog.memetan.dev

 これを飛ばしてきました。
 今回の制作は親子共同制作となっています。主にソフトウェア息子さん、ハードウェア私です。

ラズパイ記録システム

 中央で二つにわかれるようになっていて、上半分の部分にパラシュートが入っています。
 今回のラズパイシステムはこのパラシュートの奥(ロケットのてっぺんの部分)に入れるようにしました。

 こんな感じに入れます。黒い固定具は3Dプリンタで作りました。上の画像はロケット発射日3日前もので最終形態は以下の形となりました。最終系ではカメラのところまで筒が覆っている形になります。

 予定通り、カメラとか速度センサとGPSをつけることができました。カメラはこの時点ではまだフィルムを剥がしてないのでちょっとカッコ悪いですね。

【使用ラズパイ】

  • Raspberry Pi Zero 2 W

【OS】

  • Raspberry Pi OS Lite

【センサ類】

  • 加速度 
  • GPS
  • ラズパイカメラ

【プログラム】

  • Node.js

 記録のプログラムを開始すると、カメラで動画撮影を開始しセンサ情報を1分おきにCSV形式でログ出力するようにしました。プログラムはNode.jsで書いています。ベースを息子さんが作ってくれたので私がそれにちょっと手を加えた感じです。
 (息子さんは全部できるのですがこうやって部分的に私に指示を出して後でダメ出しをしてくるので、本当厳しい上司と新人社員っていう感じです…。プログラマーとしての威厳ゼロ!)

 また、プログラムでは側面のボタンを押した時に記録ON/OFFを切り替えられるようにしました。
 側面のボタンというのはバッテリーに付属していた基板上にあるボタンです。これをどうやったら押されたタイミングが取得できるかネットに情報がなくわからなかったのですが息子さんがWebSocketを使ったハック的なやりかたで取得できるようにしたので別途Qiitaかelchikaに記載したいと思います。

 ただ側面のボタンを押すのには中身をロケットから取り出さないといけないので結局これは使わなかったのですが、、。

 記録実行中かどうかが外見でわからないのでLEDをつけて実行中に光るようにしました。またエラーが起こったときはLEDをチカチカ5回点滅させることにしました。アイシテルのサインもといバグッテルのサインです。
 しかしこのLEDもロケットの中に入ってしまいます。家の中だとロケットが少し赤く見えるので光っている状態はわかりますが太陽光の明るい外に出ると光ってるかどうかわからなかったです。

 動作の想定としては、

  1. リモートからsshでつないで記録開始(発射後接続がきれることを想定してpm2でバックグラウンド実行)
  2. ロケット打ち上げ
  3. パラシュートで落ちてきたロケットを回収、再度sshで繋いで記録を停止、ログ・動画を取得

 と考えていました。

前日確認

 モバイルルーターにつないでどうなるかとGPSが検知できるかを確認したかったので前日確認として息子さんと公園に行きました。

 家で起こらなかった問題が出ました。
 なぜかプログラムが多重起動します。。おかしいぞ。。

 帰宅後息子さん「プログラムおかしいから修正しといて。僕は忙しいから。」(=「お母さんが手を入れたプログラムの部分が怪しい。よく見とけ。」)と言うので確認しますがおかしいところはなさそう。
 家のネットワークには繋がらないように設定を削除してモバイルルーターのみで試してみますが、何度やっても成功します。
 バッテリーの状態が関係するかなといろいろ試してみたのですが。

 結局その問題は放置したまま本番の日を迎えました。

ロケット打ち上げ当日

 当日は福岡大学のグラウンドで飛ばしました。

 ロケットを飛ばす補助をしてくださる先生(ロケット教室の先生)は福岡大学教授の松隈先生です。
 私たちの勝手な思いつきに付き合っていただいて本当にありがとうございました。

1回目

 恐れていた昨日と同じ現象になってしまいました。
 なぜか重複起動してしまいます。

 息子さんがその場でいろいろやってくれましたが結局バックグラウンド起動するのをpm2じゃないコマンドを使うようにして解決していました。「なんで修正しなかったの!」と息子さんに責められましたが、母わからなかったんだもん〜(苦笑)
 とりあえず対処できてよかったです。

 場所についたらすぐ打ち上げと思っていたものの準備に余計に時間かかってしまいましたが、ついに打ち上げ!

 ロケットの火薬やそれに火をつけるスイッチのスタンバイは松隈先生にやっていただきました。

 まっすぐ上がった!

 そしてパラシュート開かずまっすぐ頭から墜落!

 動画がうまく撮れませんでした。
 2回目は撮れてますのでそちらをご覧ください。1回目も2回目と同じくらい上がりました。

 落ちてきてぐちゃぐちゃになったロケット。それでもカメラとデータは撮れたかな?と確認しましたが録れていませんでした。しかしラズパイは生きていたので良かったです。

 ノーズコーン(ロケットの先端の尖っている部分)は潰れてしまって上部はだめになってしまったので破って中を出しました。ラズパイ装置はケースが割れてしまっていました。カメラはケーブルが抜けていてそれで録画ができていなかったようです。

2回目

 松隈先生の研究室に入らせていただき修復作業をさせていただきました。

 3Dプリントのケースはビニールテープで修復。きれいに付きませんでしたがある程度形になってロケットに入れば良いかという感じでした。

 ロケットの上半身は再度新しいものに取り替え。松隈先生が準備してくださいました。

 プログラムも再調整。途中一度ネットワークにつながらなくなりヒヤッとしましたが、HDMI出力を先生のプロジェクタにうつさせていただき内容を確認。再起動後は無事ネットワークにつながりました。


 バッテリーも充電し、プログラムも正しく動くことを再確認。では2回目の打ち上げに行ってきます!

 2回目の打ち上げも見た感じ1回目と同じでした。
 パラシュート開かず落下・・・

 しかし1回目との違いはちゃんとラズパイカメラの撮影にどうやら成功していました!
 というわけでいったん引き上げて屋内で確認することにしました。

 ▲ 落下後の機体の様子。先端のノーズコーンが見事にぺったんこになっています。

 中はまたしてもぐちゃぐちゃになって砂が入っていました。だけどラズパイくんはちゃんと動いていました。

採取できたデータ

 ラズパイカメラ映像はこちらです。

 目が回る映像ですが、しっかり録れていたので感動しました!

 あと加速度・GPSのデータも取得できていました。これについての考察はまた別途行います。
 松隈先生より加速度のデータからの飛距離の計算方法についてなんたらを積分してどうとか仰ってましたが(わかってなさすぎて失礼発言)ちんぷんかんぷんなので解析について先生にご協力いただけそうです。やったね。

 結果がとれたので大満足でした。

考察

パラシュートが開かなかった件

 パラシュートの開く構造としては、エンジン噴射して発射されたあとに逆噴射が起こってその勢いで機体が真ん中から2つにわかれてパラシュートが出てくる形になっています。

 うまくいけばこのように開きます。

youtu.be

 今回私が撮影してる方の映像(ラズパイカメラの映像ではないほう)を見ても少しわかりにくいかもしれないですが、落ちた後に逆噴射が起こって開いていたんです。
 タイミングが良くない → 滞空時間がもっと長くないといけなかった → もっと高く飛ばないといけなかった → 機体が重い、ということになります。

 機体を軽くすることが今後の課題です。

 松隈先生からはバッテリーをもっと小型化して1回の発射でギリギリ持つくらいのものにしてはどうかとアドバイスいただきました。

 あとはGPSが結構重いのでこれを外してカメラのみにすると良さそうです。

 息子さんいわく、私の3Dプリントの設計が良くないと。私に任せていられないので次回は僕がやるって言ってましたw
 (最初は息子さんがやる想定だったんですけどね、忙しくて私にやっといてって言われたのではりきって作ったんですけどね〜)

 ここで追加情報!

 今回のロケットエンジンは前回ブログで書いたB型のものを使用しました。
 まさにAmazon購入のもの(現在商品ページ無し)を使用したのですが、「B6-6」とあります。これは逆噴射までの時間が6秒ということだったらしいです!もっと短い「B6-4」というのがあるらしいので次回はそちらにしたいと思います。

 ↓ 2024/3 Amazonに商品がありました

mpegで良かった

 動画の形式として息子さんはmpeg形式を選定していました。
 私は知らなかったですが、mpegだと、途中でプログラムが予期せぬ終了してしまって録画の終了処理を行わなくても、その時点までの録画がとれるらしいです。

 実際今回は激突により強制終了しているので、mpegでちゃんと撮れていてよかったなと思いました。

センサー値のログの間隔はもう少し短く

 1秒おきのログを出していますが、もう少し短い間隔の方がより良いとのアドバイスをいただきました。
 確かに、1秒間隔だと一番高い高度のときのログを取り逃しそうですね!次回に生かします。

その他

バッテリー・電池は廃棄しました

 今回購入したPiSugar2のバッテリーは凹んでしまい、危険と判断されるため廃棄しました。
 Pisugar2の付属の基板は使えると思うのでそのまま残しました。同じタイプのバッテリーをつなげて再利用したいと思います。

 またGPSの裏側にもボタン電池がついているのですがこれもへこんでいたので同様に捨てました。

さいごに

 飛んだ瞬間嬉しかったですね。1回目も飛ばせるだけで良かったと思えましたし、2回目に動画が撮れたのは最高の気分でした。ロケットの高さくらいテンション上がりました。

 息子さん次は軽量化する!と意気込んでいました。
 とはいえ今年はこれからいろいろ忙しくなりそうな予感、ロケットに手が回るかな?・・ぼちぼち頑張っていきましょう。