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.

[参考译文] DRV8832-Q1:积分器延迟和电机速度控制

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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1107852/drv8832-q1-integrator-delay-and-and-motor-speed-control

器件型号:DRV8832-Q1
主题中讨论的其他器件:DRV8830DRV8832

您好!

在上一篇文章 中提到了这一点

>VSET 可在电机运行时进行调节,但由于功能方框图中所示的积分器,在电机达到新目标电压之前会有一些延迟。

我有兴趣将其用于具有反向摆动任务(2轮平衡器)的机器人平台、并担心任何额外的延迟。 我们在这里讨论的延迟是多少? 微秒? 毫秒? 秒?

此外、我还对论坛以及数据表如何指定来控制电机速度感到好奇。 根据数据表(第7.3.2节):

它说、我们应该"在将一个 PWM 信号施加到另一个输入逻辑高电平的同时、保持一个输入逻辑高电平。 如果逻辑输入保持低电平、则器件将循环进入和退出睡眠模式、从而在每次退出睡眠模式时使 FAULTn 引脚变为低电平脉冲。" 这是否会导致 PWM 过低而导致车轮制动而不是滑行的时间? 这似乎会产生一组接近失速电流。 有人能否澄清这是否正确、如果正确、为什么这不会在每个 PWM 周期中引起接近失速电流? 如果这是错误的、我们应该将逻辑输入保持在低电平、那么我们如何避免这个 FAULTn?

