第4回 機能とプログラム構成 -HAKO-
ミニケース「KARAKURI -HAKO-」で実装する機能とプログラム構成を検討します。 ここでは、実装したいい機能をまず検討して、それを実装するプログラムの構成を決めます。
1.実装する機能
今回のケースには、基本的な機能はもちろんのこと、見た目にもこだわったものにしようと思います。基本的な機能は以下のとおり。
- 現在の時刻と温・湿度を確認する
- 画面に情報を表示する
- ケース全体の換気を行い冷却する
- ブラウザで使えるユーザー画面を提供する
見た目にこだわる部分は以下のとおり。やっぱりライトアップしたいですね!
- 冷却用FANをライティングする
- ライティングは単色、複色、アニメーションが選択できる
- ライティングの選択はユーザーが指定できる
次に機能をプログラムに分解してみます。
2.プログラムの構成
機能を以下のようにプログラムに分解してみました。
上記のプログラムで難しそうなのは以下の2つかなと。
LEDにライティング用信号を送信する
LED搭載のFANを使用しますが、おそらく複数のLEDがテープ(帯)状についたものが入っているので、同時に複数のLEDを光らせる信号を送信する必要があり、何色に光らせるか、同色か、グラデーションにするかなどで送信する信号が変わると想像できます。この部分については、次の記事でご紹介しています。
ブラウザで、FANの周波数や、ライティング設定を変更する
他のPCやスマホなどからブラウザ経由で操作するためには、クライアントとなるPCやスマホからの要求に答えて設定画面を表示させたり、ボタン押すなどの変更要求を受け付けて処理するためのWebサーバーとしての機能が必要です。 単純にWebサーバーの実装と考えると結構高級なコンピュータ(Linuxなどが動作するもの)が必要になると考えがちですが、そうなると使用するコンピュータが今回の省スペースという条件を満たさなくなります。 そこでWeb(Http)の仕組みを理解して、もう少し小さいマイコンでも実装できるようにしたいと思います。この部分については、次の記事でご紹介しています。
以上、機能とプログラムの構成について検討しました。 次はプログラムを実行するコンピュータを選びたいと思います。