⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pidcalc.h

📁 平缝机的单片机伺服控制系统源代码。本程序为用单片机控制永磁同步电机的低成本方案
💻 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 + -