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.

[参考译文] DRV8718S-Q1EVM:使用 DRV8718S-Q1 查询电流检测和失速检测

Guru**** 2606725 points


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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1579375/drv8718s-q1evm-query-on-current-sensing-and-stall-detection-with-drv8718s-q1

器件型号:DRV8718S-Q1EVM


尊敬的 TI 支持团队/论坛:

我使用的是 DRV8718S-Q1 电机驱动器、希望在通过集成电流检测放大器监测电机电流方面提供指导。 具体而言、我有以下问题:

  1. 如何使用此 IC 检测正常工作电流并检测失速电流?

  2. 为了获取电流检测 ADC 值、应读取或写入哪些 SPI 寄存器?

  3. 电机正常运行和失速情况下的预期 ADC 值范围是多少?

  4. 如何校准或解读 ADC 值以可靠地检测失速情况?

用于正常电流与失速电流的任何 SPI 命令示例、寄存器地址或参考值都将非常有用。

感谢您的帮助。

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

    尊敬的 Shahajahan:  

    感谢您的发布。  

    如何使用此 IC 检测正常工作电流并检测失速电流?

    通过数据表或进行测量、您的应用中有刷直流 (BDC) 电机的正常工作电流和失速电流是多少? 根据此电流值、您可以区分正常稳态电流与失速电流、后者通常远高于 BDC 电机中的稳态电流。  

    ]为了获取电流检测 ADC 值、应读取或写入哪些 SPI 寄存器?

    DRV8718S-Q1 没有 ADC。 它具有一个具有模拟输入和输出的集成电流检测放大器 — 见下文的数据表。 外部电流分流电阻器和负载电流与 CSA_DIV_x 和 CSA_GAIN_x 的 CSA_CTRL1 寄存器设置相结合、有助于确定 SOx 上的模拟输出。 我假设您将 DRV8718S-Q1 的 SOx 输出连接到外部 ADC 输入。

    当负载电流为 0 时、SOx 将是选定的 VAREF/2 或 VAREF/8 电压输出。 当存在负载电流时、输出电压会更低或更高、具体取决于电流极性、Rshunt 值和 GAINx 设置。 您 可以根据应用的设置值和硬件设计来计算预期的模拟输出电压。  

    电机正常运行和失速情况下的预期 ADC 值范围是多少?

    这取决于您的电机特性、工作电压、Rshunt、VAREF 设置和增益以及外部 ADC 特性、我们对这些特性一无所知。 您可以根据我们在数据表中提供的信息以及上面的前两点来计算此值。

    如何校准或解释 ADC 值以可靠地检测失速情况?

    这取决于使用的外部 ADC 和比例因子。 我们无法对此作出评论。 ADC 供应商也许可以指导您如何校准 ADC 以获得准确的结果。  

    此致、Murugavel  

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

    您好 Murugavel、

    关于电流检测、我还有一个问题:

    • 在顺时针旋转的正常操作期间、可以得到 0.45–0.52V 监测周围的热电偶。 当 motor1 达到其最大位置(失速条件)时、ADC 读数将变为 接近 0V SO1 上、我要发送 SPI 数据 地址 0x26 数据 0x30

    • 在逆时针旋转的正常操作过程中、我得到了 0.65V 至 0.72V 监测周围的热电偶。 当 motor1 达到其最大位置(失速)时、ADC 读数变为 1.1V 至 1.22V 、我将使用发送 SPI 数据 地址 0x26 数据 0x30

    • 在顺时针旋转的正常操作期间、可以得到  0.45–0.52V  微控制器。 当 motor2 达到其最大位置(失速条件)时、ADC 读数将变为  接近 0V  SO1 上、我要发送 SPI 数据  地址 0x26   数据 0x06

    • 在逆时针旋转的正常操作过程中、我得到了  0.65V 至 0.72V  微控制器。 当 motor2 达到其最大位置(失速)时、ADC 读数变为  1.1V 至 1.22V 、我将使用发送 SPI 数据  地址 0x26   数据 0x06

    这些值是否正确?

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

    尊敬的 Shahajahan:  

    我无法对 ADC 读数进行注释、因为我不知道您是如何通过偏移和调节进行 ADC 数学运算的。 这在 DRV8718S-Q1 外面。 您提到 CSA_CTRL 寄存器设置为 0x06。 这意味着 CSA1 设置为 AREF / 2、10V/V 增益、CSA2 设置为 AREF / 8 和 40V/V 增益。  

    当电机电流为零时、SO1 将为 AREF / 2 伏、SO2 将为 AREF / 8 伏。 我不知道无论与电机串联还是在低侧 FET 处、电流分流器是如何连接的。 基于此、输出电压会发生变化。 假设 采用直列式连接、当电机分别以 CW 或 CCW 的方式运行时、SO1 将高于或低于 Aref/2 值。 同样、SO2 会高于或低于 AREF / 8 值。

    [引述 userid=“596352" url="“ url="~“~/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1579375/drv8718s-q1evm-query-on-current-sensing-and-stall-detection-with-drv8718s-q1/6092929
    • 在顺时针旋转的正常操作期间、可以得到 0.45–0.52V 监测周围的热电偶。 当 motor1 达到其最大位置(失速条件)时、ADC 读数将变为 接近 0V SO1 上、我要发送 SPI 数据 地址 0x26 数据 0x30

    • 在逆时针旋转的正常操作过程中、我得到了 0.65V 至 0.72V 监测周围的热电偶。 当 motor1 达到其最大位置(失速)时、ADC 读数变为 1.1V 至 1.22V 、我将使用发送 SPI 数据 地址 0x26 数据 0x30

    • 在顺时针旋转的正常操作期间、可以得到  0.45–0.52V  微控制器。 当 motor2 达到其最大位置(失速条件)时、ADC 读数将变为  接近 0V  SO1 上、我要发送 SPI 数据  地址 0x26   数据 0x06

    • 在逆时针旋转的正常操作过程中、我得到了  0.65V 至 0.72V  微控制器。 当 motor2 达到其最大位置(失速)时、ADC 读数变为  1.1V 至 1.22V 、我将使用发送 SPI 数据  地址 0x26   数据 0x06

    这些值是否正确?

    [/报价]

    我可以说、假设采用直列式电流检测和适当的 ADC 读数比例、趋势看起来是正确的。  

    此致、Murugavel