此致、
Christopher

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

    您好、Christopher、

    [引用 userid="472359" URL"~支持/电机驱动器组/电机驱动器/f/电机 驱动器-forum/1107852/drv8832-Q1-integrator-delay-and-and-Motor-speed-control"]我想将其用于具有反向轮式平衡器任务(增加了2轮式平衡器)的机器人平台。 我们在这里讨论的延迟是多少? 微秒? 毫秒? 秒?[/报价]

    该延迟将在微秒范围内。

    [引用 userid="472359" URL"~支持/电机驱动器组/电机驱动器/f/电机 驱动器-forum/1107852/drv8832-Q1-integrator-delay-and-and-Motor-speed-control"]这是否会导致 PWM 低电平导致轮子制动而不是滑行的时间? 这似乎会产生一组接近失速电流。 有人能否澄清这是否正确、如果正确、为什么这不会在每个 PWM 周期中引起接近失速电流? 如果这是错误的、我们应该将逻辑输入保持在低电平、那么我们如何避免这个 FAULTn?

    当控制信号 IN1和 IN2均为低电平时、器件进入睡眠模式。 在睡眠模式下、H 桥被禁用(高阻态)。 仅在两个高侧 FET 时发生制动。

    [~ userid="472359" url="μ A/support/moter-drivers-group/moter-drivers/f/moter-drivers-forume/1107852/drv8832-Q1-integrator-delay-and-and-moter-speed-control"]这似乎会产生一组接近失速电流。 有人能否澄清这是否正确、如果正确、为什么这不会在每个 PWM 周期中引起接近失速电流? 如果这是错误的、我们应该将逻辑输入保持在低电平、那么我们如何避免这个 FAULTn?

    我不会真正关注您的问题。 您能澄清一下。

    此致、

    Pablo Armet

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

    感谢 Pablo 的答复。

    [~ userid="411901" URL""/supit/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrators-delay-and-and-motor-speed-control/4107269#4107269"]当控制信号 IN1和 IN2均为低电平时、器件将进入睡眠模式。 在睡眠模式下、H 桥被禁用(高阻态)。 仅在两个高侧 FET 时发生制动。 [/报价]

    数据表显示、我们应该"在将一个 PWM 信号施加到另一个输入逻辑高电平的同时、保持一个输入逻辑高电平。 如果逻辑输入保持低电平、则器件将循环进入和退出睡眠模式、从而在每次退出睡眠模式时使 FAULTn 引脚变为低电平脉冲。"

    这是否意味着在50%输出时继续前进、我们应该保持 IN1为高电平、并且根据上面屏幕截图中的表1 H 桥逻辑、在 IN2上实现50%占空比的 PWM? 如果是、当 PWM 信号在(周期的50%)期间处于高电平时、这将导致 IN1高电平和 IN2高电平、这将根据同一表产生"制动"功能。

    如果我对这里的内容有误解、请说明我们应该如何在50%输出时应用50%占空比 PWM、而不会制动、也不会在每个 PWM 周期导致 FAULTn 引脚脉冲低电平?

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

    查看评估板后(https://www.ti.com/lit/ug/slvu472/slvu472.pdf?ts=1654791698084)

    看起来速度是通过 Vset 通过可变电压和 POT 或一些外部电压源进行控制的。 您能否使用 PWM 来改变 Vset 上的电压、或者您如何使用 DRV8832-Q1以编程方式控制速度? DRV8830看起来是可通过 I2C 进行控制的、但 DRV8832有某种方法可以通过 PWM 控制速度、但我可能会误解这一点。

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

    因此、如果进一步阅读数据表、我意识到我需要使用 VSET 来控制速度。 我仍然不清楚是否可以使用 PWM 改变这里的电压、或者我应该使用数字电位计或其他东西(也许可以使用这两种方法)。 此外、与 I2C 版本相比、这在我的案例中为每个电机添加了一个额外的 GPIO、但这会导致一个相关的问题。

    我看不到任何针对 VSET 的推荐/绝对额定值。 我可以将其设置为 VCC 最大值(6.8V)吗? 第7.3.4节中似乎建议、如果我要使用 VREF、我只能将其设置为5.14V 的最大值。 我想知道这是为什么、是否可以忽略 VREF 并使用高达6.8V 的电压?

    此外、Vout 似乎未在任何地方指定、但根据图2、似乎建议典型范围为0.75至4.5V。 这是因为 H 桥 FET 上的电压降吗? 即 6.8的 VCC 降至4.5V。对于 FET 而言、这似乎是一个相当高的压降。

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

    您好、Christopher、

    [引用 userid="472359" URL"~/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrator-delay-and-and-motor-speed-control/4107511#4107511"]这并不意味着以50%的输出前进、我们应该根据 IN1高占空比保持 PWM 逻辑在上面的 INH 桥上? 如果是、当 PWM 信号在(周期的50%)期间处于高电平时、这将导致 IN1高电平和 IN2高电平、这将导致根据同一表执行"制动"功能。[/QUERP]

    如果一个 IN 保持高电平、而另一个 PWM 处于任何占空比、则 H 桥将根据 INx 信号保持高电平在制动或正向/反向之间转换。 您的理解是正确的。

    [引用 userid="472359" URL"~/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrator-delay-and-and-and-motor-speed-control/4107810#4107810"]我仍然不清楚是否可以使用数字电压/电压转换器来改变电压[如果使用数字电压或电压转换器/电压转换器]

    VSET 无需 PWM 即可控制电机速度。 电机速度由 INX 信号控制。 H 桥处于正向或反向状态的时间越长、电机中的平均电流越高、因此电机速度越高。 例如,在 IN1保持高电平且 IN2 PWM 的情况下,IN2接通时间占空比越低,H 桥处于正向状态的时间就越长。 因此、占空比越低、电机的旋转速度就越快。 Vset 仅设置输出电压调节点、不适用于我的电机速度控制。 当 OUTx_averal_DC_VOLTE/4降至 VSET 以下时、VSET 将增大占空比。 这将有助于在电机中保持相同的平均电流并保持相同的速度。

    [~引语 userid="472359" URL"/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrators-delay-and-and-motor-speed-control/4107810#4107810"]
    此外、Vout 似乎未在任何地方指定、但根据图2、似乎建议典型范围为0.75至4.5V。 这是因为 H 桥 FET 上的电压降吗? 即 6.8的 VCC 降至4.5V。对于 FET 而言、这似乎是相当高的压降。[/quot]

    最大 VOUT 将等于电源电压(VCC)、但如果 VSET 设置为调节至低于 VCC、则会更低。

    希望这能解答您的问题。

    此致、

    Pablo Armet

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

    感谢巴勃罗的答复,但我想我现在更困惑了。 如果您实际上应该通过 IN PWM 信号来控制速度、那么恒定的 Vset 似乎会导致电压调节与我所理解的 PWM 输入控制发生冲突。 请允许我举例说明:

    在第7.3.3节中描述 VSET 的用法时、它指出:

    >电路监控输出引脚之间的电压差并将其集成,以获得平均直流电压值。 该电压除以4并与 VSET 引脚电压进行比较。 如果平均输出电压(除以4)低于 VSET、则 PWM 输出的占空比将增加;如果平均输出电压(除以4)高于 VSET、则占空比将减小。

    如果我使用第8.2.2.1节中给出的示例值、则 VCC 的变化范围为4.5至5.5、 并使用4.5/4 = 1.125V 的 Vset、因此如果输出引脚之间的电压(电机上的电压)低于4.5V、稳压器将增加输出占空比、以使电机上的电压恢复到4.5V、 如果高于4.5V、则会降低占空比。

    如果我将 IN1保持在高电平并且在 IN2上保持 PWM、在100%占空比时、我应该处于 IN1 = 1、IN2 = 1 (即制动器)和0%占空比 IN1 = 1、IN2 = 0 (全速前进)。 IN2处的任何 PWM 占空比、除了输出上产生的4.5V 平均电压之外、都将由稳压器进行调节、 除非您按照章节7.3.3末尾的说明通过将 Vset 设置为高于 VCC 来禁用电压稳压器、否则无法通过 IN2引脚进行速度控制:

    >请注意,如果编程的输出电压大于电源电压,设备将以100%占空比运行,并且电压调节功能将被禁用。 在此模式下、器件充当传统的 H 桥驱动器。

    或者我是否误解了这里的内容?

    数据表和评估指南似乎也与您的答案相冲突、因此您能澄清一下吗?

    [~引脚 userid="411901" URL"/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrators-delay-and-and-and-motor-speed-control/4108746#4108746"]VSET 无需 PWM 即可控制电机速度。 电机速度由 INX 信号控制。 [/报价]

    这似乎与数据表第7.3.2节第2段的末尾相冲突:

    >要控制电机转速,请使用 VSET 引脚,如下所述。

    和评估板指南第4.2.1节、其中规定:

    >您可以通过调整 R5来设置电机电压(速度)

    和第4.2.4节详细说明了什么是 R5:

    R5允许直接在 EVM 上生成和调整 VSET 电压

    指南中介绍了我们通过 R5调整 VSET 以设置电机速度。 如果您在第7.3.2节中查看 DRV8830的数据表、这也是 I2C 接口的情况、其中不使用电位计调节 Vset 来调节速度、而是通过 I2C 进行设置、以实现相同的功能。  我还在评估板指南中看不到关于使用 PWM 驱动 IN1或 IN2的任何说明。

    [~ userid="411901" URL"/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrator-delay-and-and-and-motor-speed-control/4108746#4108746"]如果一个 IN 在任何占空比下都保持高电平、则取决于 INX 或 INH 之间的正向或反向高电桥转换。 您的理解是正确的。 [/报价]

    这不是问题吗? "制动"一词在这里可能是用词不当? 我认为这相当于在全速前进(PWM 高电平)和踩下制动器(PWM 低电平)之间交替。 与正向和滑行之间的循环相比、这似乎会产生大量不必要的电流、并浪费大量功率。 我在其他[threads]中看到了有关这一点的一些讨论、但我仍然不清楚这是为什么。 TI 或其他公司是否有相关的应用手册? 乍一看、应用"制动"似乎会引起接近失速电流、但我想我会误解这一点。

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

    您好、Christopher、

    感谢您提供详细信息。 请给我24小时的时间进行回顾并提供答案。 提前感谢您的耐心等待。

    此致、

    Pablo Armet

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

    您好、Christopher、

    很抱歉答复很晚。

    对这里的混乱也表示歉意。 我在上一次的答复中弄错了。 正确、VSET 可用于通过电压调节设置电机转速。 但是、您仍然可以使用 IN1和 IN2信号进行电机速度控制、但必须首先禁用电压调节。

    [引用 userid="472359" URL"~/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrators-delay-and-and-motor-speed-control/4109052#4109052"]与反向和反向功率循环相比、这似乎会产生大量的电流、浪费。 我在其他[threads]中看到了有关这一点的一些讨论、但我仍然不清楚这是为什么。 TI 或其他公司是否有与此相关的应用手册?

    应用手册 介绍了不同的衰减模式。 本应用手册中的制动术语不同。 应用手册将制动称为慢速衰减。

    此致、

    Pablo Armet

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

    感谢您确认 Pablo。 我将通读应用手册、并告诉您稍后是否有任何后续问题。

    [~引脚 userid="411901" url="/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrators-delay-and-and-and-motor-speed-control/4113081#4113081"]您是对的、可以使用 VSET 通过电压调节来设置电机转速[引用/引用]。

    您是否知道是否可以通过 PWM 来控制它、或者我是否需要来自数字电位器或其他线性稳压器的稳定电压? 使用 PWM 实现更容易/更便宜、但我不确定 VSET 上是否存在会被 PWM 混淆的采样频率或类似频率。

    [引用 userid="411901" url="~/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrators-delay-and-and-and-motor-speed-control/4113081#4113081"]但是、您仍可以使用 IN1和 IN2信号进行电机速度控制、但必须先禁用报价/ IN2。]

    您能否确认如何禁用此功能? 我想在解释数据表时做了一些假设。

    >请注意,如果编程的输出电压大于电源电压,设备将以100%占空比运行,并且电压调节功能将被禁用。 在此模式下、器件充当传统的 H 桥驱动器。

    我假设将 Vset 设置为高于或等于 VCC 会禁用它、但再次来看、它看起来好像不是通过 Vset 禁用的、 但仅当"输出电压大于电源电压"时、即使我将 Vset 设置为 VCC、如果我在 IN1和 IN2处使用 PWM 来降低电机上的输出电压、输出电压也会降至 Vset 以下、 稳压器将再次启动、因为输出电压低于电源电压。 这反过来意味着我只能使用100% PWM (即不能执行除全速之外的任何操作)。 您能否确认有关如何在 IN1和 IN2上使用 PWM 以及禁用电压调节的详细信息? 我想将功能构建到电路板中、以便使用这两种方法进行测试、因此我想更好地了解如何实现这两种方法。  

    此致、
    Christopher

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

    您好、Christopher、

    [~ userid="472359" URL" URL ="Δ t/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrators-delay-and-and-and-motor-speed-control/4113358#4113358]\n 您是否知道可以通过 PWM 控制此情况、或者是否需要使用稳压器稳压器或稳压器来控制此情况? 使用 PWM 实施会更容易/更便宜、但我不确定 VSET 上是否存在会被 PWM混淆 的采样频率或类似频率[/引述]

    PWMing VSET 的主要问题是内部比较器导致的延迟、如链接的文章中所述。 我建议使用评估模块来测试这是否适用于您的设计。 我猜、如果 PEM 频率较低、它可以工作。

    [~用户名="472359" URL" URL ="μ C/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrators-delay-and-and-Motor-speed-control/4113358#4113358]\n 您能否确认如何禁用此功能? 我认为在解释数据表时、我做了一些假设[/quot]

    让我在内部对此进行研究。 我也作了这一假设。 我将在得到答案后返回给您。

    此致、

    Pablo Armet

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [~ userid="411901" url="Δ t/support/motor-drivers-group/motor-drivers/f/motor-drivers-forume/1107852/drv8832-Q1-integrators-delay-and-and-motor-speed-control/4114662#414662]让我在内部对此进行研究。 我也作了这一假设。 得到答案后、我会返回给您。

    感谢 Pablo、我期待您就此问题再次提出意见。

    此致、

    Christopher

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

    克里斯托弗没有问题。 请让我等到 EOD 的星期一再回来。

    此致、

    Pablo Armet

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

    您好、Christopher、

    很抱歉在这里答复很晚。

    只是想为这个线程提供一些接近。 我向我们的设计团队咨询了禁用电压调节的问题。

    在我看来、如果编程的输出电压(VOUT_PROG)大于电源电压、则器 件以100%的(客户编程占空比)运行、因此占空比的自主控制将会丢失、我们可以说电压调节已禁用。

    从数学角度讲、我们可以说、如果-

    VOUT_PROG > VCC                 [1]

    不过、我们也可以从上面看到

    VOUT_PROG = 4*VSET              [2]

    因此、根据[1][2]、 我们可以得出禁用电压调节的条件为:

    VSET > VCC/4                     [3]

    例如、只需设置 VSET=VCC、就应该这样做。  

    此致、

    Pablo Armet