冷库温度控制系统的设计毕业论文

上传人:痛*** 文档编号:40676587 上传时间:2021-11-17 格式:DOC 页数:38 大小:480KB
收藏 版权申诉 举报 下载
冷库温度控制系统的设计毕业论文_第1页
第1页 / 共38页
冷库温度控制系统的设计毕业论文_第2页
第2页 / 共38页
冷库温度控制系统的设计毕业论文_第3页
第3页 / 共38页
资源描述:

《冷库温度控制系统的设计毕业论文》由会员分享,可在线阅读,更多相关《冷库温度控制系统的设计毕业论文(38页珍藏版)》请在装配图网上搜索。

1、大连交通大学信息工程学院毕 业 设 计 (论 文)题 目 冷库温度控制系统的设计 学生姓名 专业班级 自动化 班 指导教师 * 职 称教授 所在单位 电气工程系 教研室主任 完成日期 年 6 月 29 日摘 要温度是日常生活中无时不在的物理量,温度的控制在各个领域都有积极的意义。随着微机测量和控制技术的迅速发展与广泛应用,以单片机为核心的温度采集与控制系统的研发与应用在很大程度上提高了生产生活中对温度的控制水平。本设计是基于STC89S52单片机对冷库温度检测并实现自动控制的系统。主要由电源、系统控制电路、温度检测电路、温度显示电路、执行电路、提示电路等组成,以STC89S52单片机为控制器,

2、利用DS18B20温度传感器检测当前冷库中的温度值,通过控制器及辅助电路进行计算输出并在LCD上显示当前冷库的温度值;如果测量到冷库中的温度值达到设定温度的上、下限值时,系统通过STC89S52发出控制信号完成提示功能,同时启动或停止执行电路,使温度快速达到设定的范围内。此冷库温度控制系统结构简单,控制效果良好。关键词:单片机 DS18B20传感器 温度控制 显示电路ABSTRACTThe temperature is in daily life the ever-present physical quantities, the control of the temperature in va

3、rious fields have positive significance. Along with the computer measurement and control technology of the rapid development and wide application, with the single chip processor as the core temperature gathering and control system development and application greatly improve the production of the con

4、trol of the temperature in the life level.This design is based STC89S52 microcontroller cold storage temperature sensing and automatic control system. Mainly by the composition of the power, the system control circuit, the temperature detection circuit, the temperature display circuit, executive cir

5、cuit, and prompt circuit. System microcontroller to STC89S52 as the controller, DS18B20 temperature sensor detects the temperature of the cold, calculated output and the current cold storage temperature value displayed on the LCD controller and auxiliary circuits; If the measured temperature in cold

6、 storage to achieve set given temperature, the lower limit, the system through STC89S52 control signals to complete the prompts to start or stop the implementation of the circuit, so that the temperature is quickly reached within the set range. The refrigerator temperature control system is simple,

7、good control effect.Key words: single-chip microcomputer the sensor DS18B20 temperature control show circuit目 录1 前 言11.1 课题研究的意义和目的11.2 冷库温度控制的应用11.3 主要研究内容21.4 冷库温度控制器的组成22 冷库温度控制系统总体方案设计32.1 系统分析32.2 方案论证32.2.1 控制器方案选择和论证32.2.2 测温元件的选择32.3 主要器件介绍52.3.1 STC89S52单片机52.3.2 DS18B20温度传感器92.3.3 LCD1602液

8、晶模块123 冷库温度控制系统硬件设计153.1 控制系统结构设计153.2 电源设计153.3 单片机最小系统163.4 温度检测电路173.5 显示电路173.6 执行电路及提示电路193.7 系统硬件原理图204 系统软件设计214.1 主程序设计流程图214.2 读温度程序流程图22结 论23谢 辞24参考文献25附 录26大连交通大学信息工程学院2012届本科生毕业设计(论文)1 前 言1.1 课题研究的意义和目的冷库是利用降温设施创造适宜的湿度和温度条件的仓库,又称冷藏库,是加工、贮存农畜产品的场所。它能摆脱气候的影响,延长农畜产品的贮存保鲜期限,以调节市场供应。冷库主要用作对食品

