クローラー制御RTCの仕様
クローラー制御RTコンポーネント
RTC名
CrawlerController
DataOutPort
名称 | データ型 | 説明 |
pos | RTC::TimedPose2D | センサ情報から計算した現在位置、姿勢(位置の計測は実装できていないので左右モーターの電圧が正の場合は前進、負の場合は後退するようにしてある) |
out0 | RTC::TimedDouble | 左モーターへ入力する電圧のPWMデューティー比 |
out1 | RTC::TimedDouble | 右モーターへ入力する電圧のPWMデューティー比 |
DataInPort
名称 | データ型 | 説明 |
acc | RTC::TimedAcceleration3D | 加速度センサの計測値 |
magn | RTC::TimedDoubleSeq | 地磁気センサの計測値 |
gyro | RTC::TimedAngularVelocity3D | 角速度センサの計測値 |
range0 | RTC::TimedDouble | 距離センサ(右前)の計測値 |
range1 | RTC::TimedDouble | 距離センサ(左前)の計測値 |
range2 | RTC::TimedDouble | 距離センサ(右後)の計測値 |
range3 | RTC::TimedDouble | 距離センサ(左後)の計測値 |
in0 | RTC::TimedDouble | 左モーターへ入力する電圧のPWMデューティー比 距離センサによる回避運動をする場合はこの入力値を補正する |
in1 | RTC::TimedDouble | 右モーターへ入力する電圧のPWMデューティー比 距離センサによる回避運動をする場合はこの入力値を補正する |
コンフィギュレーションパラメータ
名称 | 型 | デフォルト値 | 説明 |
gyroSensor | int | 0 | 1の時はジャイロセンサを使用する |
FrontRangeSensor | int | 1 | 1の時は前方に取り付けた距離センサを使用する |
BackRangeSensor | int | 1 | 1の時は後方に取り付けた距離センサを使用する |
AccelerationSensor | int | 1 | 1の時は加速度センサを使用する |
MagneticSensor | int | 1 | 1の時は地磁気センサを使用する |
bias | double | 1.0 | 障害物が近づいた場合にどの程度旋回を行うか?値が大きくなるほど旋回しやすくなります。 |
frontDistance | double | 0.5 | 回避運動を開始する障害物までの最長距離 |
backDistance | double | 0.1 | 回避運動を開始する障害物までの最短距離。この値より近い距離に障害物があっても回避運動を行いません |
filter | double | 0.05 | この値が大きいほど余分な回避運動が小さくなります。 |
rotOffset | double | 3.64 | センサの計測値から計算した姿勢角へのオフセット |
rotCorVal | double | 0.3 | 直進する際に真っ直ぐに動くように計測した姿勢の変化した方向に抗う方向に回転する補正をかけるようにしています。このパラメータは姿勢の変化量にかける係数です。 |
mr | double | 0.2 | 地磁気センサの計測値でのIIRフィルタの係数 |
ar | double | 0.2 | 加速度センサの計測値でのIIRフィルタの係数 |
gr | double | 1.0 | ジャイロセンサの計測値でのIIRフィルタの係数 |
r | double | 0.8 | 相補フィルタの係数 |