新手入门
- 积分
- 12
- 金钱
- 12
- 注册时间
- 2018-6-22
- 在线时间
- 4 小时
|
楼主 |
发表于 2020-6-28 19:42:36
|
显示全部楼层
本帖最后由 xjdb8 于 2020-6-28 19:50 编辑
void powerControl(control_t *control) /*功率输出控制*/ {
s16 r = control->roll / 2.0f;
s16 p = control->pitch / 2.0f;
control->yaw = -control->yaw; /* 添加此行代码 方向自动旋转 调整PID 无效时,需要添加此代码 */
motorPWM.m1 = limitThrust(control->thrust - r - p + control->yaw);
motorPWM.m2 = limitThrust(control->thrust - r + p - control->yaw);
motorPWM.m3 = limitThrust(control->thrust + r + p + control->yaw);
motorPWM.m4 = limitThrust(control->thrust + r - p - control->yaw);
if (motorSetEnable)
{
motorPWM = motorPWMSet;
}
motorsSetRatio(MOTOR_M1, motorPWM.m1); /*控制电机输出百分比*/
motorsSetRatio(MOTOR_M2, motorPWM.m2);
motorsSetRatio(MOTOR_M3, motorPWM.m3);
motorsSetRatio(MOTOR_M4, motorPWM.m4);
}
|
|