クローラー制御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 |