LoginSignup
11

More than 3 years have passed since last update.

PlantUMLを使った宇宙服のモデリング

Last updated at Posted at 2020-01-27

はじめに

 趣味で宇宙開発を行う団体「リーマンサット・プロジェクト」がお送りする
 新春アドベントカレンダーです。

 リーマンサット・プロジェクトは「普通の人が集まって宇宙開発しよう」を
 合言葉に活動をしている民間団体です。
 他では経験できない「宇宙開発プロジェクト」に誰もが携わることができます。
 興味を持たれた方は https://www.rymansat.com/join からお気軽にどうぞ。

 RSP02でシステム電源開発とSpaceSuitsサークルでパーツのモデリングをさせていただいています。
 やりたいことがあれば、"できる" "できない"に関わらず試すことができるのが趣味ならではでないでしょうか。
 
 今回、PlantUMLを使ってPLSS(生命維持装置)をモデリングしようと思います。
 実際にはSysMLを使いモデリングする方がいいらしいです。
 PlantUMLの使い方については下記リンクを参考にしました。
 https://plantuml.com/ja/

条件設定と参照資料

 簡易的に宇宙服を宇宙服アセンブリ(胴体服、冷却服、ヘルメット)と
 PLSS(生命維持装置)に分けPLSSについて考えてみます。
 また下記リンク資料を元にPLSSについて車輪の再発明で
 50年前の機能要件を満たすようにモデリングしました。
 https://en.wikipedia.org/wiki/Space_suit
 https://www.hq.nasa.gov/alsj/ALSJ-FlightPLSS.pdf
 https://fanfun.jaxa.jp/faq/detail/205.html
 http://iss.jaxa.jp/iss/jaxa_exp/hoshide/library/presskit/press_kit.pdf
 https://fanfun.jaxa.jp/faq/detail/81.html

 宇宙環境については下記を参照させていただきました。
 http://spaceinfo.jaxa.jp/ja/space_environment.html
 http://iss.jaxa.jp/shuttle/flight/sts99/earthkam_02.html

 システム全体を記述するにあたって下記のプロセスに従い記述します。
テンプレート.PNG

モデリング

 資料の図からオブジェクトを抽出
PLSS.PNG

1. システムの要求分析

 機能要件を決める:システムに何をしてほしいのかを定義する。
 システムがどう動くのかをユーザー視点で明らかにする。
 ユースケースで関係性を明らかにし個別に詳細化する。
 ユースケース記述については下記コースに分け、補足として記載します。
 基本コース(通常)
 代替コース(例外)
ユースケース.png

2. システムの概念設計

 下記点を検討しつつモデルを使い詳細化していきます。
 ・システムの機能を明らかにする。
 ・システムのスコープを決める。
 ・システムを分析する。

 始めにユースケースや資料からオブジェクトを作成し、
 オブジェクト図を元に関係やフローをまとめます。
 

2.1 オブジェクト図

 現実の"モノ"や"データ"、それらの関係を整理する。
 オブジェクト図の基本ルールとして下記フローに従い記載します。
 一部例外あり。
テンプレート2.png

 参考資料を元に、パーツや制御やデータの流れを抜き出します。
PLSS オブジェクト図.png

2.2 シーケンス図

 オブジェクト間の相互作用を時系列に記述する。
 今回は省略。

2.3 クラス図

 オブジェクト図を整理し抽象化する。
 作成したオブジェクト図のコントロールを[操作]に、エンティティを[属性]に、
 バウンダリや機能に見えるコントロールを[クラス]に変更していきます。
クラス図.png

雑ですがコードも張り付けてみました、改造して遊んでみてください。

2.4 状態遷移図

 ●は状態開始点

ステート図2.png

 状態遷移表も作っておくと検証時に確認を取りやすい。

今後やりたいこと

 無重力空間での流体の流れやそれに伴う圧力/温度の変化などをOpenFOAMなどの
 シミュレーションを用いて検証したいなと考えています。

 また、以前は機械系の技術で制御されていたものが
 現代では電装系の技術に代替できる物もあるのではないかと考えています。
 これらをどう盛り込んでいくか非常に興味あります。

 さらに、過酷環境での体に与える負担は大きいものと思います。
 以前、富士山に登頂した経験ですが登り始めは大丈夫だと思っていたのに
 いつの間にか高山病になり大変でした。どこか無理していたのでしょうね。
 このようなことからリアルタイムで生体情報をとれるような機能を入れたほうが
 いいのではと思いました。最新の宇宙服の機能については情報は少ないですが
 キャッチアップを続けたいと思います。

あとがき

 システム設計が十分なされていると、その後の検証作業においても
 構想時の資産を流用でき無駄がなくなると考えています。
 また、このようなモノづくりにおいてはエラーの発生やミスは許されないので
 手戻り防止などの観点から非常に有用ではないかと考えています。

 今回資料を元に再現したところ自分はこのようにモデリングしました。
 あまり資料を読み込めていないのですがキー要素を元に機能を考えていくと
 資料の宇宙服と同じような構成になるのではないかと思います。
 話は飛びますが人間の体のほとんどは水でできているらしいです。
 今回、温度湿度の調整や圧力との関係性や機能を考えていく中で
 色々調べていくと、人体とはうまくできているなと感じました。

 今回、必要な技術分野は多岐にわたり理解できないことが多くありました。
 そしてサークルでの開発は始まったばかりで人が足りてません。
 SysMLや構造系のエンジニアをはじめとして
 特に医療や生物、化学系、惑星科学の知識を持った方がいません。
 突っ込みどころ満載だと思いますのでご指摘ついでに
 ぜひSpaceSuitsサークルに参加いただけると幸いです。

 「リーマンサット・プロジェクト」は「普通の人が集まって宇宙開発しよう」を
 合言葉に活動をしている民間団体です。
 他では経験できない「宇宙開発プロジェクト」に誰もが携わることができます。

 興味を持たれた方は https://www.rymansat.com/join からお気軽にどうぞ。

 新春アドベントカレンダー、次は @KaitosLab さんの
「エンジニアでない私が「技術広報」をたちあげてみたワケとアウトリーチ」です。
 お楽しみに!

その他参考資料

 モデリング手法と統一モデリング言語UML
 トコトンやさしい配管の本
 トコトンやさしいボイラーの本

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11