こんにちは、沖縄市にある子供向けプログラミング教室「AID IT.KIDS」のミチノリです。エイドでは、Scratch(スクラッチ)を使ったプログラミング学習を基本としていますが、mBot(エムボット)等のロボット教材を使ったプログラミング学習も行っています。

一言で「プログラミング」と言っても、動かしたい端末によって異なります。

Scratchではパソコンを主な端末としますが、ロボットプログラミングではスクラッチを使ったゲームやアニメーションのプログラミングとは異なり、ロボットを端末(デバイス)として使用するので、学習範囲が広がり様々な体験が出来るようになります。

mBotでは、Scratch(スクラッチ)のプログラミング環境をベースに作られたmBlockというソフトウェアを使ってプログラミングを行います。スクラッチでのプログラミングを覚えれば、スムーズにmBotでのプログラミングを行う事が出来ます。

今回、みんなで試してみたのは、ロボットプログラミング学習では欠かせないセンサーを使ったライントレースプログラミングです。

「白」と「黒」をmBotに搭載されているセンサーで判断をして、ラインに沿って自動的に動かしていきます。「ラインに沿って動く」のは文字にしてみるとシンプルな事ですが、特定の場所から指定の場所へと物を運びたい時に、運搬作業が1回だけではなく定期的に行われるのであれば、人間が行うよりもロボットが行った方が利便性も高く、かつ正確な結果が得られますね。

ライントレースのプログラミングでは、出来る限り教室を使って大きなコースを作った方が楽しいので、教室全体でコースを作ったりしながらプログラミングを行うのですが、床の模様も重要なポイントになったりします。

エイドの床は色が濃い模様になっているので、紙の白い部分が少ないとセンサーの測定範囲を超えてしまい黒の判定をされてしまう事があります。

こちらが失敗例ですが、まっすぐに進んでいるmBotが・・・

コーナーに差し掛かったときに、白の部分が少ないポイントで黒の判定と白の判定が正確に出来なくなり・・・

センサーで検知する事が出来ず、ライントレースが外れて、コースから離脱してしまいます。

パソコン上で動くScratchでは、デジタルな画面上で、ほぼ100%同じ動きをしますが、ロボットの場合は動かす場所によって考慮するプログラムが必要になりますし、電池(バッテリー)の残量や床の摩擦によっても微調整が必要です。

プログラミングの基本的な概念やルールは同じものだと思いますが、パソコンやスマホ画面上で動くプログラムと、ロボットを用いたプログラムでは、ライントレースを例にとっても想定しておくべき事に違いがあるので、その両方を体験することは、とても大切だと思います。

プログラミングとは、トライアル&エラーの繰り返しです。目的とした動きになるようにプログラムを考えて、動かしてみて、想定とは違ってしまった事を修正し続けていきます。

その経験を何度も試していく中で、「論理的に想定している「結果」に対して、行うべきコト」が自然と見えてくるようになっていきます。

僕の世代では、パソコン、IT、プログラミングの学習は、速くても高校生または大学生から学習を行う時代でしたが、今の子供達は身の回りにインターネットに接続する機器が当たり前のように存在しており、2020年には小学生からプログラミング学習がスタートするように、これまでの学習指導要領が大きく変化することも必然的な事です。

2018年の今でも、幼稚園生からプログラミング学習をスタートする時代になっているので、ここから先の時代は一体どういった変化を遂げていくのかが、とても楽しみです。

新しい事に対して、今後の可能性を柔軟に理解し、かつ常に変化し続けていけるように勉強する事は、保護者にとって必要不可欠です。

変化し続ける時代だからこそ、保護者も子供も一緒に理解をし、前向きに勉強し続ける事が重要な時代になりましたね。