6年 理科 電気の利用とプログラミング

電気をむだなく使うプログラム ── コンピュータは「もし〜なら」しか考えていない

学校のろうかや駅のトイレで、近づいたときだけ明かりがつく照明を見たことがありますか。あれは、だれかが見ていてスイッチを入れているわけではありません。人がいるかどうかを調べる部品と、「人がいるならつける」という短い指示の組み合わせでできています。この、電気をむだなく使うための指示のまとまりがプログラムです。6年の理科では、電気を作る・ためる・変えるだけでなく、必要なときだけ使うところまでを学びます。この記事では、電気の利用とプログラミングのうち、プログラムの部分だけを取り出してくわしく見ていきます。

「むだ」はどこで生まれているか

電気のむだづかいというと、消しわすれを思いうかべます。けれども、消しわすれは「気をつける」では減りません。人は必ずわすれるからです。そこで考え方を変えます。人が消すのではなく、いらない時間は自動で切れるようにしておくのです。

同じ40Wの照明を、1日8時間つけっぱなしにした場合 0.04kW × 8時間 = 0.32kWh 人がいる時間だけ(合計2時間)つけた場合 0.04kW × 2時間 = 0.08kWh 差 0.32 − 0.08 = 0.24kWh(1日あたり)

同じ明るさ、同じ器具でも、つけている時間を4分の1にすれば、使う電気も4分の1になります。もっと明るいものに取りかえたわけでも、がまんしたわけでもありません。使う時間を短くすることは、器具の性能を上げることと同じくらい大きな節約になるのです。ここに、プログラムの出番があります。時間を短くするための判断を、人ではなく機械にまかせるためです。人は一日じゅう何度も同じ判断をし続けることはできませんが、機械は何度でも同じ判断をくり返せます。

センサーは「人」を見ていない

自動でつく照明には、センサーという部品がついています。ここで、多くの人が思いちがいをします。センサーは「人」を見わけているのではありません。センサーが調べているのは、次のような数だけです。

センサーの種類実さいに調べているもの使われている場面
人感センサーまわりの温度の変化ろうか・トイレの照明
明るさセンサー光の強さ街灯・自動で暗くなる画面
温度センサー空気の温度エアコン・冷ぞう庫
音センサー音の大きさ音でつく照明

人感センサーがつかまえているのは、人の体から出る熱によって起きる、まわりの温度のわずかな変化です。だから、じっと動かずにいると消えてしまうことがありますし、ストーブのような熱いものにも反応してしまうことがあります。センサーがしていることは「数をはかること」だけで、その数をどう使うかを決めるのはプログラムのほうです。この区別ができると、機械が思いどおりに動かないときの理由も、自分で考えられるようになります。温度計が温度をはかるだけで、暑いか寒いかを決めないのと同じです。

プログラムは3つしかない

プログラムというと難しそうですが、組み立てに使う部品は、たった3つです。

① 順番 上から下へ、書いた順に実行する ② くり返し 同じことを何回も、または、ずっとくり返す ③ 分かれ道 もし〜なら Aをする、そうでなければ Bをする

①の順番は、料理の作り方と同じで、書いた順にそのまま実行されます。②のくり返しは、機械が得意なところです。人は「1秒ごとに調べる」を一日中続けられませんが、機械は文句を言わずに続けます。そして③の分かれ道が、いちばん大事な部分です。コンピュータは、自分で気をきかせたり、その場の空気を読んだりはしません。「もし〜なら」という形で条件を書いてもらったときだけ、そのとおりに判断します。賢いから正しく動くのではなく、書かれたとおりにしか動かないから、いつも同じ結果になるのです。むずかしい命令をたくさん覚える必要はなく、この3つの組み合わせだけで、身のまわりの自動の仕組みはほとんど説明できます。

作る前に、日本語で条件を書く

いきなり画面でブロックをならべ始めると、たいてい途中でわからなくなります。先にすることは、やりたいことを日本語の一文にすることです。

やりたいこと(日本語) 人がいて、しかも まわりが暗いときだけ、明かりをつけたい。 言いかえ(プログラムの形) ずっとくり返す もし 人がいる かつ 暗い なら → 明かりをつける そうでなければ → 明かりを消す

この書きかえができれば、プログラムは半分終わったようなものです。注意したいのは「かつ」の部分です。条件を「人がいる」だけにすると、昼間の明るいろうかでも点いてしまい、むだが残ります。反対に「暗い」だけにすると、夜はだれもいなくても一晩じゅう点いたままになります。2つの条件を両方みたすときだけ、という形にして初めて、ねらったとおりの節約になります。どちらか一方でよいのか、両方必要なのかを、作る前に決めておきましょう。

「暗い」を数で決める

