スタジオ ミュウ

CDSを使ったライントレースロボット


◆安価な光センサー(CDS)を使ったライントレースロボット
CDSは、25円から100円ぐらいで入手できます。これを2個使いMYUロボ基盤の入力ポート(In2とIn3)に接続しラインを感知します。
CDSは光があたると抵抗値が下がります。このためCDSが黒ラインを感知した場合、入力ポートはHight(入力なし)に、ラインではない場合はLow(入力あり)になります。
プログラムは、この入力ポートの状態を判断して作っていきます。また、ロボットがコースアウトしないよう前進のスピードを抑えるプログラム(PWM制御)になっています。
なおCDSには、じゃまな光を遮断するためヒシチューブ(熱収縮チューブ)を被せ、感度調節は床からCDSの高さで調節します。

★このロボットの動きは、こちらをご覧ください。 動画(2.2M)

<使用パーツ>
MYU-528 ミュウロベルト基本セット 3,456円(8%税込)
●CDS、2個 (25円から100円ぐらい)
●直径7mmぐらいのヒシチューブ(熱収縮チューブ)
●0.5Φぐらいのスズメッキ線

<プログラム例>
//CDSを使ったライントレース(MYU BASIC)

Do
  If In(2) Then
    右回り
  ElseIf In(3) Then
    左回り
  Else
    前進
    WT 10  //大きいと前進が早くなる
    停止
    WT 2  //大きいと前進が遅くなる
  EndIf
Loop
Proc WT(C)    //引数Cだけ待つ
  Do While C
    --C
  Loop
EndProc

//CDSを使ったライントレース(構造化ドリトル)
ロボ太=MYU!"com1"作る。
ロボ太:転送命令=「!はじめロボット
「!
  「!2 入力なし」なら
    「!右回り」
  そうでなければ「!3 入力なし」なら
    「!左回り」
  そうでなければ
    「!前進
      「!時間」10 繰り返す  //大きいと前進が早くなる
      停止
      「!時間」2 繰り返す  //大きいと前進が遅くなる
     」実行
」繰り返す
おわりロボット」。
ロボ太!転送命令。

//CDSを使ったライントレース(myurobo.exe)
アンカー,10
  入力ありジャンプ,11,2 //In2が白なら11にジャンプ
  右回り
  ジャンプ,10
アンカー,11
  入力ありジャンプ,12,3 //In3が白なら12にジャンプ
  左回り
  ジャンプ,10
アンカー,12
  前進
  ブロック繰り返し,10,10  //大きいと前進が早くなる
  停止
  ブロック繰り返し,10,2  //大きいと前進が早くなる
ジャンプ,10
ブロックはじめ,10
    //WAIT
ブロックおわり