9、、乳制品、肉类、水产、禽类、果蔬、冷饮、花卉、茶叶、药品、化工原料、电子仪表仪器的恒温贮藏。从冷库的现状与发展趋势来看,果品恒温气调库发展迅速,低温库比例有所增加,适合农户建造使用的微型冷库异军突起。冷库设计自动化控制程度逐步提高,政府安全生产和质量监督等管理部门对冷库的监管力度大大加强。在我国,食品专用冷库严重不足,食品的冷藏链的不完整,加之食品经营管理的各种因素,每年约有3000万吨水果、蔬菜、乳制品和其他易腐食品有待于从变质中拯救出来,易腐食品每年要损失十多亿元。养殖种植业的大幅发展与保鲜、存储及流通的发展极不协调,产量越大亏损越多,我国现有人口已近13.5亿,食品资源非常宝贵,如不尽快

10、改观,不仅是中国的食品工业的水平将大幅度落后于先进国家,而且将会造成资源的大量浪费。当务之急,我们要提高冷库自动化管理的水平,加强管理,降低运营成本,促进冷库向安全、规范、节能、环保结构简单、操作方便的方向发展12。随着社会的发展,科技的进步,以及测温仪器在各个领域的应用,智能化已是现代温度控制系统发展的主流方向。特别是近年来,温度控制系统已应用到人们生活的各个方面,是与人们息息相关的一个实际问题。针对这种实际情况,设计一个冷库温度控制系统,具有广泛的应用前景与实际意义。本文设计了一种简单的、运行可靠且成本较低的温度控制系统,采用DS18B20数字传感器和STC89S52单片机来检测并控制温度

11、,具有现实温度、报警等功能。1.2 冷库温度控制的应用二十一世纪是科技高速发展的信息时代,电子技术、微型单片机技术的应用更是空前广泛,伴随着科学技术和生产的不断发展,需要对各种参数进行温度测量。因此温度一词在生产生活之中出现的频率日益增多,与之相对应的,温度控制和测量也成为了生活生产中频繁使用的词语,同时它们在各行各业中也发挥着重要的作用。如在日趋发达的工业之中,利用测量与控制温度来保证生产的正常运行。而我国冷库的制冷设备大多采用手动控制,或者仅对某一个制冷部件采用了局部自动控制技术,对整个制冷系统做到完全自动控制的较少,货物进出、装卸等方面的自动化程度普遍较低。将温度控制器应用在冷库中能够良

12、好的保持冷库中的温度,可以让整个控制系统得以稳定的操作和运行,进而实现无人操作的便捷34。1.3 主要研究内容本设计将在以下三个方面对冷库温度控制系统进行研究。(1)控制器和温度传感器的选择。如何选择合理的控制器和温度传感器是本设计的关键问题。在本设计中主要研究检测温度并传给控制器进行数据处理、并根据要求输出不同的控制信号,本课题设计能够实现(2)冷库温度控制系统硬件电路的设计。本设计中的温度控制系统要求有较高的稳定性才能满足基本要求,故拟选择数字式温度传感器DS18B20,其输出的信号为数字信号能够直接被单片机处理,省去了A/D和D/A转换电路以及调理电路,不仅简化了硬件电路,同时提高了稳定

13、性。(3)冷库温度控制器软件的设计。在本设计中选用了简单方便的C语言对单片机控制系统进行编程,其具有面向应用、运算符丰富、结构简洁等特点,能直观明了的设计出温度控制器所需要的要求,其良好的可移植性也大大的避免了软件编程中的一些不必要的麻烦。1.4 冷库温度控制器的组成(1)主控制器:它是温度控制的“大脑”,通过用户自编程序,下装到内存中,当有需要处理的信号产生时,它就会发出相应指令,指挥其他外围电路的工作,同时根据温度的变化对执行机制进行控制,并且处理一些数据。(2)温度传感器:负责采集冷库中的温度信号,并且把信号传送给单片机进行处理,同时主控制器根据功能会给出一个控制信号。(3)LCD显示屏

