帝京大学 山根様
モータドライバ開発者の渡辺です。
パラメータファイルの MOTOR_VC (モータの逆起電力係数) の値が i-Cart mini のモータ仕様と異なった(大きな)値になっているようです。
下記 i-Cart mini のページに掲載しているパラメータファイルを用いた場合のロボットの挙動をご確認いただけますか。
http://t-frog.com/products/icart_mini/MOTOR_VC の値が実機の特性よりも大きい場合、モータの逆起電力の補償が不足した状態になりますが、低速ではPI制御により速度制御がかかります。
速度が大きくなると逆起電力補償の不足が大きくなるため、PI制御による制御量が大きくなり、トルク制限機能で頭打ちになります。
トルク制限がかかった際の速度は、モータによって個体差(摩擦の差)があるため、曲がったり、旋回することがあります。
渡辺
2015年8月5日 20:23 Ken Yamane <
yamane at ics dot teikyo-u dot ac dot jp
>:
> お世話になっております.
> 帝京大学の山根と申します.
>
> 早速ですが,i-Cart miniについて,最大速度の指定によってはうまく「直線追従」や「方位指令の
> 走行」ができない場合があります.
> 具体的には,Spur_set_vel()に与える引数を,0.3[m/s]程度とすると問題ないのですが,0.4~
> 0.5[m/s]にすると左側に曲がり,さらに0.6[m/s]以上にすると左旋回します.
> 原因としてはどのようなことが考えられますでしょうか.
>
> ・うまく走行できない場合でもエンコーダの値は正しい値がとれています.
> ・左右共にタイヤの変形などもありません.
> ・直線追従の過渡期かと考え平坦な直線上を10mほど走らせましたが,そうではないようです.
> ・最大加速度は1.5~0.1[m/ss]で試しました.
>
> また,使用しているパラメータは以下のとおりです.
>
> VERSION 4
> COUNT_REV 400
> VOLT 24
> CYCLE 0.001
> GEAR 75
> MOTOR_R 0.75
> MOTOR_PHASE 3
> TORQUE_FINENESS 0.000001
> RADIUS[0] -0.07455
> RADIUS[1] 0.07455
> TREAD 0.30737
> CONTROL_CYCLE 0.015
> TORQUE_MAX 0.05
> TORQUE_LIMIT 0.4
> MAX_VEL 0.9
> MAX_W 3.14
> MAX_ACC_V 1.5
> MAX_ACC_W 6.28
> MAX_CENTRI_ACC 2.45
> L_C1 0.01
> L_K1 800
> L_K2 300
> L_K3 200
> L_DIST 0.6
> INTEGRAL_MAX 0.05
> MOTOR_VC 1030.0
> MOTOR_TC 0.01515
> MOTOR_M_INERTIA 0
> TIRE_M_INERTIA 0.02
> MASS 10
> MOMENT_INERTIA 0.1
> GAIN_KP 120
> GAIN_KI 300
> TORQUE_VISCOS 0.00001
> TORQUE_NEWTON 0.00200
>
> --------------------
> 帝京大学 理工学部
> 情報電子工学科(旧:ヒューマン情報システム学科)
> 山根 健