ZHCSN95A August   2022  – December 2022 DRV8452

PRODUCTION DATA  

  1. 特性
  2. 应用
  3. 说明
  4. 修订历史记录
  5. 引脚配置和功能
  6. 规格
    1. 6.1 绝对最大额定值
    2. 6.2 ESD 等级
    3. 6.3 建议的工作条件
    4. 6.4 热性能信息
    5. 6.5 电气特性
      1. 6.5.1 SPI 时序要求
      2. 6.5.2 STEP 和 DIR 时序要求
    6. 6.6 典型特性
  7. 详细说明
    1. 7.1 概述
    2. 7.2 功能方框图
    3. 7.3 特性说明
      1. 7.3.1  运行接口
      2. 7.3.2  步进电机驱动器电流额定值
        1. 7.3.2.1 峰值电流额定值
        2. 7.3.2.2 均方根电流额定值
        3. 7.3.2.3 满量程电流额定值
      3. 7.3.3  PWM 电机驱动器
      4. 7.3.4  微步进分度器
      5. 7.3.5  分度器输出
        1. 7.3.5.1 nHOME 输出
      6. 7.3.6  自动微步模式
      7. 7.3.7  自定义微步进表
      8. 7.3.8  电流调节
        1. 7.3.8.1 内部基准电压
      9. 7.3.9  电流调节衰减模式
        1. 7.3.9.1 慢速衰减
        2. 7.3.9.2 混合衰减
        3. 7.3.9.3 智能调优动态衰减
        4. 7.3.9.4 智能调优纹波控制
        5. 7.3.9.5 PWM 关断时间
        6. 7.3.9.6 电流调节消隐时间和抗尖峰脉冲时间
      10. 7.3.10 使用外部电阻器进行电流检测
      11. 7.3.11 静音步进衰减模式
      12. 7.3.12 自动扭矩动态电流调节
        1. 7.3.12.1 自动扭矩学习例程
        2. 7.3.12.2 电流控制环路
        3. 7.3.12.3 PD 控制环路
        4. 7.3.12.4 通过自动扭矩提高效率
      13. 7.3.13 静止省电模式
      14. 7.3.14 电荷泵
      15. 7.3.15 线性稳压器
      16. 7.3.16 VCC 电压电源
      17. 7.3.17 逻辑电平、三电平和四电平引脚图
      18. 7.3.18 展频
      19. 7.3.19 保护电路
        1. 7.3.19.1  VM 欠压锁定
        2. 7.3.19.2  VCP 欠压锁定 (CPUV)
        3. 7.3.19.3  逻辑电源上电复位 (POR)
        4. 7.3.19.4  过流保护 (OCP)
          1. 7.3.19.4.1 锁存关断
          2. 7.3.19.4.2 自动重试
        5. 7.3.19.5  失速检测
        6. 7.3.19.6  开路负载检测 (OL)
        7. 7.3.19.7  过热警告 (OTW)
        8. 7.3.19.8  热关断 (OTSD)
          1. 7.3.19.8.1 锁存关断
          2. 7.3.19.8.2 自动重试
        9. 7.3.19.9  电源电压检测
        10. 7.3.19.10 nFAULT 输出
        11. 7.3.19.11 故障条件汇总
      20. 7.3.20 器件功能模式
        1. 7.3.20.1 睡眠模式
        2. 7.3.20.2 禁用模式
        3. 7.3.20.3 工作模式
        4. 7.3.20.4 nSLEEP 复位脉冲
        5. 7.3.20.5 功能模式汇总
    4. 7.4 编程
      1. 7.4.1 串行外设接口 (SPI) 通信
        1. 7.4.1.1 SPI 格式
        2. 7.4.1.2 用于菊花链配置的多个目标器件的 SPI
        3. 7.4.1.3 用于并行配置的多个目标器件的 SPI
    5. 7.5 寄存器映射
      1. 7.5.1 状态寄存器
        1. 7.5.1.1 FAULT(地址 = 0x00)[默认值 = 00h]
        2. 7.5.1.2 DIAG1(地址 = 0x01)[默认值 = 00h]
        3. 7.5.1.3 DIAG2(地址 = 0x02)[默认值 = 00h]
        4. 7.5.1.4 DIAG3(地址 = 0x03)[默认值 = 00h]
      2. 7.5.2 控制寄存器
        1. 7.5.2.1  CTRL1(地址 = 0x04)[默认值 = 0Fh]
        2. 7.5.2.2  CTRL2(地址 = 0x05)[默认值 = 06h]
        3. 7.5.2.3  CTRL3(地址 = 0x06)[默认值 = 38h]
        4. 7.5.2.4  CTRL4(地址 = 0x07)[默认值 = 49h]
        5. 7.5.2.5  CTRL5(地址 = 0x08)[默认值 = 03h]
        6. 7.5.2.6  CTRL6(地址 = 0x09)[默认值 = 20h]
        7. 7.5.2.7  CTRL7(地址 = 0x0A)[默认值 = FFh]
        8. 7.5.2.8  CTRL8(地址 = 0x0B)[默认值 = 0Fh]
        9. 7.5.2.9  CTRL9(地址 = 0x0C)[默认值 = 10h]
        10. 7.5.2.10 CTRL10(地址 = 0x0D)[默认值 = 80h]
        11. 7.5.2.11 CTRL11(地址 = 0x0E)[默认值 = FFh]
        12. 7.5.2.12 CTRL12(地址 = 0x0F)[默认值 = 20h]
        13. 7.5.2.13 CTRL13(地址 = 0x10)[默认值 = 10h]
      3. 7.5.3 索引寄存器
        1. 7.5.3.1 INDEX1(地址 = 0x11)[默认值 = 80h]
        2. 7.5.3.2 INDEX2(地址 = 0x12)[默认值 = 80h]
        3. 7.5.3.3 INDEX3(地址 = 0x13)[默认值 = 80h]
        4. 7.5.3.4 INDEX4(地址 = 0x14)[默认值 = 82h]
        5. 7.5.3.5 INDEX5(地址 = 0x15)[默认值 = B5h]
      4. 7.5.4 自定义微步进寄存器
        1. 7.5.4.1 CUSTOM_CTRL1(地址 = 0x16)[默认值 = 00h]
        2. 7.5.4.2 CUSTOM_CTRL2(地址 = 0x17)[默认值 = 00h]
        3. 7.5.4.3 CUSTOM_CTRL3(地址 = 0x18)[默认值 = 00h]
        4. 7.5.4.4 CUSTOM_CTRL4(地址 = 0x19)[默认值 = 00h]
        5. 7.5.4.5 CUSTOM_CTRL5(地址 = 0x1A)[默认值 = 00h]
        6. 7.5.4.6 CUSTOM_CTRL6(地址 = 0x1B)[默认值 = 00h]
        7. 7.5.4.7 CUSTOM_CTRL7(地址 = 0x1C)[默认值 = 00h]
        8. 7.5.4.8 CUSTOM_CTRL8(地址 = 0x1D)[默认值 = 00h]
        9. 7.5.4.9 CUSTOM_CTRL9(地址 = 0x1E)[默认值 = 00h]
      5. 7.5.5 自动扭矩寄存器
        1. 7.5.5.1  ATQ_CTRL1(地址 = 0x1F)[默认值 = 00h]
        2. 7.5.5.2  ATQ_CTRL2(地址 = 0x20)[默认值 = 00h]
        3. 7.5.5.3  ATQ_CTRL3(地址 = 0x21)[默认值 = 00h]
        4. 7.5.5.4  ATQ_CTRL4(地址 = 0x22)[默认值 = 20h]
        5. 7.5.5.5  ATQ_CTRL5(地址 = 0x23)[默认值 = 00h]
        6. 7.5.5.6  ATQ_CTRL6(地址 = 0x24)[默认值 = 00h]
        7. 7.5.5.7  ATQ_CTRL7(地址 = 0x25)[默认值 = 00h]
        8. 7.5.5.8  ATQ_CTRL8(地址 = 0x26)[默认值 = 00h]
        9. 7.5.5.9  ATQ_CTRL9(地址 = 0x27)[默认值 = 00h]
        10. 7.5.5.10 ATQ_CTRL10(地址 = 0x28)[默认值 = 08h]
        11. 7.5.5.11 ATQ_CTRL11(地址 = 0x29)[默认值 = 0Ah]
        12. 7.5.5.12 ATQ_CTRL12(地址 = 0x2A)[默认值 = FFh]
        13. 7.5.5.13 ATQ_CTRL13(地址 = 0x2B)[默认值 = 05h]
        14. 7.5.5.14 ATQ_CTRL14(地址 = 0x2C)[默认值 = 0Fh]
        15. 7.5.5.15 ATQ_CTRL15(地址 = 0x2D)[默认值 = 00h]
        16. 7.5.5.16 ATQ_CTRL16(地址 = 0x2E)[默认值 = FFh]
        17. 7.5.5.17 ATQ_CTRL17(地址 = 0x2F)[默认值 = 00h]
        18. 7.5.5.18 ATQ_CTRL18(地址 = 0x30)[默认值 = 00h]
      6. 7.5.6 静音步进寄存器
        1. 7.5.6.1 SS_CTRL1(地址 = 0x31)[默认值 = 00h]
        2. 7.5.6.2 SS_CTRL2(地址 = 0x32)[默认值 = 00h]
        3. 7.5.6.3 SS_CTRL3(地址 = 0x33)[默认值 = 00h]
        4. 7.5.6.4 SS_CTRL4(地址 = 0x34)[默认值 = 00h]
        5. 7.5.6.5 SS_CTRL5(地址 = 0x35)[默认值 = FFh]
  8. 应用和实现
    1. 8.1 应用信息
    2. 8.2 典型应用
      1. 8.2.1 设计要求
      2. 8.2.2 详细设计过程
        1. 8.2.2.1 步进电机转速
      3. 8.2.3 应用性能曲线图
      4. 8.2.4 热应用
        1. 8.2.4.1 功率损耗
        2. 8.2.4.2 导通损耗
        3. 8.2.4.3 开关损耗
        4. 8.2.4.4 由于静态电流造成的功率损耗
        5. 8.2.4.5 总功率损耗
        6. 8.2.4.6 器件结温估算
        7. 8.2.4.7 热像图
  9. 散热注意事项
    1. 9.1 散热焊盘
    2. 9.2 PCB 材料推荐
  10. 10电源相关建议
    1. 10.1 大容量电容
    2. 10.2 电源
  11. 11布局
    1. 11.1 布局指南
    2. 11.2 布局示例
  12. 12器件和文档支持
    1. 12.1 相关文档
    2. 12.2 接收文档更新通知
    3. 12.3 支持资源
    4. 12.4 商标
    5. 12.5 静电放电警告
    6. 12.6 术语表
  13. 13机械、封装和可订购信息