14、:提供一个直接的温度数值实时显示出来,让人直观的了解冷库当前的温度。(4)提示报警电路:当温度达到某一个值时,指示灯会提示出现问题并且同时有声音的提示(5)执行电路:当冷库中的温度达到一定的值时,执行电路就会带动加热或制冷装置动作,从而实现控制温度。2 冷库温度控制系统总体方案设计2.1 系统分析本设计以STC89S52单片机为核心,温度传感器DS18B20检测范围-55摄氏度到125摄氏度,把所测得的温度发送到STC89S52单片机上,经过单片机处理,将把温度在显示电路上实时显示,本系统显示器为1602液晶模块。本系统除了显示温度以外还可以设置一个温度值,对所测温度进行监控,当温度高于或低于

15、设定温度时,开始启动相应设备,快速调节仓库温度的变化,达到恒温的目的,使整个控制系统得以稳定的运行,进而实现智能控制5。2.2 方案论证2.2.1 控制器方案选择和论证方案1:采用FPGA可编程逻辑器件,可以不被标准系列器件在逻辑功能上所限制,而且修改逻辑可在系统设计和使用过程的任一阶段中进行,并且只须通过对所用的FPGA器件进行重新编程即可完成,给系统设计提供了很大的灵活性。用它来设计一个系统所需时间比传统方法大为缩短。FPGA器件集成度高,使用时印刷线路板电路布局布线简单。同时,在样机设计成功后,由于开发工具先进,自动化程度高,对其进行逻辑修改也十分简便迅速。因此,使用FPGA器件可大大缩

16、短系统的设计周期,加快产品投放市场的速度,提高产品的竞争能力。方案2:采用PLC可编程逻辑器件,以PLC做控制系统,信号处理时间短、速度快、实时性强。所有的I/O输入输出信号均采用光电隔离,使工业现场的外电路与控制器内部电路之间电气上隔离;具有良好的自诊断功能,一旦电源或其他软,硬件发生异常情况,CPU立即采取有效措施,以防止故障扩大;具有较高的稳定性。方案3:采用STC公司的STC89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器,价格便宜,性价比高,而且完全兼容传统的8051单片机的指令代码,相对比较熟悉,用起来比较方便6。比较以上三种方案,方案3的设

17、计考虑到实用性及性价比, 所采用的芯片和器件均为通用器件, 因而整个系统的造价不高, 并且有较强的应用价值和良好的发展前景,因此采用方案3。2.2.2 测温元件的选择方案1:采用模拟集成温度传感器,集成传感器是采用硅半导体集成工艺而制成的,因此亦称硅传感器或单片集成温度传感器,它是将温度传感器集成在一个芯片上、可完成温度测量及模拟信号输出功能的专用IC。模拟集成温度传感器的主要特点是功能单一(仅测量温度)、测温误差小、价格低、响应速度快、传输距离远、体积小、微功耗等,适合远距离测温、控温,不需要进行非线性校准,外围电路简单。图2-1是AD590用于测量热力学温度的基本应用电路,因为流过AD59

18、0的电流与热力学温度成正比,当电阻R1和电位器R2的电阻之和为1k时,输出电压V随温度的变化为1mV/K。但由于AD590的增益有偏差,电阻也有误差,因此应对电路进行调整。调整的方法为:把AD590放于冰水混合物中,调整电位器R2,使V=273.2mV。或在室温下(25)条件下调整电位器,使V=273.2+25=298.2(mV)。但这样调整只可保证在0或25附近有较高精度7。AD590把被测温度转换为电流再通过放大器和A/D转换器,输出数字量送给单片机进行温度控制。图2-1 AD590测温电路方案2:采用DS18B20数字式温度传感器, DS18B20是DALLAS公司生产的一线式数字温度传

19、感器,它具有微型化、低功耗、高性能抗干扰能力、强易配处理器等优点,特别适合用于构成多点温度测控系统,可直接将温度转化成串行数字信号(按9位二进制数字)给单片机处理,且在同一总线上可以挂接多个传感器芯片,它具有三引脚TO-92小体积封装形式,温度测量范围-55+125,可编程为912位A/D转换精度,测温分辨率可达0.0625,被测温度用符号扩展的16位数字量方式串行输出,其工作电源既可在远端引入,也可采用寄生电源方式产生,多个DS18B20可以并联到三根或者两根线上,CPU只需一根端口线就能与多个DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。从而可以看出DS18B20

