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.

[参考译文] TMS320F28027F:关于使用 MotorWare 时与电流保护相关的问题

Guru**** 2515065 points
Other Parts Discussed in Thread: BOOSTXL-DRV8301, DRV8301, MOTORWARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1557821/tms320f28027f-regarding-issues-related-to-current-protection-when-using-motorware

器件型号:TMS320F28027F
Thread 中讨论的其他器件:DRV8301MOTORWARE、BOOSTXL-DRV8301

工具/软件:

尊敬的专家:
之前、当我使用 MotorControl_SDK(芯片为 F280025)时、过流保护是使用 CMPSS 模块实现的。
不过、最近当我使用 F28027F 芯片和 MotorWare 软件时、我发现在 Drv8301 的 Lab5b 程序源代码中没有类似于电流保护的代码? MotorWare 是否不使用 F28027F 的比较模块?
如果使用的是源代码、请告诉我它在哪里、我期待着你的答复。

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

    您好:

    我目前正在进行调查、以验证我是否给出了准确的答案。 我想我记得当时在 Motorware 中有保护功能,但当我打开 5b 项目时,我也无法在 HAL 文件中找到任何功能。 我正在与几位同事交谈、他们可能更熟悉这方面的内容、以了解我们都错过了哪些内容(如果有)。

    此致、
    Jason Osborn

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

    我已经与一位同事确认、旧的 MotorWare 工程未启用 cmpss/comp 保护。 如果您需要使用 MotorWare、我建议您使用 MCSDK 或自己添加它。

    此致、
    Jason Osborn

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

    Jason、您好
    感谢您的回答!
    我目前正在使用 LAUNCHXL-28027F + BOOSTXL-DRV8301 解决方案。 如果存在硬件过流、是否通过 8301 的故障引脚(到 LaunchPad XL J1 的第四个引脚)检测到?

    另外、在 向软件引入这个错误引脚(BOOSTXL-DRV8301 故障)后、是否有特殊的保护方法?

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

    根据 BOOSTXL-DRV8301 的原理图、DRV8301 的一般 nFAULT 输出是 J1 顶部的第 3 个引脚、而不是第四个引脚。 第四个引脚专门报告过流。 我建议同时添加这两者。

    您指的是什么特殊保护方法? 如需询问如何实现保护、只需将 FAULT 引脚路由到 PWM XBAR、启用 TZ 输入以及配置 TZ 操作即可满足您的需求。

    此致、
    Jason Osborn

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

    我注意到 HAL_setupGpio() 函数中的以下代码:

    // FAULTn
    GPIO_setMode(obj->gpioHandle,GPIO_Number_28,GPIO_28_Mode_TZ2_NOT);
    
    // OCTWn
    GPIO_setMode(obj->gpioHandle,GPIO_Number_29,GPIO_29_Mode_TZ3_NOT);


    在 HAL_setupPwms 中、有://关闭 ePWM 外设的输出、从而将放置电源开关

    // into a high impedance state.
    PWM_setOneShotTrip(obj->pwmHandle[PWM_Number_1]);
    PWM_setOneShotTrip(obj->pwmHandle[PWM_Number_2]);
    PWM_setOneShotTrip(obj->pwmHandle[PWM_Number_3]);

    然后在 HAL_setupFaults () 中,有:

    for(cnt=0;cnt<3;cnt++)
    {
    PWM_enableTripZoneSrc(obj->pwmHandle[cnt],PWM_TripZoneSrc_CycleByCycle_TZ6_NOT);
    
    PWM_enableTripZoneSrc(obj->pwmHandle[cnt],PWM_TripZoneSrc_CycleByCycle_TZ3_NOT);
    
    PWM_enableTripZoneSrc(obj->pwmHandle[cnt],PWM_TripZoneSrc_CycleByCycle_TZ2_NOT);
    
    // What do we want the OST/CBC events to do?
    // TZA events can force EPWMxA
    // TZB events can force EPWMxB
    
    PWM_setTripZoneState_TZA(obj->pwmHandle[cnt],PWM_TripZoneState_EPWM_Low);
    PWM_setTripZoneState_TZB(obj->pwmHandle[cnt],PWM_TripZoneState_EPWM_Low);
    }


    这些配置是否意味着 GPIO28 和 GPIO29 引脚都可以触发 ePWM 的 TZ 中断?

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

    是的、目的就是这样。