IMG_4917

MONOXIT の無線ロボット MI100ちゃんとしたライントレースをやってみようと思い、最小限の改造をしてみました。

(2014.11.25 追記;
 外部にLEDライトを取り付けなくてもライントレースできるようにしました。
→・無線ロボット MI100改 でライントレースをやってみた(決定版?)


まず、光センサーが MI100 の上面に付いているのが問題なので、基盤を下向きにひっくり返すことにしました。さらに、光センサーの位置はなるべく先端に近い方が方向制御がしやすいので、モーター(車輪)の位置よりも前に取り付けることにしました。

MI100 は両面テープで組み立ててあるだけなので、改造といっても各部品を剥がして、もう一度貼り付け直すだけです。あと、先端が重くなって後ろが浮いてしまうので、適当な重りを最後部にくっつけます。

ただし、光センサーを下向きにしただけでは、暗すぎて床面の明るさの差を測定できないので、どうしても照明が必要です。基盤に付いている LEDが使えないかとも考えたのですが、現状では難しそうなので、LEDライトを100円ショップで買ってきて取り付けることにしました。

こうして、部品としては(ほぼ)LEDライトの追加だけで「MI100改 ライントレーサー」の完成です!


そこで、すごく安直なプログラムを Ruby で書いて試しに動かしてみました。
これがなんとちゃんとライン通りに動いてくれるじゃないですか〜

そのライントレースの様子です;




その時のプログラムです;
------------------------------------------------------------------------------------------
require "mi100"

robo = Mi100.new "/dev/tty.RNBT-BB24-RNI-SPP"  #ブルートゥースの接続COM名は自分のものを

robo.good
puts robo.power

robo.speed 200
dark = 10   #黒と白の閾値は実際に測って決める

loop do
  bright = robo.light
  puts bright
  if bright >= dark
    robo.turn_right! 30
  else
    robo.turn_left! 30
  end
end

robo.speed
robo.close
------------------------------------------------------------------------------------------

これで、いろいろ遊べそう 


(2014.11.26 追記;
 MONOXITさんのページで紹介していただきました。
→・MI100でライントレースカーの記事のご紹介 - MONOXIT )

⚪︎関連記事;
→・Rubyで動かす無線ロボット MI100 の設定法(Mac編、Windows編)
→・Rubyで動かす無線ロボット MI100 の命令一覧とその追加
→・無線ロボット MI100 でライントレース(もどき)をやってみた
→・無線ロボット MI100改 でライントレースをやってみた(決定版?)
→・無線ロボット MI100 のファームウェアを書き換えてみた
→・無線ロボット MI100改 のファームウェアでライントレースをやってみた
→・MI100 でライントレースをする設定(Windows編、Mac編)
→・「MI100ロボットでライントレース大会」のスライドを公開しました