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.

LAUNCHXL-F28379D: C2000™︎ 微控制器论坛

Part Number: LAUNCHXL-F28379D
Other Parts Discussed in Thread: DRV8301

我用的是主控LAUNCHXL-F2837D 驱动板是drv8301—REVB  在进行用户指南移植过后,在根据指南中第一级增量构建中三相PWM占空比不等于50% CMPA不等于TBPRD的一半,还有电压偏执不等于0 。为什么?

  • 你好,

    在进行用户指南移植过后

    具体是哪一个文件?

  • 你好,请问一下说这个具体文件是问的用户指南吗?还是程序文件? 用户指南是这个链接Universal Motor Control Project and Lab User’s Guide (ti.com.cn),程序文件是用的C2000motorcontrol/solution/universal_lab

  • 你是如何进行移植的?这个文件似乎没有提到移植相关的内容。

  • 你所用的例程是基于280025C的,并不能直接用在28379D上。

  • 你好 这个文档有相关的讲解 关于将代码移植到其他C2000MCU 和移植到其他相关驱动板

  • 我咨询下相关资深工程师后回复您。

  • 你好 麻烦一下 可不可以快点回复

  • 你好,你用的具体是哪一个例程?

    你根据相关资料正确配置了PWM吗?看起来似乎没有。

  • 你好 我是根据User’s Guide Motor Control SDK Universal Project and Lab 这个文档对 建立关于f28379d的工程 ,我个人也是也认为i是pwm配置出现了问题,我去掉驱动器,只用控制板去测量引脚输出的pwm的电压显示为0。

    下面是我修改的相关部分的代码

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    void HAL_setupPWMs(HAL_MTR_Handle handle)
    {
    HAL_MTR_Obj *obj = (HAL_MTR_Obj *)handle;
    uint16_t cnt;
    uint16_t pwmPeriodCycles = (uint16_t)(USER_M1_PWM_TBPRD_NUM);
    uint16_t numPWMTicksPerISRTick = USER_M1_NUM_PWM_TICKS_PER_ISR_TICK;
    // disable the ePWM module time base clock sync signal
    // to synchronize all of the PWMs
    SysCtl_disablePeripheral(SYSCTL_PERIPH_CLK_TBCLKSYNC);
    // turns off the outputs of the EPWM peripherals which will put the power
    // switches into a high impedance state.
    EPWM_forceTripZoneEvent(obj->pwmHandle[0], EPWM_TZ_FORCE_EVENT_OST);
    EPWM_forceTripZoneEvent(obj->pwmHandle[1], EPWM_TZ_FORCE_EVENT_OST);
    EPWM_forceTripZoneEvent(obj->pwmHandle[2], EPWM_TZ_FORCE_EVENT_OST);
    #if defined(BSXL8323RS_REVA) || defined(BSXL8323RH_REVB) || \
    defined(BSXL8353RS_REVA) || defined(BSXL8316RT_REVA) || \
    defined(BSXL3PHGAN_REVA) || defined(HVMTRPFC_REV1P1) || \
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

  • 已向工程师跟进

  • 参考下工程师的回复:

    Currently, the Universal Motor Control doesn't support f28379d and DRV8301 kit, you need to follow the lab user's guide to port this project for f28379d. Make sure that you change the configuration correctly for f28379d and drv8301 kit.

    Universal Project and Lab User’s Guide: https://www.ti.com/lit/spruj26

  • 按照Universal Project and Lab User’s Guide 对f28379d和drv8301 进行了移植,上面问题就是移植后出现,但现在还未解决

  • 问题应该是出在PWM或者是GPIO的配置上。我们没有现成的移植例程,只能是建议对照手册移植并检查相关的配置。

  • 你好 我现在pwm占空比正常了,现在出现的新的问题是设置flagEnableRunAndIdentify=1,将会产生过流现象,我更改motorVars_M1.overCurrent_A的值,仍会出现这种情况,我现在使用的开发板是F28379D驱动板是DRV8323RS,还有一个奇怪的现象,我没有连接编码器,但是在enc模式下电机可以运行。

  • 新的问题请重新发帖,谢谢您的理解。

x 出现错误。请重试或与管理员联系。