分布式温度控制系统的设计及实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
分布式温度控制系统的设计与实现
目录第一章绪论----------------------------------------------------------1 1.1 问题的提出-------------------------------------------------------2 1.2 课题相关的背景知识 1.2 设计目的及系统功能3 第二章硬件电路设计3 2.1 基本硬件设计思路3 2.2 基本设计框图4 2.3 AT89S52单片机4 2.3.1 主要性能: 5 2.3.1 引脚排列及功能5 2.3.2 存储器组织和特殊功能寄存器7 2.3.3 低功耗节电模式9 2.3.4 定时器10 2.3.5 中断13 2.3.6 时钟15 2.4 ZLG7290 键盘/显示接口芯片15 2.4.1 ZLG7290 特点16 2.4.2 引脚及说明16 2.4.3 功能描述17 2.4.4 寄存器详解19 2.4.5 通信接口20 2.4.6 指令详解20 2.5 数字温度传感器DS18B20 23 2.5.1 DS18B20的主要特性23 2.5.2 引脚及其说明24 2.5.3 内部结构24 2.5.4 工作过程及时序24 第三章软件设计27 3.1 主程序框图------------------------------------------------------27 致谢31 参考文献32 附录一电路原理图---------------------------------------------------33 附录二毕业设计硬件电路元件清单34 第一章绪论自从1976年Intel公司推出第一批单片机以来,80年代单片机技术进入快速发展时期,近年来,随着大规模集成电路的发展,单片机继续朝快速、高性能方向发展,从4位、8位单片机发展到16位、32位单片机。单片机主要用于控制,它的应用领域遍及各行各业,大到航天飞机,小至日常生活中的冰箱、彩电,单片机都可以大显其能。单片机在国内的三大领域中应用得十分广泛:第一是家用电器业,例如全自动洗衣机、智能玩具;第二是通讯业,包括、手机和BP机等等;第三是仪器仪表和计算机外设制造,例如软盘、硬盘、收银机、电表。除了上述传统领域外,汽车、电子工业在国外也是单片机应用十分广泛的一个领域。它成本低、集成度高、功耗低、控制功能多能灵活的组装成各种智能控制装置,由它构成的智能仪表解决了长期以来测量仪器中的误差的修正、线性处理等问题。单片机将微处理器、存储器、定时/计数器、I/O接口电路等集成在一个芯片上的大规模集成电路,本身即是一个小型化的微机系统。单片机技术与传感与测量技术、信号与系统分析技术、电路设计技术、可编程逻辑应用技术、微机接口技术、数据库技术以及数据结构、计算机操作系统、汇编语言程序设计、高级语言程序设计、软件工程、数据网络通信、数字信号处理、自动控制、误差分析、仪器仪表结构设计和制造工艺等的结合,使得单片机的应用非常广泛。同时,单片机具有较强的管理功能。采用单片机对整个测量电路进行管理和控制,使得整个系统智能化、功耗低、使用电子元件较少、内部配线少、成本低,制造、安装、调试及维修方便。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。1.1 问题的提出分布式温度控制系统广泛应用在使用了中央空调的大型商场、厂房、办公大楼等大型建筑内。本课题主要针对分布在建筑物内有关各处的结点控制单元,用温度传感器对环境温度实施实时监测,利用单片机实施对冷(热)风机开关的最佳控制;各结点控制单元可将有关信息上传给中央处理单元(计算机),也可接收中央处理单元发来的控制命令;必要时可由中央处理单元直接控制冷(热)水机组的启、停。监测过程中温度传感器采样所得到的信号送给单片机处理;控制过程中,利用单片机控制电路发送出TTL电平,转换强电开关量信号实现对各风机开关的控制。本课题研究主要解决的问题为分布式计算机控制结构设计、多单片机串行通信、温度的采集与处理、弱电控制强电以及设计制作成本等。本设计是以基于单片机AT89S52设计的实时温度采集仪,采用DS18B20可以采集多路温度数据(本设计只用了一路)。通过小键盘实现对温度数据的设定,对于超过此限的温度数据CPU将起动动执行机构做出相应的处理。同时实时显示所采集到的温度值。1.2 设计目的及系统功能本设计的目的是以单片机为核心设计出一个智能温度控制系统。通过本课题设计,综合运用单片机及接口技术、微机原理、微电子技术,锻炼动手操作能力,综合运用能力,学习论文的写作方法和步骤。设计的温度控制系统有以下功能及特点:(1) 测温X围:0℃~99℃; (2) 温度显示:采用八个七段段数码管,前四位显示采样温度值,后四位显示温度设定值; (3)上位机和键盘都可设定温度和温度的上下限,且上位机的权限大于键盘的权限; (4) 温度初始值可进行灵活设定; (5) 系统控制精度不高. 第二章硬件电路设计硬件是实现本系统的重要基础,硬件电路做的是否合理直接影响系统
的稳定性和可靠性。下面对我的硬件系统作具体的介绍。2.1 基本硬件设计思路本设计用温度传感器将被测温度转换为数字量,无需放大即可与单片机相连。CPU采用AT89S52单片机,它与MCS-51系列单片机完全兼容,同时具有较大的存储空间以及具有在线编程功能,减少了编程时配套工具的使用.键盘/显示通过可编程的键盘显示接口芯片ZLG7290实现温度限值的设定和显示,同时使用具有实时性能的动态显示模块.
2.2 基本设计框图总体设计框图如图1-1所示。说明如下:(1) DS18B20检测温度,将温度值送CPU (AT89S52)处理;(2) CPU接受DS18B20传送的温度,并送ZLG7290芯片,由数码管显示;(3) CPU将接受的温度与设定的最大值、最小值进行比较,如果温度超过所设温度限值,转报警处理程序;(4) 由小键盘控制所需显示路数的温度,并在数码管上显示;(5) CPU将实时温度与设定的温度进行比较,若设定温度低于实时温度,则开暖风机,若设定温度高于时温度,则开冷风机。图1-1基本设计框图2.3 AT89S52单片机AT89S52是一个低功耗,高性能,采用CMOS工艺的8位单片机,其片内含8kB的可在线编程(ISP:In-system programmable)的Flash的可反复擦写1000次的Flash只读程序存储器,该器件采用AtmelL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,从而使其功能更加完善,应用更加灵活;具有较高的性能价格比,使其在嵌入式控制应用系统中有着广泛的应用前景。2.
3.1 主要性能: 与MCS-51 单片机产品兼容8KB的Flash 片内程序存储器1000次擦写周期全静态操作:0Hz~33Hz 三级加密程序存储器32 个可编程I/O口线三个16 位定时器/计数器八个中断源全双工UART串行通道低功耗空闲和掉电模式掉电后中断可唤醒看门狗定时器双数据指针掉电标识符图2-1AT89S52 引脚排列图2.3.1 引脚排列及功能AT89S52具有PDIP、PLCC和TQFP 3种封装形式。其PDIP封装的引脚排列如图2-1所示。VCC : 电源GND : 地P0口: P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻. 在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口: P1口是一个具有内部上拉电阻的8 位双向I/O 口,P1 输出缓冲器能驱动4个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如表2.1所示。表2.1 P1口的替代功能引脚号第二功能P1.0 T2(定时器/计数器T2 的外部计数输入),时钟输出P1.1 T2EX(定时器/计数器T2 的捕捉/重载触发信号和方向控制)P1.5 MOSI(在系统编程用)P1.6 MISO(在系统编程用)P1.7 SCK(在系统编程用)在flash编程和校验时,P1口接收低8位地址字节。P2口:P2口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3口: P3口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如表2.2所示。表2.2 P3口的替代功能引脚号第二功能P3.0 RXD(串行输入)P3.1 TXD(串行输出)P3.2 INT0(外部中断0) 续表2.2 P3.3 INT1 (外部中断0) P3.4 T0(定时器0 外部输入)P3.5 T1(定时器1 外部输入)P3.6 WR (外部数据存储器写选通) P3.7 RD (外部数据存储器写选通) 在flash编程和校验时,P3口也接收一些控制RST: 复位输入。晶振工作时,RST 脚持续2 〕个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO 位可以使此功能无效。DISRTO 默认状态下,复位高电平有效。ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在flash 编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然