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.

[参考译文] LAUNCHXL-F28P65X:适用于带传感器的电机逆变器的 MCU 解决方案

Guru**** 2381490 points
Other Parts Discussed in Thread: DESIGNDRIVE, SYSCONFIG, TMDXIDDK379D
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1471221/launchxl-f28p65x-mcu-solution-for-sensored-motor-inverter

器件型号:LAUNCHXL-F28P65X
主题中讨论的其他器件:SysConfigTMDXIDDK379D、DESIGNDRIVE

工具与软件:

您好、TI:

我将为 PMSM 构建一个20kW 逆变器、必须对其进行测试。 现在、我要查找 MCU 和控制软件。

电机:ME1507 IPM
编码器:无索引的正弦/余弦
Vmax = 50-70V
Imax = 300A

我曾多次使用 Instaspin 和 F28069。 我认为、最简单的方法是使用此 MCU、为正弦/余弦编码器制作硬件、然后添加正弦/余弦库。

但是、如果我想使用新型 MCU (如 F28P65、F28388D、或者可能是 F280039c)、您建议的起点是什么? 我只需要有传感器的 FOC (最好还提供无传感器功能)。 在本例中、我还想将 PoshBerry 用于 sin/cos 接口。

这就是我对于 F28P65的发现、我更喜欢将其作为 MCU:

1. tidm_02017_2w_traction_inverter。 代码看起来很清晰、但我没有找到任何与代码相关的 mor 确切文档。 有吗? 此代码是否正常工作? 在这里、我要使用 SysConfig 工具添加 POSMGR 初始化?

2. tida_010936_ganhfmd、tmdxiddk379d 和 servo_drive_with_can 是基于 DesignDrive 的。 我从未使用过 DesignDrive、这有多难? 我会在源代码中添加 POSMGR 初始化?

另一种方法是使用 Matlab 或 Plecs。 对于 Matlab 我找到了这个示例、即"Generate Motor Control Models for Selected Algorithms and Hardware"。 我曾经使用过 Matlab、但从未使用过 C2000 Blockset。 是否可以在此示例中添加带 Sin/Cos 接口的 POSMGR? 我找到了 F280049c 和用于 Matlab 的 POSMGR 的示例。 对于 F28p65、它是否也很容易实现?

目前这仅用于测试逆变器、稍后将进行可靠的实现。

