课程设计任务书专业年级班一、设计题目恒温控制系统设计二、主要内容设计基于DS18B20的数字式烤箱温度控制系统,控制电路主要包括,LED显示电路、按键电路、温度检测电路及控制电路。控制程序主要包括主程序、读出温度子程序、按键子程序、显示子程序、PID控制子程序等。要求能检测、显示烤箱温度,并控制烤箱温度为一恒定值。三、具体要求1.对烤箱温度进行检测及控制。温度显示范围:0゜C~+99゜C,精度误差在1゜C以内。2.控制系统稳态误差控制在5%以内。3.恒温值可设置,并可随时修改。4.LED数码管直读显示实测温度,设置温度(用键控制设定温度)。5.温度超出上、下限值(设定值的正负50%)时,报警。6.启/停键用以启动和停止加热,上电复位后,不论启动还是停止状态,人机界面显示烤箱内温度值,同时也要求显示界面区分停止和运行状态。四、进度安排第一周分组;查找资料;系统硬件电路设计,编写控制程序第二周程序调试,系统调试,撰写课程设计报告,答辩五、完成后应上交的材料1.课程设计报告。2.程序清单(电子版)六、总评成绩指导教师签名日期年月日系主任审核日期年月日摘要本课程设计采用STC15F2K60S2芯片为主控芯片,利用温度传感器DS18B20测量烤箱温度,采用PID算法计算调节PWM波,从而控制烤炉加热散热,达到恒温控制目的。同时利用12864液晶显示作为人机界面,显示测量到的温度和设定温度;利用按键设定期望温度。关键词:DS18B20;STC15F2K60S2;PID算法目录一、设计任务..............................................................................1二、系统设计方案......................................................................11.系统功能分析...................................................................12.主控制器的选择...............................................................23.传感器的选择...................................................................34.控制算法的选择...............................................................35.总体方案...........................................................................4三、硬件设计..............................................................................41.最小系统设计...................................................................42.液晶显示电路设计...........................................................5(1)芯片介绍............................................................5(2)LCD12864电路图.............................................63.按键电路设计...................................................................64.温度传感器电路设计.......................................................7四、软件设计..............................................................................71.程序流程图.......................................................................72.系统初始化.......................................................................93.温度采集模块...................................................................94.PID控制框图................................................................10五、参数调试与数据分析......................................................111.PID参数整定.................................................................112.试凑法.............................................................................113.数据记录及实验结果.....................................................12六、心得体会............................................................................12参考文献....................................................................................131一、设计任务设计基于DS18B20的数字式烤箱温度控制系统,控制电路主要包括,LED显示电路、按键电路、温度检测电路及控制电路。控制程序主要包括主程序、读出温度子程序、按键子程序、显示子程序、PID控制子程序等。要求能检测、显示烤箱温度,并控制烤箱温度为一恒定值。(1).对烤箱温度进行检测及控制。温度显示范围:℃℃99~0精度误差在℃1以内。(2).控制系统稳态误差控制在5%以内。(3).恒温值可设置,并可随时修改。(4).LED数码管直读显示实测温度,设置温度(用键控制设定温度)。(5).温度超出上、下限值(设定值的正负50%)时,报警。(6).启/停键用以启动和停止加热,上电复位后,不论启动还是停止状态,人机界面显示烤箱内温度值,同时也要求显示界面区分停止和运行状态。二、系统设计方案1.系统功能分析本设计基于DS18B20的数字式烤箱温度控制系统。应该包含四方面功能:控制功能:用数字芯片实现控制算法,控制任务。输入功能:设定期望温度,修改参数。显示功能:为了方便人机交互,人机界面的建立是必要的。2温度检测:用于监控系统温度,并用于修正系统温度偏差。图2-1系统结构方框图2.主控制器的选择方案一:选用PIC、或AVR、或凌阳SPCE061A等作为控制核心;这些单片机资源丰富,可以实现复杂的逻辑功能,功能强大,完全可以实现对时钟的控制。但对于本题目而言,其优势资源无法得以体现,且成本稍高。方案二:STC公司的STC15F2K60S2。单片机算术运算功能强,软件编程灵活、自由度大,可用软件编程实现各种算法和逻辑控制,并且由于其功耗低、体积小、技术成熟和成本低等优点,使其在各个领域应用广泛。且价格很便宜。综上所述,采用方案二。STC15F2K60S2是标准的40引脚双列直插式集成电路芯片,主要由以下部分组成:CPU、RAM、ROM、四个并行I/O口、1个串行口、3个16位定时器/计数器、中断系统、特殊功能寄存器。3该单片机有以下功能:1)2个可编程定时/计数器5个中断源,2个优先级(52有6个)2)一个全双工串行通信口3)单一+5V电源供电3.传感器的选择1)DS18B20温度传感器DS18B20有独特的一线接口,只需要一条口线通信多点能力,简化了分布式温度传感应用,无需外部元件,可用数据总线供电,电压范围为3.0V至5.5V无需备用电源,测量温度范围为-55℃至+125℃-10至+85℃范围内精度为±0.5℃。温度传感器可编程的分辨率为9~12位温度转换为12位数字格式最大值为750毫秒。DS18B20的存储器包括高速暂存器RAM和可电擦除RAM,可电擦除RAM又包括温度触发器TH和TL,以及一个配置寄存器。存储器能完整的确定一线端口的通讯,数字开始用写寄存器的命令写进寄存器,接着也可以用读寄存器的命令来确认这些数字。当确认以后就可以用复制寄存器的命令来将这些数字转移到可电擦除RAM中。当修改过寄存器中的数时,这个过程能确保数字的完整性。结合本次设计的实际要求,我们选择DS18B20作为温度传感器。4.控制算法的选择温度控制是是一种纯滞后的控制,PID在温度控制中是一种4重要的技术,它具有结构简单、易于实现、理解的特点。PID具有比例(P)、积分(I)和微分(D)三种调节作用。烤箱的温度控制是纯滞后控制,而且加热散热惯性很大,因此用PID算法控制是可行的。5.总体方案综合系统的整体性能,选用STC15F2K60S2作为主控制芯片,DS18B20作为温度传感器,PID控制算法对PWM波进行控制,进而通过控制烤箱的通断达到调节温度的目的。首先,通过DS18B20数字温度传感器进行温度的采集,对控制对象的温度进行实时测量,将采集到的温度数字信号传送给STC15F2K60S2控制器。然后,根据每次测量送来的温度与设定温度的差值,进行算法运算,输出不同占空比的PWM波控烤箱的通断。为了能及时观测到温度的情况,我们利用12864液晶显示屏显示实时温度,同时可以通过按键设定期望温度。三、硬件设计1.最小系统设计如图3-1中所用的单片机是STC15F2K60S2,其中晶振为内部晶振22.1184MHZ。电源输入加电容滤波。5图3-1STC15F2K60S2最小系统原理图2.液晶显示电路设计(1)芯片介绍LCD12864及其兼容控制驱动器的引脚功能图如下。图3-2LCD12864及其兼容控制驱动器的引脚功能6(2)LCD12864电路图根据LCD12864各个引脚的功能,可以设计出LCD12864显示的硬件电路,接线图如下:图3-3LCD12864电路3.按键电路设计本系统用到KEY1到KEY4四个按钮,其中、KEY1增加温度,KEY2用来减少温度,KEY3确定开始温控,KEY4关闭温控。如图3-4所示。图3-4按键电路图74.温度传感器电路设计TO-92封装的DS18B20的引脚排列见图3-5所示。图3-5DS18B20引脚图温度传感器DS18B20的硬件接线图如图3-6所示。图3-6DS18B20接线图四、软件设计1.程序流程图主程序模块是整个程序的核心,负责协调程序各个模块工作。主程序的流程图如图4-1所示。8图4-1系统程序流程图92.系统初始化系统初始化包括,液晶显示初始化、DS18B20初始化、定时器初始化、按键初始化、PID参数初始化,如图4-2所示。图4-2初始化子程序流程图3.温度采集模块温度采集模块主要负责定时采集模拟的室内变电站的温度,流程图如图4-3所示。10图4-3温度采集子程序流程图4.PID控制框图PID控制器是一种线性控制器,它将给定值与实际输出值的偏差e(t)的比例、积分和微分进行线性组合,形成控制量u(t)输出,如图4-4所示。图4-4PID控制框图11测量的温度与期望温度相比较,得到偏差e(t),再对偏差进行比例、积分、微分,再把它们之和叠加起来,产生一个PWM波,从而达到根据偏差控制温度的