STM32
直播中

wufan931111

10年用户 1140经验值
擅长:370217
私信 关注
[问答]

NUCLEO-F303RE如何从位置模式切换到速度模式?

测试环境:
控制板:NUCLEO-F303RE

Power Board:NUCLEO-IHM07M1

BLDC motor ,增加了编码器



现在位置模式下,可以正常跑,

main函数里


MC_StartMotor1();

  /* USER CODE END 2 */



  /* Infinite loop */

  /* USER CODE BEGIN WHILE */


while(MC_GetAlignmentStatusMotor1()!=TC_ALIGNMENT_COMPLETED){}



while (1)

{

    /* USER CODE END WHILE */



    /* USER CODE BEGIN 3 */

MC_ProgramPositionCommandMotor1(3.14*2,0.1);

HAL_Delay(1000);

MC_ProgramPositionCommandMotor1(-3.14*2,0.1);

HAL_Delay(1000);

}



现在想切换到速度模式:

MC_ProgramSpeedRampMotor1(600/6,1000);  //无法切换,还是位置模式


//MC_ProgramTorqueRampMotor1(5000,0);   //力矩模式也无法切换,但在st motor cotrol workbench中,可以力矩模式,这个也同样不解


查看定义

typedef enum

{

  STC_TORQUE_MODE, /**< @brief Torque mode.*/

  STC_SPEED_MODE   /**< @brief Speed mode.*/

} STC_Modality_t;

//只有2种模式,是需要自己增加POSITION MODE么?

哪位遇到过这种情况,


回帖(1)

刘龙飞

2024-3-27 09:34:48
在现有的框架下,如果是在电机的运行过程中从位置模式切换到速度模式是不行的 ,必须在电机停止的时候设置为速度模式 
举报

更多回帖

发帖
×
20
完善资料,
赚取积分