《基于单片机的化学反应罐的温度控制系统设计毕业论文.docx》由会员分享,可在线阅读,更多相关《基于单片机的化学反应罐的温度控制系统设计毕业论文.docx(14页珍藏版)》请在三一文库上搜索。
1、北京化工大学课程设计说明书学生姓名: 杨泽文 班 级: 机械1207 学 号: 2012013203 专 业: 机械工程及自动化 题 目: 基于单片机的化学反应罐的温度控制系统设计 指导教师: 何雪涛 2015年1月13日目录第一章绪论31.1 题目背景31.2 题目简介3第二章 系统总体设计及方案42.1 单片机的介绍42.2 系统功能的确定42.3 温度传感器PT100的介绍42.4 人机交互与串口通讯5第三章 系统设计53.1 系统结构框图53.2 系统各部分电路设计83.2.1 键盘输入温度模块83.2.2 温度传感器模块83.2.3 A/D转换模块93.2.4 LED七段数码动态显示
2、电路93.2.5 温度调节及亮灯报警回路10第四章 软件设计114.1 设计思路、程序代码11第一章 绪论1.1 题目背景不论是对于工业生产还是对于人们的日常生活,温度的变化都会对其产生一定程度的影响,所以,适时和恰当的温度控制对生产生活具有非常重要的作用。在过去,对温度的控制总是采用常规的模拟调节器,然而,这种调节器存在的缺点是控制精度低,具有滞后、非线性等特点。本文将采用微电子技术来控制温度变化,这类电路设计简单,控制效果好,具有很强的实用性。1.2 题目简介课题名称:基于单片机的化学反应罐的温度控制系统设计。主要任务:1) 化学反应罐标准温度为150,精度要求为1。2) 使用温度传感器在
3、反应罐上测得三个点的温度值,取平均值。若低于149,亮灯报警并启动加热装置;若高于151,亮灯报警并启动冷却装置。3) 实时显示当前实际温度,显示精确为1。开发环境:本设计系统的软件部分是通过Keil uVision4进行编译,并由Proteus进行仿真测试。技术指标:1) 以AT89C51系列单片机为核心部件。2) 以模拟电路为硬件基础。3) 以C语言为软件实现语言。功能概述:在该温度控制系统中,单片机为核心部件进行检测控制。在该环境温度控制系统中,采用扫描程序不间断地进行温度检测采用PT100温度传感器将实时温度传送至AD转换器ADC0808,转换完成后送入单片机,并加以显示的过程。再通过
4、按键设定标准温度。并将测得温度平均值与标准值进行比较,若实际温度低于149,则进行升温过程;若实际温度高于151,则进行降温过程,实现温度控制和报警的目的。第二章 系统总体设计及方案2.1 单片机的介绍随着大规模集成电路的出现及其发展,将计算机的CPU、RAM、ROM、定时/计数器和多种I/O接口集成在一片芯片上,形成芯片级的计算机,因此单片机早期的含义称为单片微型计算机,直译为单片机。单片机具有以下特点:1.具有优异的性能价格比。2.集成度高、体积小、可靠性高。3.控制功能强。4.低电压、低功耗。2.2 系统功能的确定一个控制系统是否能被大众所接受,在于该控制系统是否拥有人性化的操作功能。为
5、了使本次设计的环境温度控制系统具有操作简单、灵活及高可靠性等特点,确定了该系统功能:1.独立按键输入温度。2.使用温度传感器PT100进行温度采集。3.使用ADC0808进行温度模数转换.4.温度显示。5.温度控制,温度若超上下限进行相应处理并亮灯报警。6.PT100温度测量范围-50200,反应罐温度有效范围为149151,允许误差为1。2.3 温度传感器PT100的介绍PT100是铂热电阻,它的阻值会随着温度的变化而改变。PT后的100即表示它在0时阻值为100欧姆,在100时它的阻值约为138.5欧姆。PT100/PT1000铂电阻RT曲线图表2.4 人机交互与串口通讯该化学反应罐温度控
6、制系统由温度采集、独立键盘输入、温度显示、温度控制执行等四大模块组成。 1. 温度采集:由温度传感器PT100完成,并通过ADC0808转换后与单片机进行数据传输。2. 独立按键输入:将键盘扫描程序设置在主函数中while循环函数的第一条语句,不断刷新获得 设定温度,按下确定键后执行温度比较和温度控制。3. 温度显示:通过8个7段LED数码显示管显示当前温度值,及时反应当前温度的变化与设置温度的关系。4. 温度控制执行:系统根据当前温度与设置的温度自动进行相应的升温或降温的操作,在系统自动进行升温或降温处理的同时显示相应的指示灯。5.超限报警:在任务书要求中,当温度超出设置温度1时发出超限报警
7、。第三章 系统设计3.1 系统结构框图LED显示模块传感器模块A/D转换模块按键模块AT89C51温控执行模块报警模块该系统由核心部件AT89C51来处理从键盘输入电路和温度采集电路送入的数据,并通过温度显示电路进行温度显示,由温度控制电路来进行相应的升温或降温的操作,如果超出温度限制则激发报警模块。Proteus电路图主要由以下几部分构成:1) C51主机。2) ADC0808。3) 晶振复位电路。4) PT100温度采集电路5) LED显示屏。6) 加热冷却电路。7) 按键输入电路。系统整体proteus电路图如下:3.2 系统各部分电路设计在该系统中,人机交互技术主要应用在恒定温度的设置
8、,以及当前温度的显示;串口通讯技术应用在温度的采集。3.2.1 键盘输入温度模块在本系统中,键盘输入主要采用三个独立按键来实现温度的设定。如图所示:当点触“设置”键时,显示屏就进入标准温度设定界面,此时通过按“加”键或者“减”键来控制标准温度高低。再次点触“设置”键,返回到实际温度显示。3.2.2 温度传感器模块为了使得测得的温度更精确,在本系统中采用了温度传感器PT100来获取当前温度,如图所示:还有两个与图中电路一模一样的电路,目的是提供三个测量温度值,并送入ADC0808单元进行AD转化。3.2.3 A/D转换模块PT100测得的温度分别送入INO,IN1,IN2口,通过程序控制ADC0
9、808中ADD A和ADD B口的电平来选择接受哪路温度值。3.2.4 LED七段数码动态显示电路在本系统中采用了LED七段数码动态显示电路来显示实际温度值,显示范围在-50200之间。该电路有显示、位选锁存器、段选锁存器三部分组成。显示部分:由两个四位的LED七段共阴极数码管构成,用来显示当前温度值。如下图所示:位选和段选部分:如下图所示:3.2.5 温度调节及亮灯报警回路该电路的主要任务是完成单片机所发出的的升温或降温操作,来控制化学反应罐的升温或降温。在本设计中使用红色发光二极管代替。在程序中,先将HEAT和COLD端置1,当需要接通此加热或冷却电路时,HEAT或COLD端置0,同时,发
10、光二极管亮,报警。电路如下:第四章 软件设计4.1 设计思路、程序代码根据所学知识,实现本系统的软件部分将使用C语言编程,要配合硬件部分实现输入一个温度标准值,与从温度传感器获得并经过AD转化的实际温度值进行比较,并向温度控制回路发出加热或降温以及亮灯报警的命令。在这一过程中将随时显示当前温度值。其主要实现的部分包括:键盘输入、温度测量、AD数据转换、动态显示、温度比较、温度控制、超限报警等。程序如下:#include #include #define uint unsigned int#define uchar unsigned char code uchar seg10= 0x3f,0x0
11、6,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,; /显示段码 sbit ST=P30; /AD0808引脚sbit EOC=P31;sbit ADA=P35;sbit ADB=P36; sbit S1=P20;/数码管位选sbit S2=P21;sbit S3=P22;sbit K1=P25;/按键sbit K2=P26;sbit K3=P27;sbit K4=P32;sbit K5=P33;sbit HEAT=P23;/加热sbit COLD=P24;/制冷bit intercode;uint TEM0,TEM1,TEM2;uint wd;uint bz=150;void delay(uint z) /延时 uint x,y; for(x=0;xz;x+) for(y=0;ybz)HEAT=1;COLD=0; if(wdbz)HEAT=0;COLD=1; else Led(bz);if(K2=0)if(bz0)bz-;if(K4=0)if(bz0)bz=bz-10; if(K1=0)/通过按钮设置显示标准温度或平均值delay(5);while(K1=0) if(intercode=0)Led(wd); else Led(bz); intercode=intercode; 14
链接地址:https://www.31doc.com/p-3922239.html