パラメータ操作コマンド


Functions

void RunCtrl::setStraightRefVel (int mm_sec)
 目標並進速度を設定
void RunCtrl::setStraightRefAcc (int mm_acc)
 目標並進加速度を設定
void RunCtrl::setRotateRefVel (const VXV::Direction &rotate_vel)
 目標角速度を設定
void RunCtrl::setRotateRefAcc (const VXV::Direction &rotate_acc)
 目標角加速度を設定
void RunCtrl::setCurveRadius (int mm)
 追従時の曲率を設定
int RunCtrl::getStraightVel (void)
 並進速度の取得
VXV::Direction RunCtrl::getRotateVel (void)
 回転速度の取得
int RunCtrl::getCurveRadius (void)
 追従時の曲率の設定を取得

Function Documentation

void RunCtrl::setStraightRefVel ( int  mm_sec  )  [virtual, inherited]

目標並進速度を設定

直線追従や円弧追従などで実現しようとする並進速度を設定する

Parameters:
mm_sec [i] 目標並進速度 [mm]
使用例
    RunCtrl run;
    run.connect(argc, argv);

    // 並進速度を 100[mm/sec]に設定する
    run.setStraightRefVel(100);
    run.followLine(VXV::Position(0, 0, deg(0))); // 移動速度は 100[mm/sec]

Implements RunInterface.

Definition at line 10 of file runParameterCtrl.cpp.

void RunCtrl::setStraightRefAcc ( int  mm_acc  )  [virtual, inherited]

目標並進加速度を設定

並進速度の制御に用いられる角速度を設定する

Parameters:
mm_acc [i] 目標加速度 [mm]
使用例
    RunCtrl run;
    run.connect(argc, argv);

    // 並進の加速度を 100[mm/sec^2]に設定する
    run.setStraightRefAcc(100);

    // 移動の加速度は 100[mm/sec^2]
    run.followLine(VXV::Position(0, 0, deg(0)));

Implements RunInterface.

Definition at line 18 of file runParameterCtrl.cpp.

void RunCtrl::setRotateRefVel ( const VXV::Direction rotate_vel  )  [virtual, inherited]

目標角速度を設定

目標角度への追従コマンドや転回コマンドの際に用いられる回転速度を設定する

Parameters:
rotate_vel [i] 目標角速度 [VXV::Direction]
使用例
    RunCtrl run;
    run.connect(argc, argv);

    // 回転角速度を 90[deg/sec]に設定する
    run.setRotateRefVel(deg(90));
    run.rotateAngle(deg(360));  // 回転角速度は 90[deg/sec]

Implements RunInterface.

Definition at line 26 of file runParameterCtrl.cpp.

References RunCtrl::to_div16().

void RunCtrl::setRotateRefAcc ( const VXV::Direction rotate_acc  )  [virtual, inherited]

目標角加速度を設定

回転制御の際に用いられる角加速度を設定する

Parameters:
rotate_acc [i] 目標角加速度 [VXV::Direction]
使用例
    RunCtrl run;
    run.connect(argc, argv);

    // 回転角加速度を 90[deg/sec^2]に設定する
    run.setRotateRefAcc(deg(90));
    run.rotateAngle(deg(360));  // 回転角加速度は 90[deg/sec^2]

Implements RunInterface.

Definition at line 34 of file runParameterCtrl.cpp.

References RunCtrl::to_div16().

void RunCtrl::setCurveRadius ( int  mm  )  [virtual, inherited]

追従時の曲率を設定

推定自己位置が目標経路上にない場合、ここで設定される曲率を保ちながら目標経路に追従しようとする。従って、r が小さいほど急激に転回して経路追従を行い、r が大きければなだらかに目標経路に追従する

follow_curve.png

Parameters:
mm [i] 追従時の曲率 [mm]
使用例
    RunCtrl run;
    run.connect(argc, argv);

    // 追従の曲率を大きめに設定
    run.setCurveRadius(600);

Implements RunInterface.

Definition at line 42 of file runParameterCtrl.cpp.

Referenced by RunCtrl::followCircle().

int RunCtrl::getStraightVel ( void   )  [virtual, inherited]

並進速度の取得

並進速度を取得する

Return values:
並進速度 [mm/sec]
使用例
    RunCtrl run;
    run.connect(argc, argv);

    // 移動速度を表示し続ける
    run.followLine(Position(0, 0, deg(0)));
    while (1) {
      printf("vel: %d\n", run.getStraightVel());
      VXV::Delay(100);
    }

Implements RunInterface.

Definition at line 50 of file runParameterCtrl.cpp.

Referenced by RunCtrl::getStraightVelDiff().

VXV::Direction RunCtrl::getRotateVel ( void   )  [virtual, inherited]

回転速度の取得

回転速度を取得する

Return values:
回転角速度 [VXV::Direction]
使用例
    RunCtrl run;
    run.connect(argc, argv);

    // 移動速度を表示し続ける
    run.spin(deg(90));
    while (1) {
      printf("vel: %d\n", run.getRotateVel().to_deg());
      VXV::Delay(100);
    }

Implements RunInterface.

Definition at line 59 of file runParameterCtrl.cpp.

References VXV::Direction::rad().

Referenced by RunCtrl::getRotateVelDiff().

int RunCtrl::getCurveRadius ( void   )  [virtual, inherited]

追従時の曲率の設定を取得

現在の設定されている追従時の曲率の値を取得する

Return values:
追従時曲率の設定値 使用例
    RunCtrl run;
    run.connect(argc, argv);

    // 現在の曲率設定を取得して表示
    printf("curve radius: %d\n", run.getCurveRadius());

Implements RunInterface.

Examples:
lines.cpp.

Definition at line 68 of file runParameterCtrl.cpp.


Generated on Mon Apr 13 22:52:07 2009 by  doxygen 1.5.7.1