计算机控制技术PID课程设计报告(5)

2019-03-11 14:12

TH2=0; TL2=0; TR0=1; //启动定时器 TR1=1; TR2=1; ET0=1; //允许T0中断 ET1=1; ET2=1; ES=1; //串行口中断位 EA=1; //中断允许位 }

//************************************************************************ void t_0() interrupt 1 //定时100ms(抽样时间) {

// unsigned char num; TL0=(256-250); tt0++; if(tt0==400) { tt0=0; // num++; flag=1; } }

//************************************************************************ void t_1() interrupt 3 //驱动电机 PWM speed*发生一次中断时间=低电平,(100-speed)*中断时间=高电平 { TH0=(256-100); tt1++; if(tt1>=400) tt1=0; if(tt1

21

A2=0; } }

/********************基本用不到,防止溢出而已****************************/ void t_2() interrupt 5 //计数器 { TH2=0; TL2=0; TF2=0; }

/*********PID******************************************************/ void pid(unsigned int count) //增量式 { en=set-count; //Un=q0*en; // -q1*en1+q2*en2 if(en>=5&&en<=-5)

{Un=Kp*(en-en1)+Ki*en +Kd*(en-2*en1+en2);} // else Un=Kp*en; speed=speed+Un; if(speed>400)speed=400; if(speed<0) speed=0; en2=en1; en1=en; }

//************************************************************************ void main() { T=1; Kp=1.8; Ti=1.8; Td=2.5;

Ki=Kp*T/Ti;

22

Kd=Kp*Td;

keyscan(); lcd_initial();

write_string(\ rps %\

write_command(0x80+0x40); //第二行 write_string(\ rps\ write_command(0x80+6); // write_date(set/100+0x30); //设置的数据 // write_date(set0/10+0x30); // write_date(set+0x30);

init(); while(1) {

keyscan(); keyspeed(); if(receive) { receive=0; write_command(0x80+6); write_date(set/100+0x30); write_date(set0/10+0x30); write_date(set+0x30); } if(flag)//100ms { unsigned char ge,shi,bai,num; flag=0; a=(TH2*256+TL2); //rps TH2=0; TL2=0; num++; sum=sum+a; //累加10次达到一秒 if(num==10) { summ=sum; num=0; sum=0;

summ=summ/448;

23

bai=summ/100;

shi=(summ0)/10; ge=summ;

}

}

}

write_command(0x80+0x40+6); write_date(bai+0x30); write_date(shi+0x30);

write_date(ge+0x30); TI=1;

printf(\

while(!TI);

TI=0; delay(10);

pid(summ);

write_command(0x80+12); write_date(speed00/100+0x30); write_date(speed0/10+0x30); write_date(speed+0x30); 24

}


计算机控制技术PID课程设计报告(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:车辆工程毕业设计196威驰汽车电器实验台设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: