毕设--基于AT89C52及PT100的电烤箱控制器设计 下载本文

北京联合大学 毕业设计

1

1.1 系统指标概述

系统总述

本毕业设计名称为单片机电烤箱控制器设计,即采用单片机作为电烤箱的控制器,研究热电阻测温电路,可控硅驱动电热丝加热电路和温度控制算法等。

本系统要求包括:采用市电供电;采用单片机控制;LCD显示状态和参数;4*4键盘输入;热电阻测温;电热丝加热;可设定工艺参数(时间、温度);有控制超差报警等。

1.2 系统总框图

4*4键盘 LCD1602 DS1302 STC89C52 MOC3031 双向可控硅 电热丝 → → → TLC2543 PT100 三极管驱动电路

1.3 系统总体功能实现原理

本系统是通过由单片机STC89C52作为总控制器,外加4*4键盘扫描模块、DS1302时钟模块、LCD1602液晶显示模块、PT100温度采集模块、TLC2543 A/D转换模块以及由双向可控硅、光耦MOC3031组成的电热丝工作控制模块等模块组成。工作时首先由PT100感应到温度后经由A/D转换芯片TLC2543转换成数字信号传送给单片机处理,然后由单片机控制LCD1602显示当前准确的温度值,时间控制方面采用美国DALLAS公司推出的DS1302时钟芯片,加热的时间就具备了可操控性,时间跟温度的设定还要依赖于4*4键盘的输入控制,输入一个准确的时间段,输入一个要设定的温度,点击开始那么这个电烤箱系统就开始工作了,本系统经由时间、温度两个参数来控制电热丝两端电压的开断,从而控制电热丝的工作状态,从而最终实现对食物的加热目的。

喇叭 9

北京联合大学 毕业设计

1.4 系统各模块总体功能设想

1.4.1 单片机STC89C52作为总控制器

采用STC89C52单片机,原因一是此款单片机I/O端口多,用于控制的资源多,便于设计,二是此前有用过,熟悉;三是STC这款单片机的数据空间比较大,是500K,所以当程序代码跟定义的数据空间太大的时候就能满足要求,这是它跟AT89C52的最大差别,数据空

间需要比较大的空间的时候这款单片机能够满足要求。通过对温度的预设,由STC89C51单片机输出控制信号控制加热装置进行加热,使温度达到设定温度T(最高可达400℃),然后恒温烘烤,温差控制小于2℃。

初步设计将P0口连到LCD1602数据的D0~D7口,将P3口用于键盘扫描,将P1.4口作为双向可控硅的控制端口,将P1.0~P1.3作为A/D转换端接口,将P1.5~P1.7接到DS1302的时钟芯片的端口,P2.0~P2.2分别接到LCD1602的RS、RW、E三个端口,P2.3接超外差报警端。 1.4.2 4*4键盘扫描模块

采用4*4的一个键盘模式,其中0~9作为数字键,*号键为删除键,#号键为确认键,右边A键用来设定温度,B键用来设定时间,C键是确认工作键,D键是开关键。当且仅当时间跟温度都同时设定的时候,按下确认工作键才开始工作,否则确认工作键失灵,当输入出错的时

候,可以按一下*号键返回上一次输入开始状态,即可重新输入你想要的值,当你确定要输入一个时间或温度值的时候可以按一下#号键即可将确定的值输入单片机,当时间跟温度都设定好的时候可按下C键即可开始让电热丝加热工作。

有个需要注意的地方,就是正常的状态是屏幕上显示的是温度值,或是实时的温度值和时间,但是当按到设定界面的时候需要注意只能让数字键跟星号、井号键好用,剩下的A、B、C、D键要暂时性的失灵,当按下井号键的时候返回到显示温度界面的时候 ,其余的键再次好用,即又可以设定时间跟温度,又可以开始加热操作。 1.4.3 DS1302时钟模块

