工具/软件:
当我尝试启用制动功能时、MCF8316D 会立即在 CONTROLLER_FAULT_STATUS 寄存器中报告 WATCHDOG_FAULT。 发生什么事了?
我已通过以下设置启用看门狗计时器(都在单个 I2C 寄存器写入操作中一次性设置) :
- EXT_WDT_EN = 1(启用)
- EXT_WDT_INPUT_MODE = 0(通过 I2C 进行触发)
- EXT_WDT_FAULT_MODE = 1(将 MOSFET 锁存为高阻态)
- EXT_WDT_CONFIG = 1(2 秒)
无论 EXT_WDT_FAULT_MODE 或 EXT_WDT_CONFIG 的值如何、行为都是相同的 。 无论看门狗超时如何或看门狗最近被触发、WATCHDOG_FAULT 在激活制动器时立即触发。 在制动器停用之前、无法清除 WATCHDOG_FAULT。
无论我是将 BRAKE_INPUT 设置为 0(硬件引脚)、还是打开 BRAKE 引脚或将 BRAKE_INPUT 设置为 1(覆盖硬件引脚和 BRAKE)、该行为都是相同的。
如果电机运行得足够快、可以启用软停止功能、则该行为是不同的。 在这种情况下、当我激活制动器时、ALGORITHM_STATE 转换到 SOFT_STOP、电机逐渐减速。 一旦电机转速低于软停止阈值、ALGORITHM_STATE 转换到 BRAKE_ON_STOP、WATCHDOG_FAULT 立即触发、电机不会制动。
我发现这种行为非常神秘。 我能够使用 EVM 板和我自己的 PCB 进行重现设计。
如何 将制动器与看门狗一起使用?
Jeff。