本科毕业设计--基于单片机的孵化室的远程无线控制.doc_第1页
本科毕业设计--基于单片机的孵化室的远程无线控制.doc_第2页
本科毕业设计--基于单片机的孵化室的远程无线控制.doc_第3页
本科毕业设计--基于单片机的孵化室的远程无线控制.doc_第4页
本科毕业设计--基于单片机的孵化室的远程无线控制.doc_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于单片机的孵化室的远程无线控制 指导教师: 学院: 信息技术学院专业: 电子信息科学与技术专业姓名: 学号: 孵化室的远程控制摘要:本文介绍了环境温湿度实时测控装置的研制思路和方法。该装置可实现对孵化室内温度、湿度的实时测量与控制,并附有通信接口以及可控制多种设备的多点时间控制电路,该系统也可广泛用于其它场合。环境条件中的温湿度指标是许多工作场合的重要参数,不论是仓库管理、图书保存还是工农牧业生产与计量检定,都需要符合操作规定的温湿度环境条件。而温湿度也是最不易保障的指标,针对这一情况,研制可靠且实用的温湿度控制器显得非常重要。本文介绍的温湿度实时控制装置可在和(相对湿度)的范围内任意设定温湿度值,其附加的通信接口可方便地实现与计算机的实时通信,而且便于功能的扩展,可保证温度、湿度满足设计指标。此外,该装置还可自动控制多个设备的多点时间控制电路实现对温湿度的自动调节控制,因而具有更广泛的应用前景。该装置可实现的功能如下:在和间可任意设定温湿度控制点;可以实时监测环境温湿度的变化情况,并记录、存储相关数据;对环境温湿度的控制可满足设计指标;具有多点定时设备控制电路,便于功能扩展;设有语音提示功能,可方便地实现仪器操作和工作管理提示;配有通信接口,可方便地与计算机进行通信;温湿度控制的精度分别为:温度();湿度(), abstract :this text introduced the environment degree of humidity solid hour measure to control to equip of develop the way of thinking and method.should equip can carry out to hatch from eggs indoor temperature,degree of humidity of solid hour measure with control, and the fish-eye correspondence connect and can control various equipmentses to order time control electric circuit more, that system can also used for other situations extensively.the degree of humidity index sign in the environment condition is many work situation of important parameter is the warehouse management,book to keep in spite of the work agriculture herding industry to still produce and calculate an examination, all needing to meet the degree of humidity environment condition of the operation provision.and degree of humidity is also the index sign that guarantees most not easily, aiming at this circumstance, developping the dependable and practical degree of humidity controller to seem to be count for much.this text introductive degree of humidity solid hour control equip and can set degree of humidity value arbitrarily in 0-50 s and 20% scopes of s (relative humidity) with 98% s, it additional of the correspondence connect and can carry out expediently and calculator of solid hour correspond by letter, and the easy to function expand, can promise temperature,degree of humidity satisfy design index sign.in addition, should equip cans also control several equipmentses to order time control electric circuit realization more automatically to regulate a control automatically to degree of humidity, as a result has more extensive applied foreground.should equip the function that can carry out as follows:at 0-50 s with 20% s 98% can set degree of humidity control point arbitrarily;can actually the hour monitor the variety circumstance of the environment degree of humidity, and record,saving related data;can satisfy the design index sign to the control of the environment degree of humidity;have to order much in fixed time the equipments control electric circuit, the easy to function expand;establish the speech hints function, can carry out the instrument operation and the work management to hint expediently;have the correspondence connects, can carry on correspondence with calculator expediently;degree of humidity the accuracy of the control respectively is:the temperature(0-50 s) 0.5 s;the degree of humidity(20% s with 98% s) 2% s with 3% s关键词 无线通信;传感器;单片机;pid算法;ptr8000; 前言 20世纪下半期开始的电子信息科学技术革命,是人类历史发展中的最伟大事件之一。以微电子技术、计算机技术、通信技术和网络技术为代表的信息技术革命,迅速地改变着人类的生产方式、思维方式和生活方式,加速了国民经济信息化进程,成为推动各个领域知识创新、技术创新、知识应用和知识传播的强有力手段。电子信息技术的发展,也明显地影响着农业机械化技术的创新过程,在农、林、牧、副、渔机械化过程中迅速吸收着电子信息技术革命的成果。从而对农牧业生产过程的工艺系统设计与过程自动化提出了新要求。在农牧业机械的试验、测试仪器开发,数据处理领域引进了先进的电子、计算机技术与信息处理技术。单片机技术成了发展农牧业的主要力量之一。目前,单片机已随着社会的发展渗透到各个领域之中, 在日常生活和生产中,我们经常要测量环境的温、湿度,传统的测量方式采用水银温度计和干湿球湿度计查算法,存在着误差大,操作使用不便等问题,采用工业级测量仪表价格昂贵。在国家相关政策向农业倾斜,重点解决三农问题,大力建设社会主义新农村的大环境下,农民收入有了很大提高,其中家禽养殖业成为农民增收的主要手段,随着养殖业的迅速发展,孵化室的数量也在不断增加,孵化室的温度,湿度,照度等参数的控制就成为一个难题,传统的孵化室采用悬挂温度计等,通过读取温度湿度等示值来知道孵化室内的温度和湿度,然后根据现有数据与额定数据进行比较,然后再进行人工操作调整,而照度更是没有办法掌握,只是凭经验看差不多就可以了。这些都浪费了大量人力物力,并且不够及时准确。对于孵化室数量很多的孵化企业来说是一个很大的难题,鉴于以上原因我设计了一个孵化室自动控制系统,本系统采用计算机控制各传感器工作,全部控制实现了自动化,具有反映及时,精度高等特点,并且节省了大量人力物力在孵化室的远程控制系统中,对孵化室孵化过程中的主要环境因子-温湿度进行里提供的是采用单片机及数字传感器开发出数字温度/湿度检测计,应用控制。1温度检测电路选用公司生产的一线式数字温度传感器作为温度检测器件,该器件只有个引脚(即电源、地线、数据线),且不需要外部元件,而是共用一条数据线进行通信,使用一根线通信时,的电源电压是以寄生方式供电的,因此,只需将其和端接地即可。dallas最新单线数字温度传感器ds18b20 作为新的“一线器件”体积更小、适用电压更宽、更经济 。dallas 半导体公司的数字化温度传感器ds1820是世界上第一片支持 “一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。ds18b20、 ds1822 “一线总线”数字化温度传感器 同ds1820一样,ds18b20也 支持“一线总线”接口,测量温度范围为 -55c+125c,在-10+85c范围内,精度为0.5c。ds1822的精度较差为 2c 。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3v5.5v的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。 ds18b20、 ds1822 的特性 ds18b20可以程序设定912位的分辨率,精度为0.5c。可选更小的封装方式,更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在eeprom中,掉电后依然保存。ds18b20的性能是新一代产品中最好的!性能价格比也非常出色! ds1822与 ds18b20软件兼容,是ds18b20的简化版本。省略了存储用户定义报警温度、分辨率参数的eeprom,精度降低为2c,适用于对性能要求不高,成本控制严格的应用,是经济型产品。 继“一线总线”的早期产品后,ds1820开辟了温度传感器技术的新概念。ds18b20和ds1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。 湿度检测电路的湿度信号的获取采用电容式湿敏传感器作为湿度检测器件。环境湿度与传感器电容成线性关系,所以可方便地将湿度转换成可以接受的电信号,本例中采用来实现转换。由积分电路、基准电路、频率转换电路及频率电压()转换电路等组成,积分电路及、用于产生一定频率的脉冲信号并从脚送至脚。调节可对该脉冲信号频率进行调整,从而使湿度传感器的线性和灵敏度处于较好状态;基准电路和频率转换电路可将湿度传感器的电容变化转换成频率变化,再经频率电压转换电路后从脚输出与频率成线性的电压,然后经等滤波后送入的端,再进行转换以将其转换成数字信号。本例中的湿敏传感器为型电容式湿敏传感器,湿度为时的电容值为,电容相对变化率为。当湿度为时,脚输出的相应信号频率为,精度为,电路输出的电压为。调整时,可先设定湿度为,然后调节,使脚输出电压即可。正文1. 系统概述及主要流程11 系统简介土壤水分监测与速测系统,由软件和硬件共同来实现的一个测量系统。它是通过传感器,与高精度的12位tlc2543 a/d转换器连接,经at89c51处理,从四位串行段式液晶显示器edm1190b中显示出来,同时将测量数据存储在2k的flash蕊片24c02中,以便将数据通过串行通信接口max-232传送到pc机,利用pc机上的接收软件把数据存储起来。只要在不断电的情况下测量,测量数据就会依次存入24c02中,断电后数据不会丢失,并能重复将数据传入pc机,每次测量后要及时将数据存入pc机中,以免第二次测量时将第一次数据覆盖。12 主要流程2. 系统相关部件简介21 单片机at89c51at89c51是一种带4k字节闪烁可编程可擦除只读存储器(fperomfalsh programmable and erasable read only memory)的低电压,高性能cmos8位微处理器。由于将多功能8位cpu和闪烁存储器组合在单个芯片中,atmel的at89c51是一种高效微控制器。211主要特性: 与mcs-51 兼容 4k字节可编程闪烁存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0hz-24hz 三级程序存储器锁定 128*8位内部ram 32可编程i/o线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路212 引脚说明:(引脚定义如图2-1-1)图2-1-1 at89c51引脚定义vcc:供电电压。gnd:接地。p0口:p0口为一个8位漏级开路双向i/o口。p0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在fiash编程时,p0 口作为原码输入口,当fiash进行校验时,p0输出原码,此时p0外部必须被拉高。p1口:p1口是一个内部提供上拉电阻的8位双向i/o口,p1口缓冲器能接收输出4ttl门电流。p1口管脚写入1后,被内部上拉为高,可用作输入,p1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在flash编程和校验时,p1口作为第八位地址接收。p2口:p2口为一个内部上拉电阻的8位双向i/o口,p2口缓冲器可接收,输出4个ttl门电流,当p2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,p2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。p2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,p2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,p2口输出其特殊功能寄存器的内容。p2口在flash编程和校验时接收高八位地址信号和控制信号。p3口:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。当p3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,p3口将输出电流(ill)这是由于上拉的缘故。p3口也可作为at89c51的一些特殊功能口,如下表所示:口管脚 备选功能p3.0 rxd(串行输入口)p3.1 txd(串行输出口)p3.2 /int0(外部中断0)p3.3 /int1(外部中断1)p3.4 t0(记时器0外部输入)p3.5 t1(记时器1外部输入)p3.6 /wr(外部数据存储器写选通)p3.7 /rd(外部数据存储器读选通)p3口同时为闪烁编程和编程校验接收一些控制信号。rst:复位输入。当振荡器复位器件时,要保持rst脚两个机器周期的高电平时ale/prog:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在flash编程期间,此引脚用于输入编程脉冲。在平时,ale端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ale脉冲。如想禁止ale的输出可在sfr8eh地址上置0。此时, ale只有在执行movx,movc指令是ale才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ale禁止,置位无效。/psen:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/psen有效。但在访问外部数据存储器时,这两次有效的/psen信号将不出现。/ea/vpp:当/ea保持低电平时,则在此期间外部程序存储器(0000h-ffffh),不管是否有内部程序存储器。注意加密方式1时,/ea将内部锁定为reset;当/ea端保持高电平时,此间内部程序存储器。在flash编程期间,此引脚也用于施加12v编程电源(vpp)。xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。xtal2:来自反向振荡器的输出。213 振荡器特性:xtal1和xtal2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,xtal2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。214 芯片擦除:整个perom阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ale管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,at89c51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,cpu停止工作。但ram,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存ram的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。ds18b20数字温度计的设计51功能要求数字温度计要求测温范围50110,精确度误差0.1以内,led数码管直接读显示。52 方案论证在日常生活及工农业生产中经常要用到温度的检测及控制,传统的测温元件有热电偶和热电阻。面热电偶和热电阻测出的一般都是模拟量的电压,再转换成对应的温度,需要比较多的外部硬件支持,硬件电路复杂,软件调试也复杂,制作成本高。本温度计采用了美国dallas半导体公司继ds1820之后推出的一种改进型智能温度传感器ds18b20作为检测元件,测温范围50125,最大分辨率可达到0。0625。ds18b20可以直接读出被测温度值,而且采用3线制与单片机相连,减少了部的硬件电路,具有低成本和易使用的特点。按照系统设计功能的要求,确定系统由3个模块组成:主控制器、测温电路及显示电路数字温度计总体电路结构框图如图5。1所示。显示电路at89c2051主控制器ds18b20扫描驱动图5。1 数字温度计电路结构框图5.3 系统硬件电路的设计温度计电路设计原理图5。2所示,控制器使用单片机at89c2051,温度传感器使用ds18b20,用4位共阳led数码管以动态扫描法实现温度显示。图5。2 数字温度计设计电路原理图311 主控制器单片机at89c2051具有低电压供电和小体积等特点,两个端口刚好满足电路系统的设计需要,很适合便携手持式产品的设计使用,系统可用二节电池供电。312 显示电路显示电路采用4位共阳led数码管,从p0口输出段码,列采用p2口控制74ls138来实现驱动和扫描。313 温度传感器工作原理ds18b20温度传感器是美国dallas半导体公司最新推出的一种改进型智能温度传感器,与传统的热电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单编程实现912位的数字值读数方式。ds18b20的性能特点如下:l 独特的单线接口仅需要一个端口引脚进行通信;l 多个ds18b20可以并联在惟一的三线上,实现多点组网功能;l 无须外部器件;l 可通过数据线供电,电压范围为3.05. 5;l 零待机功耗;l 温度以位或位数字量读出;l 用户可定义的非易失性温度报警设置;l 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;l 负电压特性,电源极性接反时,温度计不会因发热面烧毁,但不能正常工作。ds12b20采用脚pr封装或脚soic封装,其内部结构框图如图。所示。存储器与控制逻辑位和单线接口i/o高速缓存温度传感器高温触发器thc低温触发器tlvdd配置寄存器位crc发生器图。ds18b20内部结构图位rom的位结构如图。所示。开始位是产品类型的编号,接着是每个器件的惟一的序号,共有位,最后位是前面位的crc检验码,这也是多个ds18b20可以采用一线进行通信的原因。非易失性温度报警触发器和,可通过软件写入户报警上下限。位检验crc位序列号位工厂代码()msb lsb msb lsb msb lsb图。位rom结构图ds温度传感器的内部存储器还包括一个高速暂存ram和一个非易失性的可电擦除的epram。高速暂存ram的结构为字节的存储器,结构如图。所示。头个字节包含测得过且过温度信息,第个和第个字节是和的拷贝,是易失的,每次上电复位时被刷新。第个字节为配置寄存器,它的内容用于确定温度值的数字转换分辨率。ds工作时按此寄存器中的分辨率将温度转换为相应的数值。该字节各位的定义如图。所示。ds18b20出在时该位被设置为,用户不要支改动,和决定温度转换的精度位数,即用业设置分辨率,定义方法见表。字节字节字节字节字节字节字节字节字节温度lsb温度msbth用户字节th用户字节tl用户字节tl用户字节配置寄存器保留eerom保留保留crc图。高速暂存ram结构图tmr1r011111图5。6 配置寄存器表5。1 ds18b20分辨率的定义规定r1r0分辨率/位温度最大转换时间/ms00993.750110187.510113751112750由表5。1可见,ds18b温度转换的时间比较长,而且设定的分辨率越高,所需要的温度数据转换时间就越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存ram的第6、7、8字节保留未用,表现为全逻辑1。第9个字节读出前面所有8字节的crc码,可用来检验数据,从而保证通信数据的正确性。当ds18b20接收到温度转换命令后,开始启动转换。转换完成后的温度值就可以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0。0625/lsb形式表示。温度值格工如图5。7所示。当符号位s=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位s=1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制。表5。2是一部分温度值对应的二进制温度数据。ls字节22222222ms字节sssss222图5。7 温度数据值格式表5。2 ds18b20温度与测得值对应表温度二进制表示十六进制表示+1250000 0111 1101 000007d0h+85 0000 0101 0101 00000050h+25。0625 0000 0001 1001 00010191h+10。125 0000 0000 1010 001000a2h+0。5 0000 0000 0000 10000008h0 0000 0000 0000 00000000h-0。5 1111 1111 1111 1000fff8h-10。125 1111 1111 0101 1110ff5eh-25。0625 1111 1110 0110 1111fe6fh-55 1111 1100 1001 0000fc90hds18b20完成温度转换后,就把测得的温度值与ram中的th、tl字节内容作比较。若tth或ttl,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令作出响应。因此,可用多只ds18b20同时测量温度并进行报警搜索。在64位rom的最高有效字节中存储有循环冗余检验码(crc)主机根据rom的前56位来计算crc值,并和存入ds18b20的crc值作比较,以判断主机收到的rom数据是否正确。ds18b20的测温原理如图5。8所示。图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。图中还隐含着计数门,当计数门打开时,ds18b20就对低温系数振荡器产生的时钟脉冲进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将55所对应的一个基数分别置入减法计数器1、温度寄存器1和温度寄存器被预置在55所对应的一个基数值。减法计数器1对低温系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减去计数器1的预置值将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值就是所没是温度值。图5。8中的斜率累加器用天补偿和修正测温进程中的非线形性,其输出用于修正减法计数器的预置值。只要计数门仍未关闭就重复上述过程,直到温度寄存器值达到被测温度值。另外,由于ds18b20单线通信功能是分时完成的,它有严格的隙概念,因此读写时序很重要。系统对ds18b20的各种操作必须按协议进行。操作协议为:初始化ds18b20(发复位脉冲) 发rom功能命令 发存储器操作命令 处理数据。斜率累加器计数比较器预置低温度系数振荡器减法计数器1预置增加温度寄存器减到0停止减到0减法计数器2高温度系数振荡器图5。8 ds18b20测温原理图214 ds18b20与单片机的接口电路ds18b20可以采用两种方式供电,一种是采用电源供电方式,此时ds18b20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图5。9所示。单片机端口接单线总线,为保证在有效的ds18b20时钟周期内提供足够的电流,可用一个mosfet管来完成对总线的上位。vccds18b20ds18b20ds18b204.7k单片机vcc图5。9 ds18b20采用寄生电源的电路图ds18b20处于写存储操作和温度a/d转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。采用寄生电源供电方式时vdd 和gnd端均接地。由于单线制只有一根线。因此发送接口必须是三态的。54 系统程序的设计系统程序主要包括主程序、读出温度子程序、温度转换命令子程序、计算温度子程序、显示数据刷新子程序等等。3 . 2 . 1 主程序主程序的主要功能是负责温度的实时显示、读出并处理ds18b20的测量温度值,温度测量每1s进行一次。其和序流程图5。10。322 读出温度子程序读出温度子程序的主要功能是读出ram中的9字节,在读出时需进行crc校验,校验有错时不进行温度数据的改写。其程序流程图如图5。11所示。、nyynnyyn初始化调用显示子程序1s到?初次上电读出温度值温度计算处理显示数据刷新发温度转换开始命令发ds18b20复位命令发跳过rom命令发读取温度命令读取操作crc校验9字节完?crc校验正确?移入温度暂存器结束 图 5. 1 1 读出温度子程序流程图3. 2. 3 温度转换命令子程序 温度转换命令子程序主要是发温度转换开始命令,当采用12位分辨率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。温度转换子程序流程图如图5. 12所示。发dos18b20复位命令发跳过rom命令发温度转换开始命令结束 图5. 12 温度转换命令子程序流程图3. 2. 4 计算温度子程序 计算温度子程序将ram中读取值进行bcd码的转换运算,并进行温度值进行温度正负的判定,其程序流程图如图5。13所示。3.2.5 显示数据刷新子程序显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示为0时将符号显示位移入下一位。程序流程图如图5。14所示。开始温度数据移入显示寄存器温度零下?十位数0?nyny百位数0?置“+”标志温度值取补码置“”标志ny百位数显示数数据(不显示符号)计算小数位温度bcd值十位数符号百位数不显示计算整数位温度bcd值结束结束图5。13 计算温度子程序流程图 图5。14 显示数据刷新子程序流程图326 ds18b20的各个rom命令1read这个命令允许总线控制器读到ds18b20的位系列编码、惟一的序列号和位crc码。只有在总线上存在单只ds18b20的时候才能使用这个命令。如果总线上有一止一个从机,当所有从机试图同时传送信号时就会发生数据冲突(漏极开路连在一起形成相“与”的效果)。match rom55h这个是匹配命令,后跟位的序列,让总线控制器在多点总线上定位一只特定的ds18b20。只有和位序列完全匹配的ds18b20才能响应随后的存储器操作。所有和位序列不匹配的从机都将等待复位脉冲。这条命令在总线上有单个式多个器件时都可以使用。skiprom0cch这条命令允许总线控制器不用提供位编码就使用存储器操作命令,在单点总线情况下,可以节省时间。如果总线上不止一个从机,在skip命令之后跟着发一条读命令,由于多个从机同时传送信号。总线上就会发生数据冲突(漏极开路下拉效果相当于相“与”)。search rom0f0h当一个系统初次启动时,总线控制器可能性并不知道单线总线上有多少器件式它们的位编码。搜索命令允许总线控制器用排除法识别总线上的所有从机的位编码。alarm search0ech这条命令的流程和earch rom相同。然而,只有在最近一次测温后遇到符合报警条件的情况,ds18b20才会响应这条命令。报警条件定义为温度高于或低于。只要ds18b20不掉电,报警状态将一直保持,直到再一次测得的温度值达不到报警条件。write scratchpad4eh这个命令向ds18b20的暂存器和中写入数据。可以在任何时刻发出复位命令来中止写入。read scratchpad0beh这个命令读取暂存器的内容。读取将从第个字节开始,一直进行下去,直到第()字节读完。如果不想读完所有字节,控制器可以在任何时间发出复位命令来中止读取。copy scratchpad48h这个命令把暂存器的内容拷贝到ds18b20的存储器里,即把温度报警触发字节存入非易失性存储器里。如果总线控制器在这条命令之后跟着发出读时间隙,而ds18b20又忙于把暂存器拷贝到存储器,ds18b20就会输出一个,如果拷贝结束的话,ds18b20则输出。如果使用寄生电源,总线控制器必须在这条命令发出后立即启动强上拉并最少保持ms。convert t44h这条命令启动地次温度转换而无需其它数据。温度转换命令被执行,而后ds18b20保持等待状态。如果总线控制器在这条命令之后跟着发出时间隙,而ds18b20又忙于做时间转换的话,ds18b20将在总线上输出,若温度转换完成,则输出。如果使用寄生电源,总线控制器必须发出这条命令后立即启动强上拉,并保持ms以上时间。recall ee0b8h这条命令把报警触发器里的值拷贝回暂存器。这种拷贝操作在ds18b20上电时自动执行,这样器件一上电暂存器里马上就存在有效的数据了。若在这条命令发出之后发出读数据隙,器件会输出温度转换忙的标志:为忙,为完成。read power supply 0b4h若把这条命令发给ds18b20后发出读时间隙,器件返回它的电源模式;为寄生电源,为外部电源。32温度数据的计算处理方法从ds18b20读取出的二进制值必须先转换成十进制值,才能用于字符的显示。因为ds18b20的转换精度为位可选的,为了提高精度采用位。在采用位转换精度时,温度寄存器里的值是以.为步进的,即温度值为温度寄存器里的二进制值之间有很明显的关系,就是把二进制的高字节乘以.,就是实际的十进制温度值。通过观察表.可以发现一个十进制和二进制值之间有很明显的关系,就是把二进制的高字节的低半字节和低半字节的高半字节组成一个字节,这个字节的二进制值化为十进制后,就是温度值的百、十、个位值,而剩下的低字节的低半字节化成十进制后,就是温度值的小数部分。小数部分因为是半个字节,所以二进制范围是,转换成十进制小数值就是.的倍数(倍)。这样需要位的数码管来显示小数部分,实际上应用不必有这么高的精度,采用位数码管来显示小数,可以精确到.1。下表就是二进制和十进制的近似对应关系表。表。小数部分二进制和十进制的近似对应关系表小数部分二进制值十进制值调试及性能分析系统的调试以程序为主。硬件调试比较简单,着先检查电路的焊接是否正确,然后可用万用表测试或通电检测。软件调试可以先编写显示程序并进行硬件的正确性检验,然后分别进行主程序、读出温度子程序、温度转换命令子程序、计算温度子程序、显示数据刷新等子程序的编程及调试,由于ds18b20与单片机采用串行数据传送,因此,对ds18b20进行读写编程时必须严格地保证读写时序,否则将无法读取测量结果。本程序采用单片机汇编编写,用wave3. 2编译器编程调试。软件调试到能显示温度值,而且在有温度变化时(例如用手去接触)显示温度能改变就基本完成。 性能测试可用制作的温度计和已有的温度计来同时测量比较,由于ds18b20的精度很高,所以误差指标可以限制在0.1以内,另外55125的测温范围使得该温度计完全适合一般的应用场合,其低电压供电特性可做成用电池供电的手持电子温度计。ds18b20温度计还可以在高低温报警、远距离多点测温控制等方面进行应用开发,但在实际设计中应注意以下问题:l ds18b20工作时电流高达1.5ma,总线上挂接点数较多且同时进行转换时,要考虑增加总线驱动,可用单片机端口在温度转换时导通一个mosfet供电。l 连接ds18b20的总线电缆是有长度限制的,国此在用ds18b20进长距离测温系统设计时,要充分考虑总线分部电容和阻抗匹配等问题。l 在ds18b20测温程序设计中,向ds18b20发出温度转换命令后,程序总要等待ds18b20的返回信号,一旦某个ds18b20接触不好或数断线,当程序读该ds18b20时,将没有返回信号,程序进入死循环,这一点在进行ds18b20硬件连接和软件设计时要给予一定的重视。56 控制源程序清单以下是ds18b20温度计控制源程序清单:湿度传感器ih3605的设计湿度测量在工业生产的诸多领域得到广泛的应用,honeywell公司生产的集成湿度传感器ih3605采用集成电路技术,可在集成电路内部完成对信号的调整。 由于其具有精度高、线性好、互换性强等诸多优点,因此得到广泛的应用。1. ih3605结构及引脚介绍由于ih3605内部的两个热化聚合体层之间形成的平板电容器电容量的大小可随湿度的不同发生变化,从而可完成对湿度信号的采集。热化聚合体层同时具有防御污垢、灰尘、油及其它有害物质的功能。ih3605的结构及引脚定义分别如图1和2所示。ih3605采用sip封装形式。 2. ih3605的主要技术指标电源电压:45.8v;供电电流: 200a(5vdc);湿度范围:0100rh精度:2rh(0100rh、25、v=5vdc);互换性:5rh(060rh);8rh(90rh);线性度:0.5rh(典型);重复性:0.5rh;稳定度:1rh(50rh 、5年内);响应时间:15s(25及空气缓慢流动环境下);工作温度:4085;3. ih3605的电压输出特性ih3605的输出电压是供电电压、湿度及温度的函数。电源电压升高,输出电压将成比例升高,在实际应用中,通过以下两个步骤可计算出实际的相对湿度值。(1)首先根据下述计算公式,计算出25温度条件下相对湿度值rh0。 vout=vdc(0.0062rh00.16)其中vout为ih3605的电压输出值,vdc为ih3605的供电电压值,rh0为25时的相对湿度值。(2) 进行温度补偿,计算出当前温度下的实际相对湿度值rh。rh=rh0/(1.05460.00216t) 其中rh为实际的相对湿度值,t为当前的温度值,单位为ih3605的输出电压与相对湿度的关系曲线如图3所示。4. 典型应用由于ih3605的输出电压较高且线性较好,因此电路无需进行信号放大及信号调整。可以将ih3605的输出信号直接接到a/d转换器上,完成模拟量到数字量的转换。由于ih3605的输出信号范围为0.83.9v(25时),所以在选择a/d转换器时应选择具有设定最小值和最大值功能的a/d转换器(比如tlc1549)。ih3605的典型应用电路如图4所示,其核心器件采用at89c2051单片机,a/d转换器采用ti公司的tlc1549十位串行a/d转换器,r1、r2、r6设定a/d转换器的最大输入电压,r3、r4、r7设置a/d转换器的最小输入电压,温度探头d2采用dallas公司的全数字式测温集成电路ds1820,由p10口读入温度值,在单片机内将读到的湿度值进行温度校正,得到实际的相对湿度值。5. 应用注意事项带cp后缀的器件,出厂时给出了25环境下的标定值,用户在使用时可根据标定值,计算该传感器的最大输出电压和最小输出电压,并在电路中进行设置。该器件对esd较为敏感,为防止器件损坏,应采取相应的esd防护措施。 在使用时要防止强光直接照射传感器。tlc1549串行a/d转换器微机的串行口通常为9针的d型接口,其各个引脚的定义如表1所示。 异步串行通信接口一般只使用txd、rxd和gnd三个引脚,由于a/d转换器多数是并行的,需要的信号线较多,故这里我们采用其它的几根信号线。我们选用了tlc1549这个具有10位数据输出的串行a/d转换器,它与串行通信接口的连接电路见图1。 pid算法在工业生产过程控制中, 模拟量的p id (比例、积分、微分) 调节是常见的一种控制方式, 这是由于p id调节不需要求出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论