もう一つ、日本語のままでは機械に伝わらない言葉があります。「暗い」です。人によって暗いと感じる明るさはちがいますが、機械は感じることができません。そこで、境目を数で決めます。

明るさセンサーの値(0〜100とする) 昼のろうか … 80 夕方 … 40 夜の消灯後 … 5 決めた境目:30 より小さければ「暗い」とする もし 明るさ < 30 なら → 暗い

この30という数を、しきい値といいます。しきい値を50にすれば夕方から点き、10にすれば真っ暗になるまで点きません。どちらが正しいということはなく、どこで切るかを決めるのは、作る人の目的です。安全のために早めに点けたいのか、電気を減らすことを優先したいのかで、選ぶ数は変わります。理科の実験で数を記録するのと同じように、実さいに何回かはかってから決めると、うまくいきます。

思いどおりに動かないときの直し方

プログラムは、一度で思いどおりになることのほうが少ないです。うまく動かないときは、感覚で直さず、順番に切り分けます。

起きたこと調べるところ直し方の例
まったく点かないセンサーの値そのもの値を画面に出して、変化しているか見る
いつも点いたまま条件の向き(大なり・小なり)不等号が逆になっていないか確かめる
すぐ消えてしまうしきい値・待ち時間消すまでの時間を長くする
ときどきちらつく境目あたりでの行ったり来たり点ける値と消す値を少しずらす

ここで役に立つのが、5年で学んだ実験の進め方です。うまくいかないときに、しきい値と待ち時間を同時に変えると、どちらが効いたのか分からなくなります。変えるのは一度に一つだけ。これはプログラムでもまったく同じで、条件を一つ変えるたびに動かして確かめれば、原因は必ず見つかります。くわしくは実験の計画の立て方を読み返してみてください。

発電・ちく電とつなげて考える

6年の理科では、手回し発電機で電気を作り、コンデンサーにためて、豆電球や発光ダイオードで使う実験をします。同じ量をためた電気で、発光ダイオードのほうが長く光るのは、光にならずに熱ににげてしまう電気が少ないからです。ここにプログラムを足すと、節約の道すじが3つそろいます。

① 作る … 発電する ② ためる … コンデンサー・電池にたくわえる ③ 使う … 熱ににげにくい器具(発光ダイオード)にする + プログラム … 必要なときだけ使う(使う時間を短くする)

③までは、器具を取りかえることでよくなる部分です。それに対してプログラムは、器具を変えずに「使う時間」そのものを減らすやり方です。信号機、エスカレーター、エアコン、自動ドア。町の中で自動で動いているものはどれも、この考え方でできています。電気の利用全体の話は電気の利用にまとめてありますので、あわせて読むと、作るところから使うところまでが一本につながります。

つまずきやすいところ

その1 コンピュータが考えていると思ってしまう

「人がいるのに消えた」のは、機械が気まぐれを起こしたからではありません。
書かれた条件に、そのときの数が当てはまらなかっただけです。まず条件を読み返しましょう。

その2 条件を「または」でつないでしまう

「人がいる または 暗い」にすると、どちらか一方でも当てはまれば点いてしまいます。
両方そろったときだけ動かしたいなら「かつ」です。ここを取りちがえると、節約になりません。

その3 直すときに、いくつも同時に変えてしまう

しきい値も待ち時間も条件も一度に変えると、うまくいっても理由が分かりません。
直したところを一か所にしぼれば、結果の意味がはっきりします。理科の実験とまったく同じきまりです。

やってみよう

Q1 人感センサーが実さいに調べているものは何ですか。

A まわりの温度の変化。人の形を見ているわけではない。

Q2 プログラムを組み立てる3つの部品を答えましょう。

A 順番・くり返し・分かれ道(もし〜なら)

Q3 「人がいる」だけを条件にすると、どんなむだが残りますか。

A 昼間の明るい時間にも点いてしまう。「暗い」と「かつ」で結ぶ必要がある。

Q4 明るさが30より小さいときを「暗い」とする、この30を何といいますか。

A しきい値(点ける・消すの境目にする数)

Q5 思いどおりに動かないとき、直し方のきまりは何でしたか。

A 手を入れる場所を一か所にしぼるようにして、そのつど動かして確かめる。

まとめ

おうちの方へ

電気の利用とプログラミングは、6年理科の中で、日常生活といちばん近い単元です。パソコンの操作が得意かどうかは、ここではほとんど関係ありません。大切なのは「どういうときに動いてほしいのかを、あいまいさなく言葉にできるか」で、これは国語の力にも、実験の計画を立てる力にも重なります。ご家庭では、自動ドアや人感センサーの照明の前で「どんな条件で動いていると思う?」と問いかけてみてください。じっと立ち止まると消える、日なたでは点かない、といった気づきは、そのまま条件の発見です。うまく説明できたら、それはもうプログラムを書けているのと同じことだと伝えてあげてください。