diff --git a/TaiChi/servoTaiChi.cpp b/TaiChi/servoTaiChi.cpp index a9332e2..94c0d33 100644 --- a/TaiChi/servoTaiChi.cpp +++ b/TaiChi/servoTaiChi.cpp @@ -142,6 +142,14 @@ void Servo::Reset(float speed) } + //放下爪子,指定速度 +void Servo::Down(float speed) +{ + SetActionGroupSpeed(ACTION_DOWN_NUM, speed); + RunActionGroup(ACTION_DOWN_NUM, 1); +} + + //抓取,指定速度 void Servo::Catch(float speed) { @@ -158,6 +166,22 @@ void Servo::Release(float speed) } +//增益点放下爪子,指定速度 +void Servo::GainDown(float speed = SERVO_NORMAL_SPEED) +{ + SetActionGroupSpeed(ACTION_GAINDOWN_NUM, speed); + RunActionGroup(ACTION_GAINDOWN_NUM, 1); +} + + +//增益点抓取,指定速度 +void Servo::GainCatch(float speed = SERVO_NORMAL_SPEED) +{ + SetActionGroupSpeed(ACTION_GAINCATCH_NUM, speed); + RunActionGroup(ACTION_GAINCATCH_NUM, 1); +} + + //停止舵机并恢复初始状态,指定速度 void Servo::StopAndReset(float speed) { diff --git a/TaiChi/servoTaiChi.h b/TaiChi/servoTaiChi.h index d20effe..5fa7bc6 100644 --- a/TaiChi/servoTaiChi.h +++ b/TaiChi/servoTaiChi.h @@ -36,8 +36,11 @@ //动作组 #define ACTION_RESET_NUM 99 -#define ACTION_CATCH_NUM 100 -#define ACTION_RELEASE_NUM 101 +#define ACTION_DOWN_NUM 100 +#define ACTION_CATCH_NUM 101 +#define ACTION_RELEASE_NUM 102 +#define ACTION_GAINDOWN_NUM 103 +#define ACTION_GAINCATCH_NUM 104 //默认动作组速度 @@ -60,8 +63,11 @@ public: void OpenClaw(void); //打开爪子 void Reset(float speed = SERVO_NORMAL_SPEED); //恢复初始状态,指定速度 + void Down(float speed = SERVO_NORMAL_SPEED); //放下爪子,指定速度 void Catch(float speed = SERVO_NORMAL_SPEED); //抓取,指定速度 void Release(float speed = SERVO_NORMAL_SPEED); //释放,指定速度 + void GainDown(float speed = SERVO_NORMAL_SPEED); //增益点放下爪子,指定速度 + void GainCatch(float speed = SERVO_NORMAL_SPEED); //增益点抓取,指定速度 void StopAndReset(float speed = SERVO_NORMAL_SPEED); //停止舵机并恢复初始状态,指定速度 private: