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.

[参考译文] TMDSHVMTRINSPIN:SDK 电机控制3级、I/F 控制、电机低速运动、但以更高速度停止

Guru**** 2380860 points
Other Parts Discussed in Thread: TMDSHVMTRINSPIN, TMDSCNCD280025C, TMS320F280025C, TMS320F28388D, C2000WARE
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1088471/tmdshvmtrinspin-sdk-motor-control-level-3-i-f-control-motor-moves-in-low-speed-but-stop-in-higher-speed

器件型号:TMDSHVMTRINSPIN
主题中讨论的其他器件: TMS320F280025CTMS320F28388DC2000WARE

您好!  

我  正在使用以下文档与 TMDSHVMTRINSPIN HVKIT 黄色板和 TMDSCNCD280025C 控制卡配合使用:SPRUJ26.pdf。

我的电机是一款定制设计的 PMSM 电机、具有低电感和大约28.5uH 和7.5m Ω 的低电阻。电机的基本速度为120rpm 和30kW 功率。

我可以半成功地运行该文档中的3级测试。 我可以以30kHz PWM 频率运行电机、但当我将 motorVars_M1.flagEnableRunAndIdentify 设置为1时、电机开始来回振荡、直到我将参考速度(motorVars_M1.speedRef_Hz)降低到0.5且电机开始旋转、然后我应该以小步长提高速度、 但是,电机仍然以高于 motorVars_M1.speedRef_Hz>5的速度停止。 因此、我增加了最大电流(USER_MOTOR1_OW_CURRENT_A=12.5A 和 USER_MOTOR1_MAX_CURRENT_A =15A)和过流、以使电机在 I/F 控制下平稳启动。 但我收到过流错误(motorVars_M1.faultMtrUse.all=16)。 因此、根据我的理解、我应该增加开关频率、这样就不会发生过流。 但是、当我将 PWM 频率(USER_M1_PWM_FREQ_kHz)增加到45kHz 时、即使降低基准速度、电机也根本不会运行。

此外、对于该电机、相电流不是正弦电流。 我可以成功运行另一个电机(具有更低的功率、速度和更高的电感)并使用此代码进行测试。 电机运行平稳、我控制了速度、并且我具有正弦相电流。 但是、对于该电机、我有一些问题。 我在示波器上附加了一张相电流图。 不过、我不确定电流波形是否有问题、但我希望得到正弦电流。

e2e.ti.com/.../5047.tek0001.tif

请帮我并指导我解决这个问题、