20、非常方便的被用于远距离多点温度检测系统8。综上所述,在本设计中采用方案2。该芯片的物理化学性很稳定,它能用做工业测温元件,且此元件线形较好。该芯片直接向单片机传输数字信号,便于单片机处理及控制。2.3 主要器件介绍2.3.1 STC89S52单片机STC89S52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。单片机芯片图如图2-2所示。

21、图2-2 单片机芯片图(1)时钟电路STC89S52内部有一个用于构成振荡器的高增益反相放大器,引脚RXD和TXD分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部方式的时钟电路如图2-3(a) 所示,在RXD和TXD引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.212MHz之间选择,电容值在530pF之间选择,电容值的大小可对频率起微调的作用。外部方式的时钟电路如图2-3(b)所示,RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。

22、片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。(a)内部方式时钟电路 (b)外部方式时钟电路图2-3 时钟电路(1)复位及复位电路1)复位操作复位是单片机的初始化操作。其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。除PC之外,复位操作还对其他一些寄存器有影响,它们的复位状态如表2-1所示。表2-1 一些寄存器的复位状态寄存器复位状态寄存器复位状态PC0000HTCON00HACC00HTL000HPSW00HTH000HSP

23、07HTL100HDPTR0000HTH100HP0-P3FFHSCON00HIPXX000000BSBUF不定IE0X000000BPCON0XXX0000BTMOD00H2)复位信号及其产生RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。若使用颇率为6MHz的晶振,则复位信号持续时间应超过4us才能完成复位操作。产生复位信号的电路逻辑如图2-4所示:图2-4 复位信号的电路逻辑图整个复位电路包括芯片内、外两部分。外部电路产生的复位信号(RST)送至施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样

24、,然后才得到内部复位操作所需要的信号。复位操作有上电自动复位相按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的,其电路如图2-5(a)所示。这佯,只要电源VCC的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。按键手动复位有电平方式和脉冲方式两种。其中,按键电平复位是通过使复位端经电阻与VCC电源接通而实现的,其电路如图2-5(b)所示;而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的,其电路如图2-5(c)所示。 (a)上电复位 (b)按键电平复位 (c)按键脉冲复位图2-5 复位电路上述电路图中的电阻、电容参数适用于6MHz晶振,

25、能保证复位信号高电平持续时间大于2个机器周期。本系统的复位电路采用图2-5(b)上电复位方式。3)STS89S52具体介绍如下:主电源引脚(2根)VCC(Pin40):电源输入,接5V电源;GND(Pin20):接地线;外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端;XTAL2(Pin20):片内振荡电路的输出端;控制引脚(4根)RST/VPD(9脚):RST即为RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机复位到初始状态。当VCC发生故障,降低到低电平规定值或掉

26、电时,该引脚可接上备用电源VPD(+5V)为内部RAM供电,以保证RAM中的数据不丢失。ALE/ P(30脚):当访问外部存储器时,ALE(允许地址锁存信号)以每机器周期两次的信号输出,用于锁存出现在P0口的低电平信号。PSEN(29脚):片外程序存储器读选通输出端,低电平有效。当从外部程序存储器读取指令或常数期间,每个机器周期PESN两次有效,以通过数据总线口读回指令或常数。当访问外部数据存储器期间,PESN信号将不出现。EA/VPP(31脚):EA为访问外部程序储器控制信号,低电平有效。当EA端保持高电平时,单片机访问片内程序存储器4KB(MS-52子系列为8KB)。若超出该范围时,自动转

27、去执行外部程序存储器的程序。当EA端保持低电平时,无论片内有无程序存储器,均只访问外部程序存储器。对于片内含有EPROM的单片机,在EPROM编程期间,该引脚用于接21V的编程电源VPP。可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。P0口(Pin39Pin32):8位双向I/O口线,名称为P0.0P0.7;P1口(Pin1Pin8):8位准双向I/O口线,名称为P1.0P1.7 ;P2口(Pin21Pin28):8位准双向I/O口线,名称为P2.0P2.7; P3口(Pin10Pin17):

