工具/软件:
我设计了一个使用两个 MCT8329A 的电路板、每个驱动非常不同的电机。 一切都运行得很漂亮 — 我的电机启动,我可以正确控制其速度,IPD/开环/运行期间的相电流与我使用相关参数(IPD_CURR_THR、OL_ILIMIT、CBC_ILIMIT 等)配置的相电流完全相同。 因此、我的电流检测似乎很完美。 我的检测电阻为 10mR、这在我设计电路板时似乎刚刚好、很高兴变成了 DC_BUS_CURR 假设的值。
现在一切都运行良好、我正在监控所有内部测量、以便为用户提供良好的反馈。 VOLT_MAG 和 MOTOR_SPEED 等字段完全符合我的预期。 但在电机运行时、DC_BUS_CURR 几乎粘在 0xFFFF、停止时为 0x0000、但在大力加速期间偶尔读取一些非常高的中间数。 此外、DC_BATT_POW 不正确。 它在运行时读取 0xF356 等值、这绝对不是正确的。
反复研究一些设置、我发现这与单向电流检测的使用有关。 如果设置了 VREF_SEL(双向)、则 DC_BUS_CURR 和 DC_BATT_POW 似乎正常。 我没有执行/256 和/64 来检查确切的值、但它们读数是在正确的棒球场中的较小数字。 但是、单向电流检测会更好地满足我的应用的需求、因此我清除了 VREF_SEL、这似乎导致 DC_BUS_CURR 和 DC_BATT_POW 失衡。
任何人都可以确认这是坏的,或打算工作? 我还应该做些什么来纠正这个问题吗? 我的应用程序完全不需要这样做、但我的 自检将 从中受益。