我想了解如何实现可用的 PID 库。 我已附上文件:e2e.ti.com/.../pi.h
是否有文档可以理解其用途?
PID 的输出是什么? 它是否会在数量上? 以及多少位格式? 或者它是否在最大和最小范围内?
我正在使用 F28069器件
请提供实施 PID 所需的帮助。 我想使用 PID 控制来处理可调斜升和斜降速率。
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.
我想了解如何实现可用的 PID 库。 我已附上文件:e2e.ti.com/.../pi.h
是否有文档可以理解其用途?
PID 的输出是什么? 它是否会在数量上? 以及多少位格式? 或者它是否在最大和最小范围内?
我正在使用 F28069器件
请提供实施 PID 所需的帮助。 我想使用 PID 控制来处理可调斜升和斜降速率。
Ravi、
此代码是 DMC 库的一部分、并记录在附件中。 如果您在默认位置安装了 controlSUITE、则完整文档将位于:
C:\ti\controlSUITE\libs\app_libs\motor_control\math_blocks\v4.3\~Docs
代码使用 IQ 格式数据(请参阅 IQmath 库)、因此用户可以在 IQmathLib.h 头文件中调节数字范围和精度。 默认格式为 Q24:即24位精度和8位范围。
输出饱和至用户定义的 Umax 和 Umin 限值、在 PI C 结构中定义。 在 FOC 电机控制的背景下、PI 控制器通常用于闭合两个内部电流控制环路。 在这种情况下、每个控制器的输出将是旋转基准框电压。
外部速度或位置环路可能是 PID 控制器、您可以在同一个库中找到该控制器的示例。 正如您提到的可调上升和下降速率、我认为这就是您的意思。 PID 实现可在同一文档的第95 - 93页上找到。 它的结构和实现与 PI 控制器类似。 在 FOC 中 、它的输出通常是一个 q 帧基准电流。
由于您使用的是浮点器件、您可能想知道 C2000Ware 中有一个更新的控制函数库(DCL)、您可以在以下位置下载该库:
http://www.ti.com/tool/c2000ware
我不确定这在多大程度上解答了您的问题、因此如果有任何不清楚的地方、请回帖。
此致、
Richard
主席先生,
我想首先实现 PI 控制、然后尝试使用 PI 进行斜坡控制。
对于我附加的 PI 库、为了进行初始化、我使用了:
pi_controller closed_loop = pi_controller_defaults;
Closed_loop.Ref =设定点;
Closed_loop.FBK =参数_至_BE_Controlled;
pi_macro (closed_loop);
为了进行调优、我使用了:closure_loop.Kp 和 closure_loop.Ki 值的限制为:closure_loop.Umax =_IQ (1)和 closed_loop.Umin =_IQ (-1)
但是 、调试窗口中的 Closed_loop.out 值不会出现在浮点中、它始终是整数值、并且还会超过 Umax 和 Umin 范围。
请帮助理解。