提前感谢、

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

    请勿使用3级重负载运行电机、此3级仅用于硬件验证、方法是在电流闭环的情况下运行电机、但不使用估算的转子角度。 因此、该电平无法在高速度和重负载下运行电机。

    如果您尝试更改 PWM 频率、请检查 USER_M1_NUM_PWM_TICKS_PER_ISR_TICK 是否设置为正确的值、以确保 USER_M1_ISR_FREQ_Hzis 低于25kHz。 较高 的 USER_M1_PWM_FREQ_kHz 将导致控制 ISR 溢出、项目无法正确运行。

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

    您好、Yanming、

    非常感谢您的回答、
    我应该纠正我之前的评论中的一个问题、我的电机的基本速度是120kRPM 而不是120rpm。

    我今天实际上测试了电机、我从测力计上拆下了电机轴、并在空载条件下运行电机。 我还将启动电流从8.5降低到7.5、因此我不再收到过流错误。我可以使用4级代码测试高达500RPM 的更高速度。 因此、电机可以成功运行。 但我的电流波形更像是梯形控制、而不是正弦波。

    非常感谢 
    对于 PWM 开关频率、我可以通过将 USER_M1_ISR_FREQ_Hzis 保持 在25kHz 以下来提高 PWM 频率。 但是、为什么需要这样做? 据我所知、这意味着 ISR 频率应小于开关频率、这意味着 ADC 值和应用 FAST 观测器以及计算速度和位置的速率比 PWM 开关速度慢。 我仍然对这背后的原因有一些理解上的问题。 这是由于 MCU (TMS320F280025C)的低速率造成的吗?

    提前非常感谢您、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="376781" URL"~/support/microcontrollers/C2000-microcontrollers-group/C2000/f/C2000-microcontrollers-forum1088471/tmdshvmtrin-sdk-motor-control-level-3-I-f-control-motor-Move-in-in low speed 但停止在更高速度/更像 e3124048这样的正弦波形、但仍具有更像 eida/e4048报价单引号[#3124048]

    电流波形取决于 BEMF 的形状、即使 使用 FOC 算法、BEMF 也不可能是正弦波形。   

    [引用 userid="376781" URL"~/support/microcontrollers/C2000-microcontrollers-group/C2000/f/C2000-microcontrollers-forum1088471/tmdshvmtrin-sdk-motor-control-leve-3-I-f-control-motor-Move-In 低速但停止在高速位置/31274048]为什么需要此报价[#3124048]?

    限制为 CPU MIPS、以确保 ISR 执行时间必须小于 ISR 周期、并为后台循环保留足够的 CPU 带宽。

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

    您好、Yaming、

    非常感谢您对我上一个问题的回答。
    实际上、我仍 在尝试使无传感器控制在我的电机中正常工作。 我正在使用  TMDSHVMTRINSPIN HVKIT 黄色电路板和 TMDSCNCD280025C 控制卡、并遵循以下文档:SPRUJ26.pdf。  

    我可以使电机的运行速度达到29HZ (1740RPM)。 我需要提高到非常高的速度。 但是、有两个问题:

    1.我必须将加速度降低到很小的值,即使是0.5Hz/秒,也能达到这个速度。

    2.在较高速度(高于1740RPM)下、电机停止运转、并且我接收到以下 故障 motorVars_M1.faultMtrUse.all unsigned int 16。

    我尝试在以下主题中遵循您的答案:  

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1083940/launchxl-f280025c-universal-motor-control-lab-example-solution-not-working-with-launchxl-f280025c-and-boostxl-3phganinv

    我的电机具有高速和低电感(120000RPM 和28.5uH 相电感)。  我尝试增加以下参数的电流限制(正如您在该主题中提到的那样)、由于我的电机要求(30kW)高于 HVkit 额定值(1.5kW)、我只是稍微增加了这些参数、 但是、电机仍然以更高的速度停止、并且我得到相同的故障。

    #define USER_MOTOR1_RES_EST_CURRENT_A      (7.0f)           // A -电机额定电流的10-30%

    #define USER_MOTOR1_IND_EST_CURRENT_A      (-5.5f)           // A -电机额定电流的10-30%、足以实现旋转

    #define USER_MOTOR1_FLUX_EXC_FREQ_Hz         (150.0f)         // Hz -电机额定频率为10~30%

     

    #define USER_MOTOR1_STARTUP_CURRENT_A    (7.5f)            // A -电机额定电流的30-100%

    #define USER_MOTOR1_MAX_CURRENT_A            (30.0f)             // A -电机额定电流的50-150%

    #define USER_MOTOR1_over_CURRENT_A          (30.f)             // a -电机额定电流的50-150%

    由于我需要以更高的功率进行测试、因此我将 HVkit SiC 开关(PS21765)替换为 PSS50S71F6 (我现在将 HVkit 与两个开关一同使用)、后者具有相同的尺寸、但具有更高的额定电流(50A)。 我通过增加以下参数测试了此代码、但仍然存在过流问题。

    #define USER_MOUST1_MOUE_CURRENT_A          (30.0f)   

    #define USER_MOUST1_MAX_CURRENT_A            (30.0f)  

    非常感谢您的帮助和时间 、
    提前感谢、

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

    由于您必须使用更高的 PWM 频率、但高压套件上的最大 PWM 频率为20kHz、因此该高压套件不适合运行低电感和高电流电机。

    此外、高压套件的最大峰峰值电流为19.8A、因此  USER_MOA1_MAX_CURRENT_A 和  USER_MOA1_over_CURRENT_A 必须低于9.9A (峰值电流的一半)。 您可能必须为此电机设计自己的逆变器板、即使您更改了电源逆变器模块、该套件也不能用于以负载运行此电机。 最大输出功率仍远低于电机的额定功率。

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

    非常感谢、


    实际上、我计划很快使用 TMS320F28388D 在定制设计的逆变器上测试电机。 TI 建议  TMS320F28388D 使用 SDK 电机控制。 您认为我可以使该代码(通用电机控制)适用于此逆变器和微控制器吗?

    我之所以提出这一问题、是因为对于 TMDSHVMTRINSPIN HVKIT 黄色电路板、已经设定了一个限制、不允许转速高于1740rpm、即使我增加了前面提到的参数并且正在进行45kHz PWM 开关。 或者、我应该这样问: 如果我使用定制设计的逆变器和 TMS320F28388D 微控制器、代码上是否仍然有这个限制?

    实际上、在将频率增加到45kHz 后、电机几乎可以平稳运行。 在这个电路板上、我现在只需要将速度提高到3、000RPM、我觉得它不是那么高速、输入直流电流仍然低于1A、所以电机为什么会以这个特定速度停止仍然是个问题。

    另一个问题是、我关注的本文档(SPRUJ26.pdf) 足以使通用电机控制代码适用于定制设计的逆变器、或者我是否应该使用除此文档之外的其他文档?

    非常感谢您抽出宝贵的时间、

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

    是的、您可以将该实验迁移到其他具有 FPU 和 TMU 的 C2000器件、包括  TMS320F28388D。 您 使用的电机的最大速度似乎仅限于高压套件的电流容量、而不是算法。

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

    您好、Yanming、

    非常感谢您的回答、
    如果可以、我实际上打开了一个新的主题以继续讨论。  
    地址如下:

    TMDSHVMTRINSPIN:TMDSHVMTRINSPIN:SDK 电机控制级别3、删除电流保护- C2000微控制器论坛- C2000 ︎ 微控制器- TI E2E 支持论坛

    我打开了另一个线程、将 TMS320f280025C 中的 SDK 电机控制代码移植到 定制设计的逆变器板中的 TMS320F28388D 中。
    地址如下:
    (+) TMS320F28388D:将通用电机控制实验室(SDK 电机控制)从 TMS320F280025C 移植到 TMS320F28388D - C2000微控制器论坛- C2000 ︎ 微控制器- TI E2E 支持论坛

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

    请查看《通用项目和实验室用户指南: https://www.ti.com/lit/ug/spruj26/spruj26.pdf 》,其中应包含有关所需迁移的详细信息。

    如您所说、该套件不适合您的电机、我们不建议更改大功率电机的套件、因为最大电流和功率仅限于套件上的电源模块、而不是软件和外部保护电路。

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

    您好、Yanming、

    非常感谢您之前的回答、我实际上已经开始将程序移植到 TMS320F28388D CPU。 我在 hal.c 文件中有一些与外设相关的错误、如下图所示。  
    首先、我尝试 配置 ePWM 模块、但仍然有如下错误:

    说明资源路径位置类型
    #20标识符"GPIO_10_EPWM6_A"未定义 hal.c /universal_motorcontrol_lab_f2838x/src_board 行3241 C/C++问题

    我按照建议 的 https://www.ti.com/lit/ug/spruj26/spruj26.pdf 文档 为我自己的电路板构建代码 、如下所示:

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

    为  TMS320F28388D 添加 driverlib 的相关头文件和源文件、并按照编译 消息来修复错误。 F28002x 和 TMS320F28388D 之间的引脚多路复用器名称可能不同。  您可以在 TMS320F28388D 的 drivelib 的 pin_map.h 中找到这些引脚的正确名称。

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

    非常感谢您的帮助和响应、

    我可以为 F28388D 添加 driverlib、如下图所示:

    我还可以在 pinmap.h 中找到一些不同的 GPIO 引脚名称、这些名称解决了一些错误。

    现在存在以下错误:


    我在 f28388d 的 pimap.h 中找不到以下引脚:

    TDI 和 TDO 引脚和  

    2、这是与外设时钟相关的代码行:

    ADC_reference_3_3_V 的错误在 hal.c 中引用了代码的这一部分

    4.对于 ASHSCTL_CMPHPMUX_SELECT_2、代码引用 hal.h 中的以下部分:

    我不在逆变器中使用 DAC、但我尝试将这些数字替换为 F28388D 数据表中的以下引脚编号。 我想这个名字一定不一样。 这些在库中的何处定义?

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

    请遵循错误消息并参考 driverlib 示例以修复这些报告的错误。 F2838x 可以使用不同的 drivelib 函数或符号名称。 您必须自行检查和修复这些问题。

    您可以在 C2000Ware 中找到 drivelib 示例、如下所示

    C:\ti\c2000\C2000Ware_ \driverlib\f2838x\examples\c28x

    或  

    C:\ti\c2000\C2000Ware_MotorControl_SDK_ c2000ware\driverlib\f2838x\examples\c28x

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

    你是对的。 请遵循错误消息并参考 driverlib 示例以修复这些报告的错误。 F2838x 可以使用不同的 drivelib 函数或符号名称。 您必须逐个检查并修复这些问题。

    您可以在 C2000Ware 中找到 driverlib 示例、如下所示

    C:\ti\c2000\C2000Ware_ \driverlib\f2838x\examples\c28x

    或  

    C:\ti\c2000\C2000Ware_MotorControl_SDK_ c2000ware\driverlib\f2838x\examples\c28x

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

    您好、Yanming、

    我可以解决所有错误、但下面显示的错误除外:

    错误消息是指  
    说明资源路径位置类型 gmake:***没有规则使目标'C:/ti/C2000Ware_MotorControl_SDK_4_00_00_00/c2000ware/driverlib/f2838x/driverlib/lin.c'成为'rc_driver/lin.obl'所需的目标'C:/ti/c2000-c2000Ware_MotorControl_00_00_00_00_00_00_00_00_00_c2000ware/driverlib/f2838x/driverlib/lin.c'

     2838x 的 LIN.c 文件似乎不存在 、我找不到 LIN.obj、所以我从库中排除了 LIN.c。

    当我删除它时、我收到以下错误:

    请帮助我解决此错误吗?

    提前非常感谢您、

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

    您可以添加/链接 F2838x 的 driverlib 以替换"src_driver"下的所有文件、或通过删除 F2838x 不支持的文件来使用 F2838x 的相关文件。

    您可以查看 C2000Ware 中 F2838x 的 driverlib 示例工程来调用器件配置函数。 F2838x 和 F28002x 之间有一些不同的功能、如上面提到的功能。

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

    您好、Yanming、

    非常感谢您为编译代码提供的支持。 我真的很感激。
    我的硬件已准备好测试我的 Universal_motorcontrol_lab 代码。
    我刚刚根据逆变器硬件更改了所有硬件外设设置(GPIO、PWM 和 ADC)。 我刚刚根据以下文档编译和调试了 level_1_test:"https://www.ti.com/lit/ug/spruj26/spruj26.pdf"。 我有一个问题:

    在 HVKIT 中、GPIO39也被用作 文档 中提到的#define MTR1_PM_nFAULT_GPIO。 由于我的逆变器中没有硬件保护、我如何移除该保护、我是否应该对此进行评论?


    我似乎可以在 CPU 上对代码进行编程、但在这之后、当我点击"Run"按钮时、我看不到任何特定的更改、并且我在控制台中收到了以下消息:

    C28xx_CPU1:GEL 输出:
    内存映射初始化完成
    C28xx_CPU1:GEL 输出:
    (笑声) DCSM 初始化开始...
    C28xx_CPU1:GEL 输出:
    (笑声) DCSM 初始化完成...
    C28xx_CPU1:GEL 输出:
    CPU2复位后配置为等待引导。
    (如果您以前连接过、可能必须恢复 CPU2才能到达等待引导循环。)
    C28xx_CPU1:GEL 输出:
    CM 处于复位状态并配置为等待引导。
    (如果您以前连接过、可能必须恢复 CM 才能到达等待引导循环。)
    C28xx_CPU1:如果在一个内核上执行擦除/编程(E/P)操作、则另一个内核不应从共享 RAM (SR)执行、因为它们用于 E/P 代码。 在对两个闪存组进行编程后、可以开始从 SR 执行用户代码。
    C28xx_CPU1:只有 CPU1片上闪存插件可以为 CPU1、CPU2和 CM 闪存操作配置时钟。 当调用 CPU1闪存操作时、插件会自动配置 PLL。 但是、如果用户希望仅执行 CPU2或 CM 闪存操作而不在当前会话中执行先前的 CPU1操作、则应在调用 CPU2和 CM 闪存操作之前单击 CPU1的片上闪存插件中的"配置时钟"按钮。 使用此按钮时、Flash 插件将使用 INTOSC2作为时钟源、将 CPU1/CPU2的时钟配置为190MHz、将 CM 配置为95MHz。 插件将像这样保留 PLL 配置、用户应用应根据应用的要求配置 PLL。
    C28xx_CPU1:GEL 输出:
    (笑声) DCSM 初始化开始...
    C28xx_CPU1:GEL 输出:
    (笑声) DCSM 初始化完成...
    C28xx_CPU1:GEL 输出:
    CPU2复位后配置为等待引导。
    (如果您以前连接过、可能必须恢复 CPU2才能到达等待引导循环。)
    C28xx_CPU1:GEL 输出:
    CM 处于复位状态并配置为等待引导。
    (如果您以前连接过、可能必须恢复 CM 才能到达等待引导循环。)
    C28xx_CPU1:GEL 输出:
    (笑声) DCSM 初始化开始...
    C28xx_CPU1:GEL 输出:
    (笑声) DCSM 初始化完成...
    C28xx_CPU1:GEL 输出:
    CPU2复位后配置为等待引导。
    (如果您以前连接过、可能必须恢复 CPU2才能到达等待引导循环。)
    C28xx_CPU1:GEL 输出:
    CM 处于复位状态并配置为等待引导。
    (如果您以前连接过、可能必须恢复 CM 才能到达等待引导循环。)

    表达式窗口如下所示:

    请帮我解决这些问题吗?

    提前感谢、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [quote userid="376781" URL"~/support/microcontrollers/C2000-microcontrollers-group/C2000/f/C2000-microcontrollers-forum1088471/tmdshvmsprospin-sdk-motor-control-level-3-I-f-control-motor-Move-in-in-in-low-speed-band-stop-in-how-speed" 即 GPIO96_nHv4096_gpio_gpio96中 提到的"GPM364039_mot_mot_40r1_mand_mot_mand-in_motr1"#已在 GPIO4096_gpio96_ 由于我的逆变器中没有硬件保护、我如何移除此保护、我是否应该对此进行评论?

    您可以在 hal.c 中删除与此 GPIO 相关的代码,特别是 HAL_setupMtrFcosh()中的代码,如下所示。

    //将 TZ2的输入 x 条配置为 GPIO、其中连接了过流
    Xbar_setInputPin (INPUTXBAR_base、MTR1_XBAR_Input1、MTR1_PM_nFAULT_GPIO);
    Xbar_lockInput (INPUTXBAR_base、MTR1_XBAR_Input1);

    for (cnt=0;cnt<3;cnt++)

    ePWM_enableTripZoneSignals (obj->pwmHandle[cnT]、MTR1_TZ_OSHT1);

    [引用 userid="376781" URL"~/support/microcontrollers/C2000-microcontrollers-group/C2000/f/C2000-microcontrollers-forum1088471/tmdshvmtrin-sdk-motor-control-leve-3-I-f-f-control-motor-mands-in-in-低速 但停止在更高速度下运行/#4093696]您是否可以解决这些问题?

    您可以忽略此问题、因为此控制器是多核控制器、但您只能使用 CPU1。  

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

    您好、Yanming、

    再次感谢您的支持、

    请忽略我的上一个问题。 我可以配置和运行 ADC 模块、以读取一些相电流和相电压的数据。 对于 LEVEL_1测试、我还让 PWM 以50%的速度运行。
    关于系统时钟频率和 PWM 频率设置、我有一个问题:

    在我的电流设置中、当我 在 user_mtr1.h 文件中将 USER_M1_PWM_FREQ_kHz 设置为60kHz 时、我可以得到30kHz 的50% PWM 脉冲。 对于 TMS320f28388D、代码中的系统时钟似乎在某处偏离了2 (我们预计在时钟显然为100MHz 时具有200MHz)。 我更改了 hal.c 中的一些设置、如下所示:

    定义了#Elif (HVMTRPFC_REV1P1)
    // controlCARD 上的外部20M 晶振
    //设置 PLL 控制和时钟分频器
    // CPU 时钟频率= 100MHz
    // PLLSYSCLK = 20MHz (XTAL_OSC)* 30 (IMULT)/(2 (REFDIV)* 3 (ODIV)* 1 (SYSDIV))
    SYSCTL_setClock (SYSCTL_OSCSRC_XTAL | SYSCTL_IMULT (58)|
    SYSCTL_REFDIV (2)| SYSCTL_ODIV (3)|
    SYSCTL_SYSDIV (1)| SYSCTL_PLL_ENABLE |
    SYSCTL_DCC_BASE_0);

    通过将"sysctl_IMULT"设置为58、我们可以得到所需 PWM 频率的一半。 但是、我们无法将"sysctl_IMULT"增加到代码中高于58的值。  

    请帮我解决这个问题、

    非常感谢您抽出宝贵的时间、

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

    您好、Yanming、

    我可以解决与 PWM 频率设置相关的问题、 系统时钟频率现在设置为200MHz。

    我想知道我是否可以提出另一个问题:

    我能够配置 GPIO 引脚和 PWM。 我认为该设置可以成功通过部分 Level_1测试。 但是、连接电机之前直流链路上的 ADC 读数有很大变化(30%)。

    昨天我尝试运行 LEVEL_2 (电机上的 V/F 开环控制)测试。 在开关频率为30kHz、直流链路为30V、电流限制为2A 时、转子会旋转一些、但是直流链路总线短路。 我还在40kHZ 的开关频率、100V 的直流总线电压和3A 的电流限制条件下进行了测试、电机无法旋转、短路导致栅极驱动器损坏。 此时、已针对 RL 负载上的10kW 测试验证了设置。


    下面是我对 LEVEL_2测试中 V/F 控制部分的设置:

    #define USER_MOUST1_FREQ_LOW_Hz (0.5f)// Hz
    #define USER_MOALE1_FREQ_HIGH_Hz (200.0f)// Hz
    #define USER_MOOST1_VOLT_MIN_V (10.0f)//电压
    #define USER_MOALE1_VOLT_MAX_V (250.0f)//电压

    在运行此测试时、我还需要考虑其他事项吗?

    感谢您的任何帮助、

    非常感谢您、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [~引脚 userid="376781" URL"/support/microcontrollers/C2000-microcontrollers-group/C2000/f/C2000-microcontrollers-forum1088471/tmdshvmtrin-sdk-motor-control-level-3-I-f-control-motor-Move-In 低速但停止在更高水平的速度/40v 上运行"#9740129"(昨天已尝试在电机控制环路中运行)。 在开关频率为30kHz、直流链路为30V、电流限制为2A 时、转子会旋转一些、但是直流链路总线短路。 我还在40kHZ 的开关频率、100V 的直流总线电压和3A 的电流限制条件下进行了测试、电机无法旋转、短路导致栅极驱动器损坏。 此时、已验证了设置、以进行 RL 负载上的10kW 测试。

    您使用的是什么逆变器板? TI 高压套件? 此套件的最大开关频率必须限制为小于20kHz。

    1.根据逆变器板、确保 PWM 输出正确且具有正确的死区。

    2.当您尝试在构建级别2中运行电机时、请确保直流总线电压感应信号正确。

    如上所述、请尝试根据您使用的电机的规格调整 v/f 曲线。

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

    我使用的是我自己的逆变器、它之前在8kW 下进行过测试。
    TI 代码已移植到我现在使用的 TMS320F28388D 微控制器。

    LEVEL_2测试是一个开环测试。 我假设在该测试中不使用 ADC 测量值来控制电机、如 下图"https://www.ti.com/lit/ug/spruj26/spruj26.pdf"shows:中所示

    此外、我们还使用此栅极驱动器"UCC21739QDWQ1"来创建死区。

    此外、我替换了这一行代码、因为我们的电流传感器是内联的(不是像 HVKIT 那样使用三个分流器)

    systemVars.currentSenseType = CURRENT_INLINE;

    systemVars.currentSenseType = CURSEN_TYPE_Three _ SHUNT;

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

    好的、我还有另一个问题、

    在 LEVEL_4测试中的 TI HVKIT 无传感器控制算法中、控制器以多快的速度从 I/F 控制切换到无传感器控制?

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

    2级需要直流总线电压感测值。

    在使用4级之前、请尝试确保电机能够在构建级别2和3中平稳运行。

    [引用 userid="376781" URL"~/support/microcontrollers/C2000-microcontrollers-group/C2000/f/C2000-microcontrollers-forum1088471/tmdshvmtradin-sdk-motor-control-level-3-I-f-f-control-motor-mands-in-in-in-低速 但停止在更高速度下运行/v thensorit/v 控制器在控制下以何种速度/无传感器控制模式对控制器进行测试?]

    这取决于控制算法。 您可以在用户头文件中设置切换速度。 FAST 的开关速度为1Hz。