任何建议都很好、此致、
Daniel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Daniel、您好!

    我将向另一位专家转交这份报告、就你的前两个问题提供指导。

    关于 MATLAB 问题、对于 MathWorks 支持、请查看以下链接中的 MathWorks 常见问题解答:

    如果您还有其他问题、获取有关 MathWorks 产品支持的最佳方法是 联系  MathWorks 现场技术支持。

    您也可以在 "MATLAB Answers" C2000论坛上搜索答案或发布问题。 此外、在 "文档 和 示例"中提供了有关 MathWorks 支持 C2000的信息。

    此致、

    Allison

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Allison:

    感谢您的答复。 我想我将尝试 C 代码实现和 Matlab。

    我想使用示例"Generate Motor Control Models for Selected Algorithm and Hardware"、因为我没有找到与 F28P65匹配的其他模型。 例如、我还可以使用 F28379。 对于 F28379、我找到了这个地址、 https://de.mathworks.com/help/mcb/gs/foc-pmsm-using-quadrature-encoder.html


    我想我可以使用"Generate Motor Control Models for Selected Algorithm and Hardware"、是否有任何详细文档?

    您会建议哪一个示例?

    您是否有适用于 Simulink 的 SinCos 编码器实现的示例? 我找不到任何电子邮件。

    是否在这些示例中仅测量了两个电流? 是否有可能通过某种方式将其更改为三个电流?

    应用程序的执行速度如何?

    此致、
    Daniel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、TI:

    我还有一个问题、我查看了 SinCos 库、我看到它需要索引引脚、但我的传感器没有。 所以、我认为、我不能把它用在哪里?

    在这种情况下、您会对实施提出什么建议? 我的电机中使用的传感器没有偏移、因此 POSMGR 在我看来没有任何意义、我将构建我自己的预处理电路。 和传感器仅提供正弦和余弦以及公共接地。

    我从未使用过这类传感器、您是否有任何实施的提示、例如幅度误差或其他方面的误差? 我看到 QEP 可与 SinCos 编码器结合使用、这仅用于速度测量还是具有其他优势? (如果我没有索引信号)

    此致、
    Daniel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Daniel、您好!

    对于 QEP/SinCos 编码器、INDEX 是一个可选信号、用于帮助您在增量编码器中找到电机的一些绝对位置。 如果您的编码器不提供指引信号、您通常可以在每次启动驱动时通过从 A 相馈入恒定电流并从 B/C 相流出(将角度设置为0并在 FOC 中提供恒定的 ID)对齐电机轴来找到0度/ d 轴、并在 QEP 寄存器中将该角度编程为零角度。

    关于 SINCOS 编码器、当您以较高的速度旋转电机时正弦波形的频率会很高并且您的 ISR 将无法正常捕获正弦波的每个周期、因此读取 SINCOS 编码器的正常方法是使用模拟/数字混合方法、其中您可以使用过零检测将 SINCOS 信号转换为 AB 数字波形并使用 QEP 对其进行解码以获得 粗调位置 (行 x4分辨率的数量)并使用模拟读取来获得精确度、然后将这两个读数组合在一起以获得完整的位置结果。 您需要通过检测结果象限跳跃并补偿误差来解决模拟和数字读取错位问题。

    Han

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Han、

    感谢您的回答、我今天仔细阅读了 sin/cos lib、现在我知道您的意思了。 我再次检查了电机的传感器、这不是正常的编码器、我认为每转只有一个波。 今天、我尝试了一种实施方案、效果还不错。 我修改了正弦/余弦库的低速部分。 我想我必须像 sin/cos 库一样执行它、其中编码器每转具有更多波。  

    但是、对于示例模板、您会建议我们使用 TIDM_02017_2W_traction_inverter、因为它包含我目前所需的一切内容、看起来既简短又清晰。 但没有有关代码的详细说明或 SysConfig 说明?

    @Allison、我用编码器解出了零件、不再需要示例。 但其他问题的答案很好。

    此致、
    Daniel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Daniel:

    您是否拥有某种类型的电感/磁性位置传感器、可提供每转1个周期的正弦/余弦反馈? 在这种情况下、您只需要将这两个信号带到 ADC 并对位置信息进行 PLL/ATAN 类型的解码。

    Han

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Han、

    是的、这是一种磁性编码器、每转只有一个正弦/余弦波周期。

    我的实现方式与 sin/cos 库类似。 PLL 有什么含义? (这是不是 ATAN?)

    我在一篇论文中发现了这个问题、但我不确定您的具体意思:(www.analogue.com/.../452913422000_sin_encoder.pdf)

    我还在该主题中找到了一个主题(位于旋转变压器的 PLL 上): https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1265821/tms320f28388d-back-to-question-on-parameters-used-for-resolver-i-f-in-digital-power-sdk-project-tidm-02009/4867154?tisearch=e2e-sitesearch&keymatch=PLL%2520AND%2520resolver%2520AND%2520motor#4867154

    使用此方法是否有优点? 您是否有任何资源或参考资料以获取有关此主题的其他信息?

     

    到目前为止、我是按照这种方法在 Matlab 中实现它的、每次转动、我都会查找正弦波的最大1、min 值来计算偏移。 这是我的基本想法、您对此有何看法?

     

    然后、我减去偏移并使用 atan2计算角度。 我稍后将添加振幅校正。


    此致、
    Daniel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、TI:

    SinCos 编码器件现在对我有用。 当然、如果您对此还有其他想法、请说、我不会再提出其他问题。

    如果您可以回答我的问题、比如您会建议使用什么软件作为有传感器 FOC 的起点、那这有什么好处?

    这两种电源来自2kW 牵引逆变器、另一种则基于 DesignDrive。

    我不知道通用实验室是否有意义、因为我不需要使用很多适用于无传感器 FOC 的东西。

    此致、
    Daniel