欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于RS485总线的远程监测实时温度系统设计.doc

    • 资源ID:836086       资源大小:776.31KB        全文页数:62页
    • 资源格式: DOC        下载积分:20积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要20积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,下载更划算!
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于RS485总线的远程监测实时温度系统设计.doc

    1、 第 II 页 共 页 摘 要控制领域中的分布式监控系统具有节点多、传输距离远以及现场工作条件恶劣等特点,因此需要一种能够支持多节点、远距离通信以及传输信号安全可靠的总线构成网络。本文给出的一种基于RS485总线的远程监测实时温度的方法,具体介绍了RS485总线的通信原理、串行通信原理、监控系统的组成和功能电路模块,并且着重介绍了RS485总线的特点和通信协议的设计,电路连接和通信软件的设计方法。在此基础上设计了一套完整的远程温度监控系统,每个从机都能实时对环境周围的温度采集,并且将所采集到的数据发送给主机;而主机可以对接收到的每个从机所发送的信息进行相应的处理,并且向所需要控制的从机发送相应

    2、的命令。本系统应用STC89C52单片机完成数据的采集、处理、对所采集到的温度进行处理和对数据的传输进行处理,通过矩阵键盘输入命令,并用LCD12864液晶屏显示实时状态、设定信息和所采集到的温度。RS485串口通信实现了主机对从机的监控和控制。通过硬件和软件的联合调试证明,系统能实现实时温度采集,并对温度超出范围时进行了处理,由于使用的是DS18B20数字温度传感器进行温度采集,使所采集到的温度的精确度也比较好。该监测系统具有体积小,价格便宜、实用性好和方便携带等优点,可以在生活小区、工厂、楼宇等领域使用。关键词:单片机;数字温度传感器DS18B20;液晶显示;RS485总线;串行通信Abs

    3、tractControl the field of distributed control system with multiple nodes, transmission distance and on-site working conditions and other characteristics,Therefore,it needs a bus which with multi-node support, remote communications, and signal transmission of safe and reliable to form network. This p

    4、aper presented a method which based on RS485 bus to remote monitoring of the real-time temperature, detailed description of the RS485 bus communication theory, serial communication theory, control system components and functions of circuit module., and emphatically introduced the characteristics of

    5、the RS485 bus and the design of communication protocols, circuit connection and communication software design. On this basis designed a complete set of remote temperature monitoring system, each slave can real-time capture the temperature which around of the environmental , and the data collected wi

    6、ll be sent to the host; The host can dock each received information sent from the machine and make the appropriate treatment, and sends the appropriate command to l the slave of need control.MCU to complete the system application STC89C52 data collection, processing, the temperature of the collected

    7、 data for processing and transmission of processed, inputs commands through the matrix key-board , and uses LCD12864 display real-time status, the set information and the temperature of collected . RS485 Serial Communication achieved the host machine monitoring and controling the slave. Through the

    8、the joint commissioning of hardware and software proved, System can collect real-time temperature, and deal with when the temperature goes out of scope , due to use the DS18B20 digital temperature sensor to collect the temperature, so that the accuracy of temperature of the collected is better. The

    9、monitoring system is small, cheap, practical, good and easy to carry, etc., so it can be use in the living area, factories, buildings and other areas.Key words: MCU; Digital Temperature Sensors DS18B20; LCD display; RS485 bus; Serial Communication 第 II 页 共 页目 录引言11 系统设计21.1 任务要求21.2 总体设计22 设计方案论证32.

    10、1 主机部分方案论证32.2 从机部分方案论证32.3 通讯总线接口方案论证33 系统硬件电路设计53.1主控机电路设计53.1.1单片机STC89C52外围电路设计53.1.2液晶显示电路设计73.1.3报警电路设计93.1.4键盘控制电路设计103.2 从机电路设计113.2.1温度采集电路设计113.3 主从机RS485接口电路设计143.4 程序下载电路设计154 RS485通信技术基本原理174.1 RS485多机通信概述174.2 多机通信基本原理174.3 串行通信原理184.3.1串行通信基础知识184.3.2 MCS-51系列单片机串行口的结构194.3.3 MCS-51单片

    11、机串行口的控制204.3.4波特率设计215 系统软件程序设计235.1 通信协议设计235.2 数据校验方法245.3 从机系统控制设计245.3.1 从机串口通信协议设计255.3.2 温度采集程序设计275.4 主机系统控制设计295.4.1主机的串口通信协议设计315.4.2键盘控制设计325.4.3 液晶显示设计355.4.4 报警部分设计376 系统调试过程386.1 硬件调试386.2 软件调试387 结论39谢 辞41参考文献42附 录44附录A 硬件电路原理图44附录B PCB电路图45附录C 程序代码47 第 58 页 共 58 页引言单片机自从诞生以来,从8位、16位到3

    12、2位,数不胜数,应有尽有,有与主流的C51系列兼容的,也有不兼容的,但它们各具特色,互成互补,为单片机的应用提供了广阔空间。单片机以其体积小、面向控制、高性价比等优点,在工业领域中扮演着重要角色。在实际的应用中,经常需要多个单片机之间协调的工作,即多机通信。在测试领域,想要构建一个较大规模的测试系统,都不可避免地采用包括PC、单片机和其他测试设备在内的多机系统。它们之间可能是近距离的,也可能是距离很远的,那么相应的信息交换就可以通过并行通信或串行通信来实现。并行通信只适用于近距离的通信,而串行通信适用于远距离的通信。有单片机参与的多机系统,将涉及单片机与PC机、单片机与单片机或单片机与其他测试

    13、设备之间的通信。MCS-51系列单片机的串行口工作模式2和模式3可实现多机通信。 在一些要求响应速度快、实时性强、控制量多的应用场合,单个单片机构成的系统往往难以胜任,这时就需要利用多个单片机结合PC组成分布式系统成为一个比较好的解决方案。在这样的分布式系统中,可以使用RS-232总线连接PC和单片机,但由于RS-232总线标准存在传输速率慢、传输距离短的缺点,很多时候无法满足工业应用中多机系统的通信要求,因此实际应用中经常使用的是RS-485总线标准。RS-485采用平衡发送和差分接收来实现通信,具有极强的抗共模干扰能力,接收灵敏度也相当高。同时,最大传输速率和最大传输距离也大大提高。另外R

    14、S-485实现了多点互联,最多可达256台驱动器和256台接收器,非常便于多器件的连接。在多机通信中,最重要的是保证通信有条不紊的进行,因此不仅需要完整的电路设计,还需要有严格的通信协议和完善的通信软件。本设计主要介绍89C52单片机构成的多机通信系统,重点介绍了其通信协议、电路连接和通信软件的设计方法。毕业设计的目的是了解基本电路设计的流程,丰富自己的知识和理论,巩固所学的知识,提高自己的动手能力和实验能力,从而具备一定的设计能力。本设计着重于对单片机串行通信理论知识的理解,了解多机通信的工作原理,以便以后在单片机领域的开发和研制打下基础,提高自己的设计能力,培养创新能力,丰富自己的知识理论

    15、,做到理论和实际结合。理解单片机的接口技术,中断技术,存储方式,时钟方式和控制方式,这样才能更好的利用单片机来做有效的设计。1 系统设计1.1 任务要求(1)研究RS485总线技术的运用,即如何进行通信协议的设计(2)如何进行数据的采集(3)环境温度的测量(4)实现温度数据采集传输和集中监控功能1.2 总体设计整个监测系统主要分为两个部分:见图1.1的主机系统框图(单片机STC89C52芯片)和图1.2的从机系统框图。主机部分根据系统的要求,主机部分需要完成的功能:是读取并显示从机采集回来的实时数据信息,并且对从机的外设进行控制。由键盘输入需要读取的从机的设备号,再输入相应的数值来控制对应的从

    16、机设备上的LED灯;液晶显示部分则负责显示由从机采集回来的实时信息,如温度、湿度等信息,并显示键盘输入的数据等等;报警部分:当采集到的温度大于设置温度值时,蜂鸣器工作。系统框图如下图1.1所示: 图1.1 主控机系统框图从机部分从机部分负责采集相关信息,等待主机的控制命令,并可以根据实际需要更改从机地址。主要的功能是:正常模块下循环采集模数转换器的数据,模数转换部分包括电压和亮度信息,并且处理监听状态,监听主机是否发送读取信息命令或者控制LED灯命令。以52单片机为核心,温度传感器采用DS18B20。根据这些要求,从机系统的框图如下图1.2所示: 图1.2 从机系统框图2 设计方案论证2.1

    17、主机部分方案论证根据系统的要求,主机需要完成的功能是读取从机采集回来信息,并且对从机的外设进行控制,设计了以下三个方案。方案(一): 以ARM处理器为控制核心,优点是系统外设丰富,可以节省大量的外围设备及布线面积。缺点是只能采用贴片的封装,但是由于工艺的原因,需要花费大量的时间在硬件电路的制作上。方案(二): 以PC机为控制核心,由上位机来统一控制信息的采集,优点是可以实现丰富的控制功能。缺点是PC体积都较大,且成本很高。方案(三): 以52系列单片机为控制核心,优点是系统结构简单,利于各部分功能,且成本较低、体积较小,方便安装等。缺点是功能较少,如需要增加其它功能需要加入相应的硬件,但根据本

    18、系统的要求,以52单片机为核心,再加上DS18B20等信息转换模块就可以很好完成系统要求的功能综合以上三个主机方案,最终选择以52单片机为控制核心, DS18B20来完成系统对信息的采集。2.2 从机部分方案论证从机部分需要完成各种信息的采集以及简单的对采集回来的信息进行处理,根据这些要求,设计了以下几个方案。方案(一):用热敏电阻进行温度采集,能得到很好的精确度和速度。但热敏电阻的可靠性差、测量温度准确率低,而且必须经过专门的接口电路转换成数字信号后才能由单片机进行处理。且相对于数字温度传感器来说,成本较高。方案(二):用DS18B20温度传感器来采集温度,DS18B20作为一种数字化温度传

    19、感器,DS18B20测温时无需任何外部元件,可直接输出912位(含符号位)的被测温度值,测温范围为-55 +125;在-1O+85 范围内测量精度为0.5 ,输出测量分辨率可调,最高可达0.062 5 ;支持“单线总线”技术,仅需要占用一个通用I/O端口即可完成与单片机的通信;现场温度直接以“单线总线”的数字方式传输,大大提高了系统的抗干扰能力。综合以上两个从机方案,最终选择以DS18B20数字温度传感器进行温度的采集。2.3 通讯总线接口方案论证系统的要求是一台主机,多台从机,这就需要将主机和所有的从机全部都要连到一根总线,以满足主机读取从机的信息要求,至于通信方式是全双工还是半双工没关系,

    20、只要主机能读取从机采集回来的信息即可,根据以上要求,设计了以下两个方案。方案(一):采用RS-232标准,优点实现简单,模块设计相当成熟,且成本也较低。非常适合点对点的通讯。缺点是:接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL 电平不兼容故需使用电平转换电路方能与TTL 电路连接;传输速率较低,在异步传输时,波特率为20Kbps。现在由于采用新的UART 芯片16C550 等,波特率达到115.2Kbps;接口使用一根信号线和一根信号返回线而构成共地的传输形式, 这种共地传输容易产生共模干扰,所以抗噪声干扰性弱;传输距离有限,最大传输距离标准值为50 米,实际上也只能用在15米左

    21、右。方案(二):采用RS-485标准,它采用平衡发送和差分接收方式实现通信:发送端将串行口的TTL电平信号转换成差分信号A、B两路输出,经过线缆传输之后在接收端将差分信号还原成TTL电平信号。由于传输线通常使用双绞线,又是差分传输,所以又极强的抗共模干扰的能力,总线收发器灵敏度很高,可以检测到低至200mV电压,最高的通讯高达2.5Mbps。故传输信号在千米之外都是可以恢复,而且RS-485允许最大的从机数量达到128台,具强大的扩展能力。综合以上两个方案,本系统最终选择RS-485为系统的通信总线,这符合本系统的点对多点的非平衡通讯模式和远距离传输模式。3 系统硬件电路设计本系统采用单片机为

    22、核心设计电路,使用软硬件结合的方式。控制系统主要由两部分组成:主控机部分和从机部分。其中主控机由供电电路、单片机应用电路、键盘控制电路、液晶显示电路、输入接口电路和报警电路等组成。从机由供电电路、单片机应用电路、输入接口电路、温度采集电路、键盘控制电路和LED显示电路组成。3.1主控机电路设计该主控机主要是使用单片机进行控制,通过液晶显示屏对相关的数据进行显示。该部分电路用到的元器件有:单片机(STC89C52)、液晶显示屏(12864)、晶振(22.1184MHz)、4与门芯片(74LS08)、MAX485、蜂鸣器、三极管(9014)、电阻和电容等。主控机的具体电路原理图见附录A。3.1.1

    23、单片机STC89C52外围电路设计在该系统中,单片机是整个系统的核心,整个系统运行的控制由单片机进行处理。它即协调整机工作,又是数据处理器,是软硬件系统连接的桥梁。将编译好的程序通过下载接口烧录到单片机后,而单片机连接外部各个器件,统一处理接收到的数据和传送指令到各个器件以便执行相关程序。按键的信号控制单片机的相应端口,再由各判断语句选择执行的功能。单片机系统把全部的端口资源提供出来。本系统中对其外围电路的接口的设计如图3.1所示。P0口用来驱动液晶显示,P0口的I/O端口内部没有上拉电阻,所以需要通过10K的排阻后,再控制时钟芯片。其中10K的电阻用于做上拉电阻,增强单片机的驱动能力,这个电

    24、阻值可以变化,但是不能太小,太小的话单片机承受不了,太大会减弱驱动能力;P1口用来连接外部按键,主要是构成一个4X4的矩阵键盘,其中P1.0-P1.3是行控制,P1.4-P1.7是列控制。 P2.0作为报警部分的数据输出口,P2.4-P2.7连接到液晶显示屏,用来驱动显示屏等功能。P3.0-P3.1为串口发送与接收端口,P3.2为地址输入驱动的控制端口,P3.3为接收器输出使能端口,P3.4为驱动器输出使能端口。图3.1 单片机STC95C52外围电路设计原理图STC89C52是一种带8K字节闪烁可编程可擦除只读存储器(FPEROM-Flash Programmable and Erasabl

    25、e Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。STC89C52具体介绍如下: 主电源引脚(2根)VCC(Pin40):电源输入,接5V电源GND(Pin20):接地线图3.2 STC89C52引脚图外接晶振引脚(2根) XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允

    26、许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。PO口(Pin39Pin32):8位双向I/O口线,名称为P0.0P0.7P1口(Pin1Pin8):8位准双向I/O口线,名称为P1.0P1.7 P2口(Pin21Pin28):8位准双向I/O口线,名称为P2.0P2.7 P3口(Pin10Pin17):8位准双向I/O口线,

    27、名称为P3.0P3.7STC89C52主要功能如表3.1所示。表3.1 STC89C52主要功能主要功能特性兼容MCS51指令系统8K可反复擦写Flash ROM32个双向I/O口256x8bit内部RAM3个16位可编程定时/计数器中断时钟频率0-24MHz2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能3.1.2液晶显示电路设计在该系统中,显示部分的作用是:不需要外界的仪器就能让人一眼看出当时的具体情况,显示数据可以通过数码管显示,也可以通过LCD显示。本系统采用的是HJ12864M-1液晶屏来显示所采集到的实

    28、时温度信息和按键处理时的具体操作的显示。其接口电路如图3.3所示。在本系统中液晶每屏可以显示4行8列共32个16x16点阵的汉字,每个显示RAM可显示1个中文字符或2个16x8点阵全高ASCII码字符,即每一屏最多可实现32个中文字符或64个ASCII码字符的显示。 图3.3 液晶显示电路液晶显示器(LCD)是一种低功耗的显示器件,在计算机、万用表、袖珍式仪表和手机等低功耗应用系统中广泛应用。市场上销售的LCD,其背面含有驱动和控制电路,有专门的IC来完成LCD的动作控制,在设计LCD的接口电路中,只要送入适当的命令码和要显示的数据,LCD便会将其字符显示出来,在过程控制上非常方便。LCD可以

    29、分为两种类型,一种是文字模式,一种为绘图模式。带中文字库的12864是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为12864, 内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示84行1616点阵的汉字,也可完成图形显示。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。本系统使用的12864M-1是一种图形点阵液

    30、晶显示器,它主要由行驱动器/列驱动器及128X64 全点阵液晶显示器组成,可完成图形显示,也可以显示8X4 个(16X16 点阵汉字,与外部CPU 接口可采用串行或并行方式控制。12864的主要技术参数和性能:1.电源:VDD:+5V2.显示内容:128(列)X64(行)点。3.全屏幕点阵。4.2M ROM 总共提供8192个汉字(16X16 点阵)。5.16K ROM (CGROM)总共提供128 个字符(16X8 点阵)6.工作温度:-20+70,存储温度:-30+80。RS,R/W 的配合选择决定控制界面的4 种模式如下表3.2:表3.2 RS,R/W 的配合控制界面的模式RSR/W功能

    31、说明LLMPU写指令到指令暂存器(IR)LH读出忙标志(BF)及地址计数器(AC)的状态HLMPU写入数据到数据暂存器(DR)HHMPU从数据暂存器(DR)中读出数据HHMPU从数据暂存器(DR)中读出数据模块的外部接口:外部接口信号如下表3.3所示,(串行接口PCB 上的PS链接到S 端)。表3.3 外部接口信号(串行接口PCB 上的PS链接到S 端)管脚号管脚名称LEVER管脚功能描述1VSS0V电源地2VDD+5V电源正3V0-液晶显示器驱动d电压(可调)4/CSH/L片选信号5SIFH/L串行数据输入/出6CLKH/L串行同步时钟7BLAH/L背光源使能(高电平有效)8BLK3V背光源

    32、电压外部接口信号如下表3.4所示(并行接口JP/PCB 上的PS 链接到P 端):表3.4 外部接口信号(并行接口JP/PCB 上的PS 链接到P 端)管脚号管脚名称LEVER管脚功能描述1VSS0V电源地2VDD+5V电源正3VO-液晶显示器驱动电器(可调)4RSH/LRS=“H”,表示DB7DB0 为显示数据RS=“L”,表示DB7DB0 为控制指令。5R/WH/LR/W=“H”,E=“H”,数据被督导DB7DB0R/W=“l”,E=“HL”,DB7DB0 的数据被写到IR或DR6EH/L使能信号7DB0H/L数据线8DB1H/L数据线9DB2H/L数据线10DB3H/L数据线11DB4H

    33、/L数据线12DB5H/L数据线13DB6H/L数据线14DB7H/L数据线15PSB串并口选择16NC空脚17RST复位脚(低电平有效)18VOUT倍压输出脚19LEDA背光电源正极(5V)20LEDK背光电源负极(0V)3.1.3报警电路设计 该部分主要是对所采集到的温度指标来做出相应的回应,主要是通过中断来完成。该电路直接与单片机的P2.0口相连,由单片机的P2.0口进行直接控制,用一个蜂鸣器进行报警的状态的反应。设置为高电平时驱动蜂鸣器,即当P2.0为高电平时,三极管(9013)工作,此时三极管的集电极为低电平,这样就驱动了蜂鸣器。如果P2.0为低电平,此时三极管不工作,三极管的集电极

    34、为高电平,蜂鸣器不工作。具体的电路原理图如下图3.4所示:图3.4 报警电路原理图3.1.4键盘控制电路设计键盘是一组按键的集合,它是最常用的单片机输入设备。通过键盘输入数据或命令,实现简单的人机对话。键盘上闭合键的识别是由专用硬件实现的,称为编码键盘,靠软件实现的称为非编码键盘。键盘可以分为两类:独立连接式和矩阵式。矩阵式键盘,也即通常所说的行列式键盘,由行线和列线组成,按键位于行、列的交叉点上,行、列分别连接到按键开关的两端,行线通过上拉电阻接到高电平。无按键动作时,行线处于高电平状态;有按键按下时,交点的行线和列线接通,行线电平状态将由与此行线相连的列线电平决定。如果列线电平低,则行线电

    35、平为低;如果列线电平高,则行线电平也为高。这一点是识别矩阵键盘按键是否被按下的关键所在。由于矩阵键盘中行、列线是多键共用的,各按键均影响该键所在行和列的电平,所以必须将行列线信号配合起来作适当地处理,才能确定闭合键所在的位置。矩阵式键盘节省了很多I/O口,适用于按键数量较多的场所。本系统采用的是4x4矩阵式键盘,具体原理图如图3.5所示。4x4键盘总共为16个按键。如果采用每个按键接一根控制线,那么要16根控制线,这样的设计就浪费了单片机的很多I/O口资源,所以设计中选择使用矩阵式键盘。如图所示,在图中行线通过上拉电阻10K接到+5V,平时无按键动作时,行线处于高电平状态,而当有按键按下时,则

    36、对应的行线和列线短接,行线电平状态将由与此电平线相连接的列线的电平决定。图3.5 键盘控制电路原理图其工作原理:这里假设了L1-L4在没有受到驱动时为高电平,而H1-H4为低电平。在程序中每10ms定时查询一次H1-H4,当发现其中有一个变为高电平时就进一步扫描,看看哪个按键被按下。具体过程说明如下:假设查询到H1为高电平,H2、H3、H4为低电平。那么可能被按下的按键为S1、S5、S9、S13。这样就进一步探测,先把L1设为低电平,L2-L4为高电平,那么如果此时H1仍然为高电平,就是S1按键被按下。如果H1为低电平,那么就把L2设为低电平,L1、L3、L4为高电平,如果此时H1仍然为高电平

    37、,那么就是S5按键被按下了。以此类推,就可以确定S1-S16中有哪个按键被按下了。假设S1按键被按下,那么当把L1设置为高电平时,读H1为高电平。但有时由于受到干扰,或者按键的抖动,就可能判断为有的按键多次被按下。这就用到“去抖动”技术,即当把L1设置为低电平时,每隔50ms读一次H1,一共可以读3次,如果连续3次H1都为高电平则认为S1这个按键确实被按下了。3.2 从机电路设计 从机采用STC89C52作为基本控制器来负责现场监控并采取现场的温度信号。具体的从机电路原理图见附录B。3.2.1温度采集电路设计该系统使用的是线性的数字温度传感器DS18B20来检测环境温度。本系统中,不把DS18

    38、B20直接焊接到电路板上,而是采用外接的方式,在电路板上焊接一个三脚插针,然后通过三芯的排线将DS18B20芯片接到电路板上。这样可以方便在测试外部温度调节角度。由于DS1820采用单总线结构,因此外围电路非常简单,通过一上拉电阻R5即可与单片机相连。这里将DS1820的数据引脚DQ与单片机的T1口(即P3.5)相连,通过这条数据线接收温度测量值。电路板上连接DS18B20的三脚插针电路图如图3.6所示。 图3.6 DS18B20硬件连接图温度测量采用最新的单线数字温度传感器DS18B20,DS18B20是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,它能

    39、够直接读出被测温度并且可根据实际要求通过简单的编程实现9-12位的数字值读数方式。可以分别在93.75ms和750ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根接口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。因而,使用DS18B20可使系统结构更趋简单,可靠性更高。DS18B20的引脚图见图3.7。引脚说明如表3.5所示。(底视图)图3.7 DS18B20的引脚图表3.5 DS18B20详细引脚功能描述序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线接口引脚

    40、。当被用着在寄生电源下,也可以向器件提供电源。3VDD可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。DS18B20测温原理如图2-8所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶体振荡器随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55所对应的一个基数值。计数器1对低温度系数晶体振荡器产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度

    41、寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。 斜率累加器预置低温度系数晶振低温度系数晶振计数器10计数器2比较预置温度寄存器0加1停止图3.8 DS18B20工作原理由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输

    42、都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。DS18B20的复位时序如图3.9所示。图3.9 DS18B20的复位时序图DS18B20的读时序如图3.10所示。对于DS18B20的读时序分为读0时序和读1时序两个过程。对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。图3.10 DS18B20的读时序图DS18B20的写时序如图3.11所示。对于DS18B20的写时序仍然分为

    43、写0时序和写1时序两个过程。对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。图3.11 DS18B20的写时序图3.3 主从机RS485接口电路设计本系统使用的串行通信总线标准接口是RS-485串行接口,RS-485接口电路用到的发送起、接收器芯片是MAX485,发送器的A、B引脚和接收器的A、B引脚是对应连接的,在收发器中会出现这种情况,它只能用于半双工通信。具体的电路连接图见图3.12和图3.13所示

    44、 。图3.12 主机的RS-485接口电路图图3.13 从机的RS-485接口电路原理图 本系统采用的MAX485接口芯片是Maxim公司的一种RS485芯片。该芯片采用单一电源+5V工作,额定电流为300uA,采用半双工通讯方式。它完成将TTL电平转换为RS485电平的功能。其引脚结构图见图3.14所示。从图中可以看出,MAX485芯片的结构和引脚都非常简单,内部包含有一个驱动器和接收器,RO和DI端分别为接收器的输出和驱动器的输入端,与单片机连接时只需分别与单片机的RXD和TXD相连即可;/RE和DE端分别为接收和发送的使能端,当/RE为逻辑0时,器件处于接收状态;当DE为逻辑1时,器件处于发送状态,因为MAX485工作在半双工状态,所以只需用单片机的一个管脚控制这两个引脚即可;A端和B端分别为接收和发送的差分信号端,当A引脚的电平高于B时,代表发送的数据为1;当A引脚的电平低于B时,代表发送的数据为0。在与单片机连接时接线非常简单,只需要一个信号控制MAX485的接收和发送即可,同时将A和B端之间加匹配电阻,一般可选100的电阻。本系统选用的是120的电阻。


    注意事项

    本文(基于RS485总线的远程监测实时温度系统设计.doc)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922