Signed-off-by: myperworld <myperworld@126.com>
This commit is contained in:
1 parent
44a44cf4a8
commit
a51ce62996
1 file changed
+1
-8
@@ -87,20 +87,15 @@ const CRGB breathColor = CRGB::Blue; // 呼吸灯固定颜色:蓝色
|
|||||||
#define pi 3.1415927
|
#define pi 3.1415927
|
||||||
|
|
||||||
// 舵机位置限制参数
|
// 舵机位置限制参数
|
||||||
#define SERVO_DEAD_ZONE 5 // 设置死区阈值 最小更新间隔(ms)
|
|
||||||
#define LEG_HEIGHT_BASE 20 //20 腿部默认高度基准值,值越小,机身越高, 实测范围 -10(最高),52(最低)
|
#define LEG_HEIGHT_BASE 20 //20 腿部默认高度基准值,值越小,机身越高, 实测范围 -10(最高),52(最低)
|
||||||
#define SERVO0_MIN 2048 // 舵机1最低位置,大腿与小腿碰到一起, 从小车正面看右手边舵机
|
#define SERVO0_MIN 2048 // 舵机1最低位置,大腿与小腿碰到一起, 从小车正面看右手边舵机
|
||||||
#define SERVO1_MIN 2048 // 舵机2最低位置,大腿与小腿碰到一起, 从小车正面看左手边舵机
|
#define SERVO1_MIN 2048 // 舵机2最低位置,大腿与小腿碰到一起, 从小车正面看左手边舵机
|
||||||
#define SERVO0_MAX (2048 + 12 + 8.4 * (35 + 10)) // 2438 舵机1最高
|
#define SERVO0_MAX (2048 + 12 + 8.4 * (35 + 10)) // 2438 舵机1最高
|
||||||
#define SERVO1_MAX (2048 - 12 - 8.4 * (35 + 10)) // 1658 舵机2最高
|
#define SERVO1_MAX (2048 - 12 - 8.4 * (35 + 10)) // 1658 舵机2最高
|
||||||
// int SERVO0_ADJUEST = -50; // 舵机1位置偏移量, 正数升高,负数降低
|
|
||||||
// int SERVO1_ADJUEST = 0; // 舵机2位置偏移量,正数降低, 负数升高
|
|
||||||
float leg_position_add = 0; // roll轴平衡控制量
|
float leg_position_add = 0; // roll轴平衡控制量
|
||||||
int left_height;
|
int left_height;
|
||||||
int right_height;
|
int right_height;
|
||||||
float LegHeightDiff = 0; // 左右腿高度差
|
float LegHeightDiff = 0; // 左右腿高度差
|
||||||
int lastPosition0 = SERVO0_MIN;
|
|
||||||
int lastPosition1 = SERVO1_MIN;
|
|
||||||
|
|
||||||
// 舵机运动参数
|
// 舵机运动参数
|
||||||
byte ID[2] = {1, 2};
|
byte ID[2] = {1, 2};
|
||||||
@@ -108,7 +103,6 @@ s16 Position[2];
|
|||||||
u16 Speed[2];
|
u16 Speed[2];
|
||||||
byte ACC[2];
|
byte ACC[2];
|
||||||
|
|
||||||
|
|
||||||
// 腿部高度逻辑
|
// 腿部高度逻辑
|
||||||
// #define LEG_HEIGHT_BASE 20 # 固定值
|
// #define LEG_HEIGHT_BASE 20 # 固定值
|
||||||
// float LegHeightDiff ; # 根据前后转向运动时,智能计算两腿高度差
|
// float LegHeightDiff ; # 根据前后转向运动时,智能计算两腿高度差
|
||||||
@@ -929,9 +923,8 @@ void yaw_loop()
|
|||||||
// 增加灯光效果
|
// 增加灯光效果
|
||||||
updateBreathLED(abs(wrobot.joyx)); // 传入joyx绝对值,控制呼吸节奏
|
updateBreathLED(abs(wrobot.joyx)); // 传入joyx绝对值,控制呼吸节奏
|
||||||
|
|
||||||
}else{
|
|
||||||
yaw_angle_control_coeff = map( abs(wrobot.joyx), 0, 100, 1.0, 1.5);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
float yaw_angle_control = pid_yaw_angle(yaw_target) * yaw_angle_control_coeff;
|
float yaw_angle_control = pid_yaw_angle(yaw_target) * yaw_angle_control_coeff;
|
||||||
// 限制yaw_angle_control上限,避免超压(按电机7.4V反推,设为12较合适)
|
// 限制yaw_angle_control上限,避免超压(按电机7.4V反推,设为12较合适)
|
||||||
yaw_angle_control = constrain(yaw_angle_control, -12.0f, 12.0f);
|
yaw_angle_control = constrain(yaw_angle_control, -12.0f, 12.0f);
|
||||||
|
|||||||
Reference in new issue
Block a user