移動式ロボットプログラミング基礎

5. 距離センサ

1. 距離センサの利用

Sharp GP2D120

40cm まで測定可能です.

0-4cm間と,4cm-40cm間で同一値を取るため,4cm-40cmの間のみで使うべきです.

対象物までの距離が4cm以下に近づいた的は,離れていっているように感じるため注意が必要です.

また,Robotino のAD変換器の関係で,電圧の最大値が2.55Vまでしか測定できません.そのため,2cm-4cm間は同一値となります.

※オンラインヘルプは,robotino_distancesensor_exampleを参照して下さい.

2. プログラミング課題

距離センサの値を使おう

以下のプログラムを作ってみましょう.

    1. 障害物を見つけたら停止
    2. 壁に沿って移動

3. 課題の解説

距離センサの値を使おう

1つめの課題は,IR1を使います.

2つめの課題は,IR2とIR9を使います.

距離センサの出力値(電圧)をそのまま用いても課題を達成することができますが,今後のことを考えると電圧から距離に変換することを勧めます.

4. センサの利用2

ベクトル演算

壁は,ベクトル演算を使うことで判定できます.

5. プログラミング課題

ベクトルを使ってみよう

壁の角度を計算して,以下のプログラムを作ってみましょう.

    1. 平行移動してみる
    2. 壁が背中になるように回転する

6. 課題の解説

平行移動してみる

平行移動してみるの解説です.

左側のセンサIR3とIR4,右側のセンサIR7とIR8を使います.

障害物が存在しないときは,40cmの値が返ってきます.

そのままベクトルを作成すると,10度と170度の状態です(10度分ズレています).


次に進むには,■こちら■をクリックして下さい.