ZHDA058A January 2020 – February 2026 DRV8434S , DRV8889-Q1
PRODUCTION DATA
DRV8889-Q1、DRV8434S、DRV8452、DRV8461 和 DRV8462 通过 SPI 接口提供失速检测功能。这些器件的失速参数设置大致可分为两组。DRV8434S 与 DRV8452、DRV8461 和 DRV8462 具有相同的参数,而 DRV8889-Q1 具有不同的设置。为了提供全面的覆盖范围,本节将重点介绍 DRV8889-Q1 和 DRV8434S,分别代表这两个类别。
要详细了解这些器件评估模块 (EVM) 的硬件实现,请参阅相应的用户指南:DRV8889-Q1 评估模块用户指南和 DRV8434S-Q1 评估模块用户指南。此外,DRV8889-Q1 EVM GUI 用户指南和 DRV8434S EVM GUI 用户指南提供了关于通过 EVM 使用图形用户界面 (GUI) 软件的分步说明。
表 4-8和表 4-8分别概述了 DRV8889-Q1 和 DRV8434S 器件的寄存器映射,详细介绍了每个器件的寄存器配置。从下面的寄存器映射中可以看出,DRV8434S(和类似器件)有两个额外的寄存器,用于支持 STALL_TH 和 TRQ_COUNT 的位分辨率和可扩展性增加。
| 寄存器名称 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 访问 类型 | 地址 |
|---|---|---|---|---|---|---|---|---|---|---|
| FAULT 状态 | FAULT | SPI_ERROR | UVLO | CPUV | OCP | STL | TF | OL | R | 0x00 |
| DIAG 状态 1 | OCP_LS2_B | OCP_HS2_B | OCP_LS1_B | OCP_HS1_B | OCP_LS2_A | OCP_HS2_A | OCP_LS1_A | OCP_HS1_A | R | 0x01 |
| DIAG 状态 2 | UTW | OTW | OTS | STL_LRN_OK | STALL | RSVD | OL_B | OL_A | R | 0x02 |
| CTRL1 | TRQ_DAC [3:0] | RSVD | SLEW_RATE [1:0] | RW | 0x03 | |||||
| CTRL2 | DIS_OUT | RSVD | TOFF [1:0] | DECAY [2:0] | RW | 0x04 | ||||
| CTRL3 | DIR | STEP | SPI_DIR | SPI_STEP | MICROSTEP_MODE [3:0] | RW | 0x05 | |||
| CTRL4 | CLR_FLT | LOCK [2:0] | EN_OL | OCP_MODE | OTSD_MODE | TW_REP | RW | 0x06 | ||
| CTRL5 | RSVD | STL_LRN | EN_STL | STL_REP | RSVD | RW | 0x07 | |||
| CTRL6 | STALL_TH [7:0] | RW | 0x08 | |||||||
| CTRL7 | TRQ_COUNT [7:0] | R | 0x09 | |||||||
| 寄存器名称 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 访问 类型 | 地址 |
|---|---|---|---|---|---|---|---|---|---|---|
| FAULT 状态 | FAULT | SPI_ERROR | UVLO | CPUV | OCP | STL | TF | OL | R | 0x00 |
| DIAG 状态 1 | OCP_LS2_B | OCP_HS2_B | OCP_LS1_B | OCP_HS1_B | OCP_LS2_A | OCP_HS2_A | OCP_LS1_A | OCP_HS1_A | R | 0x01 |
| DIAG 状态 2 | UTW | OTW | OTS | STL_LRN_OK | STALL | RSVD | OL_B | OL_A | R | 0x02 |
| CTRL1 | TRQ_DAC [3:0] | RSVD | SLEW_RATE [1:0] | RW | 0x03 | |||||
| CTRL2 | DIS_OUT | RSVD | TOFF [1:0] | DECAY [2:0] | RW | 0x04 | ||||
| CTRL3 | DIR | STEP | SPI_DIR | SPI_STEP | MICROSTEP_MODE [3:0] | RW | 0x05 | |||
| CTRL4 | CLR_FLT | LOCK [2:0] | EN_OL | OCP_MODE | OTSD_MODE | TW_REP | RW | 0x06 | ||
| CTRL5 | RSVD | STL_LRN | EN_STL | STL_REP | RSVD | RW | 0x07 | |||
| CTRL6 | STALL_TH [7:0] | RW | 0x08 | |||||||
| CTRL7 | RC_RIPPLE[1:0] | EN_SSC | TRQ_SCALE | SATLL_TH [11:8] | ||||||
| CTRL8 | TRQ_COUNT [7:0] | R | 0x09 | |||||||
| CTRL9 | REV_ID [3:0] | TRQ_COUNT [11:8] | ||||||||
将器件设置为进行失速检测相当简单,只需几个位来控制与失速检测算法相关的关键参数。表 4-8 和 表 4-8 中突出显示了与失速检测相关的位。
当检测到失速时,STALL、STL 和 FAULT 位被锁存为高电平,并且 nFAULT 引脚被拉至低电平(如果 STL_REP 设置为 01b)。在这种失速状态下,电机轴进入停止状态,但如果电机继续接收 STEP 信号,仍可能表现出振动。当失速情况解决后,电机将恢复旋转。当通过设置 CLR_FLT 位或应用 nSLEEP 复位脉冲发出清除故障命令后,nFAULT 信号将被释放并且故障寄存器将被清除。有关 SPI 器件中失速检测相关故障情况的全面汇总,请参阅表 4-5。
| FAULT | 条件 | 配置 | H 桥 | 电荷泵 | 分度器 | 逻辑 | 恢复 |
|---|---|---|---|---|---|---|---|
| 失速检测 (STALL) | 电机失速/卡住 | STL_REP = 00b | 运行中 | 运行中 | 运行中 | 运行中 | CLR_FLT/nSLEEP |
| STL_REP = 01b | 运行中 | 运行中 | 运行中 | 运行中 |