クローラー制御RTCの仕様

クローラーの制御を行うRTCです。

RTC名

CrawlerControllerPWM2

DataOutPort

名称 データ型 説明
gyro RTC::TimedAngularVelocity3D ジャイロセンサーの計測値
range0 RTC::TimedDouble 距離センサ(右前)の計測値
range1 RTC::TimedDouble 距離センサ(左前)の計測値
range2 RTC::TimedDouble 距離センサ(右後)の計測値
range3 RTC::TimedDouble 距離センサ(左後)の計測値
acc RTC::TimedAcceleration3D 加速度センサの計測値
magn RTC::TimedDoubleSeq 地磁気センサの計測値
temp RTC::TimedDouble 温度センサの計測値
pos RTC::TimedPose2D センサ情報から計算した現在位置、姿勢(位置の計測は実装できていないので左右モーターの電圧が正の場合は前進、負の場合は後退するようにしてある)

DataInPort

名称 データ型 説明
in0 RTC::TimedDouble 左モーターへ入力する電圧のPWMデューティー比
in1 RTC::TimedDouble 右モーターへ入力する電圧のPWMデューティー比

コンフィギュレーションパラメータ

名称 デフォルト値 説明
motor0pwm0 int 3 右モーター制御用TA8428KのIN1に接続するピン番号
motor0pwm1 int 5 右モーター制御用TA8428KのIN2に接続するピン番号
motor1pwm0 int 6 左モーター制御用TA8428KのIN1に接続するピン番号
motor1pwm1 int 9 左モーター制御用TA8428KのIN2に接続するピン番号
gyroSensor int 1 1の時はジャイロセンサを使用する
gyroSensor_addr string 0x6A L3GD20のI2Cスレーブアドレス
rangeSensor0 int 1 1の時は距離センサ(右前)を使用する
rangeSensor1 int 1 1の時は距離センサ(左前)を使用する
rangeSensor2 int 1 1の時は距離センサ(右後)を使用する
rangeSensor3 int 1 1の時は距離センサ(左後)を使用する
rangeSensor0_Pin int 2 距離センサ(右前)の信号線と接続するアナログ入力ピンの番号
rangeSensor1_Pin int 3 距離センサ(左前)の信号線と接続するアナログ入力ピンの番号
rangeSensor2_Pin int 0 距離センサ(右後)の信号線と接続するアナログ入力ピンの番号
rangeSensor3_Pin int 1 距離センサ(左後)の信号線と接続するアナログ入力ピンの番号
LSM303DLHC int 1 1の時はLSM303DLHCを使用する
I2C_channel int 1 I2Cのポート番号
bias double 1.0 障害物が近づいた場合にどの程度旋回を行うか?値が大きくなるほど旋回しやすくなります。
frontDistance double 0.5 回避運動を開始する障害物までの最長距離
backDistance double 0.1 回避運動を開始する障害物までの最短距離。この値より近い距離に障害物があっても回避運動を行いません
filter double 0.05
rotOffset double 0.5 地磁気センサの計測値から計算した姿勢角へのオフセット
rotCorVal double 15