工具与软件:
我将使用开发板上的 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"
}
]
]
}