复位和急停模式下目标速度置0

This commit is contained in:
kai
2024-05-09 21:25:41 +08:00
parent 9c141e4310
commit 987d7c9b68

View File

@@ -113,7 +113,7 @@ void BalanceInit()
// 腿长控制
PID_Init_Config_s leg_length_pid_conf = {
.Kp = 1200,
.Kd = 200,
.Kd = 300,
.Ki = 0,
.MaxOut = 60,
.DeadBand = 0.0001f,
@@ -126,7 +126,7 @@ void BalanceInit()
// roll轴补偿
PID_Init_Config_s roll_compensate_pid_conf = {
.Kp = 0.0008f,
.Kd = 0.0001f,
.Kd = 0.0002f,
.Ki = 0.0f,
.MaxOut = 0.05,
.DeadBand = 0.001f,
@@ -162,7 +162,7 @@ void BalanceInit()
// 抗劈叉
PID_Init_Config_s anti_crash_pid_conf = {
.Kp = 15,
.Kd = 1,
.Kd = 2,
.Ki = 0.0,
.MaxOut = 30,
.DeadBand = 0.001f,
@@ -227,6 +227,8 @@ static void ResetChassis()
{
EnableAllMotor(); // 打开全部电机,关节复位到起始角度,驱动电机响应速度输入以从墙角或固连中脱身
// 目标速度置0
chassis.target_v = 0;
// 复位时清空距离和腿长积累量,保证顺利站起
chassis.dist = chassis.target_dist = 0;
l_side.target_len = r_side.target_len = 0.12;
@@ -279,6 +281,8 @@ static void WokingStateSet()
}
else if (chassis_cmd_recv.chassis_mode == CHASSIS_ZERO_FORCE) // 未收到遥控器和云台指令底盘进入急停
{
// 目标速度置0
chassis.target_v = 0;
// 清空腿长和距离
l_side.target_len = r_side.target_len = 0.12;
chassis.dist = chassis.target_dist = 0;