封装选项

机械数据 (封装 | 引脚)
散热焊盘机械数据 (封装 | 引脚)
订购信息

失速检测

使用 SPI 接口工作时,DRV8452 支持失速检测。

步进电机的绕组电流、反电动势和电机的机械扭矩负载之间有着独特的关系,如图 7-43 所示。对于空载电机,反电动势与绕组电流之间呈 90° 异相。对于给定的绕组电流,当电机负载接近电机的最大扭矩能力时,反电动势将与绕组电流同相。通过检测电机电流的上升和下降电流象限之间的反电动势相移,DRV8452 可检测到电机过载失速情况或线路末端运动。

GUID-8FCBA2FD-7B1A-4DE1-81A6-0B93919F899B-low.gif图 7-43 通过监控电机反电动势进行失速检测

失速检测算法在以下情况下启用:

  • 该器件编程为使用 SPI 接口运行 (MODE = 1)

  • 衰减模式编程为智能调优纹波控制 (DECAY = 111b)

  • EN_STL 为 1b

  • 不存在故障条件(UVLO、OCP、OL、OTSD 等)。

该算法可通过监控 PWM 关断时间来比较上升和下降电流象限之间的反电动势,并生成一个称为扭矩计数的参数,该参数由 TRQ_COUNT 寄存器表示。进行比较时,TRQ_COUNT 值在很大程度上与电机电流、环境温度和电源电压无关。即使驱动器在全步进模式下运行,也可以检测电机失速。

