工具与软件:
我将使用开发板上的 MCT8316A BLDC 电机控制器、以恒定速度驱动小型液体泵。 它配置用于模拟速度输入和闭环功率控制、限制在25W。
当电路板在 SPEED/WAKE 引脚上以0V 启动、并且在芯片激活后速度增加时、一切都按预期运行。 在这种情况下、即使是手动停止转子时、控制器也能正确地将功率限制在大约24.5W、功耗保持在25W 以下。
下面是此状态下的示波器截图。 绿色表示 A 相电流、黄色表示 A 相电压。 有人能解释一下为什么在 电流峰的末端有一个"凹痕"吗?
不过、当 SPEED/WAKE 引脚保持高电平(3.3V)(要求最大速度(25W))的同时、对 VBAT 进行下电上电时、控制器似乎失去功率调节功能。 泵以大约26.5W 的功率运行、如果转子失速、功率会大幅上升到超过30W、而不是限制在25W。 尽管电机仍然以20kHz 的频率进行开关、但声音也不同。 下面是此状态下的示波器截图。 如您所见、电流现在相对均匀地达到峰值、没有先前观察到的"凹痕"。
有趣的是、可以通过将 SPEED/WAKE 引脚驱动为低电平、然后再次升高来解决此问题。 一旦状态机返回空闲状态并重新对齐电机、一切都会正常运行。
- 当 SPEED/WAKE 在启动时处于高电平时、启动行为是什么? 哪个环路受控?
- 是否有简单的方法可以确保电源控制环路始终强制执行25W 限制、即使在速度/唤醒处于高电平的启动时也是如此?
02-04-2025更新: 驾驶员还可以通过切换制动开关进入这种故障状态、从而失去正确调节的能力。 几次切换后、最终会处于这种不良状态。
有趣的是、在该状态期间、GUI 报告 DC_BATT_POW = 13.55W、而实际电路消耗的功率为25.7W、但转子失速时、它可能超过30W。 似乎电源控制环路无法准确检测输入电流消耗。 是否有人认为这可能是什么原因造成的?
非常感谢您提供任何见解或配置建议! 我的寄存器配置如下:
{ "signature": "oneui-register-data", "data": [ [ { "idx": 0, "id": "isd_config", "value": "0x6F04C100" }, { "idx": 1, "id": "motor_startup1", "value": "0x38C6D197" }, { "idx": 2, "id": "motor_startup2", "value": "0x1B39D990" }, { "idx": 3, "id": "closed_loop1", "value": "0x1145F200" }, { "idx": 4, "id": "closed_loop2", "value": "0x0272D4C8" }, { "idx": 5, "id": "closed_loop3", "value": "0x4CC40101" }, { "idx": 6, "id": "closed_loop4", "value": "0x000CE944" }, { "idx": 7, "id": "const_speed", "value": "0x00000506" }, { "idx": 8, "id": "const_pwr", "value": "0x0640464D" }, { "idx": 9, "id": "150_deg_two_ph_profile", "value": "0x36DB6DA6" }, { "idx": 10, "id": "150_deg_three_ph_profile", "value": "0x36DB6D80" }, { "idx": 11, "id": "trap_config1", "value": "0x054BA106" }, { "idx": 12, "id": "trap_config2", "value": "0x42880000" } ], [ { "idx": 0, "id": "fault_config1", "value": "0x78FC4822" }, { "idx": 1, "id": "fault_config2", "value": "0x7147A009" } ], [ { "idx": 0, "id": "gd_config1", "value": "0x1C440109" }, { "idx": 1, "id": "gd_config2", "value": "0x14800000" } ], [ { "idx": 0, "id": "pin_config1", "value": "0x2D720600" }, { "idx": 1, "id": "pin_config2", "value": "0x080C0000" }, { "idx": 2, "id": "device_config", "value": "0x7FFF0000" }, { "idx": 3, "id": "peri_config", "value": "0x00000000" } ], [ { "idx": 0, "id": "ana_trim3", "value": "0x48004800" }, { "idx": 1, "id": "ana_trim4", "value": "0x00000000" }, { "idx": 2, "id": "ana_trim5", "value": "0x00000039" }, { "idx": 3, "id": "ana_trim6", "value": "0x00000000" }, { "idx": 4, "id": "ana_trim7", "value": "0x00000000" }, { "idx": 5, "id": "ana_trim8", "value": "0x00004AA4" }, { "idx": 6, "id": "ana_trim9", "value": "0x008DE820" }, { "idx": 7, "id": "ana_trim10", "value": "0x536B023B" } ], [ { "idx": 0, "id": "algo_reserved1", "value": "0x00000000" }, { "idx": 1, "id": "algo_reserved2", "value": "0x00000000" }, { "idx": 2, "id": "algo_reserved3", "value": "0x00000000" } ], [ { "idx": 0, "id": "gate_driver_fault_status", "value": "0x00000000" }, { "idx": 1, "id": "controller_fault_status", "value": "0x00000000" } ], [ { "idx": 0, "id": "sys_status1", "value": "0x0119FF10" }, { "idx": 1, "id": "sys_status2", "value": "0x200105CB" }, { "idx": 2, "id": "sys_status3", "value": "0x00E10631" } ], [ { "idx": 0, "id": "device_ctrl", "value": "0x00000000" } ], [ { "idx": 0, "id": "algo_ctrl1", "value": "0x00000000" } ] ] }