1 《计算机控制技术》 课程设计 题 目: PW M 温度自动控制系统的设计 学生姓名: 学 号: 专业班级: 指导教师: 二○一○年十二月二十二日 目 录 2 1. 课程设计目的…………………………………………………页码 2. 课程设计题目的描述和要求…………………………………页码 3. 课程设计报告内容……………………………………………页码 4.结论……………………………………………………………页码 3 1. 课程设计目的 2. 课程设计题目的描述和要求 2.1课程设计的要求和内容(包括原始数据、技术要求、工作要求) 1. 要求设计温度控制系统,设定温度为 230度,采用电阻丝作为加热器件,要求无余差,超调小,加热速度快。 2.硬件采用 51系列单片机,采用固态继电器作为控制元件。 3采用 keil c作为编程语言,采用结构化的设计方法 2.2课程设计图纸内容及张数 1.要求用 protel设计出硬件电路图。 2画出系统控制框图。 3 画出软件流程图。 3. 课程设计报告内容 3.1、设计概述 3.1.1实现功能 1、通过单片机实现温度控制系统,要求无余差,超调小,加热速度快。 2、给定可调节 3.1.2系统控制框图程序模块 4 3.1.3程序模块 1、主程序 2、AD转换程序 3、pid计算程序 4、延时程序 5、定时器中断服务程序 3.2 Protel硬件电路图 3.3软件设计 5 初始化 采样AD 转换反馈值刷输出值计算 刷新输出值 定时器初值更新 扫描给定值刷新给定值 3.3.1设计流程图: 主要程序流程说明: 主程序首先进行初始化,包括pid参数设定,定时器设置,中断设置及赋初值。然后循环做四件事:通过 AD转换对反馈值采样,根据设定值减反馈值计算偏差进而计算输出值,根据输出值算出定时器初值,扫描给定按键刷新给定值。通过不断循环改变定时器初值以改变占空比,实现 PWM控制。 3.3.2程序 #include 6 sbit A=P2^0;//模拟通道选择位 sbit BB=P2^1; sbit C=P2^2; sbit ST=P2^4; sbit EOC=P2^5; sbit OE=P2^6; sbit P27=P2^7;//PWM脉冲输出 sbit P10=P1^0; sbit P17=P1^7; void ad();//模数转换 void pid();//pid计算 int a=0,b=0,out=0; double p=0.4,i=0.1,d=0;//系数设定 double s=0,e0=0,elast=0,in=200; void delay(long i)//延时 { int j=255; while(i--) { for(;j>0;j--); } } main() { A=BB=C=0; OE=1; TMOD=0x11; TH0=0xD8; 7 TL0=0...