时钟模块是整个系统中很重要的一个模块,因为时间是整个系统很重要的一个参数,采用DS1302时钟芯片和32768Hz的配套晶振使得时间能够很好的得以掌控,而且此芯片简洁高效只占用了3个口资源,节约了STC89C52不多的口资源,它的时钟信息经I/O口输送入单片机在

经由单片机输入LCD屏显示出来,效果实施高效准确可以达到预期功能要求。 1.4.4 LCD1602液晶显示模块

10

北京联合大学 毕业设计

此次使用的液晶显示屏LCD1602是一种两行显示的液晶屏,预期要达到的目标是在液晶屏的首行显示温度变化值,在第二行显示时间,这是在正常运行的状态之下,当要设定一个时间或温度值的时候,界面会刷新到设定界面,即The Design is:0000,The Design is:00:00,这样以来液晶屏的显示效果就这样预定好了,当温度或时间值设定好以后,按下#号键界面再次刷新到时间和温度界面,如此反复要求正常显示且速度要快,这就要求代码的效率要高。

1.4.5 PT100温度采集模块

PT100热敏电阻是一种温度传感器,之所以选择它是因为它能测到500℃以上的温度,符合电烤箱的温度变化要求,其灵敏度也是相当

的好,外形是尖状的可以很方便的测到温度,其测温原理是与TLC2543相结合使用,将温度变化转换成电压的变化,进而输入进单片机中转变成相应的温度值显示在LCD1602中,这其中功能的实现还要借助于相应的算法,要求其线性度要跟其两端的电压变化有一定的对应关系,这样在后续的程序设计中就可以将其对应到温度值上面,这个后续将展开讨论。

1.4.6 A/D转换模块

A/D转换模块是采用的TLC2543芯片,之所以选择这个芯片是因为此芯片占用的口资源比较少,节约了宝贵的口资源,只占用了P1.0、P1.1、P1.2、P1.3四个口,采用12路同时输入的方式使测量的精度更加的准确,A/D转换的速度也是一个很值得去考虑的一个因

素,在这方面TLC2543做的还是很不错的,介于这两种原因我选择了这款芯片,而且它高效稳定是个很不错的选择。 1.4.7 超外差报警模块

采用喇叭报警的模式,外加三极管驱动的方式,即当你在烤东西的时候忘记关箱门时,箱内温度不能在正常的时间内到达指定的温度的时候就要求喇叭能及时发出报警信号提醒你及时报箱门关上。这种方式再很大程度上存在误判的情况,在程序设计的时候要充分考虑所有的因素,对这部分的设计要十分的小心,如果设计不能满足实际情况,那么就很有可能给产品的功能带来很坏的影响,不仅如此使用者在使用的过程中也很有可能产生反感的心理。

11

北京联合大学 毕业设计

2 系统设计的理论基础

本系统用到多款芯片及模拟电路,编程用C/C++,是一个系统,硬件的设计跟软件的设计都要借助于一定的理论作为指导,在硬件方面要了解不同芯片的技术指标、工作环境、线性度等等,软件方面又要了解不同芯片相应的编程算法,不同算法的实现不仅要实现功能而且要简单高效。 2.1 STC89C52内部结构及工作原理

STC89C52带8K字节闪烁可檫除可编程只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的高性能、低电压COMOS9的微处理器,俗称单片机。该器件采用ATMELS高密度非易失存储器制造技术制造,与工业标准的MCS-52指令集和输出管脚相兼容。 单片机总控制电路如下:

图2-1 STC89C52

STC89C52具体介绍如下:

① 主电源的管脚(2根)VCC(Pin40):电源输入端,接+5.5V电源GND(Pin22):接地线的管脚。

②外面接晶振管脚脚(2根)XTAf1(Pin16):是片内振荡电路的输入端口;XTAL3(Pin20):片内振荡电路的输出端口

③控制管脚脚(5根)RST/VPf(Pin10):复位管脚脚,管脚上出现3个机器周期

12