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.

[参考译文] DRV8301-69M-KIT:一些问题

Guru**** 2595800 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/664787/drv8301-69m-kit-some-questions

部件号:DRV8301-69M-Kit
主题中讨论的其他部件:MOTORWARE

您好,



我正在构建自己的硬件,它应该能够使用大约500A的电流。
我在一些帖子中看到,由于iQ24被限制为+-124,我必须将A更改为Ka,这是正确的吗?
示例:
e2e.ti.com/.../56.3588万


我想在一辆小型汽车(带油门)中使用它,但我不确定应该使用电流控制器还是速度控制器。
您会推荐什么?

目前,当前控制器比速度控制器工作更好,但存在一个小问题。 当我过快地增加IQ)参考时,马达开始抖动,声音也不是很好。
我不知道怎么处理。 我使用lab5a,但调节pid没有太大变化。 我在另一篇文章中看到,坡道可能是一个解决方案。 我知道您可以使用轨迹模块,但我不确定如何,能否有人向我解释一下?

谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    1.在FOC算法中,所有_iQ24变量都是PU,如果您想用单位将PU值转换为实际值,而IQ的整数是不够的,则只需按您所说的那样更改单位。
    2.在汽车器具中,轨迹模块具有与斜坡控制类似的功能,您无需为速度添加额外的斜坡控制。
    3.通常,扭矩控制将用于汽车。 您可以为扭矩控制添加轨迹手柄或您自己的斜坡控制,以更改IQ_ref
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢Yanming

    第一个和第二个现在已经很清楚了! 还有一件事,我尝试为id_ref实现类似11a中的轨迹模块(但在我的例子中为IQ_ref)。 它可以正常工作,但我不确定它是否正确。 请您看一下吗?

    在实验11a中,TRAJ_RUN位于mainISR中,但我有点害怕更改mainISR。


    (图5 a)
    void main (void){

    //初始化ID参考轨迹
    trajHandle_IQ = TRAJ_INIT (&traj_IQ,sizeof (traj_IQ));

    //配置IQ参考轨迹
    TRAJ_setTargetValue (trajHandle_IQ,_IQ (0.0));
    TRAJ_setIntValue (trajHandle_IQ,_IQ (0.0));
    TRAJ_setMinValue (trajHandle_IQ,_IQ (-USER_MOTOR_MAX_CURRENT / USER_IQ) FULL Scale Current_A);
    TRAJ_setMaxValue (trajHandle_IQ,_IQ (USER_MOTOR_MAX_CURRENT / USER_IQ) FULL Scale Current_A);
    TRAJ_setMaxDelta (trajHandle_IQ,_IQ (0.0.0001万));//_IQ (USER_MOTOR_RES_EST_CURRENT / USER_IQ_FULL比例当前A / USER_ISR_FREQ_Hz)



    对于(;;){

    updateIqRef()

    }
    }// main()函数结束


    作废updateIqRef (CTRL_HANDLE句柄)


    (我将IQ_ref更改为gMotorVars.iqref,将它们添加到监视窗口。)


    //为IQ参考设定轨迹目标
    TRAJ_setTargetValue (trajHandle_IQ,gMotorVars.IX_ref);

    //为IQ参考运行轨迹,因此参考更改时使用斜面而不是步长
    TRAJ_RUN (TRAJHandle_IQ);

    //从轨迹模块获取参考值
    gMotorVars.IQ)= TRAJ_getIntValue(TrajHandle_IQ);


    //设置用于从PI速度控制中输出的IQ参考
    Ctrl_setIq_ref_PU (手柄,gMotorVars.Iq_ref);

    返回;
    }// updateIqRef()函数结束
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    对,代码应该很好地实施轨迹控制,如果有任何问题,请告诉我。