• 2022/12/01
  • ルンバ

Roomba

①ルンバの特性

ルンバの600シリーズは「iRobot® Create® 2 Open Interface」で外部からの指令を与えて走行させることができます。692(693、694も同じ)を使って実験した時の一部を報告します

壁の反射センサ特性

センサは赤外線発光と受光素子がセットで計6ケ配置されている。前進方向左右45度以内に5ケの反射センサ、もう1つは右側位置にある(左右対称ではない)
前方と左右に白い壁を置いて壁間隔を変化させ反射強度(ルンバとiCreateで受信した値)を比較してみました。ルンバは前方の障害物検出と右壁走行に重点を置いたものといえます

【前方壁】

・センサ個体差は前方壁のbとdで見られる。比較すると3cm以内の個体差が大きい

・2cm以下は反射強度が低下するため、3cm~4cm位置にあるのと同じ値になるので正確な壁位置を検出できない

【左壁】

・左側センサはほぼ左壁を検出できないレベル、壁がなくなった事も検出できない

【右壁】

・壁間5cm程度で壁沿い走行はできそうな感じ

モータ速度精度

タイヤを駆動するDCモータには、エンコーダがついていてエンコーダパルス間隔を測定して速度制御をしている模様です。概ねPI制御程度だとおもいますが、1相のみのエンコーダ波形なので正転逆転の位置制御はできません

タイヤの周長      :π・72 [mm]
一周のエンコーダ数:508.8 [pulse]
パルス分解能   :π・72  /508.8 = 0.444565 [mm/pulse]

指示速度を25~300mm/sで変化させて、エンコーダパルスを計測すると実速度が計算できます。その結果100mm/s以下の低速では指示速度に対し大き目の速度で回転しているのがわかりました。また160~180mm/sで速度を変えても実速度に変化がなかったので、「iRobot® Create® 2 Open Interface」での速度設定は1mm/s単位ですが実際には最大20mm/s程度誤差があります

モータ起動と停止遅れ

上のグラフは起動と停止タイミングを表したもので、起動指示からモータへ与えられるPWM信号が発生するまで最大50mm/sの遅れがあるのと、停止指示(走行速度0mm/s)を送ってから、PWM信号が停止するまでの時間遅れが最大150mm/sあります