28、8位准双向I/O口线,名称为P3.0P3.7;STC89S52主要功能如表2-2所示。表2-2 STC89S52主要功能主要功能特性兼容MCS51指令系统8K可反复擦写Flash ROM32个双向I/O口256x8bit内部RAM3个16位可编程定时/计数器中断时钟频率0-24MHz2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能2.3.2 DS18B20温度传感器(1)DS18B20的工作原理1)DS18B20工作时序根据DS18B20的通信协议,主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前

29、都必须要对DS18B20进行复位;复位成功后发送一条ROM指令;最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待1560微秒左右后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。其工作时序包括初始化时序、写时序和读时序。A初始化时序图2-6 初始化时序总线上的所有传输过程都是以初始化开始的,主机响应应答脉冲。应答脉冲使主机知道,总线上有从机设备,且准备就绪。主机输出低电平,保持低电平时间至少480us,以产生复位脉冲。接着主机释放总线,4.7K上拉电阻将总线拉高,延时1560us,并进入接

30、受模式,以产生低电平应答脉冲,若为低电平,再延时480us。B写时序图2-7 写时序写时序包括写0时序和写1时序。所有写时序至少需要60us,且在2次独立的写时序之间至少需要1us的恢复时间,都是以总线拉低开始。写1时序,主机输出低电平,延时2us,然后释放总线,延时60us。写0时序,主机输出低电平,延时60us,然后释放总线,延时2us。C读时序图2-8 读时序总线器件仅在主机发出读时序时,才向主机传输数据,所以,在主机发出读数据命令后,必须马上产生读时序,以便从机能够传输数据。所有读时序至少需要60us,且在2次独立的读时序之间至少需要1us的恢复时间。每个读时序都由主机发起,至少拉低总

31、线1us。主机在读时序期间必须释放总线,并且在时序起始后的15us之内采样总线状态。主机输出低电平延时2us,然后主机转入输入模式延时12us,然后读取总线当前电平,然后延时50us。2)ROM操作命令当主机收到DSl8B20 的响应信号后,便可以发出ROM 操作命令之一,这些命令如表2-3所示。表2-3 DS18B20内部存储器结构Byte0温度测量值LSB(50H)Byte1温度测量值MSB(50H)E2PROMByte2TH高温寄存器-TH高温寄存器Byte3TL低温寄存器-TL 低温寄存器Byte4配位寄存器-配位寄存器Byte5预留(FFH)Byte6预留(0CH)Byte7预留(I

32、OH)Byte8循环冗余码校验(CRC)(2)DS18B20的测温原理9每一片DSl8B20在其ROM中都存有其唯一的48位序列号,在出厂前已写入片内ROM 中。主机在进入操作程序前必须用读ROM(33H)命令将该DSl8B20的序列号读出。程序可以先跳过ROM,启动所有DSl8B20进行温度变换,之后通过匹配ROM,再逐一地读回每个DSl8B20的温度数据。DS18B20的测温原理如图2-9所示,图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计

33、数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55 所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图2-9中的斜率累加器用于补偿和修正测

34、温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值。另外,由于DS18B20单线通信功能是分时完成的,他有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)发ROM功能命令发存储器操作命令处理数据。斜坡累加器预 制减法计数器低温度系数振荡器减到0高温度系数振荡器减法计数器计数比较器预 制温度寄存器减到0图2-9 测温原理图2.3.3 LCD1602液晶模块(1)LCD1602主要技术参数:1)显示容量:162个字符 ;2)芯片工作电压:4.55.5V;

35、3)工作电流:2.0mA(5.0V);4)模块最佳工作电压:5.0V;5)字符尺寸:2.954.35(WH)mm。(2)指令说明及时序1602液晶模块内部的控制器共有11条控制指令,其中指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,

36、低电平不闪烁。指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平),1602液晶模块控制

37、指令如表2-4所示。表2-4 控制指令序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*续表2-47置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM)10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容读、写操作时序如图2-10和2-11所示:图2-10 读操作时序图2-11