TRQ_COUNT 的计算结果是最近四个电气半个周期的运行平均值。TRQ_COUNT 寄存器每个电气半个周期更新一次。更新后的 TRQ_COUNT 与 STALL_TH 进行比较,如果检测到失速情况,则会在电气半个周期电流过零时报告并锁存失速故障。

对于轻载电机,TRQ_COUNT 将为非零值。当电机接近失速状态时,TRQ_COUNT 将接近零并可用于检测失速状态。

  • 如果任何时候 TRQ_COUNT 降至失速阈值(由 STALL_TH 寄存器表示)以下,该器件将检测到失速。

  • STALL、STL 和 FAULT 位将在 SPI 寄存器中被锁存为 1b。

  • STL_REP 位控制失速的报告方式。

    • 如果 STL_REP 位为 1b,当检测到失速时,nFAULT 引脚将被驱动为低电平。

    • 如果 STEL_REP 为 0b,则即使检测到失速,nFAULT 引脚也将保持高电平。

在失速情况下,电机轴不会旋转。当失速条件消失并且电机转速从零升至其目标速度时,电机会呈斜坡趋势增加到目标转速。当通过 CLR_FLT 位或 nSLEEP 复位脉冲发出清除故障命令后,nFAULT 将被释放并且故障寄存器将被清除。

