增量式PID算法Word文档下载推荐.docx

上传人:b****7 文档编号:22651401 上传时间:2023-02-05 格式:DOCX 页数:6 大小:15.58KB
下载 相关 举报
增量式PID算法Word文档下载推荐.docx_第1页
第1页 / 共6页
增量式PID算法Word文档下载推荐.docx_第2页
第2页 / 共6页
增量式PID算法Word文档下载推荐.docx_第3页
第3页 / 共6页
增量式PID算法Word文档下载推荐.docx_第4页
第4页 / 共6页
增量式PID算法Word文档下载推荐.docx_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

增量式PID算法Word文档下载推荐.docx

《增量式PID算法Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《增量式PID算法Word文档下载推荐.docx(6页珍藏版)》请在冰豆网上搜索。

增量式PID算法Word文档下载推荐.docx

//定义变量

doubleref=0;

//设置参数

doublefeb=0;

//采样反馈intpwm_var=

0;

//PID调整量

Uint16PWM_out=0;

//PWM输出量doubleUo=0;

doubleEk=0;

doubleEi=0;

doubleEd=0;

#defineKp

8

//PID调节的比例常数

#defineTi

0.05

//PID调节的积分常数

#defineTd

0.02

//PID调节的微分时间常数

#defineT

//采样周期#defineKppKp*(1+(T/Ti)

+(Td/T))

#defineKi(-Kp)*(1+(2*

Td/T))

#defineKdKp

*Td/T//#defineKpp4

//#defineKi0.8

//#defineKd20//误差的阀值,小于这个数值的时候,不做PID调整,避免误差较小时频繁调节引起震荡

#defineEmin3//调整值限幅,防止积分饱和

#defineUmax100

#defineUmin-100//输出值限幅

#definePmax15500

#definePmin200///////////////////////////////////////////////////////////////////

//////

PID运算

///////

voidpid_ctrl(void)

{

Ek=ref-

feb;

//差值运算

if(fabs(Ek)&

lt;

Emin)

//误差的阀值(死区控制?

?

{

pwm_var=

}

else

Uo=Kpp*Ek

+Ki*Ei+Kd*Ed;

//PID计算

Ed=

Ei;

Ei=

Ek;

(int)Uo;

//强制转化调整量,PWM为整数

if(pwm_var

&

gt;

=Umax)pwm_var=

Umax;

//调整值限幅,防止积分饱和

=Umin)pwm_var=

Umin;

//调整值限幅,防止积分饱和

PWM_out+=

pwm_var;

//调整PWM输出

if(PWM_out&

Pmax)PWM_out=

Pmax;

//输出值限幅

Pmin)PWM_out=

Pmin;

TBCCR1=PWM_out;

//输出给寄存器,改变PWM占空比}///////////////////////////////////////////////////////////////////调用示例:

voidmain(void)

ref=120.6;

while

(1)

feb=

adc_sample();

pid_ctrl();

}另外附上:

PID调节经验总结(搜索资源)

PID控制器参数选择的方法很多,例如试凑法、临界比例度法、扩充临界比例度法等。

但是,对于PID控制而言,参数的选择始终是一件非常烦杂的工作,需要经过不断的调整才能得到较为满意的控制效果。

依据经验,一般PID参数确定的步骤如下:

(1)确定比例系数Kp

确定比例系数Kp时,首先去掉PID的积分项和微分项,可以令Ti=0、Td=0,使之成为纯比例调节。

输入设定为系统允许输出最大值的60%~70%,比例系数Kp由0开始逐渐增大,直至系统出现振荡;

再反过来,从此时的比例系数Kp逐渐减小,直至系统振荡消失。

记录此时的比例系数Kp,设定PID的比例系数Kp为当前值的60%~70%。

(2)确定积分时间常数Ti

比例系数Kp确定之后,设定一个较大的积分时间常数Ti,然后逐渐减小Ti,直至系统出现振荡,然后再反过来,逐渐增大Ti,直至系统振荡消失。

记录此时的Ti,设定PID的积分时间常数Ti为当前值的

150%~180%。

(3)确定微分时间常数Td

微分时间常数Td一般不用设定,为0即可,此时PID调节转换为PI调节。

如果需要设定,则与确定Kp的方法相同,取不振荡时其值的30%。

(4)系统空载、带载联调

对PID参数进行微调,直到满足性能要求。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 其它语言学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1