Skip to content

21_ON OFF制御

tetsu00 edited this page Apr 3, 2020 · 5 revisions

21.1. 目標の確認

11_ロボットを動かしてみる12_複雑な入力を入れる では大体入力した通りにロボットが動きました。
しかしこのような決め打ちではフィールドを事前に把握していなければゴールまでロボットを走らせることはできません。
そこでセンサを用いてロボットに状況を判断させます。

21.2. ONOFFでライントレース

21.2.1.

ロボットに光センサを搭載させ、ラインに沿って走るライントレースから始めます。
最初は単純に左右のモータをON-OFFさせます。
具体的には、ライン上に光センサがないとき右モータだけを正転させ、ライン上に光センサがあるとき左モータだけを正転させます。

光センサの状態 モータの状態
白(ライン外) 右モータ正転
黒(ライン上) 左モータ正転

21.2.2. 準備

それでは準備をしましょう。
フィールドは直線のコースを選びます。
13_センサの利用に従ってロボットの中心から見て(100,0)の位置に光センサを1つ取り付けます。
controller.mを次のように変更します。

u = [0.4; 0];
    if value_light_sensor(1,1) >100  % ライン外に光センサがある
        u = [0; 0.4];
    end
    disp(value_range_sensor(1,1));

21.2.3 実行

実行しましょう。
ラインから離れずにロボットが走ったと思います。

演習

  • uの中身を変えていろいろ遊んでみましょう。

前のページ | 次のページ

Clone this wiki locally