电机线圈阻抗较高可能会导致 TRQ_COUNT 低。TRQ_SCALE 位允许按比例调高 TRQ_COUNT 值,以便于进一步处理。

  • 如果最初计算的 TRQ_COUNT 值小于 500,并且 TRQ_SCALE 位为 1b,则 TRQ_COUNT 输出寄存器将乘以 8。

  • 如果 TRQ_SCALE 位为 0b,TRQ_COUNT 会保留算法最初计算的值。

失速阈值可通过两种方式设置 –

  • 用户可以通过观察 TRQ_COUNT 输出在所有运行条件下的行为来写入 STALL_TH 位。

  • 该算法可以使用自动失速学习过程来学习失速阈值,如下所述:

    • 开始学习之前,请确保电机已达到其目标速度。请勿在电机转速加快或减慢时学习失速阈值。

    • 通过将 STL_LRN 位设置为 1b 开始学习。

    • 空载运行电机。

    • 等待 32 个电气周期,让驱动器了解稳态计数。

    • 让电机失速。

    • 等待 16 个电气周期,让驱动器了解失速计数。

    • 如果学习成功,STL_LRN_OK 位会变为 1b。

    • 失速阈值计算为稳定计数和失速计数的平均值,并存储在 STALL_TH 寄存器中。

下面展示了有关如何设置失速阈值的流程图。

图 7-44 失速学习流程图

有时,由于电机运行或失速时扭矩计数不稳定,自动失速学习过程可能无法成功进行。例如,当电机具有较高的线圈电阻或以非常高或低的速度运行时,扭矩计数可能会随时间变化很大,并且稳定计数与失速计数之间的差异可能很小。在这种情况下,建议不要使用自动失速学习方法。用户应仔细研究整个工作条件范围内的稳定计数和扭矩计数,并将阈值设为介于最小稳定计数和最大失速计数之间的中间值。

在一种速度下获得的失速阈值可能不能充分适合其他速度。建议每当电机转速变化百分比大于 10% 时,均重新获得失速阈值。

注:

  • 失速检测算法取决于修改 PWM 关断时间的反电动势。反电动势与电机转速成正比。为了使失速检测可靠工作,电机速度应足够高,以便能够生成具有足够振幅的反电动势。电机线圈电阻越高,实现可靠失速检测所需的最低速度就越大。

  • 当器件通过切换 EN_OUT 位或 ENABLE 引脚从禁用模式(H 桥高阻态)进入激活模式时;或者当器件通过发出 CLR_FLT 从故障中恢复时,失速检测故障也可能会被标记。这是因为 TRQ_CNT 达到高于 STL_TH 的值所花费的时间。由于失速故障,nFAULT 可能会保持低电平(如果 STL_REP = 1b),并且需要另一个 CLR_FLT 来释放失速故障和 nFAULT 引脚。这可通过以下方式来表示:

    • 启用活动模式后启用失速检测(仅在写入 EN_OUT = 1b 并使 ENABLE = 逻辑高电平后,才能写入 EN_STALL = 1b)

    • 仅在电桥处于激活模式或已发出 CLR_FLT 命令以清除故障条件后才启动 STEP 脉冲。

  • 如果由于低电源电压、高线圈电阻或电机高速而导致无法进行电流调节,失速检测可能无法可靠地工作,因为 TRQ_COUNT 可能不稳定并可能跳至高值。可以通过查看线圈电流波形来检查和确认这一点。如果线圈电流具有标准正弦波形,并且正弦波的峰值达到所需的满量程电流,则失速检测将可靠地工作。如果由于高速或低电源电压而导致电流波形为三角形,则失速检测算法可能无法可靠地运行。

  • 如果 EN_STL = 1b 并且还启用了自动扭矩,则当检测到电机失速时,线圈电流会变为 ATQ_TRQ_MAX。

  • 如果 EN_STL = 0b 并且启用了自动扭矩,则当电机失速时,线圈电流会变为 ATQ_TRQ_MIN。