小学校でのプログラミング教育がこの4月から必須になり来年は中学、再来年は高校で必須となります。文科省の「小学校プログラミング教育の手引書」を読むと「プログラミング的思考」を育成することが目的であって、プログラミング言語やコーディングスタイルを学習するものではないようです。
![](https://image.jimcdn.com/app/cms/image/transf/dimension=828x10000:format=jpg/path/s7644b15c5ee355e9/image/if38ebb3c2c5aa5a9/version/1583460100/image.jpg)
「教育ITソリューションExpo」は教育系の教材およびソリューションに関する展示会で、プログラミング教育の必須化に関連してSTEM教育に関する出展は増えています。ここ数年ウォッチしていますが、走行ロボットの上面のスイッチ操作で動きをプログラムするのものや、カラフルなカードをセンサで読み取って色に応じた動きをさせるロボットなど、コンピュータを使わずに基本コマンドの逐次処理を学習する教材が各社から提案されています。昨年は特に中国系企業の出展が多かったように思います。
![ブロック配置だけでプログラムした移動可能プログラミングロボット(恐竜)のダンスデモ](https://image.jimcdn.com/app/cms/image/transf/none/path/s7644b15c5ee355e9/image/ic4baeb12f668becd/version/1583554437/%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%E9%85%8D%E7%BD%AE%E3%81%A0%E3%81%91%E3%81%A7%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%97%E3%81%9F%E7%A7%BB%E5%8B%95%E5%8F%AF%E8%83%BD%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%AD%E3%83%9C%E3%83%83%E3%83%88-%E6%81%90%E7%AB%9C-%E3%81%AE%E3%83%80%E3%83%B3%E3%82%B9%E3%83%87%E3%83%A2.gif)
Cube-Dは回路学習用途なので、プログラミング学習はできません。しかし、昨年11月の展示会の来場者から提案を受けて2か月ほど試行した結果、Cube-Dのハードウェアを使って、逐次処理だけではなく条件分岐や多重ループもブロックの並び替えだけで実現できるシステムが出来上がりました。ブロックにあらかじめ「前進」や「回転」などのコマンドを割り当てておきベースボードに装着して順番に実行するものですが、ブロック自体が頭脳(マイコン)を持っていることを最大限利用して処理経路の判断等をブロックが行います。またコマンド種類と接続状況を読み取って1ブロックにまとめる「統合」機能を使って、ベースボード上で作り込んだシーケンスを別のロボットに装着して動かします。このアイデアは先日特許庁に出願してきました。この話は別のブロクで紹介します。
![試作したプログラミングロボットの各パーツの説明図](https://image.jimcdn.com/app/cms/image/transf/dimension=443x1024:format=jpg/path/s7644b15c5ee355e9/image/ie5896e14910ea732/version/1583554486/%E8%A9%A6%E4%BD%9C%E3%81%97%E3%81%9F%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%AD%E3%83%9C%E3%83%83%E3%83%88%E3%81%AE%E5%90%84%E3%83%91%E3%83%BC%E3%83%84%E3%81%AE%E8%AA%AC%E6%98%8E%E5%9B%B3.jpg)
このロボットは、模型用タイヤを取り付けたDCモータ内蔵のギアボックスを2つ連結したものの上に、電池ボックスとマイコン基板(デジタルパペット)を載せてあります。モータドライバはスイッチサイエンスで購入した400円台のものですがHブリッジx2で2つのモータを最大2Aまでドライブできます。基板の上にはさらにデジタルパペットの台座(サーボモータ付き)を載せて、恐竜のペーパークラフトを取り付けてみました。Cube-Dのブロックを接続するためのホルダは3Dプリンタで作成してあります。光センサの情報で動きを変えることができるように光センサモジュールを2つ装着しています。2つのモータと2つのサーボモータをブロックプログラミングによって独立に制御できます。光センサに応じてモータの動きを制御すると壁に沿って動くことも可能です。また光センサを下向きに装着すると、ライントレースカーが実現できます。現在、1ブロックを装着できるマイコン基板を製造中です。
![ブロック配置だけでプログラムしたプログラミングロボット(恐竜)の動作デモ](https://image.jimcdn.com/app/cms/image/transf/none/path/s7644b15c5ee355e9/image/i0fdad94dcfc9d414/version/1583554539/%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%E9%85%8D%E7%BD%AE%E3%81%A0%E3%81%91%E3%81%A7%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%97%E3%81%9F%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%AD%E3%83%9C%E3%83%83%E3%83%88-%E6%81%90%E7%AB%9C-%E3%81%AE%E5%8B%95%E4%BD%9C%E3%83%87%E3%83%A2.gif)