📄 pidcalc.h
字号:
/*****************************************************************
* 文件名: PID.c
* 版本号:
* 创作日期: 2005.7.12
* 作者: Wangzq
* 功能说明: PID增量式算法
* 其它说明:
*****************************************************************/
/*****************************************************************
* 修改日期:
* 修改人:
* 修改原因:
*******************************************************************/
#ifndef PIDCALC_h
#define PIDCALC_h
#include <iom88v.h>
#include <macros.h>
//宏定义:定义常用数据类型
#define byte unsigned char //常用数据类型byte
#define word unsigned int //常用数据类型word
#define dword unsigned long int //常用数据类型dword
#define sbyte char //常用数据类型byte
#define sword int //常用数据类型word
#define sdword long int //常用数据类型dword
//宏定义:定义常用口线操作等,具体应用前应根据实际情况修改!
//********************PID所有常数不能大于100*************************
#define PIM 2200 //2500-300
#define KPL 45 //4.5
#define KIL 5 //0.56
#define KDL 2
#define KPH 22 //2.25
#define KIH 3 //0.28
#define KDH 1 //0.10
//函数定义
struct PID
{
word SetValue; // 设定目标 Desired Value
word P; // 比例常数 Proportional Const
word I; // 积分常数 Integral Const
word D; // 微分常数 Derivative Const
sword Error; // 当前误差 Error[0]
sword LastError; // 上次误差 Error[-1]
sword PrevError; // 上次误差 Error[-2]
};
void PIDInit (struct PID *pp );
byte PIDCalc(struct PID *pp, word Fact_Value );
byte PIDBound(byte K, word Fact_Value);
extern sdword SumDu; //增量式PID算法数值
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -