资源描述
燕山大学本科毕业设计:分布式综合测试系统的开发
分布式综合测试系统的开发
摘要
分布式系统,是指使用多台计算机协同解决同一项计算任务. 这些处理机连接在一起以实现对不同资源的共享。利用分布式系统实现对温度,湿度的测试,使得需要精密产品的生产得到保障。以8051单片机为智能部件,完成监测温度湿度测量,本次测量采用Dallas公司出品的DS18B20作为温度测试器件,该器件可以直接将测的温度数据转化成数字量,本次测量利用湿敏传感器将相对湿度转化为模拟电信号,再经过A/D转换变作数字信号输入单片机中。采用的A/D转换芯片为8位8通道ADC0809,外围键盘输入及数据显示通过Inter公司生产的8279芯片控制。
关键词:分布式;综合测试;单片机;通讯
Development Of Distributed Synthetical System
Abstract
What the distributed system mean is the incorporation of the mutilp-computer.these computer are connected each other to share the information.the center of the system is the mcu which complet the function of testing the change of the temperature and the humidity of the circumstance.the tempeture is test by the ds18020 ,production of dallas company,which converts the tempeture to the digital information
The sensor of humidity is the capacity that is sensitive to the humidity.the sensor turn the humidity into the electic signal which is transited to the adc0809 by which the signal is transformed into the digital signal. The keyboard and display is controlled by the ship of 8279,producted by the inter.
⒈绪论
分布式系统,是指使用多台计算机协同解决同一项计算任务,是一个对用户看起来像普通系统,然而运行在一系列自治处理单元(PE)上的系统,每个处理单元有各自的物理内存空间并且消息的传输延迟不能忽略不计。在这些处理单元间有紧密的合作。分布式系统可以用硬件、控制、数据这三个维度加以检验。即:分布式系统=分布式硬件+分布式控制+分布式数据。分布式系统以一种很自然的方式开始存在,一个分布式计算系统(distributed computing system ),就好比现实生活中的一个公司。其中,某些职员负责日常的内部事务保证公司正常运作;某些职员负责对外联系工作,保持与其他公司的关系,在分布式系统中,需要定义出不同的职能对象。这些对象是可分布的。对象之间还需定义各种内容的信息/ 消息体。因此,定义了三种最基本的元素对象:功能对象(Function Object) ,负责内部功能操作;服务对象(Serve Object);具备通讯能力;任务对象(Task Object) ,在功能及服务对象间传递信息。未来对计算速度、系统可靠性和成本实效性的要求必将促使发展另外的计算机模型来取代传统的计算机当用户需要完成任何任务时,分布式计算提供对尽可能多的计算机能力和数据的透明访问,同时实现高性能与高可靠性的目标。
科技的与日俱进,各个行业,领域的各种高新技术应用,出现了许多新产品,新材料诸如医药,食品的高分子应用,化妆品,服装新材料的使用。对于这些产品的生产,使得一些物理参数的要求精度越来越高,对于这些参数的观测,控制,记录也越来越关系到产品的合格与否。由于此类参数所存在的环境相对恶劣,数据本身的简单性,不适宜计算机作为直接测试与记录设备。故多采用分布式系统实现。本次设计采用单片机,计算机为技术核心面向用户,面向产品,面向应用,软硬件可裁减,构成一个专门的计算装置,完成特定的功能设备,是一个大系统或者大设备的一部分,工作在一个与外界发生交互并受到时间的约束的环境中。在没有人干预的情况下实现控制,其中软件用以实现有关功能并使系统具有适应性和灵活性,硬件用以满足性能甚至安全需要,目的把一切变得更简单,更方便,更普遍,更适用。功能是完成单一或者一组紧密相关的功能,具有高性能和实时的要求,作为设备的一部分,运行不要人工干预,处理器的选择是嵌入系统设计的关键一步,包括硬件尺寸,电源,开发费用等然后将数据通过串行通讯口传输到计算机中去,进行监控。本次设计目的是利用单片机及相应的外围器件对温度,湿度进行测量与记录,并与PC机之间进行通讯。
系统的核心控制单片机采用Inter公司的MCS—51系列的8051,外接测量温度湿度的传感器,温度测量用Dallas公司出品的DS18B20作为温度测试器件,该器件可以直接将测,物理量—温度直接转化成数字量,电路简单,数据采集速度快,精度高,十分方便。鉴于设计费用有限,本次测量利用湿敏传感器将相对湿度转化为模拟电信号,再经过A/D转换变作数字信号输入单片机中。采用的A/D转换芯片为8位8通道ADC0809外围键盘输入及数据显示通过Inter公司生产的8279芯片控制,该芯片可以实现对键盘/显示器的自动扫描,并识别键盘上闭合键的键号,可以减轻CPU的负担,充分提高CPU的工作效率。
单片机(下位机)与计算机(上位机)之间的通信通过软件和硬件实现。硬件方面,使用电平转换使得单片机和计算机之间的通信接口实现相同的电气标准并得以连接。软件设计方面,使用汇编语言和Vc++进行程序设计,并且波特率可调。
以上是本次设计的意图说明及所用器件介绍,在设计中使用得都是常见元器件,设计中尽量实现最优的性能,最简的电路,最低的花费,理论结合实际,设计并实现一个可以应用的测试系统。
⒉分布式系统总体方案设计
2.1分布式系统介绍
分布式系统可以有不同的物理组成:一组通过通信网络互连的个人计算机,一系列不仅共享文件系统和数据库系统而且共享C P U周期的工作站固有的分布式应用。分布式系统以一种很自然的方式开始存在,分布式系统的并行性减少了处理瓶颈,全方位提高了性能,也就是说,分布式系统提供了更好的性能价格比。分布式系统能有效地支持不同地方的用户对信息和资源(硬件和软件)的共享。 灵活性和可扩展性。分布式系统可以增量扩展,并能方便地修改或扩展系统以适应变化的环境而无需中断其运行。并行的、并发的和分布式的计算包括多个P E间的集体协同动作“并行的”意味着从一个单一控制线程对数据集的锁步( l o c k s t e p)动作。在并行计算机级别上,单指令流多数据流并发的”意味着某些动作可以以任意次序执行。“分布式的”意味着计算的成本或性能取决于数据和控制的通信。
2.1.2总体方案设计
本次设计主要是实现对温度,湿度的测试,达到对周围环境监控的目的,使的需要精密生产的产品得到保障。以8051单片机为智能部件,完成监控。并显示该环境的温度与湿度。主要主要功能如下:
四位数字显示,温度检测功能,测试范围-55℃~+125℃,相对湿度检测:
与PC机之间进行通信,将测试环境中的变化及时传给监测端
总结构图如图2.1:
显示器
单
片
机
温度传感器
键盘
湿度传感器
PC机
图2.1总体结构图
系统整体结构见附录图1。由图可知,键盘通过8279与单片机进行数据交换,当键盘按下时8279自动扫描键盘,其扫描工作方式取决于单片机写入的键盘/显示器命令。按键抬起后,8279向单片机中发出中断申请,单片机执行中断,读取键盘输入的温度湿度安全范围。当传感器向单片机输入数据后,单片机将数据与安全范围比较,判断是否发出警报。然后单片机将数据传给8279,8279通过显示信号输出线输出,并通过74LS138译码选择需要写入的数码管。当上位机需要察看环境情况时,发出指令,单片机将目前的温度与湿度传输到上位机。
3硬件电路组成
3.1单片机介绍
单片机一词起源于“Single Chip Mcrocomputer”,简称SCM ,普遍认为单片机是在一块硅片上继承了中央处理器(CPU),存储器(RAM,ROM,EPROM),和各种输入,输出接口,(定时器,计数器,并行I/O接口,串行口,A/D转换器以及脉冲调制器PWM等),引脚如图3.1所示。这样一块芯片具有一台计算机的功能,因而被称为单片微型计算机。单片微型机计算机自1976年问世以来作为微型 机计算机的一个重要的分支,应用广泛,按用途分可分为 图3.1单片机引脚图
通用型和专用型。单片机体积小,重量轻,抗干扰能力强,环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。除了可用于一般的管理,计算之外,还适用于工业控制等领域,把计算机的应用推向了全社会,近年来,计算机技术的迅猛发展,使计算机在工业农业国防科研及日常生活的各个领域均显示了日益旺盛的生命力它已成为各国工业水平的主要标志之一,是发展新技术,改造老技术的强有力武器。
3.1.2 关于MCS-51单片机
MCS系列是 INTER公司80年代在 MCA-48系列上推出的高性能8位单片机,它与MCS-48系列相比在片内存储器容量,I/O口的功能的以及指令系统功能等方面,都大大的得到加强,MCS-51系列单片机特别适用于实时监控,智能仪表,调制解调器,程控交换技术,电子玩具,导弹控制,鱼雷制导控制,打印机,硬盘驱动器,分布式测控系统等方面。可靠的工作。
MCS—51单片机的片内结构图3.2所示,如果按功能划分,它由8个部件组成,即微处理器(CPU)数据存储器(RAM),程序存储器(RAM),程序存储器(ROM/EPROM),I/O口(P0口,P1口,P2口,P3口),串行口,定时器/计数器,中断系统及特殊功能寄存器(SFR)他们都是通过片内单一总线连接而成,
图3.2单片机内部结构图
其基本结构依然是采用CPU加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能控制器的集中控制方式。下面对功能部件作进一步的说明:
①端口P0~P3口
MCS-51单片机有4个双向的8位并行I/O口,每一个口都有一个8位的锁存器,复位后他们的状态全为“1”。
P0口是三态双向口,作为数据总线口,因为只有该口能直接用于对外部存储器的读/写操作P0口和可以用于输出外部存储器的低8位地址。由于是时分复用,先输出外部存储器的地8位地址,故应在外部加锁存器将此地址锁存,地址锁存信号用ALE.然后P0口才作为数据口使用
P1口是专门供用户使用的I/O口,是准双向口P2口也是准双向口,它是供系统扩展是输出高8位地址。如果没有系统扩展,例如使用8051/8071单片机没有扩展外部存储器时,P2口也可以作为用户的I/O口线使用。P3口是双功能口,也是准双向口。该口的每一位均可以独立定义为第一I/O口或者第二I/O口功能,作为第一功能使用时,口的结构与操作与P1口相同,表3.1列出了P3口的第二功能。
表3.1
P3口引脚
第二功能
P3.0
P3.0
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
串行输入口
串行输出口
外部中断0
外部中断1
定时器0外部中断
定时器1外部中断
外部数据存储器写选通
外部数据存储器读选通
执行改变锁存器数据的命令时,在该指令的最后一个时钟里将数据写入锁存器。然而输出缓存器仅仅在每个状态周期的相位1期间采样口锁存器,因而锁存器中的新数据在下一个状态周期出现之前不会出现在输出线上的
P1,P2,P口的输出缓冲器可以驱动4个LSTTL电路,对于HMOS芯片单片机的I/O口,在正常情况下,可任意由TTL或者NMOS驱动,HMOS以及CHMOS型单片机的I/O口由集电极开路或者漏极开路的输出来驱动时,不必加上拉电阻
P0口输出缓冲器能驱动8个LSTTL电路,驱动MOS电路须外接上拉电阻,但P0口用作地址/数据总线时,可直接驱动MOS的输入而不必加上拉电阻
I/O口的使用是单片机使用的十分重要方面,对于它们的基本功能,扩展功能以及使用的时候注意的各个方面要格外注意,上拉电阻的使用是一个值得注意的问题,很多时候的问题所在,便是由于上拉电阻问题的解决
②定时器/计数器
MCS-51单片机有两个16位定时器/计数器T0和T1,分别由特殊功能寄存器TH0,TL0,TH1,TL1组成,由特殊功能寄存器TMOD控制和确定T0,T1的工作模式和工作方式。特殊功能寄存器TCON用于控制T0,T1的启动和停止计数。同时包含了T0,T1的状态,两这格式如下:
GATE位:门控位。GATE=1时,T0,T1是否计数收到外部引脚述入电平的控制, 引脚控制T0运行,引脚控制T1运行可用于测量在 或的正脉冲宽度;若GATE=0,定时器/计数器的运行不受外部输入引脚的控制。
C/位:计数器模式和定时模式的选择位,等于0时,为定时器模式内部计数器对晶振12分频后 的计数脉冲,该脉冲的周期等于机器周期。即对机器周期进行计数。等于1时设置为计数器模式,计数器对外部输入引脚T0或者T1的外部脉冲负跳变计数,允许最高计数器频率为晶振频率的1/24
M0,M1位:4中工作方式选择位,对应如表3.2
表3.2
M0
M1
工作方式
0
0
1
1
0
1
0
1
方式0,TLX中的低5位与THX中的8位构成13位计数器
方式1,TLX与THX构成16位计数器
方式2,常数自动装入8位计数器,当TLX溢出时,THX自动装入TLX
方式3,仅适用于T0,分成2个8位计数器T1停止计数
3.2可编程键盘显示器接口INTER8279说明
键盘与显示器是单片机必不可少的外接设备,它们的接法也是各种各样,在本次设计中采用的是INTER公司出品的8279芯片。通过对该芯片写入程序实现键盘的读入与显示的输出,十分方便,。节省了CPU对键盘/显示器操作时间,减轻CPU的负担引脚图如图。各个引脚功能如下:
引脚12-19:数据线D0—D7,双向,三总线,用于和单片机之间数据或命令的传送。 图3.3 8279引脚图
引脚3: CLK时钟输入线,为8279提供内部时钟输入端
引脚21,22:,A0片选及写入状态,数据有关引脚。为0,8279被选中,A0为0,单片机读写均为数据,A0为1时,单片机写入数据为命令字,读出数据为状态字
引脚32-35:SL0—SL3(扫描线)输出线,用来扫描键盘和显示器,它们可
以编程设定为编码(4选1)或者译码输出(16选1)
引脚4-7: RL4—RL7(回复线)输入线,它们是键盘的列信号输入线
引脚1-2: RL2,RL3(回复线)输入线,它们是键盘的列信号输入线
引脚38,39: RL1,RL0(回复线)输入线,它们是键盘的列信号输入线
引脚24-27:OUTA0—OUTA3,A组显示信号输出线
引脚28-31:OUTB0—OUTB3,B组显示信号输出线
显示输出这两组线都是显示数据输出线,与多位数字显示的扫描SL0—SL3同步,两组可以独立使用,也可以合并使用.
引脚4 : IRQ(中断请求)输出线高电平有效.在键盘工作方式中,当FIFO/传感器RAM存有数据时,IRQ为高电平。CPU每次从RAM中读出数据时,IRQ变为低电平.若RAM中的仍存有数据则IRQ再次恢复为高电平.在传感器工作方式中,每当检测到传感器状态变化时,IRQ就出现高电平
以上是8279主要管脚介绍,8279的个性功能执行以及状态控制则是通过CPU的控制字实现的,通过软件编程,实时性好,硬件电路相对简单,设计中差错容易检查与修改。
3.2.1 8279控制字
其控制字为8位,前三位D7,D6,D5为特征位,与引脚22(端),引脚21(A0端),通过片选端选中8279,通过对A0输入电平的控制,决定输入是状态命令还是读取数据。写入与读出命令皆为8位,格式如下:
D7
D6
D5
D4
D3
D2
D1
D0
①征位为000
此时输入命令为键盘/显示器方式设置命令字,D4,D3为显示方式设定,显示方式分为8个字符或16个字符的左边输入与右边输入.左边输入是较简单的输入方法,地址位0-15的现实缓冲RAM对应显示器0(左)-15(右),CPU依次从0地址或某一个地址开始将数据段写入显示缓冲RAM。当16个显示缓冲RAM写满时,第17次写再从0地址开始写。右边输入方式中显示器各位和显示缓冲RAM的地址并不是对应的,是移位输入方式,输入数据总是写入右边的现实缓冲RAM,数据写入后,原来的缓冲器的内容左移一个字节,原最左边显示缓冲的内容被移出
D2,D1,D0为键盘扫描方式,可分为编码,译码两种工作方式编码工作方式时,内部计数器做二进制计数,四位二进制计数器的状态从扫描线SL0-SL3输出,最多可以为键盘/显示器提供16根扫描线。
同时,键盘的工作方式分为双键锁定,N键依次读出,扫描传感器矩阵工作方式三种。双键锁定就是当键盘中有两个或者两个以上的键被按下的时候,任何一个键的编码信息局不能进入FIFO RAM中,直至仅剩下一键保持闭合,该键的编码信息才能进入FIFO,这种工作方式可以避免误操作信号进入计算机。
N键依次读出的工作方式,各个键的处理与其他键无关,一次可以按下任意个键,其它的键也可被识别出来并送入FIFO RAM中,选通输入的工作方式时,RL0-RL7作为选通输入口,CNTL/STB(引脚37)作为选通信号输入端。
扫描传感器矩阵的工作方式,是指片内的去抖动逻辑被禁止,传感器的开关状态直接输入FIFO RAM中,虽然这种方式不能提供去抖动的功能,但有以下优点:CPU知道传感器闭合多久,何时释放。
② 特征位为001
高三位为001时候是始终编码命令,D4-D0为分频系数,可在2-31次分频中选择,将进入8279的时钟频率经过N次分频后,得到8279内部需要的100KHz的时钟。
③特征位为010
此项命令为读FIFO RAM显示字命令,D2-D0为起始地址,D4为多次读时的地址自动增加标志。在键扫描方式中,均被忽略,直至输入键全部读出为止。
④特征位为011
此项命令为读显示缓冲RAM命令,在CPU读显示数据之前必须先输出读缓冲RAM的命令,D3-D0用来寻址显示缓冲RAM的一个缓冲单元,D4依然为地址自动增量标志
⑤特征位为100
该命令为写显示缓冲RAM命令字,当CPU执行写显示缓冲RAM时,首先用该命令字给出要写入的显示缓冲RAM地址,D3-D0可用来寻址显示缓冲RAM的16个存储单元。D4为地址自动增量标志
⑥特征位为110
该命令为清除命令,用来清除FIFO RAM和显示缓冲RAM。其中D4D3D2三位用来设定显示缓冲RAM的方式。定义如下:
表3.3
D4 D3 D2
清除显示RAM的方式
1 0 ×
1 1 0
1 1 1
0 × ×
将显示RAM 全部清0
将显示RAM清成20H
将显示RAM全部置1
不清除(D0=1);若D0=1,则D3,D2仍有效
D1位用来置定FIFO RAM,当D1=1时,执行清除命令后,FIFORAM被置空使中断输出线IRQ复位,同时传感器RAM读出地址也被置0。D0是全部清除特征位,当它为1时,对显示RAM的清除方式由D3和D2的编码确定
3.3传感器介绍
传感器技术是现代信息技术的主要内容之一,现代电子技术和计算机技术为信息转换与处理提供了十分完善的手段,使检测与控制技术发展到一个崭新阶段。传感器与人的感官一一对应,它能够把自然界的各种物理量和化学量精确的变换为电信号,再经过电子电路或者计算机处理,从而对这些量进行监测和控制。在传感器技术中都需要使用模拟技术,其中有许多问题仍需要解决。按构成来分,可分为基本型传感器,组合型传感器,应用型传感器。基本型传感器是一种最基本的单个变换装置,组合型传感器是由不同单个变换装置组合而成的传感器。按机理分可分为结构型传感器,物性型传感器,生物型传感器。物性型传感器是一种利用物质具有的物理或者化学特性的传感器,它对压力,温度,电场,磁场等有一定的依赖关系这种传感器易小型化,也被称为固态传感器。
传感器的静态特性的基本要求是输入为0时,输出也应为0,考虑的各
种特性如下:
⒈灵敏度与S/N(信噪比):选用传感器首先考虑的是灵敏度,如果达不到测量时所必需的灵敏度,这种传感器不能采用,但灵敏度高的传感器不一定是最好的传感器,这是因为它易受到噪声的影响.
⒉ 线性:输入和输出之间为线性比例关系,称为线性关系,然而理想线性关
系的传感器极少,实际上大都是非线性关系,采用电子电路也不能使其完全线性化,此外,还有补偿电路,放大器,运算电路等引起的非线性
⒊ 时滞:当输入量增加到X1,如果输出量为Y1,再继续增加输入量让后减少到X1,这时输出量为Y2,实际上输出量Y1,Y2不等,有一定的差值,这一差值即为时滞(回差),这样输入与输出不是一一对应关系因此要尽量选用时滞小的传感器
⒋ 性:周围环境对传感器的影响最大的是温度,目前,很多传感器材料采用灵敏度高而且信号容易处理的半导体,然而,半导体对温度最敏感,实际使用时要注意
⒌ 稳定性:理想特性的传感器时加相同大小的输入量时,输出量总是大小相同的。然而实际上传感器特性随着时间的变化而变化,因此,对于相同的大小输入量,其输出量是变化的.连续工作时,即使输入量恒定,传感器输出量也会朝着一个方向偏移,这种现象称为”温漂”。需要注意的是除了传感器本身的温漂外,还有安装传感器元件的机构的温漂以及电子电路的温漂。
⒍ 精度:精度时评价系统的优良程度,精度分为准确度和精密度,所谓准确度,就是测量值对于真值的偏离程度,为修正这种偏差需要进行校正,完全校正是十分麻烦的使用时尽量较小误差。所谓精密度就是即使测量相同的对象,每次测量也会得到不同的测量值,即为离散误差,精密度高的传感器价格也高,使用时注意不要弄坏。
传感器千差万别,即使对于相同种类的测定量也可采用不同的工作原理的传感器,因此根据需要选择传感器。应用的场合也各式各样,用户在使用传感器之前应该个别注意说明书。精度较高的传感器需要定期校准,各种传感器都有一定的过载能力,但是使用时不要超过量程,传感器不使用时,应存放在温度为10-35摄氏度,相对湿度不大于85%RH无酸,无碱,无腐蚀性气体的室内。
传感器技术将是21世纪人们在高新技术方面争夺的一个制高点,各发达国家都将传感器技术视为现代高薪技术发展的关键。21世纪人类全面进入电子化的时代,作为现代信息技术、三大支柱之一的传感器技术必将有较大发展。由于宇航和航空技术的发展以及医疗器件的需要,传感器必须向小型化发展以便减小体积和重量,而小型化的基础是集成化,它分为传感器本身的集成化和传感器后续电路的集成化,现在已有各种集成传感器,集成化传感器从低级发展到高级,把各种调节和补偿电路与传感器集成在一起,降低了对环境的要求,提高了信噪比和精度。
3.3.1 测温模块
集成式数字温度传感器DS18B20的出现开辟了温度传感器技术的新领域,他利用单总线的特点可以方便的实现多点温度的测量,提高了系统的抗干扰性,使系统设计更灵活,方便。
① DS18B20简介
DS18B20是美国DALLAS公司生产的一线式数字温度计芯片,结构简单,体积小,电压适用范围宽,不需外接元件,采用一根I/O数据线即可供电又可传输数据,并可由用户设置温度报警界限等特点,它能够直接读取被测物体的温度值,用户还可以通过编程实现9~12位的温度读数,即具有可调的温度分辨率,各引脚排列及含义如图4.1所示:
图 4.1 DS18B20 T0-92封装
工作时被测温度值直接以单总线的数字方式传输,大大提高了系统的抗干扰能力,其内部采用在板温度测量专利技术,测量范围为-55℃~+125℃,在-10℃~+85℃时,精度为±0.5℃。每个DS18B20在出厂时都已具有唯一的64位序列号,因此一条总线上可以同时挂接多个DS18B20,而不会出现混乱现象,另外用户还可自设定非易失性温度报警上下限值TH和TL(掉电后依然保存),本设计只用到测温及单线数据传递方面的知识,所以报警方面就不详细讲解了。
温度转换时间:与设定的分辨率有关,当设定为9位时,最大转换时间为93.75ms;10位时,为187.5ms;11位时,为375ms,12位时,为750ms。
电源电压范围:在保证温度转换精度为±0.5℃时,电源电压为+3.0V~+5.5V。
DS18B20中的温度传感器完成对温度的测量,用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表示,其中S为符号位,S=1时表示温度为负,S=0时表示温度为正,其余低位以二进制补码形式表示,最低位为1时表示0.0625℃,温度数字对应关系如下表4.1:
表4.1
注:DS18B20输出的数字除以16为实际温度值,负数是补码形式给出。
②DS18B20的硬件连接。
DS18B20与单片机的接口极其简单,只需将DS18B20的信号线与单片机的一位双向端口相连即可。(本设计连P1.6口)
DS18B20的供电方式有两种:一种是寄生电源;另一种为外电源供电,图4.2为典型连接:
图4.2 (a) 外接电源工作方式
③工作时序及软件编程
1)工作原理及软件编程思想
DS18B20的工作遵循严格的单总线协议。主机首先发一复位脉冲,使信号线上所有的DS18B20芯片都被复位,接着发送ROM操作命令,使序列号编码匹配的DS18B20被激活,准备接收下面的内存访问命令。内存访问命令控制选中的DS18B20的工作状态,完成整个温度转换、读取等工作(单总线在ROM命令发送之前存储命令和控制命令不起作用)。在对DS18B20迸行操作的整个过程中,主要包括三个关键过程:主机搜索DS18B20序列号、启动在线DS18B20作温度转换、读取在线DS18B20温度值。其中主机启动温度转换并读取温度值的流程图如下图所示。总之因为多个器件挂在总线上,为了识别不同的器件,在程序设计中一般有四个步骤:初始化命令;传送ROM命令;传送RAM命令;数据交换命令。
工作中系统对DS 18B20的操作以ROM命令和存储器命令形式出现。当计算机检测到单总线上有器件存在,就可以发送此命令,其中ROM操作命令均为8位长,命令代码分别为表4.2所示:
表4.2
3.3.2湿度传感器
湿度是表示空气中水蒸气含量的物理量,常用绝对湿度和相对湿度来表示
所谓绝对湿度就是单位体积空气内所含的水蒸气的质量,也就是空气中水蒸气的密度,单位为g/m。所谓相对湿度就是在某一温度下,空气中所含水蒸气的实际密度与同一温度下饱和密度之比,即相对湿度RH=水蒸气实际密度/ 饱和密度(%),日常生活说的空气湿度,实际上就是指相对湿度。
适度传感器主要用于适度测量和湿度控制。适度测量方面有气象观测,一般的环境管理的适度测量,微波炉,干燥设备,医疗设备,汽车的除湿设备等,湿度控制方面有食品,医疗,农业,造纸业,纺织业,电子业等产业和楼房家庭的空调管理,印刷,食品加工等干燥度的控制,食品存储,微生物管理的湿度调节。
①湿敏传感器工作原理
湿敏传感器的核心部分是湿敏元件,湿敏元件一般由基体,电极和感湿层组成基体为不吸水的切耐高温的绝缘材料组成。电极常用不易氧化的导电材料,如金,银制成。在基体,电极加工好后,再涂敷感湿材料,然后在几百摄氏度的温度下烧结而形成感湿层。感湿层很薄,一般仅仅几微米至几十微米,它是湿敏元件的主体,可以随空气的湿度变化而改变电介常数。
②湿敏传感器的参数
1)相对湿度
指在某一温度下,空气中所含的水蒸气的实际密度与同一温度下饱和密度之比。
2)20摄氏度的标称阻值:指在一定相对湿度下,环境为20摄氏度时的标称电阻
3)测湿范围:指湿度传感器允许的湿度测量范围。一般来说,使用时不得超过次规定值。
4)响应时间:一般是指在20C时,把待测元件从30%RH环境移至90%RH环境中,其阻值改变全程的63%时所需要的时间,单位为秒,要求尽可能短。
5)温度系数。指当环境湿度恒定时,温度每变化1C所引起的湿度传感器指示湿度的变化量,即湿度传感器的温度系数,单位为%RH/C
6)灵敏度指湿敏传感器检测湿度最小变化能力
7)时滞,即时滞效应,指湿敏传感器工作时,不同次数在同意湿度下电参量所表现出的不一致现象,通常表现为滞后。
③湿敏传感器使用的有关技术
1)提供湿敏传感器的波形
通常湿敏传感器使用时提供交流信号,由于交流信号直接影响传感器的特性,寿命和可靠性,因此最理想的是选用失真非常小的正弦波。所选择的波行以应以0V为中心对称,而且是没有叠加直流偏置的信号,加到湿敏传感器上的电压应该按照厂家提供的数据和要求来确定,通常最大供电电压普遍要求确保有效值1~2V左右。供电电压过低,则湿敏传感器成为高阻抗,低湿度端受到噪声的影响,相反如果供电电压过高,则将影响可靠性
2)湿度补偿
湿敏传感器与温度有关因此,要进行温度补偿,方法之一是采取对数压缩电路,在这种电路中,硅二级管的正相电压具有-2mV/C的温度系数。利用这一点来补偿湿敏传感器对温度的依存性完全可能,
3)湿敏传感器的使用
湿敏传感器要安装在流动空气的环境中,这样响应速度快,延长传感器的引线时候要注意:延长线使用屏蔽线,最长距离不要超过1米,裸露部分的引线要尽量短。在10%~20%RH的低湿度区,由于受到影响较大,必须对测量值和精度进行确认,在进行温度补偿的时候,温度补偿元件的引线也要尽量延长尽可能靠近湿敏传感器安装。
3.4.ADC0809
在实际测量和控制系统中常会遇到时间,数值都连续变化的物理量,这种连续变化的物理量称之为模拟量。显然,模拟量要输入到计算机首先要经过模拟量到数字量的转换,计算机才能接收,实现模/数转换的设备称A/D转换器或者ADC。
A/D转换的过程主要包括采样量化编码,采样是使模拟信号在时间上离散化;量化就是用一个基本的计量单位(量化电平)使模拟量变为一个整数的数字量,其方法是用计量单位与模拟量比较,把模拟量变为计量单位的整数倍,略去小于计量单位的模拟量的过程,这样得到整数量即为数字量。显然,计量单位越小,量化的误差也越小。编码是把已经量化的模拟量用二进制数码,BCD码或者其他数码表示,总之,量化与编码就是把采样后得到的离散幅值经过舍入的方法变换为与输入量成比例的二进制数。
3.4.1性能参数
①转换时间和转换频率
A/D转换器完成一次模拟量变换为数字量所需的时间即为A/D转换时间。通常,转换频率是转换时间得倒数。它反映了采集系统的实时性能,因而是一个很重要的技术指标对于A/D转换器来说,必须在采样周期T内完成转换工作而A/D转换工作都要有一定的采样转换时间,这就限制了它的最高采样转换频率。
②量化误差与分辨率
A/D转换器的分辨率是指转换器对输入电压微小变化相应能力的度量。习惯上以输出的二进制位数或者BCD码位数表示。例如A/D转换器AD574A的分辨率为12,即该转换器的输出数据可以用2个二进制数进行量化。如果用百分数来表示分辨率时,分辨率为1/2×100%=0.0244%
③转换精度
A/D转换精度,反映了一个实际A/D转换器在量化值上与一个理想A/D转换器进行模/数转换的差值,可表示成绝对误差和相对误差。必须指出,A/D转换器的精度所对应的误差指标是不包括量化误差的。
3.4.3ADC0809转换原理及性能
以上是A/D转换的主要技术指标,按照工作原理还可分为双积分型,逐次逼近式,计数器式,并行式等几种。本次设计中使用的是逐次逼近式ADC0809转换芯片。逐次逼近式转换原理即 “逐位比较”,过程类似用砝码在天平上称东西。当模拟量VX送入比较器后,启动信号通过控制逻辑电路启动A/D开始转换。首先,置N位寄存器最高位为1,其余位清0,N位寄存器的内容经D/A转换后得到整个量程一半的模拟电压VN,与输入电压VX比较。若VX>VN,则保留最高位为1;若VX<VN,则最高位清0。然后控制逻辑使下一位置“1” ,与上次的结果一起经过D/A转换后与VX比较。重复上述过程,直到判别出D0位取“1”还是取“0”为止,此时控制逻辑电路发出转换结束信号DONE,这样经过N次比较后,N位寄存器的内容就是转换后的数字量数据,经输入缓冲器读出,整个转换过程就是这样一个逐次比较逼近的过程。分辨率是8位,转换时间取决于芯片的时钟频率,转换一次时间为64个时钟周期,当CLK=500KHZ时,转换时间T=128uS,
A/D0809是一种8路模拟输入8位输出的器件,结构如右图。IN0—IN7是8路模拟输入端,D0—D7是A/D转换后的数据输出端,为三态可控输出,可直接与计算机数据现相连。A,B,C是模拟通道抵制选择端,A为低位,C为高位。VR(+),VR(-)基准参考电压端,决定了输入模拟量的量程范围。ADC0809的模拟输入范围为0~5.25V,基准电压VREF根据VCC确定典型值为VREF(+)=VCC, VREF(-)=0, VREF(+)不允许比VCC正, 图5.1A/D0809引脚
VREF(-)不允许比地电平负。A/D转换器从输入模拟量VIN转换为数字输出量N的公式为:N=(VIN-VREF(-))/(VREF(+)-VREF(-))×2。CLK时钟信号输入端,决定A/D转换的速度,输入范围为50KHZ~800KHZ,SC为启动转换信号 正脉冲有效,通常与系统信号相连,控制启动A/D转换。EOC为转换结束信号,高电平有效。表示一次A/D转换已经完成。可以作为中断触发信号。OE是输出允许信号,高电平有效。可以和系统读选通信号相连。当计算机发出次信号时候,ADC0809三态门被打开,可以读到正确的转化结果。
ADC0809是经典的数模转换器件,现代技术中许多情况下我们需要把模拟量转换为数字量进行处理,AD0809的使用让我们掌握了最基础的转换技术,值得以后学习工作中重点使用。
3.5串口通信
3.5.1串口通信简介
串行通信是CPU和外界交换信息的一种基本通信方式。计算机和外界的信息交换称为通信。基本通信方式有2种:并行通信和串行通信。在并行通信中,一个并行数据占多少位2进制就要多少根传输线。这种方式的特点是同心速度快,但传输线多,价格较贵,社和近距离传输,而串行通信仅需要一
展开阅读全文