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.

[参考译文] DRV8703-Q1:如何获得 PWM

Guru**** 2457730 points


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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1328668/drv8703-q1-how-do-i-get-pwm

器件型号:DRV8703-Q1

您好、专家:

我在调试过程中遇到一些困难。

现在 我可以执行 SPI 通信,但 无法获取 PWM。

根据我的理解,只要我设置"nSLEEP"=1 ,"MODE"=HiZ ,"IN1"=1"IN2"=0 ,我就会得到 PWM。 (如果我错了、请提醒我)

但  我设置"nSLEEP"= 1、"MODE"= HiZ、"IN1"= 1 "IN2"= 0、 VDS 和 GDF 状态寄存器= 0x04。无论我如何配置它、 VDS 始终会发生过流。 我想知道我是否错过了一些东西

Br、

环银

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

    尊敬的 Huan:

    感谢您在此论坛中发帖。 为了使器件在 PWM 输入 H 桥模式下上电、MODE 引脚必须为 HiZ、同时 nSLEEP = 0并转换为1。 然后、当 nSLEEP = 1时、器件会唤醒并将 MODE 状态(输入 HiZ)锁存至 PWM 输入 H 桥模式。 在如表7-5所示的这个电桥控制模式中、输入中的一个必须为高电平(IN1)、而另外一个输入(IN2)必须具有一个具有可变占空比的 PWM 输入、以便改变输出端的 BDC 电机的速度。 当 IN2为高电平且 IN1使用 PWM 进行输入时、电机将以相反的方向旋转。 在测试过程中为输入提供了多大的输入 PWM 频率和占空比?

    当 PWM 输入= 0时、将驱动电机。 当 PWM 输入= 1时、IN1和 IN2都将为高电平、导致电机绕组中电流的低侧 FET 慢速衰减。 每个 PWM 开/关周期都会执行该过程。 可以在不使用 PWM 输入的情况下以100%的速度驱动电机、而是将其中一个输入设置为低电平、而将另一个输入设置为高电平。   

    测试过程中是否启用并使用了电流调节? 使用了哪些电流调节设置和使用的感应电阻器?  使用的电源电压是多少? 连接到输出端的负载类型是什么?  

    VDS 和 GDF 状态寄存器= 0x04表示 L2_VDS 低侧 FET 具有 VDS 错误。 默认 VDS 设置为0.96V、除非您将其更改为较低的值。 如果您使用的 FET 有2 mΩ Rdson、则0.96V 意味着0.96/0.002 = 480A 经由 LS2 FET 流过、电流异常高-这实际上不是一种可能性。 使用的 FET 的 Rdson 是多少。 您是否能够使用电流探针测量通过负载的电流尖峰? 如果您可以通过使用 nFAULT 引脚触发捕捉(需要上拉)来共享报告 VDS 过流时获取的电流波形、这将非常有用。 如果我们能看到驱动器和输出 FET 的周围原理图、它将帮助我们进行调试。 谢谢。  

    此致、Murugavel  

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

    您好、Murugavel

    您说过" 其中一个输入必须为高电平(IN1)、另一个输入(IN2)必须具有具有可变占空比的 PWM 输入、以便改变输出端的 BDC 电机的速度。"。 我可以使用 SPI 通信使 IN1变为高电平、但我不知道如何  在 IN2中输入具有可变占空比的 PWM 输入。可能我需要另一个芯片来生成 PWM、然后 PWM 连接到 IN2作为输入?  我认为 DRV8703可以单独生成 PWM。 我似乎被误解了。

    电源电压为12V、 连接到输出端的负载类型是 直流减速电机。

    我 对硬件进行了一些更改。 尽管电机成功旋转、故障状态寄存器= 0x88 (VM 欠压)。 12V 电压首先变为6V、最终达到11V、电流也达到0.2A 的最大限值。我将配置 PWM 输出、看看会发生什么情况

    Br、

    环银

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

    尊敬的 Huan:

    是的、PWM 通常由微控制器生成。 只有在需要进行 PWM 速度控制时、才需要此选项。 不需要速度控制的应用可由 SPI IN1和 IN2控制。 DRV8703没有用于驱动电机的内部 PWM。  

    此器件的 EVM https://www.ti.com/tool/DRV8703-Q1EVM?keyMatch=DRV8703-Q1EVM 使用 TI 微控制器生成 PWM 来控制电机转速。 包括 EVM 原理图在内的硬件文件可从 https://www.ti.com/lit/zip/slvc675下载。 EVM 固件源代码可从  https://dr-download.ti.com/secure/software-development/support-software/MD-KF25Q3LqZz/01.00.00.0A/slvc673a.zip 下载。  

    您说"我 对硬件做了一些更改。 尽管电机成功旋转、故障状态寄存器= 0x88 (VM 欠压)。 12V 电压首先变为6V、最终达到11V、电流也达到0.2A 的最大限值。" 电源是否设置了电流限制? BDC 电机在启动期间具有较大的浪涌电流、此电流可达几十至30安培、直到电机达到速度并且产生足够的反电动势(BEMF)来抵抗电流、直到电机以固定速度运行时达到平衡稳态电流。 限流电源将无法在这些高电流下维持输出电压、驱动器将报告 VM 欠压。 VMUV 还会在 UV 情况下禁用输出驱动、从而使电机线圈不会达到所需的启动和运行电流。

    "我将配置 PWM 输出、看看会发生什么情况"。 让 PWM 输入并将占空比从0%斜升至100%用于电机的软启动将减轻这种浪涌电流、这反过来将降低电机启动期间应用的峰值可用扭矩。 启动的配置方式取决于应用。 通过将内部电流调节配置为所需的目标电流、也可以减轻浪涌电流。 这不需要外部 PWM。 相反、驱动器会在内部生成 TON 和 tOFF 用于斩波器电流调节。  

    此致、Murugavel    

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

    您好、Murugavel

    我配置了 PWM、现在电机能够更好地运行。 但仍有一个 ERROR:FAULT 状态寄存器= 0x88 (VM 欠压锁定)。 这是什么意思? 您问我"电源是否设置了电流限制?"、答案是肯定的。 我设置了 一个 12V 功率的电流限值-- 电流限值是0.2A。可能是什么导致了误差?

    您说过"不需要速度控制的应用可由 SPI IN1和 IN2控制。"我不明白这句话、您能再说一遍吗? 如何使用 DRV8703仅通过 SPI IN1和 IN2控制电机?不需要外部 PWM?

    我将会增大电流限制、看看效果是否会更好。

    Br、

    环银

     

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

    尊敬的 Huan:

    0.2A 的电流限制肯定会导致 VMUV 误差。 您可能需要增大电流限制。 理想情况下、电流限制应该能够支持电机的启动浪涌电流。

    您可以使用主控制寄存器中突出显示的以下位以完全开启或完全关闭的方式运行电机。 由于没有 PWM 或软启动、因此您应配置电流调节、以便在需要时限制启动浪涌电流。

    数据表的这一部分讨论电流调节-见下文。

    此致、Murugavel

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

    您好、Murugavel

    现在我 将电流限值增加到2A、FAULT 状态寄存器为 true (0x00)。  感谢您的回答!

    也许我似乎能够理解:如果我想配置 IN1和 IN2、我可以从外部上下拉 IN1和 IN2、或者我也可以使用 SPI 通信来写入 主控制寄存器。  这两种方法都可以实现电机驱动。 (如果我错了、请更正我)

    最后,我不知道 PH 或 EN 是什么意思(IN1/PH,IN2/EN)。可能是 EN 的意思是"启用"?

    Br、

    环银

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

    尊敬的 Huan:

    感谢您的更新。 我很高兴提高电流限制为您解决了 VMUV 问题。

    "我似乎理解了:如果我想配置 IN1和 IN2、我可以从外部上下拉 IN1和 IN2、或者我也可以使用 SPI 通信来写入 主控制寄存器。  这两种方法都可以实现电机驱动。"。 正确。 引脚输入采用逻辑或、即 SPI 相应的输入位。

    " PH 或 EN 的含义(IN1/PH、IN2/EN)"。 有关桥接控制、请参阅下面的逻辑表。 该器件支持三种工作模式。 其中一种是独立半桥 PWM 输入控制模式。 这用于使用单独控制的两个半桥。

    其余两种模式支持全桥运行。

    PH 和 EN 控制模式: 这是双向 BDC 电机控制的常用模式、称为相位和使能控制。 PH 引脚用于改变方向、EN 引脚用于 PWM 输入。 该模式的优点是仅在一个引脚 EN 上需要一个 PWM 输入、即可在两个工作方向上控制电机的速度。 您可能会注意到、在 PWM tOFF 期间以及当 EN = 0时、再循环电流将流经表中的低侧 FET SH1和 SH2 =低电平。 在此模式下、支持内部电流调节。 在此模式下也没有滑行选项。 不过、nSLEEP 还可以呈现桥接器 Hi-Z。   

    PWM 控制模式: 在此模式下、引脚采用 IN1和 IN2、即两个 PWM 输入。 对于方向1、PWM 输入应提供给 IN1、对于方向2、 PWM 输入应提供给 IN2。 对于方向1和2、如果非 PWM INx = 1、则电桥输出将在 PWM tOFF 期间处于活动状态、在 TON 周期再循环电流将通过低侧 FET 流过。 当 IN1 = IN2 = 1时、不会驱动负载。 负载行为将与 PH/EN 模式类似、因为在此模式下、再循环会在 LS-FET 中发生。 不同之处在于 PWM 输入必须在两个单独的引脚 IN1和 IN2上、占空比将反相、PWM TON 桥处于电流再循环状态、tOFF 桥激活驱动负载。  在此模式下、支持内部电流调节。  

    在该 PWM 控制模式下、当 IN1 = IN2 = L 时、H 桥将处于惯性滑行模式(HI-Z)。 在此模式下、如果来自反电动势的电机端子电压(当电机驱动在全速运行时通过使 IN1 = IN2 =0立即停止时)、或通过齿轮传动系手动驱动电机-如在车门或尾门中、 电压高于 VM 时、将有电流通过 FET 的体二极管流入电源。 根据 VM 上的大容量电容和电源设计、可能会暂时泵回 VM 电压、并且 VM 电压可能会在短时间内增加。 VM 可能会增加到驱动器和/或 FET 的绝对最大额定电压以上、并对其造成永久损坏。 对于该控制模式、负载将 在 PWM TON 周期期间被驱动、并在 tOFF 期间滑行。 此模式不适合内部电流调节、因为 将不存在电流再循环慢速衰减。 与基于再循环的驱动模式相比、在相同的 PWM 占空比下、电机运行速度可能更快。   

    驱动程序支持这些灵活的选项、使您能够为您的应用选择最适合的工作模式。 希望这些信息对您有所帮助。   

    此致、Murugavel

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

    您好、Murugavel

    感谢您的回答。 它对我有很大帮助!

    Br、

    环银