#include <PID_v1.h>常用函数
时间: 2023-09-19 18:08:54 浏览: 54
常用函数如下:
1. `PID` 构造函数:`PID myPID(&Input, &Output, &Setpoint, Kp, Ki, Kd, DIRECT);`
其中,`Input` 是输入值的指针,`Output` 是输出值的指针,`Setpoint` 是设定值的指针,`Kp`、`Ki`、`Kd` 分别是比例、积分、微分系数,`DIRECT` 表示方向,`DIRECT` 为 `true` 时,表示正向控制,为 `false` 时,表示反向控制。
2. `Compute()` 函数:`myPID.Compute();`
该函数用于计算输出值,需要在主循环中反复调用。
3. `SetMode()` 函数:`myPID.SetMode(AUTOMATIC);`
该函数设置 PID 控制器的模式,`AUTOMATIC` 表示自动模式,`MANUAL` 表示手动模式。
4. `SetOutputLimits()` 函数:`myPID.SetOutputLimits(0, 255);`
该函数设置输出范围,防止输出值超出范围。
5. `SetSampleTime()` 函数:`myPID.SetSampleTime(100);`
该函数设置采样时间,单位为毫秒。
6. `SetTunings()` 函数:`myPID.SetTunings(Kp, Ki, Kd);`
该函数设置 PID 控制器的参数。
7. `SetControllerDirection()` 函数:`myPID.SetControllerDirection(DIRECT);`
该函数设置控制器的方向,与 `PID` 构造函数中的 `DIRECT` 参数相同。
8. `GetKp()`、`GetKi()`、`GetKd()` 函数:分别用于获取比例、积分、微分系数的值。
9. `GetMode()` 函数:用于获取当前 PID 控制器的模式(自动或手动)。
10. `GetOutputSum()` 函数:用于获取积分项之和。
11. `GetError()` 函数:用于获取当前误差值。
12. `GetSetpoint()` 函数:用于获取设定值。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)