38、写操作时序3 冷库温度控制系统硬件设计3.1 控制系统结构设计本系统主要由STC89S52单片机及其外围电路、温度检测电路、执行控制电路以及显示电路等部分组成。由DS18B20组成的温度检测电路,检测到冷库中的温度将数据上传到单片机中,单片机会对检测到的温度数值与设定好的温度数值做比较,如果高于设定的温度数值,单片机会输出一个控制信号使继电器1动作带动电机运行执行降温,并且黄灯会亮进行提示;如果低于设定的温度数值,单片机同样会输出一个控制信号使继电器2动作带动电机运行执行加热,同样黄灯也会亮进行提示,在本设计中继电器1和2是用同一个继电器进行仿真的;如果检测到的温度在设定值得范围内,绿灯亮。同

39、时,单片机会把检测到的温度值显示在LCD1602显示屏上,使人能够直观的看到温度是多少以及控制温度升、降温的进程。控制系统结构框图如下图3-1所示。单片机DS18B20检测电路晶振电路复位电路电源显示电路执行电路提示报警电路图3-1 控制系统结构框图3.2 电源设计控制系统主控制部分电源需要用5V直流电源供电,其电路如图3-2所示,把频率为50Hz、有效值为220V的单相交流电压转换为幅值稳定的5V直流电压。其主要原理是把单相交流电经过电源变压器、整流电路、滤波电路、稳压电路转换成稳定的直流电压。由于输入电压为电网电压,一般情况下所需直流电压的数值和电网电压的有效值相差较大,因而电源变压器的作

40、用显现出来起到降压作用。降压后还是交流电压,所以需要整流电路把交流电压转换成直流电压。由于经整流电路整流后的电压含有较大的交流分量,会影响到负载电路的正常工作。需通过低通滤波电路滤波,使输出电压平滑。稳压电路的功能是使输出直流电压基本不受电网电压波动和负载电阻变化的影响,从而获得稳定性足够高的直流电压。本电路使用集成稳压芯片7805解决了电源稳压问题。图3-2 电源部分连线图3.3 单片机最小系统单片机最小系统如图3-3所示,其中有4个双向的8位并行I/O端口,分别记作P0、P1、P2、P3,都可以用于数据的输出和输入,P3口具有第二功能为系统提供一些控制信号。时钟电路用于产生单片机工作所必须

41、的时钟控制信号,内部电路在时钟信号的控制下,严格地按时序指令工作。单片机内部有一个用于构成振荡器的高增益反向放大器,该高增益反向放大器的输入端为芯片的引脚XTAL1,输出端为XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成了一个稳定的自激振荡器。电路中的微调电容通常选择为30pF左右,该电容的大小会影响到振荡器频率的高低、振荡器的稳定性和起振的快速性。晶体的振荡频率为12MHz。把EA脚接高电平,单片机访问片内程序存储器,但读完单片机内部程序存储器时,将自动转向执行外部程序存储器内的程序。单片机的复位是由外部的复位电路来实现。采用最简单的外部按键复位电路。按键自动复位是通过外部复位电

42、路的来实现的。本设计中选用时钟频率为12MHz。图3-3 单片机最小系统3.4 温度检测电路DS18B20温度传感器只有三根外引线:单线数据传输总线端口DQ ,外供电源线VDD,共用地线GND。DS18B20有两种供电方式:一种为数据线供电方式,此时VDD接地,它是通过内部电容在空闲时从数据线获取能量,来完成温度转换,相应的完成温度转换的时间较长。这种情况下,用单片机的一个I/O口来完成对DS18B20总线的上拉。另一种是外部供电方式(VDD接+5V),相应的完成温度测量的时间较短。在本设计中采用外部供电方式实现DS18B20传感器与单片机的连接,其接口电路如图3-4所示。图3-4 温度检测电

43、路3.5 显示电路液晶显示器是一种将液晶显示器件,连接器件,集成电路,PCB线路板,背光源,结构器件装配在一起的组件。根据显示内容和方式的不同可以分为,数显LCD,点阵字符LCD,点阵图形LCD。在此设计中采用点阵字符LCD,这里采用常用的2行16个字的1602液晶模块。1602采用标准的14脚接口,其中:第1脚:VSS为地电源第2脚:VDD接5V正电源。第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。 第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW

