尊敬的团队:
我遇到了一个问题、即处于诊断模式的 DIAG_RESULT 和 FB_STS 仅几次变为1、否则 DIAG_RESULT 变为0 (正常)。
即使当 DIAG_RESULT 和 FB_STS 变为1时、也会根据请求正常工作。
您能告诉我们准确诊断的正确步骤和条件吗?另外、我想知道这个诊断功能是如何确定正常/异常的。
提前感谢您提供的任何帮助。
此致、
高桥义树
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.
尊敬的团队:
我遇到了一个问题、即处于诊断模式的 DIAG_RESULT 和 FB_STS 仅几次变为1、否则 DIAG_RESULT 变为0 (正常)。
即使当 DIAG_RESULT 和 FB_STS 变为1时、也会根据请求正常工作。
您能告诉我们准确诊断的正确步骤和条件吗?另外、我想知道这个诊断功能是如何确定正常/异常的。
提前感谢您提供的任何帮助。
此致、
高桥义树
尊敬的 Takahashi-San:
欢迎使用 E2E!
首先、我要确保 LRA 牢固地连接到器件输出引脚、并且 LRA 已安装到质量上以进行测试。 (原型器件或代表质量)。 校准或诊断失败的最常见问题是硬件设置。
从数据表中可以看出、它指定了诊断是在检查 LRA 是否开路还是短路。
我还怀疑它正在检查来自 LRA 的反电动势。 如果反电动势过大、则会使 ADC 饱和并导致诊断失败。
如果是这种情况、则增加寄存器0x1C 中的 SAMPLE_TIME、IDISS_TIME 和 DELAY_TIME 参数可能会有所帮助。 我建议将这些值全部增大到最大值、并检查诊断性能是否更一致。 然后、可以减少这些、直到再次出现此问题。
此致、
Arthur
尊敬的 Takahashi-San:
抱歉、我不应该假设使用了电机。 我与团队讨论了这个问题、我们不认为此器件上的诊断例程是在检查反电动势。 如数据表中所述、它会检查开路负载或短路负载。
遗憾的是、该 IC 的设计人员几年前就已经离开团队。 请允许我查看此 IC 的旧内部文档、并查看是否有有关诊断例程通过失败限制的详细信息。 我明天会给你一个回应。
此致、
Arthur
尊敬的 Arthur:
感谢您的答复以及花时间测试具有可变电阻负载的 EVM。 感谢您努力查找诊断例程的通过失败标准。
除了我之前的问题外、我还有几个关于 ERM 电机使用的问题:
问题 1:ERM 电机使用自动校准是否有效? 此外、是否保存自动校准的结果? 如果它们得到了保存、我想知道如何重置它们。
问题 2:您能否提供有关使用 ERM 电机时所需设置的信息?
提前感谢您的帮助。
此致、
高桥
尊敬的 Takahashi-San:
我使用电阻负载进行了测试、发现当仅使用电阻负载时、诊断例程始终会失败。 这表示诊断例程正在从 ERM 搜索有效的 BEMF。
您还提到、FB_STS 位将变为1、这表示无法从 ERM 检测到 BEMF。 如果电机旋转方向较弱、则可能会发生这种情况。 如果我降低过驱电压太高、我能够导致诊断失败。 您使用的额定电压设置是多少? 如果您提高额定电压、诊断例程是否能够可靠地通过?
进行解答
1) 1)是的、需要为 ERM 电机执行自动校准以实现最佳制动性能。 数据表的第7.5.6节介绍了校准例程的输入和输出。 校准后、所有值都保存在器件寄存器中。 它们存储在寄存器0x16-0x1C 中。 要对其进行复位、可使用默认值对其进行覆盖、或者可通过 POR 对器件进行复位。
2) 2)要驱动 ERM 电机、所有必要的寄存器设置都是自动校准例程的"输入"。 但是、其中的大多数可保留为默认值。 需要更改的是"N_ERM_LRA"、"RATED_VOLTAGE"和"OD_CLAM"。
此致、
Arthur
Arthur、您好!
感谢您更新我的先前问题的答案。
感谢您使用电阻负载进行测试并调查诊断例行程序。 我将按照您的建议检查过驱电压和额定电压设置。 我还有两个问题:
1) 1)如果我理解正确、自动校准结果将在电源关闭时重置。 是这样吗? 如果是这样、是否可以防止自动校准结果即使在电源关闭时也被重置?
2) 2) ERM 电机是否必须进行自动校准? 能否使用不带自动校准功能的 ERM 电机?
再次感谢您的帮助。
此致、
高桥义树
尊敬的 Takahashi-San:
1) 1)您的理解是正确的、在 POR 期间、将重置寄存器。 DRV2605支持 OTP 存储器、用于将校准值存储在非易失性存储器中。 请参阅数据表中的"7.5.7编程片上 OTP 存储器"部分
2)仅当您快速停止 ERM 振动时才需要自动校准。 例如、如果所需的波形为"咔嗒"声。 如果应用将使用 ERM 持续时间较长的"蜂鸣"波形、则无需校准、并且器件可在开环模式下使用。
此致、
Arthur
尊敬的 Arthur:
感谢您提供的信息。 感谢您的及时响应。
我知道 Haptic Control Console GUI 可用于将电压转换为十六进制值。 不过、是否可以在没有评估板的情况下使用 GUI?
此外、我想确认公式中参考的电压 V (ERM-OL_AV)和 Vdc。
关于随附的图像、您能否告诉我如何计算10^-3和 OD_CLAMP?
此外、我知道诊断功能会检查反电动势。 是否有任何方法可以在不实际使电机振动的情况下进行诊断? 此外、是否有办法在不使用诊断功能的情况下检测断线?
提前感谢您的帮助。
此致、
高桥义树
尊敬的 Takahashi-San:
是的、在未连接 EVM 的情况下、HCC GUI 可用于计算电压值
V (ERM-OL_AV)是 ERM 模式开环的平均稳态电压。 此值( V (ERM-OL_AV))将编程到 OD_CLAMP 中。
21.96x10^-3是科学符号。 这表示"0.02196"
当 OD_CLAMP = 0x89时(如随附的图像所示)
十进制(0x89)= 137
137*0.02196 = 3.00852 V
自动校准例程和诊断例程是确定传动器运行状况的唯一方法。
此致、
Arthur
尊敬的 Arthur:
感谢您的答复。
比较是在 OD_CLAMP 设置为0xFF 和0x3F (低于该值时振荡变得更弱)的情况下进行的。 这些分别是在执行100次诊断运行后断开导线的次数。
抱歉、对于0xFF、情况并没有变得更糟。
另外、请解释为什么要减少 OD_CLAMP 以确认这一点。
- 0xFF : 3/100
- 0x3F : 2/100
更改了寄存器。 (除以下寄存器外、未进行任何更改。)
-过驱钳位电压寄存器: 0xB6.
- CONTROL3寄存器: 0xA0
模式为 RTP 模式。
此外、还附上了该器件的原理图和图像。
您能评论一下吗?
- 原理图
-图像
我还有一个问题、什么寄存器是诊断反 EMF 的阈值?
此致、
高桥义树
尊敬的 Arthur:
感谢您的答复。
应确认生产过程中的诊断。 您能否提前提供解决方法?
ERM 是否总是必须胶粘? 为什么会这样呢?
当前设备有一个用于防止断开振动部件的游隙,并且没有粘结。
您设置的寄存器和电路的值是否正确? 是否存在任何短缺?
在我的环境中、当执行自动校准来诊断问题时、有些情况下未检测到误报。 我认为这表明诊断受到自动校准的影响。
是否有任何会影响诊断的寄存器?
此致、
高桥义树
尊敬的 Takahashi-San:
我建议的解决方法是:
-由于故障是3/100,不可能两个连续的诊断例程都返回一个失败的结果。 在生产线上、每个系统可以运行两次诊断例程、只有在两个诊断测试都返回失败结果时才会将其视为失败。
ERM 不需要粘附、但我只想确保它被牢牢固定、因为如果传动器松动、它可能会影响结果。
对于 ERM 开环、您的寄存器设置是正确的、因为不使用闭环算法、所以没有其他寄存器要调整。
我可以认为只有两个寄存器可能影响诊断结果、我认为 AUTO_CAL_TIME[1:0]将影响诊断例程的持续时间(除了自动校准)。 较长持续时间运行诊断可能使其收敛于更准确的结果。
我无法提供有关诊断例程功能的确切详细信息、因为设计人员几年前就已经离开团队、 但是、如果诊断例程由于 BEMF 读数不良而失败、那么 A_CAL_BEMF[7:0]可能会影响结果、则该寄存器存储以额定电压驱动 ERM 时生成的 BEMF 电平。 调整该寄存器可能会影响故障率
此致、
Arthur
尊敬的 Arthur:
感谢您的答复。
感谢您了解诊断可信度。
关于诊断结果、我们已确认、当 DIAG_RESULT 为1时、FB_STS 也始终为1。
FB_STS 在数据表中表示"当 ERM 反电动势为零的时间超过~10ms 时、在 ERM 模式下"。 何时测量该反电动势? 是否进行了多次测量?
此外、是否存在即使器件在诊断过程中振动也不会产生反 EMF 的情况? 会出现什么情况?
此致、
高桥义树