个实用的单片机PID方式控

个实用的单片机PID方式控

ID:36930375

大小:292.10 KB

页数:16页

时间:2019-05-11

个实用的单片机PID方式控_第1页
个实用的单片机PID方式控_第2页
个实用的单片机PID方式控_第3页
个实用的单片机PID方式控_第4页
个实用的单片机PID方式控_第5页
资源描述:

《个实用的单片机PID方式控》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一个单片机PID方式控温实例基本情况说明本例中控制对象是一款小型专用工业烘箱 要求:恒温范围:室温--300℃恒温精度:±1℃(其它指标略)控制原理图控制器硬件单片机采用C51系列内部有8通道24位AD转换器串行口在线编程前向通道温度信号(来自烘箱的电阻信号)经C51放大送入AD后向通道I/O口驱动光耦,再驱动大功率双向可控硅输出LED(3位)显示温度值(软件切换显示目标温度或采样温度)电源+5V单电源软件设计流程温度采样采样周期取决于烘箱的固有响应特性参数比如纯滞后时间θ以及响应时间常数τ)一般值在4--20秒之间(

2、例中取16秒)PID运算每采样一次之后进行一次PID运算,得到一个输出量,供输出函数调用定义几个变量T_target表示目标温度T_real表示当前温度T_diff表示当前温差T_diff=T_target-T_realPID运算表达式如下PWMOUT=POUT+IOUT+DOUT+PH其中POUT=KP*(Tdiff)IOUT=KI*Σ(diff)DOUT=KD*ΔdiffΣ(diff):是由当前算起前面N次采样温差和Δdiff:当前温差-上次温差源程序#defineKP3.0 #defineKI0.3#define

3、KD200.0 #defineKC0.1 #defineTc16 sbitPID_port=P3^5; floatT_target=0;floatT_real=0; floatPWM=0;bitread_AD_enable=0;主程序voidmain(void) { //-------程序初始化(略)while(1) { if(read_AD_enable==1) { read_AD_enable=0; read_AD(); pid(); } } }读取AD转换值并刻度voidread_AD(void) { intde

4、lta_ad; unsignedcharad[3]; ad[0]=ADRESH; ad[1]=ADRESM; ad[2]=ADRESL; delta_ad=ad[0]*0x100+ad[1]-0x23cb; if(delta_ad<=0)delta_ad=0; T_real=(float)delta_ad/70; }PID运算函数voidpid(void) { staticfloatdiff[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};staticfloatsum_dif

5、f=0;p-out=KP*diff[n];staticintn=0; i-out=KI*sum_diff;floatp-out,i-out,d-out,temp; d-out=KD*(diff[n]-temp);floatpwm-0; temp=diff[n]; if(i-out>100)i-out=100;if(n+1>=20)n=0; elsen+=1; if(i-out<-100)i-out=-100; sum-diff-=diff[n]; PWM=pout+iout+dout+pwm_0; diff[n]=T-

6、target-T-real; if(PWM<0)PWM=0; sum-diff+=diff[n]; elseif(PWM>=100)PWM=100;}参数的整定采样周期Tc从控制精度上考虑,Tc越小越好,但过小占用处理器的运算时间会加长,从而导致系统成本增加。本例主要考虑被控对象的时间常数τ和纯滞后时间θ。KP(比例系数)先定为1,做一个简单的只有比例调节的函数,使系统工作于闭环。T_target定在150℃(恒温范围的中间值)纪录响应曲线,如果曲线没有出现振荡则可能是KP偏小,调整KP,使曲线出现轻微振荡。反之振铃幅

7、度过大,则可能是KP偏大.KI(积分系数)KI的选取与Tc和积分时长有关积分时长=Tc*采样个数KD(微分系数)KD取值大致为纯滞后时间θ(比如θ=200秒,KD先取200,后根据实验在调整)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。