44、为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。 第1516脚:空脚。与单片机的连接的显示电路如图3-5所示。图3-5 显示电路3.6 执行电路及提示电路单片机通过光电开关和三极管控制继电器的通断,最后达到控制升温、降温的目的。图3-6中的电机,当温度超过上限时表示的是降温装置、当温度降到下限时表示的是升温装置10。当温度保持在设定范围时,单片机P

45、3.7发送高电平信号光电开关没有动作,从而继电器断开,电机也不转动。当温度超过设定温度的上限或者下限时,单片机P3.7发送低电平信号光电开关动作从而使继电器开关闭合电机通电运转,实现降温和升温的目的,当温度再次回到设定温度的范围时单片机P3.7又发送高电平信号,电机停止运转。这样,就使温度能够稳定在设置的温度范围内。继电器电路中有一个三极管的保护电路,即将一个二极管反向接到三机管的两端。连接方法如图3-6所示。当继电器突然断电时,继电器产生很大的反向电流。二极管的作用是将反向电流分流,使流过三级管的电流比较小,达到保护三极管的作用。图3-6 执行电路及提示电路3.7 系统硬件原理图冷库温度控制

46、系统硬件原理图如图3-7所示。图3-7 冷库温度控制系统硬件原理图4 系统软件设计4.1 主程序设计流程图整个系统的功能是由硬件电路配合软件来实现的,当硬件基本定型后,软件的功能也就基本定下来了。从软件的功能不同可分为两大类:一是主程序,它是整个控制系统的核心,专门用来协调各执行模块和操作者的关系。二是子程序,它是用来完成各种实质性的功能如测量、计算、显示等。每一个执行软件也就是一个小的功能执行模块。这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义。各执行模块规划好后,就可以规划主程序了。首先要根据系统的总体功能选择一种最合适的主程序结构,然后根据实时性的要求,合理地安排主程

47、序和各执行模块之间地调度关系。初始化、设置常量开始DS18B20初始化读取转换温度值数据处理生成显示码显示温度是否超出温度限制继电器动作结束NY图4-1 主程序流程图4.2 读温度程序流程图返回数据处理发送读温度命令OBEHDS18B20初始化延时发送温度转换命令发送0CCH命令FLAG1=1??DQ置1图4-2 读温度流程图结 论经过三个多月的方案论证、系统的硬件和软件的设计、系统的调试。查阅了大量的关于传感器、单片机及其应用的书籍、以及控制方面的理论。经过了一番特殊的体验后,经历了失败的痛苦,也尝到了成功的喜悦。第一次靠用所学的专业知识来解决问题。检查了自己的知识水平,使我对自己有一个全新

48、的认识。通过这次毕业设计,不仅锻炼自己分析问题、处理问题的能力。这些培养和锻炼对于我们这些即将走向工作岗位的大学生来说,是很重要的。这次毕业设计基本的完成了任务书的要求,实现了冷库温度的控制。通过仿真测试表明系统的设计是正确的,可行的。但是由于设计者的设计经验和知识水平有限,系统还存在许多不足和缺陷。谢 辞大学四年的读书生活即将划上一个句号,却只是我的人生的一个逗号,我人生征程的开始。在这四年的求学生涯中师长、亲友给与了我大力支持,在这个翠绿的季节我的将迈开脚步走向远方,怀念,思索,长长的问号一个个在求学的路途中被知识的举手击碎,而人生的思考才刚刚开始。在这里尤其要感谢满红老师,满老师治学严谨

49、,学识渊博,思想深邃,视野雄阔,为我营造了一种良好的精神氛围。本次毕业设计是在满老师密切关心和悉心指导下完成的。老师在课题开题期间和论文写作的过程中给予了我许多指导,导师总是以认真负责、一丝不苟的工作态度阅读并修改文章中不足的地方,她优良的作风和严谨治学的态度同样深深影响着我,经由满老师悉心的点拨,再经思考后的领悟,常常让我有“山重水复疑无路,柳暗花明又一村”的体会。同样感谢大学期间教书育人的老师们,我不是你们最出色的学生,而你们却是我最尊敬的老师。授人以鱼不如授人以渔,置身其间,耳濡目染,潜移默化,使我不仅接受了全新的思想观念,树立了宏伟的学术目标,领会了对待知识,走向社会的思考方式。参考文

