Browse Source

发指令时不在左右轮询,解决轮子步调不一致问题

master
Lizongdi 14 hours ago
parent
commit
d4c63a7305
  1. 20
      project/paint_robot_new/paint_robot_new_motors.c

20
project/paint_robot_new/paint_robot_new_motors.c

@ -167,17 +167,13 @@ void MotorTask(void *argument)
{
// 处理消息
MsgCenter_ProcessWait(g_uiMotorModuleID, 2);
for (int i = 0; i < MOTOR_INSTANCE_MAX; i++)
{
if (g_apstMotors[i] != NULL)
{
// 读取位置、速度、故障
MotorMgr_RequestPosition(g_apstMotors[i]);
MotorMgr_RequestFault(g_apstMotors[i]);
MotorMgr_RequestVelocity(g_apstMotors[i]);
MotorMgr_SetTargetSpeed(g_apstMotors[i], g_aiMotorSpeed[i]);
}
}
MotorMgr_RequestPosition(g_apstMotors[0]);
MotorMgr_RequestPosition(g_apstMotors[1]);
MotorMgr_RequestFault(g_apstMotors[0]);
MotorMgr_RequestFault(g_apstMotors[1]);
MotorMgr_RequestVelocity(g_apstMotors[0]);
MotorMgr_RequestVelocity(g_apstMotors[1]);
MotorMgr_SetTargetSpeed(g_apstMotors[0], g_aiMotorSpeed[0]);
MotorMgr_SetTargetSpeed(g_apstMotors[1], g_aiMotorSpeed[1]);
}
}

Loading…
Cancel
Save