版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 毕业设计 第 45 页 共 45 页毕业设计题 目 多点温度采集系统与控制器设计学 院 控制科学与工程学院专 业 电气工程及其自动化姓 名 学 号 指导教师 二oo八年六月十四日目录摘要3abstract41 绪论51.1 选题背景51.2 发展趋势62 系统分析与方案确定72.1 系统分析72.2 传感器选型72.3 ds18b2072.3.1 ds18b20结构82.3.2 单总线92.3.3 ds18b20供电方式102.3.4 ds18b20寄存器112.3.5 ds18b20测温原理122.3.6 ds18b20时序及存储器命令132.4单片机选型152.4.1 单片机at89s5
2、2152.4.2看门狗定时器(wdt)162.5 通讯模块172.5.1通信概述172.5.2 通信协议182.5.3 通信方式选用192.5.4 max485接口芯片192.6系统方案的确定193 硬件设计213.1 硬件结构框架213.2电源电路213.3键盘电路223.4 温度检测电路233.5 液晶显示电路243.6控制电路263.7串口通讯电路283.8 系统电路图294 软件设计304.1主程序设计304.2 键盘控制程序324.3温度检测程序设计334.3.1读序列号程序334.3.2温度检测主程序334.3.3温度计算流程图354.4 rs-485通信程序365 总结38致谢3
3、9参考文献40附录:部分系统程序41多点温度采集系统与控制器设计摘要本设计提出一种基于单片机并采用数字化单总线技术的温度测控系统应用于温室大棚的的设计方案。一旦该温度值超过我们预先设定的上、下限,单片机便启动报警系统进行报警,进而对大棚内温度进行控制。这种设计方案能对多点的温度进行实时巡检,各检测单元能独立完成各自功能,同时能够根据主控机的指令对温度进行定时采集,测量结果不仅能在本地显示,而且可以利用单片机串行口,通过rs-485总线及通信协议将采集的数据传送到计算机,进行进一步的存档、处理。主控机负责控制指令的发送,控制各个从机进行温度采集,收集测量数据,并对测量结果进行整理、显示和存储。该
4、测控系统不需要任何固定网络的支持,安装简单方便,系统稳定可靠、可维护性好。关键词:温度检测;单片机;单总线;ds18b20abstractbased on the design of a microcontroller and a digital 1wire-bus technology temperature measurement and control system used in the greenhouse design. once the temperature exceeded our pre-determined, the minimum level, single-chip
5、microcomputer will activate alarm system for alarm as well as on the greenhouse temperature control. this design programmes to more real-time inspection of temperature, the unit can detect independent of their respective functions, according to the instructions of controller temperature regularly co
6、llected, measured not only in the local, and can use the microcontroller serial port, through the rs-485 bus and communication protocols will be collecting the data transmission to the computer, further filing, processing. zhu kongji responsible for the control sent commands to control all from the
7、collection of temperature, the measurement data collection and measurement results are finishing, display and storage. the monitoring system does not require any fixed network support, installation simple, stable and reliable system, maintainability well. keywords:ds18b20;single-chip microcomputer;r
8、s-485;1-wire;1 绪论1.1 选题背景在工农业生产中,温度检测及其控制占有举足轻重的地位,随着现代信息技术的飞速发展和传统工业改造的逐步实现 ,能够独立工作的温度检测和显示系统已经应用于诸多领域。传统的温度检测以热敏电阻为温度敏感元件、多路模拟开关、a/d转换器及单片机等组成的系统。传统方法精度不高,不稳定、成本高等问题,又需要后续信号处理电路 ,而且热敏电阻的可靠性相对较差 ,测量温度的准确度低 ,检测系统的精度差。要达到较高的测量精度需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂移误差等问题,使温度检测复杂化。模拟信号在长距离传输过程中,抗电磁干扰时令设计
9、者伤脑筋的问题,对于多点温度检测的场合,各被检测点到监测装置之间引线距离往往不同,此外,各敏感元件参数的不一致,这些都是造成误差的原因,并且难以完全清除。温室大棚是一种可以改变植物生长环境、为植物生长创造最佳条件、避免外界四季变化和恶劣气候对其影响的理想场所。实现温室大棚环境智能控制的目的是主动地调节温度、湿度、光照和二氧化碳气体浓度等环境因素,以满足作物最佳生长环境的要求。其中,温度是最重要的环境因数。目前,我国绝大多数温室大棚设备都比较简陋,温室大棚环境仍然靠人工根据经验来管理。环境因素的自动调节和控制的研究正处于起步阶段,已严重影响了设施农业的大力发展。特别是北方地区因其纬度高,寒冷季节
10、长,四季温差和昼夜温差较大,不利于作物生长,目前应用于温室大棚的温度检测系统大多采用传统的温度检测。这种温度采集系统需要在温室大棚内布置大量的测温电缆,才能把现场传感器的信号送到采集卡上,安装和拆卸繁杂,成本也高。同时线路上传送的是模拟信号,易受干扰和损耗,测量误差也比较大,不利于控制者根据温度变化及时做出决定。在这样的形式下,开发一种实时性高、精度高,能够综合处理多点温度信息的测控系统就很有必要。 热敏电阻或温敏元件多路模拟开关a/d转换器单片机 图1-1 传统温度检测系统目前,一些经济发达的国家和地区已经研制并实现计算机自动控制的现代化高科技温室,并且形成了令人惊羡的植物土厂。而我国的温室
11、系统属于半开放系统,温室内环境控制水平比较低,仍靠人工根据经验来管理。而且,国内的控制系统主要用于单因子控制,因而设施现代化水平低,对温室环境的调控能力差,产品的质量和产量难以得到保证。正是这些塑料大棚和日光温室对于解决城乡人民的蔬菜供应发挥着主力军的作用。1.2 发展趋势随着设施农业的规模化和产业化程度的不断提高,网络通讯技术会在温室控制和管理系统中得到广泛的应用。温室内部的管理和控制实际上就具有局域网的特性,随着网络通讯技术的发展,地区之间甚至跨国之间可以通过互联网进行远程控制和管理。我国土地辽阔,气候复杂,种植模式多样,整体的种植水平较低,利用现代化网络技术进行在线和离线服务,从长远看具
12、有广阔的应用前景。目前开发的温室计算机控制系统采用了主机终端模式,该模式通过一个主机作为控制中心,负责对其它各子系统进行控制管理,该模式不灵活且投入大。分布式计算机系统是计算机控制系统的发展方向,该系统采用了所谓的服务器客户模式。未来的计算机控制与管理系统是综合性、多方位的,温室环境测试与自动控制技术将朝多因素、多样化方向发展。温室环境测控技术的发展趋势随着传感技术、计算机技术和自动控制技术的不断发展,温室计算机的应用将由简单的以数据采集处理和监测,逐步转向以知识处理和应用为主。因此除了不断完善硬件控制设备外,主要是软件系统的研制开发将不断深入完善,其中主要以专家系统为代表的智能管理系统已取得
13、了不少研究成果。近几年来神经网络、遗传算法、模糊推理等人工智能技术在设施农业中得到了不同程度的应用。温室生产系统由作物、各种农业机械设备、环境控制设备及生产管理者等组成了一个十分复杂的非线性系统。因此企业研究其输入与输出的定量关系是十分困难的。神经网络采用黑箱方法能把复杂的系统通过有限的参数进行表达。但神经网络方法也存在着明显的缺陷,即需要大量的历史资料,否则在进行外推和演绎时可靠性明显降低。网络通讯技术是上世纪 90 年代最具活力、发展速度最快的高科技领域。通过网络随意获取世界范围内的有用信息,指导自己的生产,甚至可以通过在线服务系统进行咨询,是未来农业的发展趋势所在。2 系统分析与方案确定
14、2.1 系统分析本系统需要对系统应用环境的多个点的温度进行实时巡回检测,同时能够根据主控机的指令对指定点温度进行采集,测量结果不仅能在本地显示,而且可以利用单片机串行口,将采集的数据传送到计算机,进行进一步的存档、处理。主控机负责控制指令的发送,控制各个从机进行温度采集,收集测量数据,并对测量结果进行整理、显示和存储。根据系统的需要,本设计需要完成温度采集模块、通信模块、显示模块的硬件选型、电路设计与程序编写。2.2 传感器选型前应用多点温度检测系统大多采用由模拟温度传感器、多路模拟开关、a/d转换器及单片机等组成的传输系统。传统的温度检测装置抗干扰能力较差,多采用单片的温度传感器,例如lm3
15、5 、ad590 ,这些芯片不仅体积大,而且输出的信号都是模拟信号,必须要经过a/ d 转换,而且没有数字通信和网络功能,同时,模拟信号的远距离测量易遭受引线误差的影响,且外部附加电路较多,硬件结构复杂,增加了成本,在这样的情况下,温度传感器选用1-wire总线数字式温度传感器ds18b20,测量温度范围为-55125。在-1085范围内,测量精度为±0.5,分辨率为程控可调的 0.50.0625,其与传统温敏模拟传感器相比,由于采取高集成度设计和数字化处理,在可靠性、抗干扰能力以及器件微小化方面都有明显的优点,其功能能够满足该温度检测系统需要。2.3 ds18b20ds18b20是
16、美国dallas半导体公司生产的1-wire总线数字式温度传感器,体积小、经济实用、方便灵活的优点,在现代温度采集系统中广泛应用开来。其封装如图2-1。 图2-1 ds18b20封装图2.3.1 ds18b20结构ds18b20的结构框图如图2-2,有4个主要组成部分:1) 64位光刻rom数据存储器;2) 温度传感器;3) 非易失性电可擦写温度报警触发器th和tl;4) 非易失性电可擦写设置寄存器; 图2-2 ds18b20结构框图每片ds18b20含有一个唯一的64位rom编码。前8位是产品系列编码,接着的48位是产品序列号,最后8位是循环冗余(crc)校验码。所以多片ds18b20能够连
17、在同一条数据线上而不会造成混乱。这为温度的多点测量带来了极大的方便。温度传感器的转换结果以16位二进制补码的形式存放在便笺式存储器中,如果测量的温度值高于温度报警触发器th或低于tl中的值,则ds18b20内部的报警标志位就被置位,表示温度测量值超出范围。ds18b20的温度转换位数可以选择912位,分别对应的测温分辨率为0.5,0.25,0.125,0.0625。不过温度转换位数越大,转换时间也越长。12位精度的最大转换时间为750ms。温度转换位数的改变是通过改变设置寄存器的值来实现的。温度报警触发器和设置寄存器都由非易失性电可擦写存储器(eeprom)组成,设置值可以通过相应命令写入,一
18、旦写入后不会因为掉电而丢失。crc 发生器ds1820中有8位crc存储在64位rom的最高有效字节中。总线控制器可以用64位rom中的前56位计算出一个crc值,再用这个和存储在ds18b20中值进行比较,以确定rom数据是否被总线控制器接收无误。crc码图如2-3。图2-3 单线crc码图crc计算公式如2-1: crc= (2-1)ds18b20同样用上面的公式产生一个8位crc值,把这个值提供给总线控制器用来校验传输的数据。在任何使用 crc 进行数据传输校验的情况下,总线控制器必须用上面的公式计算出一个crc值,和存储在ds18b20的64位rom中的值或ds18b20内部计算出的8
19、位crc值(当读暂存器时,做为第9个字节读出来)进行比较。crc值的比较以及是否进行下一步操作完全由总线控制器决定。当在ds18b20中存储的或由其计算的crc值和总线控制器计算的值不相符时,ds18b20 内部并没有一个能阻止命令序列进行的电路。单线crc可以用一个由移位寄存器和xor门构成的多项式发生器来产生。2.3.2 单总线近年来,美国的dallas半导体公司推出了一项特有的单总线(1-wire bus)技术。该技术与上述总线不同,它采用单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的,因而这种单总线技术具有线路简单,硬件开销少,成本低廉,便于总线扩展和维护等优点。它只定义
20、了一根信号线,总线上的每个器件都能够在合适的时间驱动它,相当于把单片机的地址线、数据线、控制线合为一根信号线对外进行数据交换。为了区分这些芯片,厂家在生产每个芯片时,都编制了惟一的序列号,通过寻址就能把芯片识别出来。这样做能使这些器件挂在一根信号线上进行串行分时数据交换,大大简化了硬件电路。设备主机或从机通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能够释放总线,而让其它设备使用总线。主机和从机之间的通信可通过3个步骤完成,分别为初始化1-wire器件、识别1-wire器件和交换数据。由于它们是主从结构,只有主机呼叫从机时,从机才能应答,因此主机访问1-wire器件都必须严格
21、遵循单总线命令序列,即初始化、rom、命令功能命令。如果出现序列混乱,1-wire器件将不响应主机搜索服命令,报警搜索命令除外。所有的单总线器件都要遵循严格的通信协议,以保证数据的完整性。单总线系统中配置的各种器件由美国dallas半导体公司提供的专用芯片来实现。这些芯片采用cmos技术,耗电量都很小,从单总线上“偷”一点电(空闲时几w,工作时几mw)存在芯片内电容中就可以正常工作了,故一般不用另附电源。单总线上通常处于高电位(5v左右),每个器件都能在需要时驱动它。因此,挂在总线上的每个器件必须是漏极开路或者是三态输出,这样,不工作时不会给总线增加功耗。单总线技术作用距离在单片机直接驱动下可
22、达200m,经扩展可达1000m,允许挂上百个器件,能满足一般测控系统的要求。单总线的数据传输有两种模式,通常以的13.6kb/s的速率通信,超速可达142kb/s。因此只能用于速度不高的场合。单总线技术比传统的方案具有较高的性能价格比,具有以下特点:1) 适用于低速测控场合,测控对象越多越显出其优越性。2) 性价比高,硬件施工、维修方便,抗干扰性能好。3) 具有校验功能,可靠性高。4) 软件设计规范,系统简明直观,易于掌握。2.3.3 ds18b20供电方式ds18b20有两种供电工作方式,一种是寄生电源工作方式,另一种是外接电源工作方式。第一种方法,如图2.2.4当进行温度转换或拷贝到 e
23、2存储器操作时,给 i/o 线提供一个强上拉。用 mosfet 把 i/o 线直接拉到电源上就可以实现,在发出任何涉及拷贝到 e2存储器或启动温度转换的协议之后,必须在最多 10s 之内把 i/o 线转换到强上拉,使用寄生电源方式时,vdd 引脚必须接地。第二种给 ds1820 供电的方法是从 vdd 引脚接入一个外部电源。这样做的好处是 i/o 线上不需要加强上拉,而且总线控制器不用在温度转换期间总保持高电平。这样在转换期间可以允许在单线总线上进行其他数据往来。另外,在单线总线上可以挂任意多片 ds18b20,而且如果它们都使用外部电源的话,就可以先发一个 skip rom 命令,再接一个
24、convert t 命令,让它们同时进行温度转换。注意当加上外部电源时,gnd 引脚不能悬空。(a)寄生工作方式( b)外接电源工作方式图2-4 ds18b20供电方式另外,温度高于 100时,不推荐使用寄生电源,因为 ds18b20 在这种温度下表现出的漏电流比较大,通讯可能无法进行。在类似这种温度的情况下,强烈推荐使用 ds18b20 的 vdd 引脚。对于总线控制器不知道总线上的 ds18b20 是用寄生电源还是用外部电源的情况,ds18b20 预备了一种信号指示电源的使用意图。总线控制器发出一个 skip rom 协议,然后发出读电源命令,这条命令发出后,控制器发出读时间隙,如果是寄生
25、电源,ds18b20 在单线总线上发回“0”,如果是从 vdd 供电,则发回“1”,这样总线控制器就能够决定总线上是否有 ds1820 需要强上拉。如果控制器接收到一个“0”,它就知道必须在温度转换期间给 i/o 线提供强上拉。2.3.4 ds18b20寄存器 ds18b20的内部存储器结构如图2-5所示。图2-5 ds18b20内部存储器结构它包括一个暂存ram和一个非易失性电可擦除eeram。其中暂存存储器作用是在单线通信时确保数据的完整性,它包括8个字节,头两个字节表示测得的温度读数,数据格式如下:msb (单位:摄氏度) lsbssssss=1时表示温度为负,s=0时表示温度为正,其余
26、低位以二进制补码形式表示,最低位为1时表示0.0625。温度/数字对应关系如表所示。ds18b20内部暂存存储器的第5个字节是结构寄存器,它主要用于确定温度值的数字转换分辨率。字节结构如下:tmr1r011111 msb lsb典型对应的温度值如表2-1表2-1典型温度/数据其中tm为测试模式位。当时tm=1,寄存器处于测试模式;当时tm=0,寄存器处于工作模式。r1和r0的设置组合与温度分辨率有关,分辨率如表2-2:表2-2 ds18b20温度转换时间表r1r0分辨率最大温度转换时间00993.75ms0110187.5ms1011375ms1112750ms2.3.5 ds18b20测温原
27、理ds18b20的温度传感器是通过温度对振荡器的频率影响来测量温度,如图2-6所示。ds18b20内部有两个不同温度系数的振荡器。低温度系数振荡器输出的时钟脉冲信号在高温度系数振荡器产生的门周期内进计数。计数初值被预置在-55相对的一个基数值,如果计数器在高温度系数振荡器输出的门周期结束前计数到0,表示测量的温度值高于-55,被预置在-55的温度寄存器的值就增加l°,然后重复这个过程,直到高温度系数振荡器的门周期结束为止,这时温度寄存器中的值就是被测的温度值,这个值以16位二进制补码的形式存放在便笺式存储器中。温度值由主机通过发读存储器命令读出,经过取补和十进制转换,得到实测的温度值
28、。斜率累加器是用于补偿和修正温度振荡器的非线性。 图2-6 ds148b20测温原理图2.3.6 ds18b20时序及存储器命令ds18b20要求有严格的协议来确保数据传输的完整性。协议由几种单线上信号类型组成:复位脉冲、存在脉冲、写0、写1、读0、读1。所有这些信号,除了存在脉冲之外,均由单片机产生。ds18b20时序图如图2-7所示。(1) 初始化时序开始与 ds18b20 进行任何通信之前,需进行初始化。首先,单片机发送(tx)一个复位脉冲(最短为480s 的低电平信号)。接着单片机便释放此线并进入接收方式(rx), 单线经过上拉电阻被拉至高电平状态。在检测到dq引脚上的上升沿之后,ds
29、18b20等待 1560s 并且接着发送存在脉冲(60240s 的低电平信号)以表示ds18b20的存在。(2) 读/写时间段通过使用时间段来读出和写入ds18b20的数据,时间段用于处理数据位和指定进行何种操作的命令字。1、写时间段(write time slots)当单片机把单线从高逻辑电平拉至低逻辑电平时,产生写时间段。有两种类型的写时间段:写1时间段和写0时间段。所有时间段必须最短持续60s,在各写周期之间必须有最短为1s的恢复时间。在单线由高电平变为低电平之后,ds18b20在15s至60s的窗口之间对单线采样。如果单线为高电平,写1就发生。如果单线为低电平,便发生写0。对于单片机产
30、生写1时间段的情况,单线必须先被拉至逻辑低电平,然后就被释放,使单线在写时间段开始之后的15s之内拉至高电平。对于主机产生写0时间段的情况,单线必须被拉至逻辑低电平且至少保持低电平60s。2、读时间段(read time slots)当从ds18b20读数据时,单片机产生读时间段。当单片机把单线从逻辑高电平拉至低电平时,产生读时间段。单线必须保持在低逻辑电平至少1s;来自ds18b20 的输出数据在读时间段下降沿之后15s内有效。因此,为了读出从读时间段开始算起15s时的状态,单片机必须停止把单线驱动至低电平,如图3-3所示。在读时间段结束时,单线经过外部的上拉电阻拉回至高电平。所有读时间段的
31、最短持续期限为60s,各个读时间段之间必须有最短为1s的恢复时间。 图2-7 ds18b20时序图对 ds18b20 的操作以 rom命令和存储器命令形式出现。1)rom 命令代码及其含义read rom命令代码33h:如果只有一片ds18b20,可用此命令读出其序列号,若在线ds18b20多于一个,将发生冲突。match rom命令代码55h:多个ds18b20在线时,可用此命令匹配一个给定序列号的ds18b20,此后的命令就针对该 ds18b20。skip rom命令代码cch:此命令执行后的存储器操作将针对在线的所有ds18b20。search rdh 命令代码f0h:用以读出在线的ds
32、18b20的序列号。2)存储器操作命令代码及其含义write scratchpad命令代码4eh:写两个字节的数据到温度寄存器。read scratchpad 命令代码beh:读取温度寄存器的温度值。copy scratchpad 命令代码48h:将温度寄存器的数值拷贝到eeram 中,保证温度值不丢失。convert 命令代码44h:启动在线 ds12b80 做温度 a/d 转换。对ds18b20的设计,需要注意以下问题:1) 较小的硬件开销需要相对复杂的软件进行补偿,由于ds18b20与微处理器间采用串行数据传送,因此,在对 ds18b20 进行读写编程时,必须严格的保证读写时序,否则将无
33、法读取测温结果。2) 在ds18b20的有关资料中均未提及单总线上所挂ds18b20 数量问题,容易使人误认为可以挂任意多个 ds18b20,在实际应用中并非如此。当单总线上所挂ds18b20超过10 个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。3) 连接ds18b20的总线电缆是有长度限制的。试验中,当采用普通信号电缆传输长度超过50m 时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的。因此,
34、在用ds18b20进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。4) 在ds18b20测温程序设计中,向ds18b20发出温度转换命令后,程序总要等待ds18b20的返回信号,一旦某个ds18b20接触不好或断线,当程序读该 ds18b20 时,将没有返回信号,程序进入死循环。这一点在进行ds18b20硬件连接和软件设计时也要给予一定的重视。2.4单片机选型随着科学技术的发展,单片机因具有集成度高、体积小、速度快、价格低等特点而在许多领域如过程控制、数据采集、机电一体化、智能化仪表、家用电器以及网络技术等方面得到广泛应用,从而使这些领域的技术水平、自动化程度大大提高。正因为如此
35、,国内外多家电子生产厂商把目光投向了单片机的生产当中,其中最为著名的当数intel公司生产的mcs-51系列单片机。单片机型号的选择是根据控制系统的目标、功能、可靠性、性价比、精度和速度等来决定的。根据上述及本课题的实际情况,单片机型号的选择主要从以下两点考虑:一是要有较强的抗干扰能力。由于大棚工作环境比较恶劣,以及实际的运行工况比较复杂,这些都对单片机的干扰较大,所以应采用抗干扰性能较好的单片机机型;二是要有较高的性价比,大棚环境是一个时滞性较大的系统,对控制时间精度要求不需要很高,所以单片机不需采用高速的输出、输入口,51系列单片机在时间精度方面可以满足要求。为了使用方便,系统要求可以进行
36、在线改写,要求片内具有可擦除程序存储器,另外为了以后系统升级的需要,在设计中采用52系列单片机。本设计选用at89s52作为主控机。2.4.1 单片机at89s52at89s52是atmel公司生产的低功耗、高性能的采用cmos工艺的8位单片机。其与工业标准型80c51单片机的指令系统和引脚完全兼容。其封装如图2-8。图2-8 at89s52封装图at89s52具有以下标准功能:8kb的可在线编程的flash存储器,片内程序存储器为8kb,256字节ram,32 位i/o 口线,具有3个可编程定时器,2个数据指针,8个中断源的中断系统,1个看门狗定时器,全双工串行口,2种低功耗节电运行方式。其
37、功能能够满足该温度检测系统需要。2.4.2看门狗定时器(wdt)由于是和mcs-51系列相兼容,其各部分功能不作赘述,只介绍一下看门狗定时器。wdt是一种需要软件控制的复位方式。wdt由13位计数器和特殊功能寄存器中的看门狗定时器复位存储器(wdtrst)构成。wdt在默认情况下无法工作;为了激活wdt,必须往wdtrst寄存器(地址:0a6h)中依次写入01eh 和0e1h。当wdt激活后,晶振工作,wdt在每个机器周期都会增加。wdt计时周期依赖于外部时钟频率。除了复位(硬件复位或wdt溢出复位),没有办法停止wdt工作。当wdt溢出,它将驱动rsr引脚一个高个电平输出。为了激活wdt,用
38、户必须向wdtrst寄存器(地址为0a6h的sfr)依次写入0e1h和0e1h。当wdt激活后,用户必须向wdtrst写入01eh和0e1h喂狗来避免wdt溢出。当计数达到8191(1fffh)时,13 位计数器将会溢出,这将会复位器件。晶振正常工作、wdt激活后,每一个机器周期wdt 都会增加。为了复位wdt,用户必须向wdtrst 写入01eh 和0e1h(wdtrst 是只读寄存器)。wdt 计数器不能读或写。当wdt 计数器溢出时,将给rst 引脚产生一个复位脉冲输出,这个复位脉冲持续96个晶振周期(tosc),其中tosc=1/fosc。为了很好地使用wdt,应该在一定时间内周期性写
39、入那部分代码,以避免wdt复位。在掉电模式下,晶振停止工作,这意味这wdt也停止了工作。在这种方式下,用户不必喂狗。有两种方式可以离开掉电模式:硬件复位或通过一个激活的外部中断。通过硬件复位退出掉电模式后,用户就应该给wdt 喂狗,就如同通常at89s52 复位一样。通过中断退出掉电模式的情形有很大的不同。中断应持续拉低很长一段时间,使得晶振稳定。当中断拉高后,执行中断服务程序。为了防止wdt在中断保持低电平的时候复位器件,wdt 直到中断拉低后才开始工作。这就意味着wdt 应该在中断服务程序中复位。为了确保在离开掉电模式最初的几个状态wdt不被溢出,最好在进入掉电模式前就复位wdt。在进入待
40、机模式前,特殊寄存器auxr的wdidle位用来决定wdt是否继续计数。默认状态下,在待机模式下,wdidle0,wdt继续计数。为了防止wdt在待机模式下复位at89s52,用户应该建立一个定时器,定时离开待机模式,喂狗,再重新进入待机模式。2.5 通讯模块2.5.1通信概述数据通信的基本方式可分为并行通信和串行通信两种。并行通信是指数据的各位同时进行传送的通信方式。其优点是传送速度快,缺点是传输线多,不宜实现远程通信。串行通信是指数据是一位一位地按顺序传送的通信方式。所以它所需的传输线条数很少,特别适用于分级、分层和分布式控制系统及远程通信。串行通信按照串行数据的同步方式又可以分为同步通信
41、和异步通信两类。同步通信是按照软件识别同步字符来实现数据的发送和接收的,异步通信是利用字符的再同步技术的通信方式。系统采用的就是异步串行通信方式,来实现上位机和单片机间通讯的。在异步通信中,数据通常是以字符(或字节)为单位组成字符帧传送的。字符帧由发送端一帧一帧地发送,通过传输线被接收设备一帧一帧地接收。发送端和接收端可以有各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。发送端何时开始发送和何时结束发送是由字符帧格式规定的。平时,发送线为高电平(逻辑“1”),每当接收端检测到传输线上发送过来的低电平逻辑“0”(字符帧中起始位)时就知道发送端己开始发送,每当接收端接收到字符帧中
42、停止位时就知道一帧字符信息已发送完毕。字符帧也叫数据帧,由起始位、数据位、奇偶校验位和停止位等四部分组成。一部串行通信数据格式如图2-9。图2-9 异步串行通信数据格式各部分结构和功能:(1)起始位:位于字符帧开头,只占一位,始终为逻辑“0”低电平,用于向接收设备表示发送端开始发送一帧信息。(2)数据位:紧跟起始位之后,用户根据情况可取5位、6位、7位或8位,低位在前高位在后。(3)奇偶校验位:位于数据位后,仅占一位,用于表征串行通信中采用奇校验还是偶校验,由用户根据需要决定。在测温系统中奇偶校验位被用来作为上位机和单片机间的多机通讯时的第九位。(4)停众位:位于字符帧末尾,为逻辑“1”高电平
43、,通常可取1位、1.5位或2位,用于向接收端表示一帧字符信息已发送完毕,也为发送下一帧字符做准备。2.5.2 通信协议目前rs-232是pc机与通信工业中应用最广泛的一种串行接口。rs-232被定义为一种在低速率串行通讯中增加通讯距离的单端标准。rs-232采取不平衡传输方式,即所谓单端通讯。由于发送电平与接收电平的差仅为2v至3v左右,所以其共模抑制能力差,再加上双绞线上的分布电容,其传送距离最大为约20米,最高速率为20kb/s。rs-232是为点对点(即只用一对收、发设备)通讯而设计的,其驱动器负载为37k。所以rs-232适合本地设备之间的通信。1983年在rs-422基础上制定了rs
44、-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围。rs-485与rs-232相比有很多优点,rs-485是一个多引出线接口,这个接口可以有多个驱动器和接收器,利用高阻抗接收器,一个rs-485可以最多连接256个节点。rs-485的驱动器和接收器价格便宜,而且只需要一个单+5v的电源来产生差动输出的最小1.5v的压差。rs-485总线采用平衡电路。每个信号都有专用的导线对,其中一根导线上的电压等于另一根导线上的电压取反,或者取补。接收器对这些电压之间的压差作出反应。平衡连线是无噪声的,因为这两根信号线都传递
45、几乎相同大小的反向电流,大多数噪声电压在这两根导线上或多或少都同时出现,任何在一个导线上出现的噪声电压或从电缆外部祸合进入导线的干扰都被在另一根导线上的噪声电压所抵消。一个平衡接收器只看到传输的信号,噪声被清除或者极大的消弱。由于rs-485采用差动平衡电路,所以通讯距离远,最长可以达到1200米。为了构建无故障的rs-485连接,一般需遵循下面7条准则:1、对指定的比特率使用可能的最慢的驱动器。如果连接不需要太快的速度,使用低速的驱动器是改进信号质量的一个简单的、低成本的方法,同时使用低速芯片减弱了发散的电磁干扰。用导线的特征阻抗终止长导线。选择合适匹配的阻抗将会消弱反射的幅度并且在总体上改
46、进信号的质量。3、将这些节点连接成总线拓扑。其优点是如果其中的一个连接出现故障或需要从一个接点处断开时,其他的接点之间的通讯可以正常地进行。4、偏置非活动连接。(开路和短路的保护)。其特点是在其中的一个驱动器出现故障时,使整个通讯还可以正常进行。5、使用双绞线电缆。双绞线在消除由于磁祸合引起的低频干扰方面是有效的。在一根双绞线中,电缆的每一次扭曲都交换导线的物理位置,磁祸合进入一根导线的任何干扰都在下一次扭曲中被另一根导线的等量的相反的干扰抵消。虽然不是100%的抵消,但也是被极大地消弱。6、限制公共模式电压。虽然rs-485是采用差动方式,但是为了使rs-485能正常工作,需要限制公共模式电
47、压,一般每个接收器的输入对地电压在-7v到+12v之间,以接收器的地线为参考。7、在rs-485规定中一个连接可以最多有32个单位负载,如果超过了这个限制,通常采用转发器电路,一个转发器可以重新生成rs-485并且可以提供额外的32个接点。2.5.3 通信方式选用由于大棚环境与上位机的距离一般都会大于100米,且通信环境相当复杂,rs-232通信只适合短程通信,在这种环境下,rs-485通信比较适合本设计的需求。2.5.4 max485接口芯片max485接口芯片是maxim公司的一种rs-485芯片。采用单一电源+5v工作,额定电流为300a,采用半双工通讯方式。它完成将ttl电平转换为rs
48、-485电平的功能。其引脚结构图如图 2-10 所示。图2-10 max485结构与引脚图从图中可以看出,max485芯片的结构和引脚都非常简单,内部含有一个驱动器和接收器。ro和di端分别为接收器的输出和驱动器的输入端,与单片机连接时只需分别与单片机的rxd和txd相连即可;/re和de 端分别为接收和发送的使能端,当/re 为逻辑0时,器件处于接收状态;当de为逻辑1时,器件处于发送状态,因为max485工作在半双工状态,所以只需用单片机的一个管脚控制这两个引脚即可;a端和b端分别为接收和发送的差分信号端,当a引脚的电平高于b时,代表发送的数据为1;当a的电平低于b端时,代表发送的数据为0
49、。在与单片机连接时接线非常简单。只需要一个信号控制max485的接收和发送即可。同时将a和b端之间加匹配电阻,一般可选100的电阻。2.6系统方案的确定在总体设计方案中,应考虑以下几点:1) 系统能方便、直观、有效的监控大棚环境温度的变化。2) 系统必须能够实时采集大棚测控点处的温度值,并且迅速处理。3) 系统能够将数据处理结果显示给用户,还要能够存储结果,以方便以后对比研究。4) 系统的经济性、可靠性要求。5) 测温点多,要易于扩充。6) 操作和维护方便。综上所述,本方案中,主控机采用at89s52,温度传感器采用ds18b20,八路ds18b20采集的数字温度信号通过主控机at89s52的
50、处理,在lcd显示出来,并通过rs485通讯方式与上位机进行通讯,主控机at89s52通过可控硅对温控电气设备进行控制。3 硬件设计3.1 硬件结构框架根据本文的测控系统的要求,需要完成电源、键盘、温度采集、控制、显示、通信等几个部分的设计,其系统框图如图3-1所示。at89s52lcd显示ds18b20数字温度信号上位机rs485通信声光报警温度控制图3-1 系统结构框图3.2电源电路根据系统要求,需要设计一5v稳压电源。如图3-2所示电路为输出电压+5v、输出电流1.5a的稳压电源。它由电源变压器,桥式整流电路vd1vd4,滤波电容c1、c3,防止自激电容c2、c3和一只固定式三端稳压器(
51、lm7805)极为简捷方便地搭成的。220v交流电通过电源变压器变换成交流低压,再经过桥式整流电路d1d4和滤波电容c1的整流和滤波,在固定式三端稳压器lm7805的vin和gnd两端形成一个并不十分稳定的直流电压(该电压常常会因为市电电压的波动或负载的变化等原因而发生变化)。此直流电压经过lm7805的稳压和c3的滤波便在稳压电源的输出端产生了精度高、稳定度好的直流输出电压。本稳压电源体积小、成本低、性能好、工作可靠性高、使用简捷方便等特点,可作为ttl电路或单片机电路的电源。图3-2 电源电路3.3键盘电路键盘是单片机应用系统中不可缺少的输入设备,是实现人及对话的纽带,是操作人员控制干预单
52、片机应用系统的主要手段。通过键盘可以向单片机应用系统输入数据和控制命令,实现对应用系统的认为控制,提高应用系统的灵活性。键盘按结构形式可分为非编码键盘和编码键盘;按组成形式可分为独立式键盘、矩阵式键盘、拨码式键盘;按硬件接口可分为直接i/o端口、键盘接口芯片;按程序实现方法可分为中断方式、程序扫描方式、定时扫描方式和中断扫描方式。本系统中,由于只需要3个按键,故只需采用独立式键盘方式。独立式键盘是指将每个按键按一对一的方式直接连接到单片机i/o端口上所构成的键盘。根据软硬件的不同实现方法,可分为中断键盘、程序查询键盘、定时查询键盘、中断查询键盘。不管是程序查询还是定时查询,cpu都要进行很多额
53、外的查询操作,不利于提高cpu的效率,在一些低功耗应用场合,尤其不适合使用。如果采用中断方式,只有在每次有键按下的时候cpu才会去相应键盘,提高了cpu的效率,但却占用太多的中断源,所以本设计采用中断查询式键盘,设计电路如图3-3。 图3-3 中断查询键盘接口电路3.4 温度检测电路温度检测电路是将ds18b20中采集的数据通过信号线传输到单片机中进行处理。由于ds18b20 在温度较高的情况下表现出的漏电流比较大,通讯可能无法进行,故本设计中ds18b20供电方式采用独立电源供电。单总线协议使得ds18b20的采集电路简洁了许多,温度采集电路如图3-4所示。图3-4 温度采集电路3.5 液晶
54、显示电路显示器是最常用的输出设备,特别是发光二极管显示器(led)和液晶显示器(lcd),由于结构简单、价格便宜、接口容易,得到广泛的应用,尤其在单片机系统中大量使用。为了更方便的同时显示多路温度数据,在本系统中温度显示方案采用液晶显示模块。它是一种将液晶显示器件、连接件、集成电路、线路板、背光源、结构件装配在一起的组件,英文名称叫“lcd module”,简称“lcm”,中文一般称为“液晶显示模块”。它的显示内容极为丰富,可显示汉字及图形,是一种高新技术的基础元器件,并且接口电路简单,显示更加人性化,应用及其广泛。本系统所用的液晶显示模块为smc1602a。smc1602a技术参数n 显示容
55、量:16*2个字符,每个字符为5*7点阵n 芯片工作电压:4.5-5.5vn 工作电流:2ma(5.0v)n 模块最佳工作电压:5.0vn 字符尺寸:2.95*4.35(w*h)mmsmc的管脚定义如图3-5。图3-5 接口信号说明smc1602a的读操作时序图如图3-6,写操作时序图如图3-7,时序参数如图3-8。图3-6 读操作时序图图3-7 写操作时序图图3-8 时序参数at89s52与smc1602的硬件接线如图3-9。图3-9 lcd接口电路图3.6控制电路由于受环境的影响,大棚内的温度并不是一成不变的,而是随着各种环境因素的改变而改变,当温度高于或低于植物生长的最佳温度区域时,就必
56、须通过有效方式将温度调节到最佳状态。一般说来,大棚环境的温度都会低于外部环境,保温是大棚的一个重要特点,故本课题只作温度低时升温的温度的设计,升温通过电热炉的加热实现。其控制最终由输出控制电路来实现,这部分电路主要是来控制强电的通断实现对炉温的控制,控制是通过可控硅调功电路实现的。可控硅调功电路就是双向可控硅和加热丝串接在交流电路回路中。在给定周期t内,at89s52只要给改变可控硅的通断时间便可以改变加热丝的功率,以达到调节温度的目的。可控硅在给定周期t的100%时间内接通时的功率最大。图3-10给出了可控硅在给定周期t内具有不同接通时间的情况。图3-10 可控硅调功器输出功率与通断时间的关系控制输出电路如图3-11。at89s52在p1.3引脚上产生的信号控制,由图 3-11所示可知。当 p1.3 引脚上是低电平信号时,光电耦合芯片 mo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年智能安防工程调试合同协议
- 2026年外卖平台配送员合同
- 家用天然气安全培训总结课件
- 2026届新高考英语冲刺复习 应用文+如何介绍传统文化
- 园长开学培训
- 园林绿化造价培训课件
- 2024年平安创建汇报材料
- 华英公司安全培训课件
- 华晨培训安全b成绩查询课件
- 市事业单位202年急需紧缺人才引进工作实施方案
- 大气道狭窄护理课件
- 水电厂电气自动化监控系统功能分析
- DB11T 381-2023 既有居住建筑节能改造技术规程
- 计算机应用数学基础 教学 作者 王学军 计算机应用数学课件 第10章 图论
- DF6205电能量采集装置用户手册-2
- 电子电路基础-电子科技大学中国大学mooc课后章节答案期末考试题库2023年
- 四年级科学上册期末试卷及答案-苏教版
- 怀仁县肉牛养殖产业化项目可行性研究报告
- DB51T 2875-2022彩灯(自贡)工艺灯规范
- 主要负责人重大危险源安全检查表
- 《工程经济学》模拟试题答案 东北财经大学2023年春
评论
0/150
提交评论