50、献1 余发山.单片机原理及应用技术M.徐州:中国矿业大学出版社.2003.122 何宏.单片机原理及接口技术教程M.北京:国防工业出版社.2006.73 胡汉才.单片机原理及其接口技术M.北京:清华大学出版社.20044 薛永毅.何希才.传感器及其应用实例M.北京:机械工业出版.2004.95 赵清.赵志杰.电子电路识图M.北京:电子工业出版社.2006.126 董爱华.检测与转换技术M.北京:中国电力出版社.2007.127 袁小平.电子技术综合设计教程M.北京:机械工业出版社.2008.48 余小平.奚大顺.电子系统设计M.北京:航空航天大学出版社.2007.39 何希才.任力颖.实用传感

51、器接口电路实例M.北京:中国电力出版社.2007.510 Donald A. Neman. Electronic circuit analysis and design M.Tsinghai University Press and Springer Verlag.2002附 录主程序:#include #include #include #include #include #include #include #include LCD1602.h/sbit DQ = P34;sbit D1=P37;unsigned char t2,*pt;/用来存放温度值,测温程序就是通过这个数组与主函数通信

52、的unsigned char TempBuffer19=0x2b,0x31,0x32,0x32,0x2e,0x30,0x30,0x43,0;unsigned char TempBuffer017=0x54,0x48,0x3a,0x2b,0x31,0x32,0x35,0x20,0x54,0x4c,0x3a,0x2b,0x31,0x32,0x34,0x43,0;unsigned char code dotcode4=0,25,50,75;void covert0( unsigned char TH, unsigned char TL)/将温度上下限转换为LCD显示的数据 if(TH0x7F) /判

53、断正负,如果为负温,将其转化为其绝对值 TempBuffer03=0x2d; /0x2d为-的ASCII码TH=TH;TH+; else TempBuffer03=0x2b;/0x2B为+的ASCII码 if(TL0x7f) TempBuffer011=0x2d; /0x2d为-的ASCII码 TL=TL+1; else TempBuffer011=0x2b;/0x2B为+的ASCII码 TempBuffer04=TH/100+0x30; /分离出TH的百十个位 if( TempBuffer04=0x30) TempBuffer04=0xfe; /百位数消隐 TempBuffer05=(TH%

54、100)/10+0x30;/分离出十位 TempBuffer06=(TH%100)%10+0x30; /分离出个位 TempBuffer012=TL/100+0x30; /分离出TL的百十个位 if( TempBuffer012=0x30) TempBuffer012=0xfe; /百位数消隐 TempBuffer013=(TL%100)/10+0x30;/分离出十位 TempBuffer014=(TL%100)%10+0x30; /分离出个位void covert1(void)/将温度转换为LCD显示的数据 unsigned char x=0x00,y=0x00; t0=*pt; pt+;

55、t1=*pt; if(t10x07) /判断正负温度 TempBuffer10=0x2d; t1=t1; t0=t0; x=t0+1;t0=x; if(x255) t1+; else TempBuffer10=0x2b; t1=4; x=x&0x0f; t1=t1|x; TempBuffer11=t1/100+0x30; if( TempBuffer11=0x30) TempBuffer11=0xfe; TempBuffer12=(t1%100)/10+0x30; TempBuffer13=(t1%100)%10+0x30; t0=t0&0x0c; t0=2; x=t0; y=dotcodex

56、; TempBuffer15=y/10+0x30; TempBuffer16=y%10+0x30;void delay(unsigned char i)while(i-);main() unsigned char TH=-18,TL=-20; /下一步扩展时可能通过这两个变量,调节上下限 D1=0; /测温函数返回这个数组的头地址 while(1) pt=ReadTemperature(TH,TL,0x3f); if(TempBuffer1250)/读取温度,温度值存放在一个两个字节的数组中,D1=1;elseD1=0;delay(100); covert1();covert0(TH,TL);LCD_Initial();LCD_Print(0,0,TempBuffer0);LCD_Print(0,1,TempBuffer1); LCD显示子程序:#include #include sbit LcdRs= P20;sbit LcdRw= P21;sbit LcdEn = P22;sfr DBPort = 0x80;

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!