課題#5 ストップウォッチを自動化させよう
この課題では、mBotにLEDマトリックスを取り付け、赤外線センサーを使ってストップウォッチ機能を自動化します。
スタート地点に置いたmBotが、走行する別のmBotを検知してタイムを計測・表示する仕組みです。0.01秒単位の正確な表示を通じて、プログラミングだけでなく、物理現象と計測との関係を学べる内容となっています。
授業や親子学習で、ロボット同士の連携の楽しさを体感できる課題です。
先生や親御さんへ
この課題は、プログラミング教育の必修化に伴い、子どもたちに楽しくプログラミングを教えるために作成した教材です。
未経験の先生や、家庭で子どもと一緒にプログラミングを学びたい親御さん向けに、ロボットプログラミングを通じて、子どもたちの論理的思考力や創造性を伸ばすきっかけとなれば幸いです。
チャレンジ課題の一覧はこちら
この課題で学べること
- 表示デバイス(LEDマトリックス)の制御:
数値を視覚的に表示する方法を学び、時間の表現形式(小数点の処理など)への理解を深めます。 - センサーをトリガーとして活用する方法:
赤外線センサーをスタート信号として使うことで、動きのあるイベント制御を実現します。 - リアルタイム計測のプログラミング設計:
タイマーを用いて、0.01秒単位の正確な時間計測を体験できます。
課題の概要
- mBotにLEDマトリックスを搭載し、走行する別のmBotのラップタイム(1周にかかる時間)を自動で計測して表示する
- スタート地点に設置されたmBotは、赤外線センサーに反応があった瞬間にストップウォッチをスタート
- 1周後に再び赤外線センサーが変化したタイミングでストップウォッチを停止し、計測された時間をLEDマトリックスに表示

この仕組みにより、人手での計測なしに、正確かつ自動で走行時間を記録することが可能になります。
なお、LEDマトリックスの時間表示は、次の仕様とします。
- 『(秒):(1/100秒)』表示とする
- 秒の表示範囲は0~59秒とし、60秒以降は0にリセットされて再びカウントアップさせる
使用するツール
- mBot(×2台)
- ライントレースをするmbot
- ストップウォッチ機能を担う計測用mbot
- LEDマトリックスモジュール
- PC、またはタブレット
- 『mBlock』をインストールしたもの
※ストップウォッチ機能を学習することに関しては、mBotが1台あれば可能です。
タイマーの計測には赤外線センサーを用いる必要はなく、ボタン操作でも実現できます。
プログラムの構築
制御方法の概要
今回の課題の大まかな処理の流れは、次のようになります。
- 赤外線センサーが走行車両のスタートを検知
- タイマー機能をスタート
- 『秒』『1/100秒』を計算し、LEDマトリックスに表示・更新
- 赤外線センサーが走行車両のゴールを検知
- その時点の計測時間を、LEDマトリックスに固定表示

赤外線センサーでの検出方法
この課題では、mBotの前方に取り付けられた赤外線センサーを使って、ライントレース用mBotがスタート地点・ゴール地点を通過したことを検出します。
これにより、ストップウォッチの開始と停止のタイミングを自動で制御します。