mirror of
https://gitee.com/dlmu-cone/bf_original_balance_chassis
synced 2026-07-25 03:47:47 +08:00
复位和急停模式下目标速度置0
This commit is contained in:
@@ -113,7 +113,7 @@ void BalanceInit()
|
|||||||
// 腿长控制
|
// 腿长控制
|
||||||
PID_Init_Config_s leg_length_pid_conf = {
|
PID_Init_Config_s leg_length_pid_conf = {
|
||||||
.Kp = 1200,
|
.Kp = 1200,
|
||||||
.Kd = 200,
|
.Kd = 300,
|
||||||
.Ki = 0,
|
.Ki = 0,
|
||||||
.MaxOut = 60,
|
.MaxOut = 60,
|
||||||
.DeadBand = 0.0001f,
|
.DeadBand = 0.0001f,
|
||||||
@@ -126,7 +126,7 @@ void BalanceInit()
|
|||||||
// roll轴补偿
|
// roll轴补偿
|
||||||
PID_Init_Config_s roll_compensate_pid_conf = {
|
PID_Init_Config_s roll_compensate_pid_conf = {
|
||||||
.Kp = 0.0008f,
|
.Kp = 0.0008f,
|
||||||
.Kd = 0.0001f,
|
.Kd = 0.0002f,
|
||||||
.Ki = 0.0f,
|
.Ki = 0.0f,
|
||||||
.MaxOut = 0.05,
|
.MaxOut = 0.05,
|
||||||
.DeadBand = 0.001f,
|
.DeadBand = 0.001f,
|
||||||
@@ -162,7 +162,7 @@ void BalanceInit()
|
|||||||
// 抗劈叉
|
// 抗劈叉
|
||||||
PID_Init_Config_s anti_crash_pid_conf = {
|
PID_Init_Config_s anti_crash_pid_conf = {
|
||||||
.Kp = 15,
|
.Kp = 15,
|
||||||
.Kd = 1,
|
.Kd = 2,
|
||||||
.Ki = 0.0,
|
.Ki = 0.0,
|
||||||
.MaxOut = 30,
|
.MaxOut = 30,
|
||||||
.DeadBand = 0.001f,
|
.DeadBand = 0.001f,
|
||||||
@@ -227,6 +227,8 @@ static void ResetChassis()
|
|||||||
{
|
{
|
||||||
EnableAllMotor(); // 打开全部电机,关节复位到起始角度,驱动电机响应速度输入以从墙角或固连中脱身
|
EnableAllMotor(); // 打开全部电机,关节复位到起始角度,驱动电机响应速度输入以从墙角或固连中脱身
|
||||||
|
|
||||||
|
// 目标速度置0
|
||||||
|
chassis.target_v = 0;
|
||||||
// 复位时清空距离和腿长积累量,保证顺利站起
|
// 复位时清空距离和腿长积累量,保证顺利站起
|
||||||
chassis.dist = chassis.target_dist = 0;
|
chassis.dist = chassis.target_dist = 0;
|
||||||
l_side.target_len = r_side.target_len = 0.12;
|
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) // 未收到遥控器和云台指令底盘进入急停
|
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;
|
l_side.target_len = r_side.target_len = 0.12;
|
||||||
chassis.dist = chassis.target_dist = 0;
|
chassis.dist = chassis.target_dist = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user