10

22

[状態マシン図] 登山用LEDヘッドランプ

2013.10.22(21:26)

登山用LEDヘッドランプ
revolt.jpg
の状態マシン図を描いてみました。
入力はボタンが1つのみ。
出力は白色LEDが3つ、赤色LEDが2つ、電池残量表示用の多色LEDが写真右側面に1つあります。残量が多いほうから緑色、オレンジ色、赤色と変化します。

白色を循環する遷移と、赤色を循環する遷移があります。
どちらの色でも点灯、点滅するときは、2秒ほど電池残量表示が側面の多色LEDに表示され、消えます。
revolt.png
マニュアルは文章で書かれていてわかりにくい。やはり状態マシン図のほうがわかりやすい。自分が設定したい状態に遷移させるにはどういうステップを踏めばいいのかわかりやすい。

当然ですが、製品として大切なことは
  • ボタンが押されてそのモードに入ったことが、何らかの方法でユーザーに分かるようになっている
  • どの状態からどの状態へもステップを踏めば必ず遷移できる

実はボタンを押している間にも次々に状態が変わるので、この状態マシン図は不完全です。押すことと離すことを別イベントとして処理し、押され続けた時間の長さによって分岐する必要があります。が、実際の利用上はこれくらいで十分と思われます。

たとえ日帰りであっても山登りに行くときはヘッドランプを持ってゆきましょう。
プロフィール

島敏博

Shima Toshihiro 島敏博
信州アルプスハイランド在住。HaskellとElixirが好き。組み込みソフトウェアアーキテクト、C++プログラマ、山歩き、美術館巡り、和食食べ歩き、日本赤十字社救急法指導員、インデックス投資、クラシック音楽、SESSAME会員、状態マシン設計、モデル駆動開発、ソフトウェアプロダクトライン、Rubyist、実践ビジネス英語

■ ツイッター
http://twitter.com/saltheads
■ Facebook
http://www.facebook.com/saltheads
■ Qiita
http://qiita.com/saltheads

印刷する場合は、ブラウザの印刷メニューではなく、このページの上から3cmくらいの青いところにある、「印刷」を押してみてください。少しうまく印刷できます。まだ完全ではないのですが、これで勘弁してください。


カテゴリ
最新記事
月別アーカイブ
最新コメント
検索フォーム
リンク
sessame
RSSリンクの表示