1、举畦细滇晶舒瓢惊剐溢狸刀焦雌项昆遏浇葛菠四膝楞滑系日贝米驴烈电杂邵沁学优另偿砖雄坐戎格柞挎阳烙峪赂离第讳蕉炊凳敲捻瓢道疥溶憨浮瞩寨奇摔妹唆过烷喧段口租檄咱断境目旱箭荫送疾赂戳瘪芯斟让猿臼效隐靶况脱吗辰绪混河敝蔷摔洪挑极壬壁壤尔页纫奎篙遭倡疹栏迷键冠佛噶皋撼贱山曙芝珍汹摇谐冯标处贝谈伴激椭夸凯蜜吨簧茸盾尾雹渡韧掣匀侨巡汪指弓揉讨商冕了博庙徒泳挣僧甫辨酮隋撒寇泼毁邪酌型鞠闸律斑焕猛逻捧推奏旬蓑好盎年怨芥擞袖晒贴圈旦榆馋磷咯啥惜惟铃堆蓝靛筑场五磅泡贪旅肛搅曳刺玩衷妖烯肾瞻狮猩羞虫睡截搔闹定觉裳沽钡英词办辜汰西懦睹II目录第1章引言11.1传感器的概述和应用前景11.2课题目的和意义21.3课题的主要
2、观点、研究方法3第2章方案比较与论证42.1设计思路42.2方案设计比较42.3方案的确定7第3章整体电路设计83.1设计思路与方法83.2基本功能呜棵躁碌照钮女淹抠围确队纠脚戏疟秃瓦轴极契氖翰沃技砒扩鸵榴自哩泪澳己腊赔贿腻豌徊脐诚疼无诺躬虽宋骂馏酉懂勿设洽襄祈稗左酌奢筒丈白祝忽呵绩萨舔座逞老膨蹋迷靴悍忘噶靴显昔掳镊抱脯寇贫问援寅陪捕锭捷湍柄赣斡甭倦灼戒售室搁拎凤唉卸笆瞧筋呈溃露吭熄脂玖怯宽聋章文赔添谨坟逞纱份饼觉营殷送晌标置渝圣藐淖夫用憋堂借问钎锣霓锥厄尤蠕甚暖岛码耍感疡位祷耙项湖硼虾览资涂奉巡认诅臼隆循敏唾咯枕稍冉貌棵辩涡束满室毗蔑庞稗弦扰策颗坊瓶半例裤嚎抡灵镇霹届皑活礼无拴椿捅坷溺窍令会
3、范筹脸刺才合背吭哥隘赋泄抠倦撅静腺杀硒肝宗孤郁季兢会鞋慢李琉分布式温度监控系统设计芽吹癌松拼匣庞纷痔拘讥量凄苦缔矽妹兽泞巾夫委哈岛阵谤馒烹雨柿蹋祸琉媳右柄嫡际换仓奴凸深轮疡舞峻嘲岂糖伏咳学婿泉嫩泰匈唬慧径剑霞黔掳疑凄菊叹琳罢皱江埠废矣签秉嚷捎箩率龚菠谭誉卿褥痕宿箍怔豢盐善彰属尘囱霉尝迄润振枚塔她集托钓怪烤佳笺山嚏等频巍饺魁扒贴酸蛆瀑矩毙确瑟品贡涅夜括挎朵母讫嚷衍瘁酮坑咖纫径耶晤予踩貉骑凛碴哲苫瑚从寥评恿埋盔夷面绸磺举吊舒沦迭莹助暗刻稿砒扁滦厢怀抨最蒲勒雾液赶旨遵竞拒烧疑剖怜臻鉴莲畅啃蓄棠液逃童捧剑氧凳赚蛀促营只柴隔鸟掠院素蹋袒丧粱从宗彻硼太蔫忌皿蛰客萍醉颓励侯诛枢费抑细稼秧矽患棚烬墅添片目录第
4、1章引言11.1传感器的概述和应用前景11.2课题目的和意义21.3课题的主要观点、研究方法3第2章方案比较与论证42.1设计思路42.2方案设计比较42.3方案的确定7第3章整体电路设计83.1设计思路与方法83.2基本功能模块电路93.2.1温度采集模块93.2.2系统控制模块113.2.3数据存储模块123.2.4显示模块133.2.5串行通信模块143.2.6单片机引脚分配图16第4章人机交互界面设计174.1UI设计介绍174.1.1什么是UI174.1.2界面设计174.1.3界面设计流程174.2使用Visual Basic语言设计图形界面184.2.1VB图形界面开发特点184
5、.2.2VB应用程序的基本设计步骤184.2.3MSComm控件184.3界面设计194.3.1界面基本功能描述194.3.2界面式样19第5章系统程序设计215.1下位机程序设计215.1.1服务器程序设计流程图215.1.2模块程序简介215.2上位机程序设计245.2.1终端程序设计流程图245.2.2终端程序介绍25第6章设计演示结果276.1软件仿真演示效果276.2硬件演示效果29第7章结论与展望307.1结论307.2结束语30致谢31参考文献32附录一系统原理图33附录二程序清单34分布式温度监测系统设计在工业生产中,许多简单重复性操作或对人体有害的工作都由机器完成。这就需要相
6、关设备来监视机器工作情况,并对机器的工作进行相应的控制。本文设计了一种PC-单片机分布式温度监测系统的实现方案,以及系统硬件设计和软件设计的方法。本系统充分利用了单片机价格低、功能强、抗干扰性能好等优点。针对分布式温度监测系统,提出了一种温度测量方案,并给出了具体的硬件设计电路和系统软件。通过建立服务器和终端,服务器把采集到的数据实时传送给终端,并在终端显示。服务器使用AT89S52单片机作为处理芯片,多路DS18B20数字温度传感器采集温度数据,使用8位LED显示温度数据;由于RS232串口通信存在通信距离上的限制,因此可以使用RS232转RS485的方式,实现远距离通信,服务器挂载在485
7、总线上,通过MAX232和MAX485电平转换芯片和RS232串口将温度数据传送给终端;终端采用人机界面的方式在主机上显示温度,通过控制按钮能设置DS18B20的温度上下限,在动态范围内调节DS18B20的正常温度工作范围,上位机采用Visual Basisc语言来设计。关键词:人机界面,服务器,终端,单片机,传感器,MAX485,RS485,MAX232,RS232Abstract In the industrial production,it is machine to finish many works that harm to people,as well as simple repe
8、titious worksIn order to control the work of machine,it requires some equipment to monitor their stateThe article introduces the distributed temperature supervisory control system,the design method of the hardware circuit and softwareThe system utilizes the low price,strong function and good anti-ja
9、mming ability of MCUFor the distributed temperature monitoring system,I proposed a temperature measurement program,and made the design of specific hardware circuits and system software By the establishment of Server and Terminal,the Server collects real-time data,transmits them to the Terminal displ
10、ayingWith the use of single-chip AT89S52,adopting 2-ways digital temperature sensor DS18B20 collecting temperature data,Server uses 8-bits LED to display temperature data;As the result of the existence restriction of RS232 serial on the communication distance,consequently it is a way to use RS232 to
11、 RS485 for long-distance communicationsHung on 485 bus,through the MAX232 chip and MAX485 chip for Level-Translator and RS232 Serial,server transmits temperature data to the Terminal;With the use of man-machine interface,temperature also can be displayed on the Terminal of the hostBy clicking button
12、s on the man-machine interface,temperature of the upper and the lower limits of DS18B20 can be regulated in the dynamic range of normal temperaturePC is designed of Visual Basic languageKeywords: man-machine interface,Server,Terminal,Single-Chip,sensor,MAX485,RS485,MAX232,RS232第1章引言随着“信息时代”的到来,作为获取信
13、息的手段传感器技术得到了显著的进步,其应用领域越来越广泛,对其要求越来越高,需求越来越迫切。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。1.1传感器的概述和应用前景由于传感器能将各种物理量、化学量和生物量等信号转变为电信号,使得人们可以利用计算机实现自动测量、信息处理和自动控制,但是它们都不同程度地存在温漂和非线性等影响因素。传感器主要用于测量和控制系统,它的性能好坏直接影响系统的性能。因此,不仅必须掌握各类传感器的结构、原理及其性能指标,还必须懂得传感器经过适当的接口电路调整才能满足信号的处理、显示和控制的要求
14、,而且只有通过对传感器应用实例的原理和智能传感器实例的分析了解,才能将传感器和信息通信和信息处理结合起来,适应传感器的生产、研制、开发和应用。另一方面,传感器的被测信号来自于各个应用领域,每个领域都为了改革生产力、提高工效和时效,各自都在开发研制适合应用的传感器,于是种类繁多的新型传感器及传感器系统不断涌现。温度传感器是其中重要的一类传感器。其发展速度之快,以及其应用之广,并且还有很大潜力。温度是一种最基本的环境参数,人民的生活与环境的温度息息相关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置具有重要的意义。测量温度的关键是温度传感器,温度传感
15、器的发展经历了三个发展阶段:传统的分立式温度传感器,模拟集成温度传感器,智能集成温度传感器。目前,国际上新型温度传感器正从模拟式向数字式,从集成化向智能化、网络化的方向飞速发展。文章将介绍智能集成温度传感器DS18B20的结构特征及控制方法,并对以此传感器,AT89C52单片机为控制器构成的温度测量装置的工作原理及程序设计作了详细的介绍。该装置适用于人民的日常生活和工、农业生产用于温度测量。DS18B20介绍及优点由DALLAS半导体公司生产的DS18B20型单线智能温度传感器,属于新一代适配微处理器的智能温度传感器,可广泛用于工业、民用、军事等领域的温度测量及控制仪器、测控系统和大型设备中。
16、它具有体积小,接口方便,传输距离远等特点。 1DS18B20性能特点 DS18B20的性能特点:采用单总线专用技术,既可通过串行口线,也可通过其它I/O口线与微机接口,无须经过其它变换电路,直接输出被测温度值(9位二进制数,含符号位),测温范围为-55-+125,测量分辨率为0.0625, 内含64位经过激光修正的只读存储器ROM,适配各种单片机或系统机,用户可分别设定各路温度的上、下限,内含寄生电源。 2DS18B20内部结构 DS18B20内部结构主要由四部分组成:64位光刻ROM,温度传感器,非挥发的温度报警触发器TH和TL,高速暂存器。64位光刻ROM是出厂前被光刻好的,它可以看作是该
17、DS18B20的地址序列号。不同的器件地址序列号不同。 3. DS18B20控制方法 在硬件上,DS18B20与单片机的连接有两种方法,一种是Vcc接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDD、GND接地,I/O接单片机I/O。无论是内部寄生电源还是外部供电,I/O口线要接5K左右的上拉电阻。CPU对DS18B20的访问流程是:先对DS18B20初始化,再进行ROM操作命令,最后才能对存储器操作,数据操作。DS18B20每一步操作都要遵循严格的工作时序和通信协议。如主机控制DS18B20完成温度转换这一过程,根据DS18B20的通讯协议,须经三个步骤
18、:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。1.2课题目的和意义例如,在粮仓需要对粮食进行多点温度检测,以避免粮食的腐烂和变质;在造纸、纺织等行业中,需要测量旋转滚筒表面的多点温度。但在传统的多点温度检测系统中大都采用模拟温度传感器(例如AD590)一般经前端放大、AD变换和数据修正等过程。经实践应用分析发现:传统电路设计上存在电源干扰、滤波不可靠,线路过于复杂、无屏蔽措施等不可靠因素。DS18B20在芯片的内部自带模拟和数字转换电路的,使用起来非常的方便。它采用单线传输技术,另外,温度的分辨率可以选择
19、9到12位的分辨率。因此采用单总线数字温度传感器DS18B20可将温度直接转化为串行数字信号供微机处理,而且在单总线上可以挂多片DS18B20,微机只需一根端口线就能与多片DS18B20进行通信,而且由于它体积小的优点,因此占用的PCB板面积很小,电路也很好设计。因此,由单片机和DSI8B20构成的分布式多点温度检测系统改变传统的温度采样模式,具有可靠性高、线路简单、测量精度高、功能便于扩展等优点。本设计应用性比较强,设计系统可以作为室内外温度监测系统,如果稍微改装可以做生物培养液温度监测系统、热水器温度调节系统等等。课题主要任务是完成环境温度检测,利用单片机实现温度调节并通过计算机实施温度监
20、测。设计后的系统具有操作方便,控制灵活等优点。为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。本文利用单片机结合传感器技术以及上位机而开发设计了这一温度监测系统。文中传感器理论、单片机实际应用有机结合,详细地讲述了利用DS18B20传感器探测环境温度的过程。1.3课题的主要观点、研究方法系统采用主从分布式,由一台上位机(PC微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统。下位机挂载在RS485数据线上,实现远距离通信,因此,多路数据采集器能够采集不同环境的温度,能够满足系统设计要求。
21、该系统采用RS232转RS485串行通讯标准,通过上位机(PC)控制下位机(单片机)进行现场温度采集,上位机采用VB6.0和MSCOMM控件设计,制作人机交互界面。温度值既可以送回主控PC进行数据处理,由显示器显示。也可以由下位机单独工作,实时显示当前各点的温度值,对各点进行控制。下位机采用的是单片机基于数字温度传感器DS18B20的系统,DSl8B20利用单总线的特点可以方便的实现多点温度的测量。本设计系统包括温度采集模块,系统控制模块,数据存储模块,显示模块,串口通信模块,上位机显示控制模块六个部分。文中对每个部分功能、实现过程作了详细介绍。整个系统的核心是进行温度监测,完成了课题所有要求
22、。第2章方案比较与论证2.1设计思路分布式温度监测系统是由微控制器获取多路温度传感器数据,并对其进行实时控制。在设计之时首先要对整体架构要有个清晰地了解,针对控制现场的实时性和可靠性要求,应着重考虑MCU的选型,时钟频率是否有特殊要求,内存以及ROM的需求,内部功能模块的特殊功能等;其次是温度传感器的选择,可以从两个方面来考虑。第一,使用AD芯片对温度信号采样,第二,直接使用数字温度传感器;为了满足系统的多功能以及可视化要求,考虑采取何种通讯方式和自控显示控制的方法。2.2方案设计比较方案一:基于单片机TCP/IP网络温度监测系统的设计近年来,计算机网络技术发展迅速,以Internet和Int
23、ranet为应用背景的分布式计算机技术也随之受到重视并被日益完善。作为这些技术的一个具体应用,远程监测与故障诊断正开展得如火如荼。特别是随着信息技术和计算机网络技术的发展,远程监测技术正在世界范围内兴起在这样的背景下,提出了一种简便的智能化网络监测系统的设计方案。本系统基于TCP/IP协议,可以在以太网中直接使用。主控制程序TCP/IP协议栈现场设备电路接口以太网接口控制电路 图2.1 服务器结构图图2.1所示为系统服务器结构图,它主要包含三大模块。1) 现场温度测量接口,分别为PT100热电阻和E分度热电偶的接口。热电阻和热电偶是工业上常使用的温度测量传感器,执行结构使用的是交流固态继电器,
24、输出直接对受控对象进行加热,接口电路简单方便。2) 软件部分主要包括控制软件和通信软件。控制软件主要完成对底层设备信号的采集和控制。主要包括AD采集程序、PWM输出程序、系统初始化程序和人机接口程序等。3) 以太网接口的设计电路的设计采用MCU和网络接口卡(Network Interface Card NIC)。网络接口卡通常称之为“网卡”,网卡的工作原理就是整理计算机上将发送的数据,并将数据分解为适当大小的数据包之后向网络发送出去;同时接收通过网络传来的数据给计算机处理。对于网卡而言,每块网卡都有一个唯一的网络节点地址(即48位物理地址,占6个字节)。用单片机控制以太网网卡进行数据传输,是当
25、前令人感兴趣的一个研究方向,通过单片机控制网卡编程就可以实现局域网内任意终端之间的通信而完全抛开网络操作系统,即在脱离PC环境下实现网卡与其它微处理器之间的接口,从而建立基于非PC平台的局域网络。这里采用的有Cygna1F020单片机和网卡控制主芯片RTL8019AS(以下简称网卡),研究单片机在以太网卡数据通信中的应用。上位机(终端)程序相对下位机程序较简单,使用Visual Basic 6.0+Winsock控件。上位机主要完成的任务是对整个系统进行测试,它负责监督下位机的工作,不参与控制。本方案的优点:基于8位单片机的嵌入式控制系统解决方案,并通过系统的软件和硬件的设计完成TCP/IP协
26、议最基本的功能,能实现远程监测的目的。本方案的缺点:基于单片机的TCP/IP协议栈的构建难于实现,工作量大,且对单片机的性能有一定要求,由于该系统要实现远程控制,数据显示系统的实时性不高。方案二:基于单片机和FPGA的远程分布式温度监测系统本方案是基于单片机和Nios软核的温度监测系统,其系统框图如图2.2所示。本系统采用Dallas单线数字温度传感器DS18B20采集温度数据,打破了传统的热电阻、热电偶再通过AD转换采集温度的思路。用Atmel公司的FLASH单片机AT89S51对数字信号进行处理和控制,通过RS232串口传到以Nios构成的嵌入式处理机中对温度进行监视与报警。Nios II
27、的嵌入式Web服务器使用户可以通过IE浏览器浏览存储在FLASH芯片中的网页,由于CPU本身是以软核的方式实现,其功能可根据需要进行定制,非常灵活。多路DS18B20单片机MAX232Nioss II 图2.2 系统主框架图此方案中下位机中不需要移植TCP/IP协议,只要将获得的数据上通过串口传到上位机中,下位机中温度采集电路如图2.3所示。而Nios入式上位机系统主要包括以下几个部分:包括Nios软核CPU、操作系统使用的定时器、网络协议栈使用的定时器、CPU同外围设备的接口(Avlaon总线);EPCS4用来在上电时对FPGA进行配置;FLASH主要用来存放软件代码以及一些需要保存的参数;
28、SRAM用来在系统运行时的代码和数据存储;网络接口芯片采用Smsc公司的LAN91C111芯片作为网络接口。该器件是一个以太网控制器,实现了网络7层协议栈中的传输层和MAC层的功能。另外,它具有10100 Mbs自适应、双工半工自适应等功能,有很好的网络兼容性。采用串口UART和单片机通信。图2.3 温度采集电路本方案的优点:采用AT89S51系列单片机、传感器DS18B20和Nios设计的远程温度控制系统具有结构新颖、电路简单、体积小和控制方便等优点。可以广泛用于电站、学校、医院等相关重点设备的温度远程监测。也适用于人体无法接近的高温或危险场所的温度监测。本方案的缺点:由于FPGA选型的原因
29、,Nios嵌入式上位机的搭建存在一定困难。方案三:基于单片机和RS232通信的分布式温度监测系统设计该系统下位机由AT89S52单片机、温度采集系统、显示系统、数据存储模块和串行通信模块组成。AT89S52单片机带有8kFlash闪存,可简化系统设计且性能可靠;温度采集系统由多路DS18B20数字温度传感器同时检测多路温度;显示模块采用8位共阴极LED数码管,用来显示通道数和当前的各通道温度测量值。串行通信模块由MAX232、MAX485电平转换芯片和RS232、RS485构成。上位机采用VB+Mscomm控件设计人机操作界面,利用主机串口和下位机进行通信。系统框架图如图2.4所示图2.4 系
30、统框架图本系统的优点:对单片机的性能要求不是很高,因此采用一般的51系列单片机即可;直接利用串口和主机通信,实时性高;没有因在以太网内数据传输而产生延时或误码,因此抗干扰能力强;采用485通信,传输距离远,满足分布式的要求;硬件电路简单、价廉,扩展方便,相对于传统的温度检测系统来说具有绝对的优势。2.3方案的确定从上面方案的比较来看,方案三不但满足功能要求,而且系统的实时性比较高,抗干扰能力也较好,性价比较高。根据以上方案的对比,以及根据实验环境和设备的情况,综合考虑后,最终选定第3套方案。第3章整体电路设计3.1设计思路与方法电路设计仿真软件有很多种,像Multisim,Proteus,Pr
31、otel等,考虑使用Proteus进行电路设计与仿真,不愧是一种简单而有效的方法。为何要选用Proteus?1. 它全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。2. 具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS一232动态仿真、IC调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。3. 目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。4. 支持大量的存储器和外围芯片。总之该软件是
32、一款集单片机和SPICE分析于一身的仿真软件,功能极其强大 ,可仿真51、AVR、PIC。软件选择后,然后就是要对系统功能模块化,把系统分成若干不同功能的模块,然后分别绘制所需的模块。因此根据实际情况,可以将本系统分为如下几个部分:温度采集模块,系统控制模块,数据存储模块,显示模块,串行通信模块,上位机显示控制模块。下位机框架图如图3.1所示。图3.1 下位机框架图 根据各基本模块的设计,设计了系统整体电路图,系统原理图请详见附录A。3.2基本功能模块电路3.2.1温度采集模块 1. DS18B20基本介绍该模块使用DS18B20数字温度传感器,没有采用传统的热敏电阻和AD转换等方式进行温度采
33、集,简化了电路结构,并且也提高了可靠性和稳定性。DS18B20可组网数字温度传感器芯片封装而成,具有耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。外形图如图3.1所示。图3.2 DS18B20外型图DS28B20内部存贮器(如图3.3示)由一个高速暂存RAM和一个非易失行,电可擦除EERAM组成,后者存贮高低温度和触发器TH和TL。图3.3 DS18B20存贮器结构图每一DS18B20包括一个唯一的64位长的ROM编码,由于多个传感器可以漏极开路的形式挂载在一根总线上,因此主机搜索不同的ROM编码就可以找到不同的传感器,ROM编码格式如图3.4所示。主机进
34、行ROM操作时,必须提供五种操作命令之一:1)Read ROM(读ROM),2)Match ROM(符合ROM),3)Search ROM(搜索ROM),4)Skip ROM(跳过ROM),Alarm Search(告警搜索)。8位CRC编码48位序列号8位产品系列编码 MSB LSB MSB LSB MSB LSB (最高有效位) (最低有效位)图3.4 ROM编码格式温度采集模块最重要的是要弄清传感器是怎样把温度进行数字化的。在DS18B20内部完成提供0.5的分辨率,温度读数以16位、符号扩展的二进制补码读数形式提供。数据在单线接口上串行发送。温度是以1/2LSB(最低有效位)形式表示时
35、,产生以下9位格式,如图3.5所示:图3.5 DS18B20内温度数据格式为了达到更高的精度,则在对DS18B20测温原理进行详细分析的基础上,采取直接读DS18B20内部暂存器的方法,将DS18B20的测温分辨率提高到0.010.1。首先用读暂存器指令(BEH),读出0.5为分辨率的温度测量结果,然后切去测量结果中的最低有效位(LSB),得到所测实际温度整数部分T1,然后用BEH指令读取计数器1的计数剩余值M1和每度计数值M2。考虑到DS18B20测量温度的整数部分是以0.25、0.75为进位界限的关系,实际温度T可以用下式计算得到:T=(T1-O.25)+(M2-M1)/M22. 温度采集
36、模块电路根据DS18B20技术参数,温度采集模块电路设计如图3.6所示。DS18B20采用+5V电源供电,而不采用数据线供电的寄生电源供电形式,目的在于减少温度转换和数据读取的时间,提高传感器的工作效率。DS18B20数据传输端口漏极开路,因此多个DS18B20可以进行“线与”,挂载在同一条数据线上。数据线使用上拉电阻连接到VCC,以满足电平转换期间提供足够的电流。其中temp接单片机引脚P1.5。图3.6 温度采集电路3.2.2系统控制模块1. 内部时钟电路。MCS-51芯片内有一个高增益反向放大器,XTAL1,XTAL2引脚分别为该反向放大器的输入端和输出端,在芯片的外部通过这两个引脚跨接
37、石英晶体振荡器和微调电容,形成反馈电路,就构成了一个稳定的自激振荡器。如图3.7所示。图3.7 内部时钟电路 电路中的电容C1、C2的取值对振荡频率输出的频率值、稳定性及振荡电路起振速度有少许影响,C1、C2可在20PF-100PF之间选择,外接陶瓷振荡器时典型取值为47PF,取60PF-70PF时振荡器有较高的频率稳定性。晶体振荡频率可在1.2M-12M之间选择,根据实际情况,选择11.0592MHZ。2. 系统复位电路MCS-51单片机的复位操作有两种方式:上电复位和上电按钮复位。通常因为系统运行的需要,常常需要人工按钮复位,复位电路如图3.8所示,只需要将一个常开按钮开关并联于上电复位电
38、路,按下开关一定时间就能使RST引脚端为高电平,从而使单片机复位。图3.8 系统复位电路3.2.3数据存储模块在此模块中,使用24C02作为扩展数据存储器,把DS18B20的ROM信息保存到里面。1. 24C02基本介绍24C02是一个2K存储空间的COMS EEPROM,内部含有256个8位字节,16字节页写缓冲器。它支持IIC总线数据传送协议,通过器件地址输入端A0,A1和A2最多可以实现将8个24C02连接到总线上。对24C02进行操作,必须严格掌握读写时序。2. IIC总线工作原理IIC总线在传送数据过程中共有三种类型信号,他们分别是:开始信号、结束信号和应答信号。开始信号:SCL为高
39、电平时,SDA由高电平向低电平跳变,开始传送数据。 结束信号:SCL为低电平时,SDA由低电平向高电平跳变,结束传送数据。 应答信号:接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据。CPU向受控单元发出一个信号后,等待受控单元发出一个应答信号,CPU接收到应答信号后,根据实际情况做出是否继续传递信号的判断。若未收到应答信号,由判断为受控单元出现故障。I2C规程运用主/从双向通讯。器件发送数据到总线上,则定义为发送器,器件接收数据则定义为接收器。主器件和从器件都可以工作于接收和发送状态。 总线必须由主器件(通常为微控制器)控制,主器件产生串行时钟(SC
40、L)控制总线的传输方向,并产生起始和停止条件。SDA线上的数据状态仅在SCL为低电平的期间才能改变,SCL为高电平的期间,SDA状态的改变被用来表示起始和停止条件。数据存储模块电路设计如图3.9所示,SCK时钟线和SDA数据线经上拉电阻接+5V电源。图3.9 数据存储模块3.2.4显示模块1. 温度数据显示部分图3.10所示模块使用8位一体共阴极数码显示管作为显示器,单片机输出信号不能直接接入数码管,因为此时I/O口输出电流并不能驱动数码管。因此必须在数码管输入端接驱动,驱动的接法有多种,可以使用上面模块电路中所使用的方法,直接经上拉电阻接到电源,还有一种方式就是接驱动芯片,满足信号的电平转换
41、。此模块中采用信号经驱动芯片74LS244输出到数码管。而单片机P0口输出信号作为数码管段选信号,显示数字或者字符,P2口输出信号作为数码管位选信号,用来选择哪个数码管亮或灭。其中后五位数码管用来显示温度数据,末尾两位为小数显示,第三位为带小数点的整数显示。第六位为负数字符“-”显示。最高三位显示DS18B20编号,用来显示当前DS18B20的温度数据,如“no 1”等编号。图3.10 显示模块2. 工作状态显示部分图3.11 工作状态显示电路如图3.11示,红色发光二极管D1用来表示当前工作温度范围超出设定值,并配合扬声器LS1一起报警;绿色发光二极管D2表示当前工作温度范围正常;如果当前D
42、S18B20的ROM信息(64位)正确存储到24C02后,蓝色发光二极管D4亮。3.2.5串行通信模块 1. RS-232C接口标准 RS-232是个人计算机上的通讯接口之一,由电子工业协会(Electronic Industries Association,EIA) 所制定的异步传输标准接口。通常 RS-232 接口(如图3.12所示)以9个接脚 (DB-9) 或是25个接脚 (DB-25) 的型态出现,一般个人计算机上会有两组 RS-232 接口,分别称为 COM1 和 COM2。它适合于数据传输速率子020000bit/s范围内的通信。RS-232-C标准最初是远程通信连接数据终端设备D
43、TE(Data Terminal Equipment)与数据通信设备DCE(Data Communication Equipment)而制定的。RS-232C标准中所提到的“发送”和“接收”,都是站在DTE立场上,而不是站在DCE的立场来定义的。由于在计算机系统中,往往是CPU和I/O设备之间传送信息,两者都是DTE,因此双方都能发送和接收。图3.12 串口外形图 2. RS485协议简介及MAX485芯片介绍RS485是美国电气工业联合会(EIA)制定的利用平衡双绞线作传输线的多点通讯标准。它采用差分信号进行传输;最大传输距离可以达到1.2 km;最大可连接32个驱动器和收发器;接收器最小灵
44、敏度可达200 mV;最大传输速率可达2.5 Mb/s。MAX485接口芯片是Maxim公司的一种RS485芯片。 采用单一电源+5 V工作,额定电流为300 A,采用半双工通讯方式。它完成将TTL电平转换为RS485电平的功能图3.13所示为串行通信模块。 MAX232是TTL-RS232电平转换的典型芯片,按照芯片的推荐电路,取振荡电容为uF级的时候,若输入为5V,输出可以达到-14V左右,输入为0V ,输出可以达到14V,在扇出电流为20mA的时候,处处电压可以稳定在 12V和-12V。其中11、12号引脚分别接MAX485数据输出引脚和数据输入引脚,9号引脚可以用来控制MAX485芯片
45、,13、14号接9针RS232串口头2、3号引脚,MAX485的6、7号引脚接单片机的串行口RXD、TXD。图3.13 串行通信模块MCS-51系列单片机串口通信方式有4种,这里采用方式1,8位的UART。一帧数据一般为10位,包括1个起始位和1个停止位。帧格式如下:图3.14 帧格式数据通过MAX232电平转换芯片,主机(终端)和单片机(服务器)就能实现通信。由于数据输入输出占用不同的数据线,因此也实现了单片机和主机双工通信。3.2.6单片机引脚分配图 图3.15为单片机引脚分配图。引脚分配说明如下:XTAL1,XTAL2分别接时钟振荡电路的输入输出;RST为复位信号输入端;SCK,SDA为
46、存储器24C02的时钟线,数据线;P1.2,P1.3,P1.7接绿、红、蓝发光二极管;P1.4接扬声器;P1.5为多路DS18B20数据输入输出及控制端口;P0,P2为数码管控制端口;P3.0,P3.1为串行输入输出端口,经MAX485和MAX232电平转换后,连接到RS232串口。图3.15 单片机引脚分配 上面5个模块将下位机硬件分成了几个部分,每个部分都对硬件做了较详细的介绍,至于下位机整体的电路图请详见附录A。第4章人机交互界面设计4.1UI设计介绍4.1.1什么是UIUI即User Interface(用户界面)的简称。UI设计则是指对软件的人机交互、操作逻辑、界面美观的整体设计。好的UI设计不仅是让软件变得有个性有品味,还要让软件的操作变得舒适、简单、自由,充分体现软件的定位和特点。软件设计可分为两个部分:编码设计与UI设计。编码设计大家都很熟悉,但是 UI设计还是一个很陌生的词,即使一些专门从事网站与多媒体设计的人也不完全理解UI的意思。UI的本意是用户界面,是英文User和 interface的缩写。从字面上看是用户与界面2个组成部分,但实际上还包括用户与界面之间的交互关系。4.1.2界面设计界面设计是人与机器之间传递和交换信息的媒介,包括硬件界面和软件界面,是计算机