小学校プログラミング教育の現状と展望~すべての子どもたちにプログラミングの楽しさを
岡山県備前市立香登小学校 津下哲也先生
自動ドアの動きを言葉で表現すると…
今日は、最初に模擬授業をします。今から自動ドアの動きを映像で見せますので、この動きを言葉で表現してください。次に今の動きをいくつかの細かい動きに分割して、ワークシートに書いてみてください。
授業では、これに3分くらい時間をとって、そのあと友達と考えを話し合います。皆さんもこのあとお近くの人と、意見を交換なさってください。
こうやって意見を出し合わせてから、「人が近づくのは、センサーで感知するんだよ。センサーが感知したら、ドアが開くんだよ。こういった手順のことをプログラムと言って、そういうプログラムを作っていくことをプログラミングと言うんだよ」と、プログラミングの意味を紹介します。
そして、「プログラミングは私たちの身近な所にもいろいろ使われています。例えば駐車場のゲートもそうだね。大きなショッピングモールでは、土日は車がたくさん集まって混雑するけど、車がより安全に、スムーズに出入りできるような、駐車場のゲートモデルの動きとプログラムを工夫してみましょう」という形で、授業の導入を進めていきました。
6年理科「電気と私たちの暮らし」で、駐車場ゲートのモデルを作る
私が勤務する岡山県備前市立香登小学校は、全校児童が105名の小規模校です。備前市は、情報化政策により、市内の全小中学校で1人1台のタブレットPC端末が整備をされています。このような環境ですので、新しいプログラミング教材を何か準備すれば、いろいろな授業ができる環境にある学校です。
その中で、6年生の理科の『電気と私たちの暮らし』の単元で、レゴWeDo2.0を使った実践を紹介します。全14時間の単元計画の中で、第4次の電気を使ったおもちゃ作りの単元をプログラミングに充てました。
最初は、ブロックを使ったゲートモデルの組み立てです。授業の流れの1と2は先ほどの自動ドアと同じですが、3で「水門モデル」というものを組み立てて駐車場のゲートモデルに変身させ、実際に操作して試すという流れで進めました。
水門モデルがこちらです。これはWeDo2.0のキットに、組み立て手順が全部書いてあるので、子どもたちはここまではすぐ組み立てることができます。
これを駐車場の形に変身させないといけませんので、この部分は手順書を渡して作らせます。ここまで1時間で行いました。
基本で作ったプログラムを「もっと安全に・もっと便利に」を目指して改良する
第2時のプログラムは、ブロックプログラミングの形のWeDo2.0で行います。最初に基本の操作を、一つ一つ発見的に気づかせた後は、自由にゲートを操作させました。今日はゲートモデルを持ってきていますので、実際に操作しながらゲートの動きをやってみようと思います。
アプリの一番下の段の、緑のブロックがモーターです。これで実行を押すと、モーターが動きっぱなしになります。止めるためには、止めるためのブロック、この中では左から三つ目の×がついているものですね。これをつなぐと、止まる。だから、コンピューターはプログラムで動いたり止まったりするんだよ、ということが説明できます。その右隣の上向きの矢印のブロックをつなぐと、バーがウィーンと上がります。これで、モーターの動きには向きがあることがわかります。でも、これだと上がりっぱなしになるので、今度はその隣の下向きに矢印のブロックを入れてやると、カシャッとゲートが下ります。これで、ボタンを押すたびにバーがウィーンと上がって、カシャッと下りる、というプログラムができます。
でもこのままでは、バーが上がっていて車が通ろうとしても、途中でバーか下りてきてぶつかってしまうことがあります。そこで、バーを上げている時間を操作しないといけません。そこで時間ブロックを入れて、バーを上げ下げする時間を調節します。例えば時間ブロックを4秒にすると、バーが4秒間上がって止まったままになり、そのまま車が通過して、バーが下りるというプログラムができます。
でも、これだと毎回手動で操作しないといけないので、ループのブロックを入れて自動化します。さらに、センサーブロックを入れてやると、車が近づいたらバーが上がって、4秒間上がったままになって、その後閉じる。次に車が来るまで閉まったまま、というプログラムができます。
第2時では、先ほどのブロックに加えて、音を入れたり、ランプを光らせたりといったところまで、子どもたちが自分でプログラムを作ってしまいました。そこで次の第3時は、話し合い活動とか、自分がどうしてこのプログラムを考えたのかということを、発表したり意見交換したりすることを中心に進めました。
最初にこのようなサンプルプログラムを提示しました。これは、やってみたらわかりますが、一瞬でバーが下りてしまいます。ですので、車がぶつかると危ないとか、開いている時間が短いといった問題点を子どもが見つけて、言語化をして進めていくという形で授業を進めました。
この活動をまとめたワークシートが下図です。
※クリックすると拡大します。
児童は、自分たちが考えたプログラムを言葉で説明しました。試行錯誤の過程を言語化したり、友達の発表に対して改善点を伝えたりといったこともできていました。
1年生生活科:Ozobotでライントレース→通学路の歩き方へ
もう一つ実践を紹介します。1年生で使ったのは、Ozobot(オゾボット:※)という、黒い線上を進んでいくライントレースロボットです。キーボードやタブレットを使わなくても、子どもたちが自分で描いた線の上をロボットが走ります。
Ozobotは黒の他に赤、青、緑のセンサーで認識し、色によって異なる動きをするようプログラムされています。例えば、緑・黒・赤で左に曲がる、赤・青・赤で一旦停止といったものです。
このロボットを人間に見立てて、子どもたちが描いた家から学校までの地図上を歩かせます。そして、「交差点が来たらどうしたらいいかな。そうだね、一旦停止だね。じゃあ、一旦停止させるようにするためには、色をどんなふうに並べたらいいかな」ということを考えて、スライドのように黒い線(=道)の上に、赤や青や緑のシールを貼って命令をします。こうやって遊びながら、安全な登下校の仕方を考えるという実践です。
第1時は、自分たちで描いた線(=道)の上にロボットを走らせます。第2時は基本的なプログラミングの復習。第3時が、基本的なプログラムを組み合わせて実際に遊んでみるという体験。
そして第4時で、家から学校までの地図を描いて、実際にロボットを動かすためのプログラミングをする、という授業を行いました。そして、最終の第5時は、安全に気をつけて家から学校まで歩こうね、というまとめをしました。
「安全に気をつけて学校まで歩こう」のところでは、赤青緑の丸いシールを組み合わせて作ったものをあらかじめ設定をしておき、子どもが自分で道を作る時には、このシールの貼り方をみなながら作りました。ロボットには人間のシールを付けて、それを本人に見立てて、右に行ったり左に行ったりしてゴールに到着させました。
上手くいくと、子どもたちは本当に喜びました。この活動にはパソコンは必要ありません。Ozobotのロボット1個と、ペン、マーカーがあればできますので、1年生にもハードルが低くて、とてもよかったと思います。
[中川先生との質疑応答]
中川先生:駐車場のゲートのプログラムを作るのは、理科の単元でなさったと思います。子どもたちは、ブザーを鳴らしたりライトをつけたり、とてもよく工夫していたと思います。
そこでお聞きしたいのですが、先ほど私の話の中で見せた、教科・領域のねらいとプログラミング的思考の関係の図で言えば、理科の単元の目標の方はどの程度達成されたと思われますか。
津下先生:理科の内容としては、あの活動は、本来はエネルギーが変換できるというところがメインであると思います。ですから、身近なものの動きに興味を持たせるとか、そこにプログラミングが使われているということについては、触れることはできたかなと思います。プログラミングの活動自体は、手回し発電機からエネルギーを変換して動かす単元の活動とはちょっとずれてくるので、そこの辺りをどう捉えるかが非常に難しかったなと思います。
中川先生:私は、先ほどの 1年生の生活科も、6年生の理科も見学させていただきました。1年生の生活科の授業の時に、津下先生にも申し上げたかと思いますが、例えば「交通量の多い道路に出た時は、一旦停止となるようにシールを貼る」というステップの時に、交通量が多いというのはどれくらいかを子どもたちにイメージさせるために、その場の写真があると、子どもたちは生活科の『学区を安全に歩く』という活動に、より引きつけながら、考えたのではないかと思いますが、その辺りいかがでしょうか。
津下先生:中川先生がおっしゃるとおりで、これは1年生を担任された方にはおわかりになると思いますが、1年生にはまず地図の概念が理解できません。それから、上から見た平面図がどうなるか、ということもイメージできないです。でも、どこかで授業に紐付けないといけないので、たくさんあるプログラミングの教材の中でOzobotにたどり着いて、まず実践してみたというところです。
ですから、先生がご指導くださったように、実際の場面に即すのであれば、生徒が具体的にイメージできる、「〇〇の近くにある、この交差点ではどうするかな」といったものを、もっと研究していく必要があると思いますし、そういうところを諦めずに追求していくことが大事だと思っています。
中川先生:もう一つ、これはちょっと意地悪な質問ですが。このレゴブロックもOzobotも、動きがはっきりわかるし、子どもにとってもかわいらしくて楽しいと思います。でもロボットやブロック自体はこの活動に必須なのかという点では、いかがでしょうか。
津下先生:この後の、今後課題と展望のところで述べたいと思うのですが、小学校という発達段階からすると、モノを使った具体的な操作は非常に意味があり、価値があるものであると思います。ですから、必須かと言われると、確かに必須とまでは言えないかもしれませんが、それでもベターかなと思います。ただ、それに伴う課題は様々出てきますので、そこをどうクリアするかということもまた課題であると思います。