黒線を走れ! micro:Maqueen

7.もうひとつのプログラム

もう一つのライントレースプログラムを考えてみました。
道路を見つける方法も、Maqueenの動き方動き方も同じですが、プログラムが異なります※6

また前章では省略した「道路からはみだしたとき」の動きを追加しました。道路からはみだしたときは、停止するようにしています。

このプログラムでは道路の状態を、「0、1、2、3」の値で区別しています。これは、ラインセンサーの左右の値から、計算式によって求めます※7

道路の状態 = 左の値 + 右の値×2

0 = ラインセンサー左右とも黒  (0 + 0×2 = 0) ・・・道路上
1 = ラインセンサー左が白、右が黒(1 + 0×2 = 1) ・・・右カーブ
2 = ラインセンサー左が黒、右が白(0 + 1×2 = 2) ・・・左カーブ
3 = ラインセンサー左右とも白  (1 + 1×2 = 3) ・・・道路からはみ出た


*6 処理速度がプログラム実行に影響する場合は、プログラムの形が変わると結果が異なることがあります。

*7 ブロックプログラミングで表す式はわかりにくいのですが、つぎのを表しています。
どうろのじょうたい = (ラインセンサー左の値 + (ラインセンサー右の値 × 2 ) )
ブロックで作ると、つぎのような形になりやすいので、注意しましょう。

( ( ラインセンサー左の値 + ラインセンサー右の値 )  ×2)

参考講座
・「小学1年生〜3年生向け講座(2023/11/26)
・「小学4年生〜中学3年生向け講座(2023/10/14)


この教材は「Creative Commons — CC BY-SA 4.0」の下に提供されています。