This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/TMS320F2.8069万F:如何更改gMotorVars.KP_SPD和gMotorVars.MaxAccel_krpmps?

Guru**** 2582405 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/653555/ccs-tms320f28069f-how-to-change-gmotorvars-kp_spd-and-gmotorvars-maxaccel_krpmps

部件号:TMS320F2.8069万F

工具/软件:Code Composer Studio

您好,

我的自定义主板上运行着instaSpin FOC, 软件运行良好,连接了调试器,可以在笔记本上工作5b。  

根据我的实验, 我想更改代码中的以下两个参数,这样我就不需要外部调试器来在每次运行电机时更改它们。

gMotorVars.MaxAccel_krpmps是Krpm中的最大加速度,默认情况下为0.2 ,我希望将其更改为3.0 ,但在代码中找不到要更改它的位置

 gMotorVars.KP_SPD默认情况下是使用 项目中的某些参数默认计算的13.7 ,我想将其更改为较低的值,但再次说明,找不到要更改的位置。  

在代码中它应该非常简单,但我搜索了代码,没有找到在Ctrl对象中设置相应两个参数的特定代码。 有什么意见? 谢谢。  

最佳,   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您可以在主循环中添加代码,以将gMotorVars.MaxAccel_krpmps设置为目标加速
    gMotorVars.MaxAccel_krpmps =_IQ (0.3);

    在主循环中将gMotorVars.KP_SPD设置为目标值,该值将在updateKpKiGains()中为速度PI调节器更新,请按如下所示更改updateKpKiGains()。
    gMotorVars.KP_SPD =_IQ (xx.xx);

    void updateKpKiGains (CTRL_handle Handle)

    Ctrl_Obj *obj =(CTRL_Obj *)句柄;

    IF (gMotorVars.CtrlState == CTRL_STATE在线)&&(gMotorVars.Flag_MotorIdentified == true)&&(Flag_Latch_SoftwareUpdate == false))

    //在监视窗口中设置ID和IQ的KP和ki当前值
    Ctrl_setKp (handle,CTRL_Type_PID_ID,gMotorVars.KP_idq);
    Ctrl_setKI (句柄,CTRL_Type_PID_ID,gMotorVars.KI_idq);
    Ctrl_setKp (handle,CTRL_Type_PID_IQ,gMotorVars.KP_idq);
    CTRL_setKI (手柄,CTRL_Type_PID_IQ,gMotorVars.KI_idq);

    pid_setKp (obj->pidHandle_SPD,gMotorVars.KP_SPD);
    pid_setKI(obj->pidHandle_SPD,gMotorVars.KI_SPD);
    }

    返回;
    }// updateKpKiGains()函数结束
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你是的,它马上就能工作。