Skip to content

介護補助システムの設計(5) ステートマシン図編


こんにちは、astah* SysML製品 プロダクトオーナーの周翼(しゅうよく)です。
「介護補助システム」をSysMLでモデリングするシリーズの最終回として、今回は、ステートマシン図でのモデリングを紹介します。


これは、シリーズ2回目ブロック定義図編で紹介したブロック定義図ですが、一点変更を加えました。

block_diagram1

「腰部負荷監視装置」を新しい部品として追加し、「腰部センサー」と「コンピュータ」を、「腰部負荷監視装置」の中に存在する部品として、整理し直しました。

block_diagram2

今回は、「腰部アシスト装置」のふるまいを、ステートマシン図でモデリングしたいと思います。


AstahSysML_ダウンロード

astah* SysML評価版ダウンロードはこちら

図は、astah* SysMLを使って描いています。
(どなたでも、無償で50日試用できます。ダウンロードはこちらから)


AYM 「腰部アシスト装置」のふるまいをステートマシン図で描く


これは「腰部アシスト装置」のふるまいを表したステートマシン図です。

rev_state_machine1

最初は、腰部アシスト装置の電源が投入されていないため、「停止中」から始まります。

state_machine2

電源が投入されると、「稼働中」の状態になります。その時、「停止中」から「稼働中」という状態に遷移するため、「電源ON」というトリガーが存在します。また、電源を切ると「停止中」の状態に遷移するため、「電源OFF」というトリガーがあります。

state_machine3

電源が投入されると、腰部センサーから負荷信号が送信されるまで「待機中」となります。

rev_state_machine2

荷物を持ち上げようとすると、腰部負荷監視装置は、腰部センサーから負荷を感知します。腰部センサーは、この負荷をコンピュータに送信し、コンピュータは、補助パワーを計算して、腰部アシスト装置を制御します。

block_diagram3

従って「待機中」の状態は、「負荷を受信した」というトリガーによって「アシスト中」という状態に遷移します。

rev_state_machine3

「アシスト中」も、腰部センサーから断続的に負荷を受信します。その間、コンピュータは、補助パワーを計算し直して制御します。その動作を”実行活動”として記述します。

例えば、補助パワーが大きすぎると危険な状態になるため、腰部アシスト装置は、人為的にリセットされることがあります。その場合、「アシスト中」という状態は、「リセットされた」というトリガーによって「待機中」に遷移します。

state_machine6

このようにステートマシン図を使うと、オブジェクトの状態が、相互作用の中でどのような条件で遷移するか等オブジェクトの振る舞いを、可視化し、表現することができます。

今回で「SysMLを使った介護補助システムのモデリング」シリーズはおしまいです。複雑なシステムの分析や設計に、ぜひSysMLによるモデリングを取り入れてみてください。


[SysML関連動画/記事]
(1) 要求図編
(2) ブロック定義図編
(3) 内部ブロック図編
(4) パラメトリック図編
SysMLを知ろう、学ぼう、使ってみよう

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: