身の回りの物をプログラムする第二弾です。
この記事では電気ポットをプログラムしてみます。
第一弾よりレベルが上がりますので、まだ見ていないという方は、第一弾を先にやってみて下さいね!
電気ポットの動作を考える
一言で「電気ポット」と言っても、様々な製品があります。
今回は以下の機能を実装したものを作成してみようと思います。
- 温度が90℃を下回ったら自動で再沸騰させる
- 沸騰し(100℃になっ)たら、加熱を停止する
- 2時間後に自動で再沸騰機能を停止させる(タイマー機能)
※今回のプログラムでは、温度の上昇と下降は毎秒1℃とします
文字で書くと少しわかりづらいかもしれませんが、作っていくうちに理解が深まると思いますので、安心してください。
オン・オフで管理する
第一弾の扇風機の時にも、オンとオフの考え方を用いました。
今回はオンとオフを管理する変数(ON/OFF)を作成します。
ONの時は温度が上昇(加熱)して、OFFの時は温度が自然に下降するようにします。
これで温度の上下に関するプログラムの基盤が完成しました。
あとは「オンオフの切り替え」と「タイマー機能」を実装すれば完成です。
温度によって「ON」と「OFF」を切り替える
温度が100℃になったら、スイッチがオフになります。
90℃よりさらに下がったら、スイッチがオンになります。
コスチュームは、上昇(加熱)時が赤、下降時が青に設定してみました。
このコードが、先ほど作成した「温度を上下させるコード」と連動することで、電気ポットの基本動作の設定が完了しました。
タイマー機能を実装
スクラッチでは「タイマーブロック」という便利なものがあるので、タイマー機能の実装は簡単です。
先ほど「ずっと」のブロックを使っていた場所を「タイマー > 7200まで繰り返す」に変えるだけです。
7200というのは2時間を秒で表しています。
(2 x 60 x 60ですね)
まとめ
電気ポットの作り方を紹介しました。
最初に動作を書き出す作業をしましたが、作っていくうちに理解が深まったのではないでしょうか?
そして「作るものを書き出す」ことは、プログラミングに、どんなに慣れたとしても大切な作業だということを覚えておきましょう。
書き出さずに作ると、やることがどんどんブレてしまい、最終的には迷宮入りして、意味不明な事態になることもあるので注意しましょう。
また、今回は扇風機の時よりも発展した形で「オンとオフ」で動作を管理しました。
この考え方は、ゲーム作成など、様々な場面で使えるので、ぜひマスターしてください。
最後に、今回の電気ポットも余裕があれば、どんどん改造してみてくださいね♪( ´▽`)
(保温温度の細かい設定や、カップ麺用の3分タイマーなど)
コメント