




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于单片机的水温自动控制系统专业班级:J电子信息工程0902 姓名:闵杰指导老师:韩守义 职称:讲师摘要 温度控制系统可以说是无所不在,热水器系统、空调系统、冰箱、电饭煲、电风扇等家电产品以至手持式高速高效的计算机和电子设备,均需要提供温度控制功能。 随着国民经济和国内工业的发展,人们需要对各种家用电器和工业设备的温度控制。采用单片机来对它们进行控制不仅具有控制简单、方便和灵活性的优点,而且可以大幅度提高被控温度的技术指标从而能够大大提高产品的质量和数量。目前的水温控制系统多采用由模拟温度传感器,多路模拟开关,A/D转换器及单片机等组成的传输系统。水温控制在工业及日常生活中应用广泛,分类较多。
2、不同水温控制系统的控制方法也不尽相同。本系统的设计可以用于热水器温度控制系统和饮水机等各种电器电路中。它以单片机AT80C51为核心,通过3个数码管显示温度和4个按键实现人机对话,使用单总线温度转换芯片DS18B20实时采集温度并通过数码管显示,并提供各种运行指示灯用来指示系统现在所处状态,如:温度设置、加热、停止加热等,整个系统通过四个按键来设置加热温度和控制运行模式。关键词:单片机、数码管显示、单总线、DS18B20.Automatic control system of temperature based on MCUAbstractTemperature control system
3、can be said to be ubiquitous, water heaters, air conditioning systems, refrigerators, rice cookers, electric fans and other home appliances as well as high-speed and efficient hand-held computers and electronic equipment are required to provide temperature control. With thedevelopment ofnational eco
4、nomy and thepeopledomestic industrialneeds of varioushousehold appliances and industrialequipmenttemperature controlby single chip microcomputer tocontrol themnot onlyhas simple control,convenience andflexibilityadvantagesand can greatlyincrease the temperature was charged with thetechnical indicato
5、rswhich can greatly enhance the qualityand quantity.At present,thewater temperature controlsystemused by the analogtemperature sensoranalogtransmission systemswitchA/D converter and microcontroller.Water temperaturecontrolmethod is used widelyin industryclassificationmorein daily life anddifferentte
6、mperature control systemare not the same.The system design can be used for drinking water heater temperature control systems and other electrical circuits. AT80C51 microcontroller as the core of it, through the three temperature digital display and 4 keys to achieve man-machine dialogue, the use of
7、single-chip bus temperature conversion temperature DS18B20 real-time acquisition and through the digital display and offers a variety of operating light to indicate system now live in the state, such as: temperature setting, heating, and stop heating, the entire system through the four buttons to se
8、t the heating temperature and control the operating mode.Key words: Microcontroller digital displaysingle busDS18B20目录第一章 绪论11.1课题研究的相关背景11.2基于单片机水温自动控制系统的现状11.3基于单片机水温自动控制系统的发展方向1第二章 系统方案设计32.1硬件系统子模块32.2 软件总体设计32.3单片机最小系统电路42.4键盘电路52.5数码管及指示灯显示电路62.6温度采集电路82.7 电源电路122.8报警电路设计132.9加热管控制电路设计13第三章 系统
9、流程153.1主程序流程图153.2各个模块的流程图173.2.1 读取温度DS18B20模块的流程173.2.2 键盘扫描处理流程193.2.3 报警处理流程20第四章 系统调试214.1 硬件电路调试214.2 软件调试214.3 系统操作说明22总 结23致 谢24参考文献25附录1:系统源程序26附录2:系统硬件总图36第一章 绪论1.1课题研究的相关背景及时准确地得到温度信息并对其进行适时的控制,在许多工业场合中都是重要的环节.水温的变化影响各种系统的自动运作,例如冶金、机械、食品、化工各类工业中,广泛使用的各种加热炉、热处理炉、反应炉等,对工件的水处理温度要求严格控制。对于不同控制
10、系统,其适宜的水质温度总是在一个范围。超过这个范围,系统或许会停止运行或遭受破坏,所以我们必须能实时获取水温变化。对于,超过适宜范围的温度能够报警。同时,我们也希望在适宜温度范围内可以由检测人员根据实际情况加以改变。传统的温度采集电路相当复杂,需要经过温度采集、信号放大、滤波、AD转换等一系列工作才能得到温度的数字量,并且这种方式不仅电路复杂,元器件个数多,而且线性度和准确度都不理想,抗干扰能力弱。现在常用的温度传感器芯片不但功率消耗低、准确率高,而且比传统的温度传感器有更好的线性表现,最重要的一点是使用起来方便。1.2基于单片机水温自动控制系统的现状温度控制系统在国内各行各业的应用虽然已经十
11、分广泛,但国内生产的温度控制器来讲总体发展水平仍然不高,同国外的日本美国德国等先进国家相比仍然有着较大的差距。目前我国在这方面总体技术水平处于20世纪80年代中后期水平,成熟产品主要以“点位”控制及常规的PID控制器为主,它只能适应一般温度系统控制难于控制滞后复杂时变温度系统控制,即是说适应于较高控制场合的智能化自适应控制仪表国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少。1.3基于单片机水温自动控制系统的发展方向由于工业过程控制的需要,特别是在微电子技术和计算机技术的迅猛发展,以及自动控制理论和设计方法发展的推动下,国外温度控制系统发展迅速,并在智能化自适应参数自整定等方面取得成果
12、。在这方面以日本、美国、德国、瑞典等国技术领先,并且都生产出了一批商品化的性能优异的温度控制器及仪器仪表,目前,国外温度控制系统及仪表正朝着高精度智能化、小型化等方面快速发展。温度控制不好就可能引起生产安全,产品质量和产量等一系列问题。尽管温度控制很重要,但是要控制好温度常常会遇到意想不到的困难。由于温度控制具有工况复杂、参数多变、运行惯性大、控制滞后等特点,它对控制调节器要求较高。模糊逻辑控制(FLC)是人工智能领域中形成最早、应用最广的一个重要分支,适用于结构复杂且难以用传统理论建立模型的问题。目前FLC已经成功地应用与各种温度控制上。模糊控制与一般的自动控制的根本区别是,不需要建立精确的
13、数学模型,而是运用模糊理论将人的经验知识、思维推理,其控制过程的方法与策略是由所谓模糊控制器来实现。对于多变量、非线性和时变的大系统,系统的复杂性和控制技术的精确性形成了尖锐的矛盾。模糊控制对那些难以获得数学模型或模型非常粗糙的工业系统,如那些大滞后、非线性等复杂工业对象实施控制有独特优势,但静态误差不易控制.模糊控制偏偏含有大量专家经验,实际实现比较困难,它绝不可以代替经典的自动控制,而是扩展了一般的自动控制。在一些实际过程中,人们也常把模糊控制与一般的自动控制结合在一起应用,并且已研制出神经模糊网络的家电产品,将模糊控制技术与人工神经网络、专家系统等人工智能中一些新技术相结合,向着更高层次
14、的研究和应用发展。采用模糊控制其优点是不需要粗确知道被控对象的数学模型,而且适用于有较大滞后特性的控制对象。缺点是静态误差不易控制,因含有大量专家经验,实际实现比较困难。模糊控制比传统的PID 控制等方法, 在强时变、大时滞、非线性系统中的控制效果有着明显的优势。将模糊控制技术应用于家电产品在国外已是很普遍的现象。单片机是家用电器常用的控制器件, 把二者结合起来, 可使控制器的性能指标达到最优的目的。基于模糊控制技术的单片机控制的电热水器, 是对传统的电热水器开关控制的改造, 具有达到设定温度的时间短、稳态温度波动小、反应灵敏、抗干扰能力强、节省电能等优点,将成为以后发展的主流。第二章 系统方
15、案设计设计并制作一个基于单片机的热水器温度控制系统的电路,其结构框图如图2-1:电源继电器温度传感器DS18B20单片机AT80C51报警键盘指示灯数码管显示图 21 系统结构框图2.1硬件系统子模块(1) 单片机最小系统电路部分(2) 键盘扫描电路部分(3) 数码管温度显示和运行指示灯电路部分(4) 温度采集电路部分(5) 继电器控制部分(6) 报警部分2.2 软件总体设计良好的设计方案可以减少软件设计的工作量,提高软件的通用性,扩展性和可读性。本系统的设计方案和步骤如下:(1) 根据需求按照系统的功能要求,逐级划分模块。(2) 明确各模块之间的数据流传递关系,力求数据传递少,以增强各模块的
16、独立性,便于软件编制和调试。(3) 确定软件开发环境,选择设计语言,完成模块功能设计,并分别调试通过。(4) 按照开发式软件设计结构,将各模块有机的结合起来,即成一个较完善的系统。首先接通电源系统开始工作,系统开始工作后,通过按键设定温度值的上限值和下限值,确定按键将设定的温度值存储到指定的地址空间,温度传感器开始实时检测,调用显示子程序显示检测结果,调用比较当前显示温度值与开始设定的温度值比较,如果当前显示值低于设定值就通过继电器起动加热装置,直到达到设定值停止加热,之后进行保温,如果温度高于上限进行报警。本次设计主要思路是通过对单片机编程将由温度传感器DS18B20采集的温度外加驱动电路显
17、示出来,包括对继电器的控制,进行升温,当温度达到上下限蜂鸣器进行报警。P17开关按钮是用于确认设定温度的,初始按下表示开始进入温度设定状态,然后通过P15和P16设置温度的升降,再次按下P17时,表示确认所设定的温度,然后转入升温或降温。P23所接的发光二极管用于表示加热状态,P25所接的发光二极管用于表示保温状态。P23接继电器。P31是温度信号线。整个电路都是通过软件控制实现设计要求。2.3单片机最小系统电路因为80C51单片机内部自带8K的ROM和256字节的RAM,因此不必构建单片机系统的扩展电路。如图22,单片机最小系统有复位电路和振荡器电路。值得注意的一点是单片机的31脚必须接高电
18、平,否则系统将不能运行。因为该脚不接时为低电平,单片机将直接读取外部程序存储器,而系统没有外部程序存储器,所以必须接VCC。在按键两端并联一个电解电容,滤除交流干扰,增加系统抗干扰能力。图22 单片机最小系统图2.4键盘电路键盘是单片机应用系统中的主要输入设备,单片机使用的键盘分为编码键盘和非编码键盘。编码键盘采用硬件线路来实现键盘的编码,每按下一个键,键盘能够自动生成按键代码,并有去抖功能。因此使用方便,但硬件较复杂。非编码键盘仅仅提供键开关状态,由程序来识别闭合键,消除抖动,产生相应的代码,转入执行该键的功能程序。非编码键盘中键的数量较少,硬件简单,在单片机中应用非常广泛。图23为按键和A
19、T80C51的接线图,检测仪共设有4个按键,每个按键由软件来决定其功能,4个按键功能分别为:(1) SW1:设定按键(设定按键)(2) SW2:加法按键(当前位加5)(3) SW3:减法按键(当前位减5)(4) SW4:退出设置键(系统初始化)图23 单片机按键和AT80C51的接线图2.5数码管及指示灯显示电路(1)数码管显示说明各个数码管的段码都是单片机的数据输出,即各个数码管输入的段码都是一样的,为了使其分别显示不同的数字,可采用动态显示的方式,即先只让最低位显示0(含点),经过一段延时,再只让次低位显示1,如此类推。由视觉暂留,只要我们的延时时间足够短,就能够使得数码的显示看起来非常的
20、稳定清楚,过程如表2-1。表2-1 数码管编码表段码位码显示器状态08H01H0abH02H112H04H222H08H3a1H10H424H20H504H40H6aaH80H7本论文中使用了3个数码管,其中前两位使用动态扫描显示实测温度,在设置加热温度的时候,两个数码管是闪烁,以提示目前处在温度设置状态。第三位数码管静态显示符号“”。(2)运行指示灯说明本热水器温度控制系统中共使用到3个LED指示灯和3个数码管。右上角的红色LED是电源指示灯;数码管右边的红色LED是加热指示灯,当刚开机或温度降到设定温度5以下时,该灯会亮,表示目前处于加热状态;当温度上升到设定温度时,该LED灭,同时数码管
21、右边的绿色LED亮,表示目前处于保温状态,用户可以使用热水器;当温度再次下降到设定温度5以下时,绿色LED灭,红色加热的LED灯亮,不断循环。图24LED数码管显示电路图2.6温度采集电路(1) DS18B20介绍Dallas最新单线数字温度传感器DS18B20简称新的“一线器件”体积更小、适用电压更宽、更经济。Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20、DS1822“一线总线”数字化温度传感器同DS18B20一样,DS18B20也支持
22、“一线总线”接口,测量温度范围为 -55+125,在-10+85范围内,精度为0.5。DS1822的精度较差为2。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。其DS18B20的管脚配置和封装结构如图2-5所示。图2-5 DS18B20封装引脚定义: DQ为数字信号输入/输出端; GND为电源地; VDD为外接供电电源输入端(在寄生电源接线方式时接地)。 (2)DS18B20的单线(1wire bus)系统单线总线结构是DS18B20的突出特点,也是理解和编程的难点。从两个角度来理解单线总线:第一,单线总线只定义了一个信号线,而且DS18B20智能程度较低(这点可以与微控
23、制器和SPI器件间的通信做一个比较),所以DS18B20和处理器之间的通信必然要通过严格的时序控制来完成。第二,DS18B20的输出口是漏级开路输出,这里给出一个微控制器和DS18B20连接原理图。这种设计使总线上的器件在合适的时间驱动它。显然,总线上的器件与(wired AND)关系。这就决定:(1)微控制器不能单方面控制总线状态。之所以提出这点,是因为相当多的文献资料上认为,微控制器在读取总线上数据之前的I/O口的置1操作是为了给DS18B20一个发送数据的信号。这是一个错误的观点。如果当前DS18b20发送0,即使微控制器I/O口置1,总线状态还是0;置1操作是为了是I/O口截止(cut
24、 off),以确保微控制器正确读取数据。(2)除了DS18B20发送0的时间段,其他时间其输出口自动截止。自动截止是为确保:1时,在总线操作的间隙总线处于空闲状态,即高态。2时,确保微控制器在写1的时候DS18B20可以正确读入。由于DS18B20采用的是1Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S52单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。 DS18B20的复位时序,如图2-6图2-6 DS18B20的复位时序图 DS18B20的读时序对于DS18B20的读时序分为读0时序和读1时序
25、两个过程。对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。DS18B20的读时序图如图2-7所示。图2-7 DS18B20的读时序 DS18B20的写时序对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。如图2-8
26、所示。图2-8 DS18B20的写时序图(3)DS18B20的供电方式在图2-9中示出了DS18B20的寄生电源电路。当DQ或VDD引脚为高电平时,这个电路便“取”的电源。寄生电路的优点是双重的,远程温度控制监测无需本地电源,缺少正常电源条件下也可以读ROM。为了使DS18B20能完成准确的温度变换,当温度变换发生时,DQ线上必须提供足够的功率。有两种方法确保 DS18B20 在其有效变换期内得到足够的电源电流。第一种方法是发生温度变换时,在 DQ 线上提供一强的上拉,这期间单总线上不能有其它的动作发生。如图2-9 所示,通过使用一个 MOSFET 把 DQ 线直接接到电源可实现这一点,这时D
27、S18B20 工作在寄生电源工作方式,在该方式下 VDD 引脚必须连接到地。图2-9 DS18B20供电方式1另一种方法是 DS18B20 工作在外部电源工作方式,如图2-10所示。这种方法的优点是在 DQ 线上不要求强的上拉,总线上主机不需要连接其它的外围器件便在温度变换期间使总线保持高电平,这样也允许在变换期间其它数据在单总线上传送。此外,在单总线上可以并联多个 DS18B20,而且如果它们全部采用外部电源工作方式,那么通过发出相应的命令便可以同时完成温度变换。 图2-10 DS18B20供电方式2(4)DS18B20设计中应注意的几个问题DS18B20具有测温系统简单、测温精度高、连接方
28、便、占用接口线少等优点,但在实际应用中也应注意以下几方面的问题:较小的硬件开销需要相对复杂的软件进行补偿,由于DS18B20 与微处理器间采用串行数据传送。因此, 在对DS18B20 进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在DS18B20 有关资料中均未提及1Wire上所挂DS18B20数量问题,容易使人误认为可以挂任意多个DS18B20,在实际应用中并非如此。当1Wire上所挂DS18B20超过8个时,就需要考虑微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。连接DS18B20的总线电缆是有长度限制的。实际应用中,测温电缆线建议采用屏蔽4芯双绞线,
29、其中一对线接地线与信号线,另一组接VCC 和地线,屏蔽层在源端单点接地。本文以广泛应用的数字温度传感器DS18B20为例,说明了1Wire总线的操作过程和基本原理。事实上,基于1Wire总线的产品还有很多种,如1Wire总线的E2PROM、实时时钟、电子标签等。他们都具有节省I/O资源、结构简单、开发快捷、成本低廉、便于总线扩展等优点,因此有广阔的应用空间,具有较大的推广价值。本设计将温度传感器DS18B20与单片机TXD引脚相连,读取温度传感器的数值。DS18B20与单片机连接图如图所示2-11所示。图2-11 DS18B20与单片机连接图2.7 电源电路采用L7805稳压块,输出为5V。电
30、子组件要正常运作都需要电源电压供电,一般常用的电源电压为+5V或+12V,图为数字集成电路所供给的电压为+5V,而CMOS IC所供给的电压为+12V,7805是一个稳压块。7805稳压管把高电压转换到低电压,7805稳压管具有保护单片机的作用。L7805输出端要并联上一个电解电容,滤除交流电干扰,防止损坏单片机系统。本设计采用两种供电方式,如图2-12,图a为四节干电池共6V经二极管加压后得到将近5V的直流电源,电源配以开关和指示灯,以方便使用。黄色发光二极管表示保温,红色的表示加热状态;图b一种为DC718V直流稳压电源变换成5V的直流电。a.直流电源 b.交流电源图2-12电源设计图2.
31、8报警电路设计同时可以在系统里设定温度上限值,由于加热停止后,加热管还有余热当采集到的外界温度高于当前所设定温度上限值时,程序就会进入报警子程序,触发蜂鸣器进行报警。报警电路原理图如图2-14 所示。图2-14 报警电路图图中的三极管8550的作用是增加驱动能力,比9012的驱动电流还大些,因此选用8550。当程序进入报警子程序时,把P2.7置0,就会触发蜂鸣器,为了使报警声音效果更好,对P2.7取反,发出报警“嘟噜”声音。2.9加热管控制电路设计继电器是常用的输出控制接口,可以做交直流信号的输出切换。它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际
32、上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。继电器控制接点操作说明如下:(1)COM:Common,共同点。输出控制接点的共同接点。(2)NC:Normal Close常闭点。以Com为共同点,NC与COM在平时是呈导通状态的。(3)NO:Normal Open常开点。NO与COM在平时是呈开路状态的,当继电器动作时,NO与COM导通,NC与COM则呈开路状态。当89S52的P2.5输出高电平时,继电器不导通,反之当输出低电平时,继电器导通,这样就激活了连接回路。第三章 系统流程本系统采用的是循环查询方式,来显示和控制温度的。主要包括四段
33、程序的设计:DS18B20读温度程序,数码管的驱动程序,键盘扫描程序,以及抱警处理程序。3.1主程序流程图图3-1主程序流程图主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值。主程序的第二个功能查询设 置 温 度 键是否被按下,以实现设置温度上下限的功能。其程序流程见图3-1所示。由总的流程图可以分析出,在整个程序中应该包括如下几个部分:读AT80C51子程序、温度处理子程序、读写DS18B20子程序,温度转换子程序,处理温度数据子程序,数据显示子程序和报警子程序等。3.2各个模块的流程图3.2.1 读取温度DS18B20模块的流程由于DS18B20采用的是一根
34、数据线实现数据的双向传输,而对AT89S52单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。DS18B20单线通信功能是分时完成的,它有严格的时隙概念。因此系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)发ROM功能命令发存储器操作命令处理数据DS18B20虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点, DS18B20必须首先调用启动温度转换函数,根据数据手册上对应转换时间来超作,如为12位转换,则应该是最大750mS,另外在对DS18B20超作时,时序要求非常
35、严格,因此最好禁止系统中断。由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。DS18B20的读时序:(1)对于DS18B20的读时序分为读0时序和读1时序两个过程。 (2)对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,
36、以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。DS18B20的写时序:(1)对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。 (2)对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。 系统程序设计主要包括三部分:读出温度子程序、温度转换命令子程序、显示温度子程序。开始读取温度值返回存储操作命令ROM操作命令初始化DS18B20存在吗YN图
37、3-2读取温度DS18B20模块的流程图程序代码为:GET_TEMPER:SETBDQ;读出转换后的温度值LCALLINIT_1820;先复位DS18B20JBFLAG1,TSS2RET;判断DS1820是否存在?若DS18B20不存在则返回TSS2:MOVA,#0CCH;DS18B20已经被检测到!跳过ROM匹配LCALLWRITE_1820MOVA,#44H;发出温度转换命令LCALLWRITE_1820LCALLDISPLAY;这里通过调用显示子程序实现延时一段时间,等待AD转换结束,12位的话750微秒LCALLINIT_1820;准备读温度前先复位MOVA,#0CCH;跳过ROM匹配
38、LCALLWRITE_1820MOVA,#0BEH;发出读温度命令LCALLWRITE_1820LCALLREAD_18200;将读出的温度数据保存到35H/36HRET3.2.2 键盘扫描处理流程此流程为键盘扫描处理,CPU通过检测各数据线的状态(0或1)就能知道是否有按键闭合以及哪个按键闭合。键盘管理程序的功能是检测是否有按键闭合,如果有按键闭合,消除抖动,根据键号转到相应的键处理程序,按键流程图如图3-3所示。图3-3按键流程图3.2.3 报警处理流程运行程序后,温度传感器DS18B20即可对环境进行温度采集,并送LED数码管显示。我们可以在程序里设定温度上限值,当采集到的外界温度高于当
39、前所设定温度上限值时,程序就会进入报警子程序,触发蜂鸣器进行报警。其程序流程图如图3-4所示。图3-4 报警子程序流程图第四章 系统调试4.1 硬件电路调试仔细检查所接电路,按照硬件原理图接线,理论上是能实现的,如果数码管不显示,则应该检查线路是否正确,或是因为单片机没有工作,还有集电极和发射极是否接对。如果只显示两个八,则可能是DS18B20没有接正确,检查上拉电路是否接好。另外要注意的是,由单片机输出的控制信号比较小,需要进行放大才能驱动继电器工作,否则就不能实现升温过程,通常选用8550三极管来进行放大。还有220V交流电绿色接头和加热管黄色接头必须接正确,否则导致电路烧坏。蜂鸣器是低电
40、平有效。如果能注意这些问题,电路基本不会出错。4.2 软件调试如果硬件电路检查后,没有问题却实现不了设计要求,则可能是软件编程的问题,首先应检查初始化程序,然后是读温度程序,显示程序,以及继电器控制程序,对这些分段程序,要注意逻辑顺序,调用关系,以及涉及到了标号,有时会因为一个标号而影响程序的执行,除此之外,还要熟悉各指令的用法,以免出错。还有一个容易忽略的问题就是,源程序生成的代码是否烧入到单片机中,如果这一过程出错,那不能实现设计要求也是情理之中的事。本人在设计的时候在伟福仿真软件进行调试,通过此软件进行调试可以很方便的观察单片机内部各个寄存器及内部存储器变化情况,以方便进行调试。图4-1
41、为单片机功能调试图:图4-1单片机功能调试图硬件与软件调试相结合,仔细检查各个模块的设计,就能顺利完成任务,实现设计要求,在调试过程中必须认真耐心,不能有一点马虎,否则遗漏一个小的问题就会导致整个设计的失败。4.3 系统操作说明本系统上电后数码管显示当前测量温度,此时加热指示灯和保温指示灯均不点亮;若此时按“自动加热”键,则单片机自动将预加热温度设置为80并开始加热,送出一个加热信号,并点亮加热指示灯;若按“温度设置”键,则进入预加热温度设置界面,此时数码管闪烁显示预设置温度,此时通过按键“”和“”进行设置温度,预设置温度按“5”递增或递减,设置好温度后再按一次“温度设置”键确定,单片机保存预
42、设置温度,并开始加热。此时单片机通过数码管显示实时检测的温度并和预设置温度进行对比,如果实测温度大于或等于预设置温度,则单片机发出停止加热信号并熄灭加热指示灯,点亮保温指示灯,且当超过预设温度时发出报警;当温度下降到预设置温度以下5度时,单片机再次发出加热信号,同时熄灭保温指示灯,点亮加热指示灯,依次循环控制。总 结 通过本次的设计,使我们不仅对单片机这门课程有了更深刻的认识,懂得了如何运用课本知识结合实际来完成定时器的显示和编程方法以及数码显示电路的驱动方法,使我们能够很快的适应现代控制技术发展的需求,同时也提高了我们的思维能力和实际操作能力,为以后更好的走上工作岗位奠定了坚实的基础。 另外
43、,这次的设计还让我更进一步的认识了关于AT80C51等芯片的引脚功能以及使用方法,使我学会了应用不同的芯片来配合完成整个设计的操作。 在做硬件电路的这段时间里,从思考设计到对电路的调试经过了许多困难。同样在对软件进行设计时,也可为一路坎坷。但是通过对软硬件不断撞墙,不断思考解决问题的过程中,我学会了很多东西,同时对单片机也有了更深的认识。在做设计的时候,很需要耐心和对事物的细心,很多时候一个简单问题的一个简单的疏忽就会导致整个电路的不工作,只有不断的检查不断的调试,才能真正完成一个设计的制作。只有不断的发现问题解决问题,才能从问题中改变自己,提升自己对单片机的能力。此设计虽然能够完成温度的显示
44、和控制,但功能和精度有待于进一步提高。以后可以通过加入PID算法优化控制功能,并通过液晶显示屏实时显示温度。致 谢经过半年的忙碌和工作,本次毕业设计已经接近尾声,作为一个本科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有导师的督促指导,以及一起工作的同学们的支持,想要完成这个设计是难以想象的。首先感谢韩守义老师出的这些论文选题,给了我这么一个展现自己能力的平台。在这一个论文设计之中,涉及到了方方面面的知识,没有大学期间各个学科老师的辛勤栽培,也不会有我见天的成果。所以要感谢所有的任课老师 。 在这里也要感谢我的室友们,是他们在平时无微不至的照顾,才有了我更棒的身体和更多的学
45、习时间。四年的时间里,我们没有红过脸,我们一直保持着那份纯真的友谊,是我们的互相帮助,才有了今天的这份德业双修。所以在这里也要感谢我们的江苏大学京江学院,是学院给了我们这么宽广的一个交流平台,能够在获得知识的同时,也能得到同样珍贵的友谊。 在论文即将完成之际,我的心情很是激动,那些埋头苦干和终日坐在电脑跟前的场景还是历历在目,辛勤劳动的付出,相信也能够给我带来同样分量的收获。从开始进入课题到论文的顺利完成,有太多太多的要感谢的朋友和老师,在这里请接受我真挚的感谢!参考文献1于微波,林晓梅,刘俊萍.微型计算机控制系统(第一版).M.吉林人民出版社,2002.2刘刚,邵敏权,刘俊萍,林晓梅.单片计
46、算机原理实验及应用技术.M.吉林科技技术出版社,1995.12.3张琳娜,刘武发.传感检测技术及应用(第一版).M.中国计量出版社出版,1999.12.4谭浩强.C程序设计.M.清华大学出版社,1999.12.5阎石.数字电子技术基础(第四版).M.高等教育出版社出版,1997.12.6何立民.MCS-51系列单片机应用系统设计(第一版).M.北京航天航空大学出版社,1999.6.7金以慧.过程控制(第一版).M.清华大学出版社出版,1993.4.8童诗白,华成英.模拟电子技术基础(第三版).M.高等教育出版社出版,2000.3.9游泊坤,詹宝玙.温度测量仪表.M.机械工业出版社出版,1982
47、.10沈文,詹卫前.单片机C语言开发入门指导.M.清华大学出版社,2003.11黄任.单片机应用系统设计.M.北京航天航空大学出版社,1999.12林俊.微型计算机控制系统应用实例集.M.清华大学出版社,1995.13林东,谢希仁.数据与计算机通信.M.电子工业出版社,2000.14周浩敏。信号处理技术基础.M.北京航空航天大学出版社,2001.15阮地生.自动测试技术与计算机仪器系统设计.M.西安电子科技大学出版社,1997.16吴正毅.测试技术与测试信号处理.M.清华大学出版社,1995.17王世一.数字信号处理.M.北京工学院出版社,1987.18林德杰.电气测试技术.M.机械工业出版社
48、,2000.附录1:系统源程序EMPER_LEQU29H;用于保存读出温度的低8位TEMPER_HEQU28H;用于保存读出温度的高8位FLAG1EQU38H;是否检测到DS18B20标志位A_BITEQU20H;数码管个位数存放内存位置B_BITEQU21H;数码管十位数存放内存位置B1EQU70H;温度小数点位A1EQU71H;设定温度值DQEQUP3.1;DQ为DS18B20数据位BELLEQUP2.7;/蜂鸣报警ORG0000H;单片机内存分配申明!AJMPMAIN0;/定义MAIN:MOVR0,#10M1:CPLP2.3ACALLDELAY125DJNZR0,M1;/灯闪5次MAIN
49、0:MOVA1,#80;默认加热为80度MAIN1:LCALLD1820;调用读温度子程序 LCALLDISPLAY;调用数码管显示子程序 MOVA,29H CLRC CJNEA,A1,MAIN1_1 SETBBELL;/温度相等,关闭蜂鸣器 AJMPMAIN1_1_A;/下等不用叫蜂鸣器MAIN1_1:JCMAIN1_2;为1转移,表示小于设定温度 CPLBELL;蜂鸣器断续鸣叫MAIN1_1_A:CLRP2.3;/未达到温度 SETBP2.5 AJMPMAIN2;/主要是检测温度是否小于设定的温度,小于,则开发热管CLRP2.3MAIN1_2:SETBBELL;/关闭蜂鸣器 CLRP2.5
50、;/开发热管 SETBP2.3;/大于,关发热管MAIN2:JBP1.0,MAIN1;/看P1.0有否按下 ACALLDELAY125;/延时防抖动 JBP1.0,MAIN1;/再次查看 CLRP2.3 JNBP1.0,$;/等按键完全松手才进入 SETBP2.3 SETBP2.5;/检测到P1.0按键后后进入设定温度MAIN2_1:ACALLDISPLAY1 JBP1.2,MAIN2_2 ACALLDELAY125 JBP1.2,MAIN2_2 JNBP1.2,$ MOVA,#5 ADDA,A1 CLRC CJNEA,#100,MAIN2_1_1 MOVA,#99 AJMPMAIN2_1_3
51、;/ +5度按键,按下+5度MAIN2_1_1:JCMAIN2_1_3MAIN2_1_2:CLRCMOVA,#99MAIN2_1_3:MOVA1,AMAIN2_2:JBP1.4,MAIN2_3ACALLDELAY125JBP1.4,MAIN2_3JNBP1.4,$MOVA,A1CJNEA,#99,ZY1MOVB,#4AJMPZY2ZY1:MOVB,#5ZY2:CLRCMOVA,A1SUBBA,BMAIN2_2_1:JNCMAIN2_2_2MOVA1,#0AJMPMAIN2_3;/ -5度按键,按下-5度MAIN2_2_2:MOVA1,AMAIN2_3:JBP1.6,MAIN2_1ACALLDE
52、LAY125JBP1.6,MAIN2_1CLRP2.3JNBP1.6,$SETBP2.3AJMPMAIN1;/退出D1820:LCALLGET_TEMPER;调用读温度子程序MOVB1,29HMOVA,29HMOVC,40H;将28H中的最低位移入CRRCAMOVC,41HRRCAMOVC,42HRRCAMOVC,43HRRCAMOV29H,AMOVA,B1MOVB,#10HMULABMOVB,#10HDIVABMOVB,#10MULABMOVB,#10HDIVABMOVB1,ARET;/读取温度后进行转换!INIT_1820:SETBDQ;这是DS18B20复位初始化子程序NOPCLRDQ;主机发出延时537微秒的复位低脉冲MOVR1,#3TSR1:MOVR0,#107DJNZR0,$DJNZR1,TSR1SETBDQ;然后拉高数据线NOPNOPNOPNOPMOVR0,#25HTSR2:JNBDQ,TSR3;等待DS18B20回应DJNZR0,TSR2LJMPTSR4;延时TSR3:SETBFLAG1;置标
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物业房屋租赁合同模板
- 重庆市大足区选拔社区专职网格员后备人选真题2024
- 2024年滨州市市属事业单位考试真题
- 职业规划与发展暑期课程计划
- 2025年水质监测系统合作协议书
- 工业厂房建设主要机械设备安排
- 一般生产经营单位安全培训考试题答案精练
- 安全管理员安全培训试题附答案(综合卷)
- 职工安全培训试题含答案(突破训练)
- 设施管理工程表扬信范文
- 生物武器伤害及其防护课件
- 机械基础 第2版全书电子教案
- 详细讲解DLT5210火力发电厂建设施工质量验收及评定规程课件
- 水电路隐蔽工程验收单
- 司法评估申请书
- DBJ∕T45-099-2020 城镇道路沥青路面施工技术规范
- 清水混凝土施工指导手册
- 主动脉夹层护理查房-PPT课件
- 指导学生研究性学习——地沟油
- 各星级酒店功能区面积配置
- 工作票“三种人”培训通用课件
评论
0/150
提交评论