衝突回避支援
CONNECT(結びつける)
次の質問にすべて答えられるようにしましょう: - 車が障害物にぶつかる状況にはどのようなものが考えられますか? - 障害物との衝突を避けるためには、どのような要因に気をつければよいでしょうか? - 人口の多い地域で交通渋滞の原因となるのはどんなことでしょうか?これまでに学んだことについて考え、記録しましょう。自分の言葉で問題を説明します。自分のアイデアや発見したことをいろいろな方法で記録しましょう。
Construct(組み立てる)
組み立て まずはこのモデルを組み立てます。
プログラム 車輪つきロボットが前進(または後退)している際に道にある障害物を検出できるようなプログラムを作りましょう。20 cm 未満の距離に障害物を検出したら、ロボットが停止するようにします。これまでに学んだことについて考え、記録しましょう。このタスクの擬似コードについて説明してください。自分のアイデアや発見したことをいろいろな方法で記録しましょう。下のブロックをプログラムに使う方法を考えてください:
CONTEMPLATE(よく考える)
道路で車を運転しているとき、運転手は道に障害物を見つけると速度を落として停車します。車輪つきロボットが同じ動作をするようにプログラムしましょう。もし超音波センサーが: - 10 cm 未満の距離に障害物を検出したら、ロボットを停止させます - 10~20 cm の距離に障害物を検出したら、ロボットを減速させます - 何も検出されない場合はそのまま最高速度で前進させますこれまでに学んだことについて考え、記録しましょう。このタスクの擬似コードについて説明してください。自分のアイデアや発見したことをいろいろな方法で記録しましょう。
発展オプション 他のすべてのグループと集まりましょう。作ったロボットを(渋滞している車の列のように)ランダムな間隔をあけて一列に並べます。同時にプログラムを開始して、何が起こるかを観察しましょう。すべてのロボットが(順調に進んでいる車の列のように)同じ速度で前進し、車間距離を保つようにプログラムを調整してください。発表する 下のような質問をしてみてください:「プログラミングの効率性」とはどういう意味ですか?クラス全体でいくつのバリエーションを考えることができましたか?問題に対するいろいろな解決方法を比較してみましょう。これまでに学んだことについて考え、記録しましょう。自分のアイデアや発見したことをいろいろな方法で記録し、発表しましょう。
Continue(さらに続ける)
このアクティビティの課題に使えるテキストベースのプログラミング言語について調べ、異なるプログラミング言語を用いた解答例を比較しましょう。