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.

[参考译文] DRV8705-Q1:过流故障行为

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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1323793/drv8705-q1-overcurrent-fault-behavior

器件型号:DRV8705-Q1
主题中讨论的其他器件:CSD18512Q5B、DRV8705S-Q1EVM

您好!

我们在应用中使用了 DRV8705SQRHBRQ1电机驱动器。 最初、我们采用了 H 桥 PWM 控制、并且根据我们的电流要求正确触发了过流故障。 随后、我们切换到了 PWM 模式的半桥控制、在进行此修改后、未观察到过流故障。 但是、调整 VDS 过流阈值后、现在可以正确触发过流故障

我们想知道更改驱动器 PWM 模式是否会影响最大电流消耗、或者是否可能是最大电流变化的其他原因。

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

    尊敬的 Sonali:

    在半桥模式下、 一次只控制一个电机相位、 可能导致与 H 桥模式相比、总电机电流更低。  这可能间接导致 VDS 过  流保护不太可能触发、因为它响应 MOSFET 上与电流相关的压降。

    此致!

    大卫

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

    您好 DevID、

    感谢您的答复。

    在半桥模式下运行电机是否会影响其扭矩和最大速度? 我们不想让它受到影响。

    谢谢。

    索纳利

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

    尊敬的 Sonali:

    您能否说明(图表会有所帮助)您进行的过流测试和采用全桥 FB 和霍尔桥 HB 配置的短路测试路径(如果将短路测试用于过流测试)? 在这两种情况下、我都假设电源没有设置电流限制。 是过流测试期间驱动的直流电机负载。 用于 FB 和 HB 设置的正确 OC 检测的 VDS 阈值电压值是多少? 还请告知我们电源电压值和 MOSFET 器件型号。  FET 使用了哪些 Idrive 设置?  

    在 FB 配置中、您可以对 BDC 电机进行方向控制、Hb 只允许一个方向。 在这两种情况下、可驱动 BDC 电机的最大电压和占空比几乎相同。  使用 FB 驱动时、电机将获得电源电压 VM - 2倍 FET 上的 Rdson 压降、而使用 HB 驱动 VM - 1倍 Rdson 压降。 Rdson 的压降将取决于电机电流。 例如、对于5 mΩ FET 和10A 电流、FET 上的压降将为50mV。 因此、当 VM = 12V 时、FB 电机电压最大值为11.9V、HB 电机电压最大值 为11.95V、并且这两种配置都支持以高达100%的占空比运行。 因此、在两种用例中、最大扭矩和速度几乎相同。 谢谢你。

    此致、Murugavel      

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

    您好 Murugavel:

    设置说明-我们用于驱动直流电机的连接电桥电路。 为了在系统上产生过流事件、我们将电机从齿轮箱上分离并将其连接到电路。 随后、我们为电机供电、使其朝一个方向旋转、同时将轴牢固地握在虎钳夹中。 这导致了过流事件的发生。 FB 和 HB 模式都使用了相同的过程来触发过流事件。

    在这两种情况下、我都假设电源没有设置电流限制。 -是

    是否在过流测试期间驱动了直流电机负载-是

    用于 FB 和 HB 设置的正确 OC 检测的 VDS 阈值电压值是多少? 对于 FB 0.06V、对于 HB 0.16V

    FET 使用了哪些 Idrive 设置? 适用于一切的- 62mA

    还请告知我们电源电压值和 MOSFET 器件编号- CSD18512Q5B

    如需更多信息、请联系我们。

    e2e.ti.com/.../DRV8705S_5F00_MOTOR-DRIVER-SECTION.pdf

    谢谢。

    索纳利

     

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

    尊敬的 Sonali:

    非常感谢您的详细信息。 因此您会让电机失速、这通常会导致与运行电流相比非常高的电流。 您是否在该电源电压下测量了电机失速电流? 您可以通过将电机直接连接到电源来执行此测量。 如果保持时间较长、可能会损坏电机绕组。 您在测试中是否使用了100%占空比? 如果不是、测试中使用的 PWM 频率和占空比是多少?

    使用的输出 FET 具有非常低的 Rdson 和1.3 mΩ、因此其两端的压降非常小。 在中、VDS 告诉我通过 FET 的峰值电流为0.06/1.3E-3 = 46.5A、在中、VDS 0.16V 的峰值电流为0.16/1.3E-3 = 123A。 在中、FB 电机电流通过一个 HS 和一个 LS FET、而在中、HB 电机电流仅通过 一个 FET。 这就是 Hb 中的电流增加的原因。 不过、观察到的增加似乎过大。 直流电机的 DCR (直流电阻)规格是多少?   

    我查看了原理图、但没有在+24V Mot 轨上找到任何大容量电容器。 对于该电机、您可能需要100至200 uF。 电源侧是否有靠近驱动器电路的电容器? 大容量电容器将有助于在电机运行时减少+24V Mot 上的纹波、还可在电机停止或速度降低时减少负载突降回电源。

    此致、Murugavel

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

    您好 Murugavel:

    感谢您的答复。

    我们通过将电机直接连接到电源来测量电机堵转电流、最高达到25A。 我们要附加停止电流波形。 PWM 频率设置为22kHz、占空比为90%。 遗憾的是、目前我们还没有电机 DCR 规格的相关信息、因为这是我们客户的定制设计。 470uF 和1uF 的大容量电容器位于电源侧、靠近驱动器电路。 附上完整的原理图供您参考。

    有一个小校正:之前我们使用 PWM H 桥控制模式、用于 OC 检测的 VDS 阈值电压为0.16V。 现在、我们使用 PH/EN H 桥控制、用于 OC 检测的 VDS 阈值电压为0.06V。

    您是否认为长时间失速可能会损坏电机? 如果可以、您能否建议我们应设置的 VDS 阈值电压、并考虑我们的失速电流和 PH/EN H 桥控制、以避免长时间失速?

      e2e.ti.com/.../DRV8705S_5F00_Schematic.pdf

    谢谢。

    索纳利

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

    尊敬的 Sonali:

    感谢您提供的信息。 让我来回顾一下并返回给您。

    此致、Murugavel

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

    您好 Murugavel:

    这方面有什么更新吗?

    谢谢。

    索纳利

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

    尊敬的 Sonali:

    这是一个很好的例子。 我们昨天无法与您联系。 我今天就给你答复。 谢谢。

    此致、Murugavel

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

    尊敬的 Sonali:

    从技术角度而言、只要所选的控制逻辑和续流选项相同、PH/EN 模式和 PWM 模式的行为就应该相同。 您是使用高侧还是低侧有源续流? PH/EN 和 PWM 模式下的电压设置是否相同?

    是否正确理解了没有使用独立半桥。 仅使用了 PH/EN 和 PWM 模式 FB。 我的理解是否正确?

    关于过流限制设置-这将取决于检测的目的。 如果它将用于卡滞电机(失速)检测、我们需要确保它也满足启动浪涌电流要求。 否则、可能会在启动时禁用电桥、选择锁存故障模式、或通过选择逐周期 OCP 模式来中断驱动。  

    当电机永久失速时、反之亦然、浪涌电流会高得多、如果 OCP 不跳闸、浪涌电流也会在更长的时间内如此高。 只有在这些条件下、电机才会过热和损坏。  

    对于 BDC 电机的正常 OCP 设置、方法是表征电机启动浪涌电流、并将该限值设置为高于该值、并具有足够的裕度以覆盖电机之间的差异。  

    另一个大电流源是在没有减速停止运动曲线的情况下反转或停止电机时的有源续流再循环电流和电流。 存储的机械潜在能量将流经 FET、并可能会变得非常高、具体取决于潜在能量(电机转速)和电机本身。

    我查看了原理图、没有发现任何异常。  

    此致、Murugavel  

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

    您好 Murugavel:

    感谢您的答复。

    这里有一些更多的信息。 之前、我们通过固件中的内部 ADC 设置20A 电流。 我们得到电流为20A 时的预期过流故障。 现在、我们在电流为20A 时不会遇到过流故障。 因此、我们将电流限值降低至15A、便会出现过流故障。  

    改变最大电流消耗的原因可能是什么? 因此、我们使用的 PWM 模式即  PH/EN 和 PWM 模式 会影响最大电流消耗、或者可能还有任何其他原因?

    谢谢。

    索纳利

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

    尊敬的 Sonali:

    感谢您再次观看本视频。 您询问"我们正在使用的 PWM 模式、即  PH/EN 和 PWM 模式 会影响最大电流消耗、还是可能有任何其他原因?" 只要有源续流以相同的方式完成、就不会有不同。 在 PWM 模式下、电机未运行时、两个输入必须为100%占空比(高)、对于90%占空比输出、其中一个必须为10%占空比(高10%和低90%)。 这将保持与 PH/EN 相同的极性。  如果遵守此要求、PH/EN 和 PWM 模式的行为将相同。  我使用 DRV8705S-Q1EVM 和直流电机验证了这一点。

    此致、Murugavel  

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

    您好 Murugavel:

    两种模式(即低侧续流)的续流是相同的。  

    如果不是 PWM 模式、改变最大电流的另一个原因是什么?

    谢谢。

    索纳利

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

    尊敬的 Sonali:

    我使用无电流限制的电池电源和 EVM 进行了广泛的测试。 我发现 PH/EN 和 PWM 模式的行为是相同的。 对于两项测试、续流均设为低侧。 OCP 阈值 VDS = 0.06V 使启动电流(几乎等于 BDC 电机堵转电流)偶尔导致 OCP 限制跳变。 如果将 VDS_DG 降至1us、则可以使 OCP 跳闸更一致。 增大 VDS = 0.08我在启动期间在 PH/EN 和 PWM 模式下都看不到 OCP 跳闸。 这是一致的。 我无法重现两种模式之间遇到的 VDS 阈值的差异级别。  在90%占空比时、在 OUT 引脚上测得的平均直流电压 PH/EN 和 PWM 这两种情况都是相同的。  您是否在同一方向运行电机时观察到了差异?

    电机的一个方向上的启动浪涌电流与另一个方向上的启动浪涌电流较高-这可能是由于转子一个方向与另一个方向上的摩擦差异造成的。 不过、在 PH/EN 和 PWM 模式下以相同方向运行电机时、启动时的电流曲线相同、并且在我使用 EVM 的设置中具有相同的 OCP 行为。  

    您说过"之前、我们通过固件中的内部 ADC 设置20A 电流。 我们得到电流为20A 时的预期过流故障。 现在、我们在电流为20A 时不会遇到过流故障。 因此、我们将电流限值降低到15A、就会出现过流故障。" 您能否详细说明这一说法?  您是否使用 CSA 输出模拟电压信息、使用 MCU ADC 将其转换为数字、并确定电流是否超过设定的阈值、这是否正确? 如果使用这种方法、除非在具体时刻成功捕获了峰值电流、否则可能无法获得一致的结果。 如何触发 ADC 来持续捕获峰值?  

    此致、Murugavel  

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

    您好 Murugavel:

    您是否使用 CSA 输出模拟电压信息、使用 MCU ADC 将其转换为数字、并确定电流是否超过设定的阈值、这是否正确?  --是的,正确

    如何触发 ADC 来持续捕获峰值?  我们通过在10ms 周期内执行恒定采样来持续捕获峰值。  

    还有一个问题:CSA_GAIN 是否更改了最大电流消耗? 如果是、增益如何影响最大电流?

    此外、我们想了解增益= 10V/V 和增益= 20V/V 情况下的原理图设计中的 CSA 输出。     ……  CSA_DIV =  0b = AREF / 2

    如果您需要更多信息、请告诉我。

    谢谢。

    索纳利

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

    尊敬的 Sonali:

    感谢您提供更新和更多详细信息。 请参阅下面的示波器捕获、其中显示了同一电机、24V 电机电源和90%占空比20kHz PWM 在 PH/EN 模式和 PWM 模式下的浪涌电流。

    PH/EN 模式:

    PWM 模式:

    您可以看到浪涌电流峰值约为30A、在两种模式下的曲线非常相似。 您还可以看到、峰值持续的时间只有几毫秒。 如果采样率为10ms、则无法一致地捕获真实的峰值。 理想情况下、您应该每0.5ms 采样一次以持续捕获峰值。  

    CSA 增益不会改变最大电流输出。 CSA 仅用于检测和输出 SO 上的模拟电压。  

    在电路中、电流感应电阻器是0.004Ω。 因此、对于1A 的电流、SP 上的电压将为0.004V。 AREF = 3.3V、AREF/2 = 1.65V。 对于0A 的电流、那么将是1.65V。 对于1A 电流、当增益为10V/V 时、SO 将为1.65 +(0.004*10)= 1.69V、当增益为20V/V 时、SO 将为1.65 +(0.004*20)= 1.73V。  因此、对于25A 电流、SP 将为0.1V 、增益为10V/V、因此将为1.65 +(0.1*10)= 2.65V、增益为20V/V、因此将为1.65 +(0.1*20)= 3.65V、即> 3.3V。 所以将在3.3V 时饱和。 Gain 20V/V 无法用于捕获启动峰值。  

    您是否已查看两种模式的 SO 波形、并验证启动电流曲线是否符合预期。  

     μs OCP 检测和保护、我们建议使用片上 VDS 监视器、因为它将具有最快的响应、考虑到抗尖峰脉冲时间仅几 μ s。

    此致、Murugavel

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

    您好 Murigavel:

    感谢您的快速响应。

    您是否已查看两种模式的 SO 波形、并验证启动电流曲线是否符合预期。 不会, 但这将是我们的下一步。

    最后、您可以在固件中找到我们的寄存器映射、 并且我们的板当前使用此配置正常运行。

    不过、在将 CSA_GAIN 更改为10V/V 同时保持其他映射不变时、驱动器初始化过程中出现了错误。 该错误消息如下:"CONFIG VDS_CTRL_2读写阶段:4A00、read:C000"。 有关详细信息、请参阅随附的图像。

    您能解释一下为什么只改变增益会产生此误差吗? 此外、我们想了解哪些参数会受到映射中增益的影响。  

    错误图像:

    寄存器映射:  

    /* DRV8705驱动程序软件模块构建器、同时链接系统计时器/计数器*/
    drv8705Module[0].configData.CLR_flt = CLEAR_FAULTS_N_RESET;
    drv8705Module[0].configData.lock = unlock_control_registers;
    drv8705Module[0].configData.in2_ph_mode = signal_sourced_from_in2_PH_PIN;
    drv8705Module[0].configData.in1_en_mode = SIGNAL_SOURCE_FROM_IN1_EN_PIN;
    drv8705Module[0].configData.ssc_dis = DEVICE_SPREADSPECTRUM_CLOCK_ENABLE;
    drv8705Module[0].configData.en_drv = driver_outputs_enable_N_control_by_digital_inputs;
    drv8705Module[0].configData.s_hiz2 = outputs_follute_in2_PH_signal;
    drv8705Module[0].configData.s_hiz1 = outputs_follation_in1_en_signal;
    drv8705Module[0].configData.s_in2_ph = CONTROL_BIT_FOR_IN2_PH_INPUT_SIGNAL_ENABLED_IN2_PH_MODE_BIT;
    drv8705Module[0].configData.s_in1_en = CONTROL_BIT_FOR_IN1_EN_INPUT_SIGNAL_ENABLE_ONAL_IN1_EN_MODE_BIT;
    drv8705Module[0].configData.brg_fw = low_side_free_wheeling;
    drv8705Module[0].configData.brg_mode = PH_EN_HALF_BRIDGE_INPUT_CONTROL;
    drv8705Module[0].configData.vgs_hs_dis =启用;
    drv8705Module[0].configData.IDRVN_HS = High_side_peak_sink_pull_down_current_sled 62mA;
    drv8705Module[0].configData.IDRVP_HS = High_side_peak_source_pull_up_current_sld 62mA;
    drv8705Module[0].configData.IDRVN_LS = 62mA;
    drv8705Module[0].configData.IDRVP_LS = 62mA;
    drv8705Module[0].configData.VGS_IND =已禁用;
    drv8705Module[0].configData.VGS_TDEAD = insertable_digital_dead_time_500ns;
    drv8705Module[0].configData.VGS_TDRV = VGS_DRIVE_TIME_and_VDS_MONITOR_BLECK_TIME_4US;
    drv8705Module[0].configData.VGS_MODE = VGS_GATE_FAULT_MONITOR_MODE_LATCH_FAULT;
    drv8705Module[0].configData.VDS_IND = VDS_Independent_SHUTDOWN_MODE_Disabled;
    drv8705Module[0].configData.VDS_IDRVN = DRVN_GATE_PULLDON_CURRENT_AFTER_VDS_OCP_FAULT_PROGRADED_IDRVN;
    drv8705Module[0].configData.VDS_DG = VDS_overCurrent_monitor_deglitch_time_8us;
    drv8705Module[0].configData.VDS_MODE = VDS_overCurrent_MONITOR_MODE_LATED_FAULT;
    drv8705Module[0].configData.VDS_LS_LVL = Low_side_VDS_overCurrent_monitor_threshold_0_16V;
    drv8705Module[0].configData.VDS_HS_LVL = High_side_VDS_overCurrent_monitor_threshold_0_16V;
    drv8705Module[0].configData.PD_SH2 = HALF_BRIDGE_2_PULL_DOWN_DIAGNOSTIC _CURRENT_SOURCE_Disabled;
    drv8705Module[0].configData.pu_SH2 = HALF_BRIDGE_2_PULL_UP_DIAGNOSTIC _CURRENT_SOURCE_Disabled;
    drv8705Module[0].configData.PD_SH1 = HALF_BRIDGE_1_PULL_DOWN_DIAGNOSTIC _CURRENT_SOURCE_Disabled;
    drv8705Module[0].configData.pu_SH1 = HALF_BRIDGE_1_PULL_UP_DIAGNOSTIC _CURRENT_SOURCE_Disabled;
    drv8705Module[0].configData.OLSC_EN = Offline_open_load_and_short_circuit_diagnostic_Disabled;
    drv8705Module[0].configData.VCP_UV_LVL = VCP_CHARGE_PUMP_欠 压监视器_THRESHOLD_2_5V;
    drv8705Module[0].configData.VCP_UV_MODE = VCP_CHARGE_PUMP_欠 压监视器_MODE_LATCH_FAULT;
    drv8705Module[0].configData.PVDD_OV_LVL = PVDD_SUPPLY_OVERLOV_MONITOR_THRESHOLD_28_5V;
    drv8705Module[0].configData.PVDD_OV_DG = PVDD_SUPPLY_OV_MONITOR_DEglitch_TIME_8us;
    drv8705Module[0].configData.PVDD_OV_MODE = PVDD_SUPPLY_OV_MONITOR_MODE_LATCH_FAULT;
    drv8705Module[0].configData.PVDD_UV_MODE = PVDD_SUPPLY_欠 压监视器_MODE_LATCH_FAULT;
    drv8705Module[0].configData.CSA_GAIN = CURRENT_SHUNT_AMPLASER_GAIN_SETTING_20_VV;
    drv8705Module[0].configData.CSA_DIV = CURRENT_SHUNT_AMPLIFOR_VOLTAGE_DIVIDER_Aref_2;
    drv8705Module[0].configData.CSA_BLK = CURRENT_SHUNT_AMPLIFICER_TIME_OF_tDRV_0_Disabled;
    drv8705Module[0].configData.CSA_BLK_SEL = CURRENT_SHUNT_AMPLIFOR_TRIGGER_SOURCE_HALF_BRIDGE_1;
    drv8705Module[0].configData.CSA_SH_EN = CURRENT_SHUNT_AMPLASER_SAMPLE_and_HOLD_Disabled;

    driver3phSWI[0]= new_drv8705 (&drv8705Module[0],sysHwDevDriver.drv8705HWI[0],
    sysHwDevDriver.systemCntrHWI);

    谢谢。

    索纳利

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

    尊敬的 Sonali:

    DRV8705-Q1中的 CSA 是一个独立实体、提供 SO 的模拟输出。 更改 CSA_CTRL 寄存器不会与器件操作或任何其他寄存器发生交互、除非外部 MCU 根据此值采取一些操作。 在 EVM 中、更改所有增益选项不会干扰器件运行。 它根据 SO 值仅更改 SO 值和 ADC 读数-这是预期行为。  

    写入 CSA_CTRL 不会改变 VDS_CTRL_2寄存器中的任何内容。 状态读取值0xC000表示没有检测到 SPI 错误和一个 POR 条件。 POR 意味着 DVDD 电压 下降至低于 VDVDD_POR DVDD 下降阈值且器件已复位。 您能否检查在此期间 DVDD 发生了什么情况? 一个 POR 条件将把器件的所有寄存器复位为其缺省值。 正常运行期间不得发生 POR。

    此致、Murugavel   

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

    您好 Murugavel:

    我们还没有看到 DVDD 电压下降的电压。 请参阅随附的 DVDD 波形。  

    正如您提到过的、更改增益不会影响其他器件运行。 我已经咨询了固件团队、以确认 MCU 是否根据 SO 值采取了任何措施。 他们澄清了 ADC 仅收集电流、不会启动任何操作。  由于电机的最大电流为25A、因此我们应将增益设置为10V/V、但此设置会出现误差。  

    明天、我们计划测试 SO 信号。 使用硬件计算、我们将通过 SO 值评估电机的最大电流消耗。 然后、我们将计算出的电流与 ADC 电流进行比较、以检查是否匹配。 请告知我们是否有替代测试方法。

    关于 SO 公式、您提供了 AREF/2 +[(SP-SN)* GAIN]。 是这样吗?

    但您可以看到我们的原理图、我们已将 S1_P 连接到 驱动器的 SN (引脚19)、将 S1_N 连接到 SP (引脚18)。 这将更改 SO 公式: AREF/2 -[(SN-SP)* GAIN]。 请让我知道哪个方程对于我们的原理图是正确的。 我们需要这样做以用于明天的测试。

    注意:我们主要关注的是最大消耗电流已经改变。 以前、电机的电流消耗达到25A、但现在似乎限制到15A。

    谢谢。

    索纳利

     

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

    尊敬的 Sonali:

    原理图的以下部分正确显示了 S1_P 和 S1_N。 我假设它已分别正确连接至器件 SP 和 SN。 只有在你提到你的消息,我注意到你有网表名称交换在 U4A。 这将无法正常工作。  

    您还可以 在数据表第5页的引脚说明中清楚地看到 SP 和 SN。 SP 和 SN 不得互换。 它不适用于互换连接。 根据原理图的当前连接、因此不会按所述输出检测电压。 必须在您的电路板中修复该问题。 也可参阅数据表中的以下功能方框图。

    原理图 R28中的感应电阻为0.004Ω。 因此、=(AREF/2)+(ILOW-Side  * 0.004Ω)*增益。 在电桥的任何给定工作方向上流经其中一个 LS FET 至 GND 的负载电流将提供给 SP 和 SN。 SN 必须始终为 GND。 SP 连接至分流电阻器 R28的正极端。 电压 (ILOW-Side  * 0.004Ω)= SP-SN 电压、SN = 0V。  

    更改 CSA_CTRL 寄存器中的增益值既不会干扰任何其他寄存器、也不会导致任何问题、因为 CSA 用于测量和报告与分流电阻器电流等效的模拟电压。 您可能需要检查 CSA 寄存器地址是否在固件中正确定义、而不是指向其他某个地址。

    虽然由于消隐等原因、您可以使用 OID 获取电流读数、但它可能不是用于计算目的的真实表示。 如果您没有非接触式电流探头、最好测量感应电阻器 R28的 GND 端和顶部之间的电流波形。  测量的电压输出将为 I * 0.004Ω。  

    此致、Murugavel

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

    您好 Murugavel:

    以下是我们的测试结果以及随附的图像:

    • 电机电流正常工作:1.22A……感应电阻器压降:4.9mV
    • 堵转电机电流:22.5A ...感应电阻器上的压降:99mV
    • SO 输出:
      • 电机关闭:1.43V
      • 电机开启:1.34V

    我认为我们在检测电阻器上测量的电流符合预期。 问题在于 SO 输出、其中一个应为1.65V、正确吗? 明天、我将检查 VREF 电压。

    由于交换 SN 和 SP 连接、SO 输出从1.43V 下降到1.34V。 我们可以通过此连接测量通过 ADC 的电流。 在最后这个时刻、我们不想更改设计。

    请告诉我这些连接是否仍然可以正常工作。 如果是、您能否提供相应公式?

    我们使用与示波器兼容的电流探头测量了以下电机电流

    1) 1) 正常运行时的电机电流和因此电压波形。  

    粉色:电机电流、黄色:  SO 电压

    2) 2) 失速情况下的电机电流和 SO 电压波形。

    粉色:电机电流、黄色:  SO 电压

    谢谢。

    索纳利

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

    尊敬的 Sonali:

    感谢您共享测量数据。 您说"问题在于 SO 输出、哪个应该是1.65V、对吗? 明天、我将检查 VREF 电压。" 是的、正确、1.65V 是基于您的原理图 AREF = 3.3V。 因此 AREF/2 = 1.65V。  

    "由于交换了 SN 和 SP 连接、SO 输出从1.43V 下降到1.34V。 我们可以通过此连接测量通过 ADC 的电流。 在最后这个时刻、我们不想更改设计。  请告诉我这些连接是否仍然可以正常工作。 如果是、您能提供这样的公式吗?"。 我们必须向内部设计进行检查、确认这是否会影响 CSA 的功能、并且我们可以确认公式。 我们会尽量在下周中旬之前获得这些信息。

    根据这个示波器捕获、SO 在 GND 电势0V 处饱和。 必须降低 CSA 增益、以确保 CSA 输出不会饱和(在0处削波)。 峰值和波形应类似于粉色迹线、但由于 SN 和 SP 连接、看起来会反相。

    此致、Murugavel

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

    尊敬的 Sonali:

    这是关于 DRV8705-Q1 CSA 的更新。 交换 SN 和 SP 不应导致任何电气问题。 它应该工作正常。  输出为[1.65 -(Ishunth*Rshunn*gain)] V,选择 AREF = 3.3V,选择 AREF/2作为偏置,电流流向通过从 SN 节点(感应电压+)到 SP 节点(GND 感应0V 接地基准)的分流电阻器。

    此致、Murugavel

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

    您好 Murugavel:  

    感谢您的确认。  

    此 VREF  

    您可能需要检查 CSA 寄存器地址是否在固件中正确定义、而不是指向其他某个地址。 我已经向固件团队确认了这一点。 已正确定义地址。

    对于10V/V 增益、我们将获得错误 Config VDS_CTRL_2读写阶段:4A00、读取:C000。 但在本例中、更改增益会影响其他参数。 另外、没有浸入 DVDD。 还有什么原因呢?  接下来我们应该测试什么?

    谢谢。

    索纳利

     

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

    尊敬的 Sonali:

    VREF 电压是多少? 电机关闭时为什么是1.43V、而不是1.65V?

    CONFIG VDS_CTRL_2 4A00表示您正在读取寄存器地址0xA VDS_CTRL_2。 指示的读取值为0xC000。 这表明没有故障(0xC0)、并且 VDS 阈值设置为0.06V、这是片上 VDS 监控器针对过流情况的最低设置。  

    VDS_CTRL_1寄存器中 VDS_MODE 位的设置是什么。 如果您没有使用片上 VDS 监控器、它应该为11b。 如果是其他值、则必须适当设置 VDS_CTRL_2值、以避免不必要的 OCP 检测。

      

    正如我说过的、更改 EVM 中的 CSA 增益不会影响其他寄存器。 DRV8705S-Q1广泛用于多种客户。 您是否能够对多个硬件重复此问题? 您碰巧有 EVM 需要仔细检查吗? 请详细查看您的固件、并在写入 CSA_CTRL 时、使用 Saleae 等 SPI 监听工具或带 SPI 解码器的示波器查看/捕获如果对寄存器执行了其他意外写入操作。

    此致、Murugavel

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

    您好 Murugavel:

    VREF 电压是多少? 电机关闭时为什么是1.43V、而不是1.65V? 我们已经检查过 VREF,它已经下降到2.86V。 我们使用了一个15mA 并联基准来生成一个3V3电源、3V3上的电流要求最高为40mA。 这就是 VREF 降至2.86V 的原因。 我们已将外部3.3V 电源连接到 VREF。 现在我们得到1.65V。

    我们遇到与读取寄存器值相关的固件问题、但我们已成功解决该错误。 因此、我们现在可以将 CSA_GAIN 更改为10V/V、过流问题现已得到解决。  现在、我们在20A 和25A 也会遇到过流故障。  

    对于 ADC 转换、可使用以下公式。

    返回(浮点)(20.625F -(ADC_IN * 0.010071))         .增益20V/V 和 Rsense 0.004欧姆

    此公式考虑了20.625A 的最大电流。

    现在、当增益更改为10V/V 时、更新后的 ADC 转换公式如下:

    返回(浮点数)(41.25F -(ADC_IN * 0.020141601))

    您能否确认这个新公式是否准确? 另外、原始公式中的参数0.010071代表什么?

    谢谢。

    索纳利

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

    尊敬的 Sonali:

    感谢您的更新。 我很高兴您能够识别并解决所有问题、包括过流问题。

    对于您的系统、SO 电压将为 [1.65 -(Ishunt * Rshunt * gain)] V。对于1A、SO = 1.65 -(1 * 0.004 * 10)= 1.61V。 1A 的实际电压差为1.65-1.61 = 0.04V、换言之、电流单位为安培=[(1.65 - SO)/ 0.04] A。  

    我相信 MCU 中的 ADC 是12位的、VREF = 3.3V 时、意味着0V = 0并且3.3V =  4095。因此、要从计数中获取 SO 电压读数、 则=(计数*3.3)/4095 V。

    Current = [1.65 -((计数*3.3)/4095)]/ 0.04A、即=(41.25 -计数*0.02014652) A。这些计算必须在浮点中执行、以避免精度损失。 为了达到精度、3.3V VREF 的精度很重要。

    请将此 e2e 帖子标记为已解析并在结束时关闭。谢谢。

    此致、Murugavel

      

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

    您好 Murugavel:

    感谢您的支持。

    为什么要使用4095、而我们正在使用4096进行计算?

    谢谢。

    索纳利

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

    尊敬的 Sonali:

    不用客气。 这来自微控制器中的12位 ADC。 12位的最大计数将是(2^12 - 1)= 4095、范围将是0至4095计数。

    此致、Murugavel