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.
目前、参考代码和库不能直接用于 F280041。 我们正在为包括 F28004x 在内的最新 C2000器件更新 IPD&HFI 库。 它是否准备就绪。 谢谢!
BTW、如果您尝试自己设计 IPD&HFI 算法、请告知具体问题。
代码和库何时准备就绪有时间线吗? 是否有可以共享或尝试的早期版本?
是否没有适用于 F280041的任何工具可以提高我的从零开始起步阶段?
我们已经实施了自己的 IPD、但在它运行之后仍然存在反向运动、因此它似乎没有很好地从 IPD 过渡到观测器。 您能提供从 IPD 过渡到 Instaspin 观测器的指导/帮助吗? 是否有步骤缺失或未正确关闭? 我们已经尝试关闭力角、但正如我们所认为的那样、当转子反向旋转几度时、力角仍然不起作用。
是否可以将这些问题脱机并通过电子邮件进行讨论?
抱歉。 我们很难尽早与您分享代码、而且我们也没有可靠的计划来发布代码。
是否没有任何可用的 F280041可以从零开始提高我的起点?
是否要以满载启动电机?
我们已经实施了我们自己的 IPD,但在它运行后,仍然存在反向移动,因此它似乎没有很好地从 IPD 过渡到观测器。 您能提供从 IPD 过渡到 Instaspin 观测器的指导/帮助吗?
您可以尝试将角度形式 IP 设置为估算器、以便开始使用 InstaSPIN-FOC。
如何设置从 IPD 到估算器的角度以开始使用 InstaSPIN - FOC?
您可以尝试使用以下代码:
est_setAngle_rad (obj->estHandle、obj->angleFOC_rad);
您能详细说明一下代码位于何处吗?
使用后是否需要注释掉任何内容?
我认为此时可能不需要强制角?
您能详细说明该代码应该位于何处吗? [/报价]启用 FAST 估算器并尝试启动电机后、您可以在 ISR 或控制环路中添加代码。
使用后是否需要注释掉任何内容?否。
我认为此时可能不需要强制角吗?否。 强制角适用于低速、而不适用于转子对齐。
[/quote]
是否应关闭强制角或强制角是否预计不会产生影响?
当电机当前启动时(无 IPD)、强制角会影响启动质量。
如果不对低速使用 HFI、最好启用力角。
是、按照下面的 InstaSPIN 用户指南所述
Rs 值不正确(尤其是高于实际 Rs 值的值)会导致启动状态不佳。 您可以参阅 InstaSPIN-FOC 和 InstaSPIN-MOTION 用户指南中的第14章"管理启动时的满负载、低速和速度反转"
https://www.ti.com/lit/spruhj1
我在 UG 中看不到 HFI、我是否有访问权限了解如何实施它?
UG 14.5.2.2满载和电机对齐条件下以最快速度启动电机示例:
这对我来说似乎是最相关的部分。 Rs 重校准描述了重新对准过程中电机的物理运动。 如果我正在实现 IPD、那么我不应该进行 Rs 重校准?
我的电机有一个单向轴承、用作支撑、因此电机仅沿一个方向物理旋转。
可以。 用户指南中不包含 IPD 内容。 目前、IPD&HFI 仅支持具有显著凸极比的 IPM 电机、无法通过 F28004x 上的 InstaSPIN-FOC 实现。
Rs 不是必需的。 您可以使用自己的 IPD 算法来检测初始转子位置。
好的。 我们将回顾 从 IPD 到估算器的实现。 这里可能有问题。
启用 FAST 估算器并尝试启动电机后、您可以在 ISR 或控制环路中添加代码。
[/报价]您能否更详细地分享此内容-可能是 code composer 的屏幕截图、这样我们就可以了?
Yanming 您可以中止哪个代码正在启用 FAST 估算器吗?
启用 FAST 估算器并尝试启动电机后、您可以在 ISR 或控制环路中添加代码。
[/报价]InstaSpin 已开启和启用后、我们目前正在运行 IPD。 我不确定这与启用 FAST 估算器时所做的事情是一样的。
我住在休斯顿、靠近舒格兰。 是否有可能带来我的电路板/电机并通过集成帮助工作? 我认为这将有助于更高效地获得解决方案。
您使用的是哪个示例实验? 可在启用 FAST 估算器后添加代码、如下所示。 或者当您尝试启动电机以使用 FAST 估算器的角度时。
//启用估算器
est_enable (obj->estHandle);
est_setAngle_rad (obj->estHandle、obj->angleFOC_rad);
它应基于 Lab07并将确认。
以下是启用估算器时的代码。
我是否应该从 Est_enable (estHandle)更新为 Est_enable (obj->estHandle)
然后在第664行中插入 est_setAngle_rad (obj->estHandle、obj->angleFOC_rad)?
是否有可以根据即将完成的 IPD 工作分享的示例?
您能否简单介绍 一下我们应该如何实现 IPD 和与 Instaspin 进行集成?
是否有一个可以根据即将到来的 IPD 工作进行共享的示例? [/报价]抱歉。 F28004x 没有 IPD&HFI 示例。
[/quote]您是否能够提供有关我们应该如何实施 IPD 并与 Instaspin 集成的详细信息? [/报价]如上所述,我们正计划在这方面开展工作。 如果您只想使用 IPD 检测启动的初始位置而不产生反向旋转、则只需先执行 IPD、然后将检测初始角度设置为启动/运行 FAST。
这似乎比我预期的在 IPD 和 FAST 开始之间实现转换所需的简单一些。
您是否知道这将根据您自己的 IPD 的实际实施工作?
您是否具有在 IPD 之后以负载启动电机以及转换到 FAST 以了解其是否能够实现的相关经验?
您是否知道这将基于您自己的 IPD 的实际实施而起作用?
您是否具备在 IPD 后以负载启动电机并转换到 FAST 以了解它是否能够使用的经验?
IPD 仅用于可用于低速的初始位置检测。 HFI 方法用于 IPD 和低速。 您可以选择在低速和重负载下运行电机。 IPD 不够、最好避免反向旋转。
如上所述、电流 IPD&HFI 仅适用于具有显著凸极比的 IPM 电机。 因此、我不确定这是否能够适用于您的电机。
是的、IPD 仅用于位置检测。 您认为低速是什么?
HFI 与 IPD 结合使用以实现低速运行?
这应该是一个完整的句子吗? 这里什么被视为低速和重负载? 低速是否为额定转速的10%、高负载是否为额定扭矩的90%? 我可以想象它会因系统而异、但是否有粗略的估算?
我有一个 IPM 电机。 我如何确定凸极比是否显著?
是的,IPD 仅用于位置检测。 您认为低速是什么?
HFI 与 IPD 一起用于低速运行?
可以。 对于低速应用、必须使用 HFI 或基于传感器的 FOC。
[报价 userid="559352" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1216345/implementation-of-ipd-hfi-and-afsel/4608730 #4608730"]这是否应该是一句完整的句子? 这里什么被视为低速和重负载? 低速是否为额定转速的10%、高负载是否为额定扭矩的90%? 我可以想象它会因系统而异,但是否有粗略的估算?可以。 估算角度将不准确且稳定、这可能难以在更高负载下运行电机。 并非取决于电机和电流与电压采样电路的特定数据。
我有一个 IPM 电机。 我如何确定是否有显著的凸极比率?
您可以从制造商处获取电机参数(Ld 和 Lq)。
电感(线对线)只有一个值、因此它一定不会明显、正确吗?
使用 IPD 时、估算角度 不会达到100%的精度、我明白了这一点。
它应该提供单向启动、对吗?
根据精度、在 FAST 接管之前会发生扭矩损失。 如果 IPD 估算的精度为50%、那么在 FAST 开始之前、我是否可以预期最大扭矩的50%?
看起来是正确的。 您需要向电机的制造商确认这一点。
它应该提供单向开始,正确吗?
就像我对你的答复一样。 IPD&HDI 仅适用于 IPM 电机。 如果电机是 SPM、并且 LD 等于或接近 LQ、则 IPD&HFI 不工作、并且无法检测到初始转子位置、以避免反向。 如上所述、您必须使用自己的 IPD 算法来检测初始转子角度并将角度设置为 FAST、以便启动和运行电机。
根据精度,在 FAST 接管之前会出现扭矩损失。 如果 IPD 估算的精度为50%、那么在 FAST 接管之前、我需要最大扭矩的50%吗?
我不能完全理解你的意思。 如果您不需要以极低的速度运行电机、而只是启动较高的电机、FAST 应该可以正常工作、如上所述。
Yanming -现在我们正在运行 IPD、会生成角度、但 instaspin 不具有该角度。 电机以与 IPD 未运行相同的响应启动。 我们还能够在不集成到 instaspin 的情况下测试 IPD、因此存在 instapsin 不正确获取值的问题。
您可以尝试 在 mainISR()中按如下方式插入 IPD 代码。
if (IPD_RUN_FLAG == true)
{
EST_setAngle_rad (estHandle、ANGLE_IPD_rad);
if (IPD_DONE_FLAG == true)
{
IPD_run();
IPD_RUN_FLAG = false;
IPD_DONE_FLAG = false;
}
}
//
//运行估算器
//
EST_run (estHandle、&estInputData、&estOutputData);
如果仍有任何其他问题、请发送代码给我。
我们将更新代码以进行匹配。 我们的代码与您展示的代码并不远。
分享我们的守则以供您查看的最佳方式是什么?
您能否共享您的电子邮件以便我可以向您发送我拥有的代码?
如上所述、您可以先尝试一下。 如果您对此仍有任何问题、可以发送电子邮件给我。 我可以发送一个链接到您、供您将代码上传到 TI 驱动器。
这不起作用。
当我们将 IPD 执行移到该点时、Instaspin 将在 IPD 完成之前进行接管。 我们能够在 ISR 开始时成功运行 IPD 并将角度设置在建议位置。
您能提供一封电子邮件吗?我可以发送一个包含代码的.txt 文件吗?
Yanming、您好、我的代码信息是否通过了?
请向我发送您的电子邮件、然后我可以向您发送一个链接、以便与我共享您的项目代码。 谢谢!
我已通过电子邮件向您发送了个人消息、请确认收到了电子邮件。
将会检查它。 控制流程看起来是正确的、但我不确定 IPD 的角度是否正确、因此您可以尝试使用对齐方法来验证这一点。
是什么导致您认为角度不正确?
如何使用对齐方法进行验证?
我运行的初始测试- 我们用手移动了转子360度并运行 IPD 来验证这些值是否至少有意义。 然后我们从位置 A 重复移动到位置 B、并在每个位置测试 IPD。 这些值似乎是可重复的。
现在、看起来估算器没有使用 IPD 值、而是稍微忽略了它并进行了正常的启动、因此在失位时来回摆动。
您是否能够进一步审核该代码?
是的、已经完成。 您可以将整个项目上传到我分享的链接中吗? 我可以直接在板上测试项目。
您好、Yanming:
您是否能够上传文件?
此致
是的、我可以获取文件。 但还没有机会测试代码。 可能会在 几天后这样做。
你认为在周三或周四之前可以做到吗?
了解一下您的项目。 如果"motor.ipd.flag"设置为"0"并将 IPD 模块的角度设置为 FAST 估算器、然后将 SPEED、ID 和 Iq 控制器的 UI 的值重置为零、以便使用 FAST 估算器运行/启动电机、控制流程看起来是正确的。
如果控制流正确、您看到它不工作是有原因的吗?
您是否能够直接在电路板上测试代码?
只是检查代码以了解您使用的控制流。 很难在短时间内直接在套件上测试您的代码。 当您尝试启动电机时会发生什么情况? 是否有负载正在启动期间增加到电机上?
IPD 将运行、但电机启动的行为与没有 IPD 的情况相同。 转子大部分时间向后摆动。 与 IPD 类似的中断将被忽略并恢复到默认启动。
测试期间是否有负载? 是否可以使用片上 DAC 检查转子角度?
已使用对齐模式来测试似乎正常工作的流程。 1.在 d 轴上注入电流,将角度设为"0.0"。 2.启动电机以启用力角。 你可以尝试一下、看看会发生什么情况。
1 -注入电流是否为 IPD、正确?
-您设置为0.0的角度?
我想这不是 IPD
如果它不是 IPD 角度、则它是 Instaspin 启动时的默认起始角度?
2 -正常
您是否使用我的 IPD 代码在实际电机上测试过它?
IPD 角度是否与0.0相加、然后应该是正确的起始角度?