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.

[参考译文] DRV8323:[已解决] SPI 型号、VDS 寄存器上出现过热警告

Guru**** 2478765 points


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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1226220/drv8323-solved-spi-variant-overtemperature-warning-on-vds-register

器件型号:DRV8323

我们正在构建新的驱动器、并正在测试固件、读取寄存器的状态后、我们可以注意到故障寄存器1已全部清除、但故障寄存器2为511的十进制值。 此外、即使未连接电机/甚至未向驱动器提供任何信号、也会出现过热警告、IC 的物理温度似乎小于40-50度、甚至可能更低。

产生此故障的原因可能是什么? 由于我们正在测试、给出给总驱动的电流被限制在500mA、并且消耗的总电流与 MCU 一起几乎不能达到最大60mA

请建议需要检查哪些内容才能清除所有警告

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

    您好、Amrith、

    感谢您在电机驱动器论坛发帖!

    根据故障寄存器2报告的内容、似乎报告了以下内容:

    • 检测放大器 C 相上的过流
    • 吸头
    • 电荷泵欠压
    • 所有 MOSFET 的 HS 和 LS 上都出现栅极驱动故障

    您的 IDRIVE 设置为什么? 可能是 IDRIVE 设置太大。 另外、您要将哪些电容器用于电荷泵?

    此致!

    ~Alicia

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

    您好、Alicia。

    感谢您的答复。

    我已经使用1uF 电容器 X5R 50V(零件号 CL10A105KB8NNNC)作为大容量电容器,唯一的变化是 VM 和 GND 之间的10uF 不使用,但使用了4.7uF ,我打算更换。

    即使驾驶员不是暖的,也有 OTW 的报告,与室温相比,不是很暖

    我正在使用一个5m Ω 电流感应电阻器、其设置为40V/V、但仅在相位 C 上会显示电流感应警告

    是的,IDRIVE 值是默认值,似乎足够高,让我尝试减小这些值,并尝试按照示例应用程序计算。

    PS:我能够测试一个电机,但它不能自己启动,我不得不手动旋转它启动后,它工作. 我正在使用非常小的电机进行测试、MCU 电源几乎不消耗70mA 的总电流。 一旦我确信我计划使用15A 电机进行测试

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

    您好、Amrith、

    是的 IDRIVE 值是默认值,似乎足够高,让我尝试减少这些值,并按照示例应用程序计算进行尝试。

    根据您使用的 MOSFET 的 Qgd 不同、该器件的默认 IDRIVE 设置可能会导致器件的 GHx 和 GLx 压摆得太快。  

    我需要了解导致 OTW 触发的原因、并打算在本周结束之前提供更新。

    此致!

    ~Alicia

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

    谢谢 Alicia

    这些是写入 SPI 寄存器后的值

    ADR_FAULT_STAT = 0
    ADR_VGS_STAT = 511
    ADR_DRV_CTRL = 120
    ADR_GATE_DRV_HS = 1023
    ADR_Gate_DRV_LS = 0
    ADR_OCP_CTRL = 896

    将提供 IDRIVE 和 TDRIVE 计算值的更新。 希望这将清除大量故障、

    你可以注意到一件事是 GATE_DRV_LS 寄存器即使在写入一些值后也是零,我目前正在测试1x PWM 以测试硬件,稍后我们将切换到3xPWM。 您能否告诉我为什么栅极驱动 LS 即使在写入 一些值(11位、甚至定义值也不为零)后仍然为零?  

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

    看起来我的 SPI 读/写是不正确的:(.

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

    您好、Amrith、

    Unknown 说:
    ADR_FAULT_STAT = 0
    ADR_VGS_STAT = 511
    ADR_DRV_CTRL = 120
    ADR_GATE_DRV_HS = 1023
    ADR_Gate_DRV_LS = 0
    ADR_OCP_CTRL = 896

    为清楚起见、这些是十进制值、对吧?

    似乎我的 SPI 读/写不正确

    您能否更详细地描述正在发生什么情况(是否未正确访问 SPI 寄存器等)、这将有助于缩小问题发生的范围? 您是否能够共享您正在进行的 SPI 读写的波形(来自逻辑分析仪)?

    此致!

    ~Alicia

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

    您好、Alicia。

    对不起 Alicia ,我忘记更新 SPI 模式,意识到这是 SPI 模式1而不是 SPI 模式0

    这些是默认值(只有两个寄存器与数据表不匹配)

    是所有值均为十进制

    ADR_DRV_CTRL = 0 (与默认值匹配)

    ADR_GATE _DRV_HS = 1023 (匹配默认值)

    ADR_GATE _DRV_LS = 2047 (匹配默认值)

    ADR_OCP_CTRL = 345 (匹配默认值)

    ADR_CSA_CTRL = 3267 -->不匹配默认值(643)!

    ADR_CSA_CTRL = 3267 -->与默认值不匹配!

    只有这个寄存器现在有一个不同的值后启动,你能建议为什么这可能发生?

    还有一个问题、在进行任何 SPI 事务之前、信号 SEMM 会有噪声、但在进行读取或写入之后、信号不再显示任何噪声

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

    您好、Amrith、

    Unknown 说:
    ADR_CSA_CTRL = 3267 -->不匹配默认值(643)!

    将3267转换为二进制文件时、会得到(1100 1100 0011) 2、这总共有12个数据位、我对 MSB 会是什么很好奇、因为它只应有11个数据位、如下所示:

    除此之外、忽略将提供  十进制(100 1100 0011) 2或1219的 MSB、下面突出显示的位似乎与默认值不同:

    从前面提到的情况来看、

    我使用的是一个5m Ω 电流感应电阻器,其设置为40V/V [/报价]

    您写入该寄存器是否可能 、这可能是它不处于默认值的原因?

    此致!

    ~Alicia

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

    您好、Alicia。

    感谢您检查这些值。

    似乎可以解决相应的值和 SPI 通信问题。 由于 SDO 线路需要一个上拉电阻器、我们确实遇到了一些问题、但这个问题已经得到了初始解决。 我们电路板的焊接似乎也有问题。

    我已经完成了1x PWM、3倍 PWM 和6倍 PWM 控制

    对于3个 PWM、换向表将 INLx 和 INHx 显示为输入、这意味着3个 PWM 需要所有6个 PWM/GPIO 输入。 对于6X PWM 来说似乎就是这种情况。 然而说明说 INHx 是用来控制高侧和低侧 MOSFET。

    请为我澄清一下

    谢谢!

    Amrith

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

    您好、Amrith、

    关于换向表、 所示为给定一些 INLx/INHx 输入的可能 GHx/GLx/SHx 输出。 在使用3x PWM 模式的情况下、INLx 用于将 半桥置于高阻态。 如果不需要高阻态、则可以将 INLx 连接到逻辑高电平。

    与使用所有六路输入来控制 GHx/GLx 的状态的6x PWM 模式不同、对于3x PWM 模式、INHx 决定 GLx 是否为高电平、GHx 是否为低电平、或者 GHx 是否为高电平、GLx 是否为低电平。 3x PWM 的真值表证实了这一点、因为我们可以看到 INLx 仅确定 GLx 和 GHx 是否都被拉低且 SHx 是否处于高阻态。 GHx/GLx 是否拉至高电平仅取决于 INHx 是高电平还是低电平、因为对于这两种情况、INLx 都是高电平。  

    此致!

    ~Alicia

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

    非常感谢 Alicia 的支持。 我们能够进行6步换向!

    关闭该主题。 再次感谢!

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

    您好、Amrith、

    很高兴我能够提供帮助!

    此致!

    ~Alicia