超音波センサーを使って
障害物をよけながら走らせる




トランスミッター 送信機
レシーバー 受信機
 mBotの右目のトランスミッター(送信機)から超音波を出して、障害物
に跳ね返ってきたら左目のレシーバー(受信機)で受け取っている。





<問題>mBotはなぜ障害物までの距離を設定すればその距離に到達すると、
よけて走ったり停止したりする事が出来るのか。




次のプログラム(Scratch)を実行させたのが、mBotの動画の様子です

 障害物までの距離が20cmになれば
障害物ををよけながら走る
障害物までの距離が10cmになれば
ブザーで危険を知らせ停止する
障害物までの距離が10cmになれば
LEDライト(赤色)で危険を知らせ停止する 
   




 

プログラム(Scratch)の説明
 もし、mBotから障害物までの距離が20cm未満になったら
例えば、1と2の目しかないサイコロを振って、1の目が
出たときは「はい」、そうでないときは「いいえ」の様に考える。
 この考え方をもとにして、1の目が出たら右折し、
そうでなければ左折にするようにする。これを繰り返し、
障害物までの距離が20cm以上あれば、前向きに50%
の速さで動く。








 
プログラム(Scratch)の説明
 もし、mBotから障害物までの距離が10cm未満になったら
停止し、ブザーを0.5秒鳴らす。
 障害物までの距離が10cm以上であれば、前向きに
50%の速さで動く。












Scratch言語の説明
 もし、mBotから障害物までの距離が10cm未満になったら
停止し、LEDライト(赤色)を点滅し停止する
障害物までの距離が10cm以上であればLEDライト(緑色)を
点灯しながら前向きに50%の速さで動く。















戻 る