Thread 中讨论的其他器件:C2000WARE
工具与软件:
我想使用数字控制库(DCL)函数设计 PID 控制器。 我们的控制环路更新频率必须至少为5 MHz。 是否可以使用 DCL 中的 PID 函数实现此速度? PID 函数的计算需要多少个时钟周期? 最大可能的更新频率是多少? 我有没有任何文档可以在其中找到这些详细信息? 您能否为在5 MHz 或更高版本上运行的 PID/PI 控制应用推荐参考设计? 哪款 C2000处理器最适合这些应用?
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.
工具与软件:
我想使用数字控制库(DCL)函数设计 PID 控制器。 我们的控制环路更新频率必须至少为5 MHz。 是否可以使用 DCL 中的 PID 函数实现此速度? PID 函数的计算需要多少个时钟周期? 最大可能的更新频率是多少? 我有没有任何文档可以在其中找到这些详细信息? 您能否为在5 MHz 或更高版本上运行的 PID/PI 控制应用推荐参考设计? 哪款 C2000处理器最适合这些应用?
您好、 Cinkav、
我相信由于设计所需的频率、您的选择范围相当有限。 让我尝试分解问题、逐一回答。
我们提供了所有 DCL 函数的基准数字、请参阅《DCL 用户指南》的第1.5节、该指南可在 C2000Ware SDK 的 libraries\control\DCL\c28\docs 文件夹中找到。 请注意、使用 C 语言(如 DCL_runPID_C4)编码的函数是 CPU 内核的32位浮点 C/ASM 函数、ASM 函数的运行速度明显快于 C 源代码函数。 用 L 编码的函数打算在 CLA 内核上运行。
另请参阅 C2000 MCU 概述 、了解我们提供的器件系列。 我们时钟频率最高的器件是 F2837x 和 F2838x、对于 C28 CPU 内核和 CLA 内核、以200MHz 运行、这意味着我们的控制循环必须 在200MHz/5MHz = 40个周期内完成。 查看基准表、没有 PID 函数适合您的设计、只有 DCL_runPI_L1/L2 (在具有33/34周期的 CLA 内核中运行的串联/并行配置 PI 控制器)足够了。 此外、通过将控制循环卸载到 CLA 内核、可以释放 CPU 内核以用于其他任务。
总之、只有在 CLA 中为 F2837x 和 F2838x 器件运行的 PI 控制器适合您的设计。 如果您还有其他问题、敬请告知、我很乐意为您提供帮助!
此致!
Sen Wang