版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于单片机的仓库温度多点检测系统设计摘要 多点温度检测在各个仓库、药库、运输集装箱等场所广泛应用。本仓库多点检测中的主要控制核心模块用AT89C52,并有4个DS18B20温度传感器、LCD1602显示器、和一个风机组成系统。4个传感器放于仓库的4个不同的位置,显示器显示4个传感器的温度,并放在仓库的门外,用一个继电器控制风机的开启和关闭。通过试验测试表明,系统基本到达要求。关键词 温度检测 显示 温度调节 AT89C52单片机Design of warehouse temperature multi-point detection system based on single chip mi
2、crocomputerAbstract: Multi point temperature detection is widely used in various warehouses, pharmacy store, transport containers and other places. The main control core module of the warehouse multipoint detection is AT89C52, and has 4 DS18B20 temperature sensors, LCD1602 monitors and a fan system.
3、 The 4 sensors are placed in 4 different positions in the warehouse. The display displays the temperature of the 4 sensors and puts it outside the warehouse. A relay is used to control the opening and closing of the fan. The test results show that the system basically meets the requirements.Keywords
4、 temperature detection and display temperature adjustment AT89C52 microcontrollerKey words: temperature detection; display; temperature regulation; AT89C52 MCU目录第一章 引言11.1研究的背景及其意义11.2在国内外的发展状况2第二章系统硬件设计52.1 仓库介绍62.2系统硬件总体设计72.3 单片机82.4 LCD1602液晶显示92.5 DS18B20温度传感器102.6 电磁继电器112.7 硬件总体结构12第三章 系统软件设计
5、133.1 软件总体设计143.2 DS18B20子程序设计153.3 LCD1602显示子程序设计163.4 继电器控制子程序设计17第四章 系统调试17结论18致谢19参考文献20附录21第一章 引言1.1研究的背景及其意义温度是表示物体冷、热的物理量,也是工业生产过程中常用的一个重要参数。为保证产品质量、生产安全、提高生产效率、节约能源,从而促进国民经济的发展,温度的控制和测量起着至关重要的作用。温度传感器是各种测量传感器中最常用的测量方法1。伴随着国民经济的发展和科学技术的不断进步,越来越多的生产生活中需要用到不同的温度传感器。温度测量、保持温度和控制温度是温度测量传感器系统中最重要的
6、部分,测量温度是工业对象中最重要的被参数之一是测量温度。单片机设计出的全数字仪表温度控制,是普通仪表的加强产品。当单片机引入温度控制这一环节后,许多硬件电路的要求都变得简单了,但是仍然需要重点注意电路自身的问题,信号里的传感器部分是能被直接获得的更需要引起重点注意。有些时候传感器的提升依然是对于整台机器性能提高的最具影响的环节。传感器在现代社会的发展越来越受到微电子技术的影响,传感器的功能也朝着固态、小型化、集成化、多功能的方向发展。单片机的温度检测系统,对于温度的精准控制基本能够实现,让许多地方下人们对平衡温度的需求得以达成。人民的生活和生产产生了巨大的影响,例如,冬天我国北方的温度非常低,
7、但在温室大棚的引入后,人们可以在秋冬季节吃新鲜美味的水果。钢铁厂炼铁时温度的精确度需求更高,因此控制温度变得非常的实用。而在我们每天的生活中,空调的使用也能够让夏天或者冬天都能够温度适宜,控制温度确实是让我们感觉到生活质量变得越来越高2。总而言之,不管是工程建造,现代工业的设计还是平常生活时控制温度都有着关键的作用。1.2在国内外的发展状况单片机的诞生时在上个世纪的七八十年代,它的产生也是计算机发展历史上重大的跨时代的代表作,单片机的出现意味着通用计算机和嵌入式计算机被正式划分为两个不同的系统。单片机在仿真模拟,只能人工,处理数据等方面都获得了许多的应用。当下最流行的单片机以8位机使用最多,持
8、续的加强控制效果,缩小体积,提高环境开发,减少成本,以非凡的规模快速扩张且普遍替代了传统的电子系统3。大多数国家在采集温度方面取得了许多显著的成就。例如,前苏联的频率温度计的鉴别技术已达到0.0001摄氏度,并且温度范围在-30-230C内频率和温度有着线性特性;我们国家生产的温度传感器使用石英材质,分辨率到达了0.0001C,误差基本是在0.05C内。国内温度控控制器的改造经历了三个阶段:动圈式控温仪是最早的一个阶段,升温的快慢,加热使用的时间,显示精度差的设置均不可自动控制;数字温度计是第二阶段。控制精度低,响应不灵活,精度提高了很多;智能型控温仪是最近的一个阶段,精度控制较高,带有特定的
9、程序,误差也较少了。尽管有很多种采集温度的方法,但是在大多数情形下,测量个别条件特殊的温度要想获得准确的效果还是比较困难,各式各样的测量方法的特点和原理需要掌握精通,然后联合设计需求才能够达成。同时还应该探索不同的采集方式,加强技术的发展,来满足在不同场合时采集温度的需求。第二章系统硬件设计2.1仓库介绍目前许多仓库都需要用到温度监控来保证产品的质量,比如粮仓的温度适宜对粮食保存起着至关重要的决定,集装箱里的一些货物也需要合适的温度来保存,大棚种植对温度的需求也越来越高。本设计的主要功能就是对设置的四个温控点进行实时的温度监控,并且把采集的温度通过LCD1602显示出来。主要目的是将四点检测的
10、温度采集并通过LCD1602显示出当前四个点环境温度。分别设定四点的温度跳变阈值,当任一被测点得温度不在其设定的检测范围时,继电器跳变,同时风扇开始降温。从而调节温度的变化,对于需要温度报警以及更多点温度监控的仓库可以再改进满足更多的需求。2.2系统硬件总体设计在温度测量系统时经常使用集成型温度传感器,该传感器能够获得基本准确的精度,在该温度传感器的应用流程中,对于长距离的多点温度监测时采取了单总线传输的方法。因此控制程序上较为复杂。在温度测量时,最高效的方法是选用新型的温度传感器,具有很强的抗干扰效果。最新的温度传感器DS18B20采用第一总线,体积小,精度高,适用于宽电压等。在实践操作上获
11、得了较好的温度测量结果。根据本设计的目的和硬件的优点,给出了系统的总体设计框图,如图2-1所示:电源P1.0单片机继电器P3.4DS18B201P0口P3.5DS18B202LCD1602P2.4P3.6DS18B203P2.5P3.7P2.6DS18B204图2-1总体设计框图2.3单片机本设计选取美国ATMEL公司开发的单片机AT89C52,闪存位于微控制器内部,可反复编辑。可以实行2000次擦除编写操作,所以当开发时特别容易实行修改程序,极大的减少了开发的周期。AT89C52单片机是一种性能高端、电压很低的处理器。微控制器采用ATMEL高密度存储技术,MCS-51输出引脚兼容。一个芯片包
12、含闪存和多功能CPU,这是一个非常高效的微控制器4 。如图2-2:图2-2 52单片机管脚图2.4 LCD1602液晶显示2.4.1 LCD1602特点当温度读取模块被测试时,显示模块使用LCD1602液晶显示器,LCD引脚图如图2-3所示:图2-3 LCD管脚图LCD1602可以同时显示总共32个字符,每行16个字符分2行在屏幕内。字符生成存储器中的LCD模块提供160个不同的点阵字符,其中包含一些常用符号、英文字母、阿拉伯数字等,各个字符皆具有一个稳定的代码。能够按照特定的时序经过直接编程驱动5。它拥有控制简单,抗干扰能力稳定,节省电量等优点。当使用直接接地时,VEE引脚与液晶显示器的对比
13、度最高,而最低对比度则是直接连接到+5V电源时。2.4.2LCD1602引脚说明LCD1602选取的引脚接口是准确的14脚或者16脚接口,各说明如图2-4所示:VSS为第一个引脚的地电源;VDD为第二个引脚的+5V电源;CL是第三个引脚的液晶显示屏调整对比度端,对比度最低的时候是接正电源,产生“影子”的原因是对比度太高,对比度最高的时候是接地,可以选取10K的电位器让对比度调节。RS是第四个引脚的选择寄存器,当采用数据寄存器时是高电平,采用指令寄存器时时低电平;R/W是第五个引脚的读写信号器,通过读操作时选用高电平,通过写操作时选用低电平。输写指令以及显示地址需要RS和R/W一起作为低电平时才
14、可以,读忙信号需要RS是低电平和R/W是高电平才可以,写入数据则需要RS是高电平R/W是低电平时才可以。E端是第六个引脚用作使能端,液晶模块要想实施命令需要E端从高电平转换为低电平;D0D7是第七到第十四各引脚用作双向数据线;背光源的正极是第十五个引脚;背光源的负极是第十六个引脚。2.5 DS18B20温度传感器2.5.1 DS18B20的特点DS18B20的接口发送以及接收信息都是通过单线接口进行,因此只需要一根加了地线的连接线。其温度测量范围是-55125,当温度为-1085时准确度为5。此外,DS18B20可以直接吸收能量从单线通信线路中,消除了对外部电源的需要。当使用时无需其他外围组件
15、。唯一的64位序列号是每个DS18B20都具有的,并且支持组网多点功能,多个DS18B20可以与唯一的单线并联,多点温度测量参数可以选用为在通电状态下具有12位的默认精度。DS18B20开始后保持状态为低功率消耗等待;总线控制器发生44h命令时必须要进行测温以及AD转换。然后,生成的温度数据存储到暂存寄存器的温度寄存器需要以两个字节的方式,并且DS18B20继续保持等待。当DS18B20在读取温度转换指令后由外部电源线控制器启动时,转换中回到0,并且转换结束返回16。当进行转换温度时总线被强上拉拉高需要由寄生电源供电,不然不会产生返回值,电阻为5K时即可上拉电阻,在本设计中选取的是4.7KDS
16、18B20,DS18B20管脚图如图2-6所示:图2-6 DS18B20管脚图2.5.2 DS18B20计算原理温度实值与DS18B20中16位二进制数据的关系见下表: 表2-7 温度实值与16位二进制转换表从温度实值和二进制的数据可以求得二者的关系,temperature=0.0625*Data2.6电磁继电器2.6.1继电器的特点电磁继电器由弹簧,线圈,衔铁和线圈几个部分组成。要产生电磁效应,需要电磁继电器的线圈中的线圈两端附上一些电压,从而流过固定电流,衔铁能够克服弹力返回吸引核心通过吸引的电磁力,衔铁的固定常开触点被衔铁驱动。当电磁的吸合力由于线圈断电而失去,衔铁因此回到原来的位置,东
17、触点和常闭触点放开由于弹簧的弹力。因此能够到达导通电路,完成切割目标。常开和常闭的继电器触点可以通过不同状态分辨:常开触点是继电器线圈不带电的状态;当ON时,常开触点和常闭触点为断开状态。继电器有着两条电路,高压电路工作以及抵押电路控制7。电磁继电器的工作原理图如图2-7所示:风扇PNPL2KAP1.0单片机KA交流 220VR 1K+5VL1图2-7 继电器原理图2.6.2继电器电磁控制方法当单片机AT89C52的引脚P1.0输出信号是低电平,把正5V电源加入两端线圈的继电器,能够饱和导通三极管,因此吸合继电器,开关闭合,也就是继电器的常开触点闭合。此时排插由于产生电流开始工作,控制风扇进行
18、降温。当单片机AT89C52的引脚P1.0输出信号是低电平,继电器衔铁由于两端继电器的线圈没有产生点位差而释放,开关断开,也就是继电器的常开点释放。排插由于没有产生电流,不能控制风扇工作。2.7硬件总体结构 将上面所诉所有硬件连接,得到硬件接线图如下图2-8如下所示图2-8硬件接线图第3章 系统软件设计3.1软件总体设计 本设计是以AT89C52单片机为核心。采用模块化设计,由主程序,显示子程序,DS18B20读取子程序,温度调节子程序模块组成。当接通电源,主程序开始调用DS18B20子程序,并把测试结果用显示子程序在LCD1602上显示出来,当温度超出上限时,温度调节子程序启动,从而完成整个
19、程序过程。主程序流程图如图所示:开始初始化LCD1602初始化DS18B20读取4个点的温度判断4个点当前温度值显示4个点当前温度启动风扇关闭风扇继电器开关断开否任意一点超过上限温度40C是继电器开关闭合图3-1 主程序流程图3.2 DS18B20子程序设计3.2.1 DS18B20内部结构DS18B20的组成共有四个部分:温度传感器、没有挥发的报警触发器TH以及TL、配置存储器、六十四位ROM。DS18B20的地址序列码也就是ROM内的六十四位序列号在工厂发货前就已经被刻录好。为了让每个DS18B20都能识别而设置了ROM,因此能够实行一根总线连接任意数量的DS18B20的目标。高速的暂存存
20、储器是通过九个字节合成,在温度要进行转换后,转换获取温度的数值是用二字节补码的方法寄存与快高速暂存器的一字节以及零字节。当该数据被单片机的单线接口所读取,低字节在最开始,然后再到高字节,通过温度计算:S等于0的情况下可以直接把2进制变化为10进制;S等一一的情况下需要把补码转换成源码,然后计算10进制的数值。如计算转换图3-2所示: 图3-2 计算转换图零是温度的第八位数值,一是温度的高八位数值,二是最高温度值,三是最低温度值,四和五保留,六是计数剩下的值,七是每一度计算的数值,八是校验值。当DS18B20的温度传感器测算完温度的值,以十六位二进制的方法提供,然后表达,过程中的符号位是S。如图
21、3-3所示: 图3-3 数值转换表3.2.2DS18B20程序工作原理DS18B20单线通讯的技能为不同时段达成的,有着非常严格的间隙时间概念,一但发生序列号错乱,WIRE零件就不会回应主机,所以时序读写的过程非常主要。对于DS18B20的系统任何操作都必须按照协议实施。依照DS18B20所规范的协议,微控制器控制DS18B20要达到温度的转化需要经历三个流程9 :第一个流程是在每次读写时对DS18B20完成初始化复位。复位必须让主处理器把数据线下拉五百微秒,接着释放,DS18B20在接受信号以后需等待十六到六十微秒上下,最后发出六十到二百四十微妙的低脉冲,复位成功的情况需观察主处理器是否接受
22、到此信号。第二个流程是发送一条ROM指令,首先需读取ROM内的编码,也就是读六十四位地址,这个指令名称叫做读ROM,指令代码为33H。然后发出此命令,接着将六十四位编码发出,访问单总线内和DS18B20对应的编码做出回应,准备进行下一个步骤对DS18B220的读写,这个指令名称叫做ROM匹配,指令代码为55H。接着确定DS18B20在同一个总线上的个数以及辨别六十四位ROM地址,准备操作各种器件,这个指令名称叫做搜索ROM,指令代码为0F0H。然后直接对DS18B20发送转换温度指令,需要忽略六十四位ROM地址,适合单片机的工作,这个指令名称叫做跳过ROM,指令代码为0CCH。最后当警报搜索指
23、令执行后,温度未超过设定值下限或上限的片子都不进行回应,指令代码为0ECH。第三个流程是发送存储器指令。当发送温度转化指令后将开始DS18B20进行转化温度,转化时间最长不超过五百毫秒,一般情况为二百毫秒,得出的结果放进九字节RAM内,指令代码为44H。接着读暂存器指令发出后,读取RAM内九字节的内容,指令代码为0BEH。当发出写暂存器指令后,发送对RAM内部的第三和第四字节写入温度下限数据命令,在该命令之后,发送两字节的数据,指令代码为4EH。然后发送复制暂存器指令,把RAM内第三和第四字节的内容复制入EEPROM,指令代码为48H。接着重调EEPROM指令发出,将EEPROM的内容恢复到R
24、AM内的第三和第四字节,指令代码为0B8H。最后发送读供电方式指令,读寄生供电时DS18B20的模式发送“零”,读外接供电时DS18B20的模式发送“一”。当读取RAM中的温度数据时也相同,需要进行三个步骤的操作:第一个步骤是主机发送复位同时接受DS18B20的脉冲的操作。第二个步骤是主机发送跳过对ROM的命令操作。第三个步骤是主机发送对RAM读取的命令操作,接着主机按照顺序读取DS18B20发送的一共九个字节从第零到第八的数。3.2.3 DS18B20子程序设计方案该子程序是读取4个实时变化的环境温度,设计时采用以下方案:首先设置延时函数。接着依次给4个DS18B20初始化,将总线拉低480
25、微秒到960微秒,延时642微秒,然后拉高总线,如果DS18B20做出反应会在15到60微秒后将总线拉低,然后等待DS18B20拉低总线,接着判断拉低总线时间是否大于5毫秒,大于5毫秒初始化失败,否则初始化成功。接着依次向4个DS18B20写入一个字节,每写入一位数据之前先把总线拉低1微秒,然后从最低位开始写入一个数据,延时68微秒,最少持续6微秒,然后释放总线,至少给总线1微秒恢复时间才能接着写入第二个数值。接着依次向4个DS18B20读取一个字节,先将总线拉低1微秒,然后释放总线,设置6微秒延时等待数据稳定,然后从最低位开始读取数据,读取完之后等待48微秒再接着读取下一个数。接着让4个DS
26、18B20依次转换温度,设置1微秒延时,发送跳过ROM操作命令,然后发送温度转换命令,接着发送读取温度命令,设置1微秒延时,发送跳过ROM操作命令,然后发送温度转换命令。最后依次读取4个DS18B20的温度,先写入转换命令,然后等待转换完后发送读取温度命令,先读16位温度值的低字节,再读高字节。从而获取4个点的温度数值。以下是DS18B20读取程序流程图3-4:依次初始化4个DS18B20依次向4个DS18B20写入一个字节依次向四个DS18B20读取一个字节依次让4个DS18B20转换温度依次发送读取温度命令依次读取4个DS18B20的温度返回图3-4 程序流程图3.3 LCD1602显示子
27、程序设计3.3.1 LCD1602控制指令1602液晶模块内部的控制器共有11条控制指令,如图3-5所示:图3-5 控制命令表LCD1602的读写操作、光标以及屏幕的操作均由指令编程进行完成的。特别说明零是低电平,一是高电平。清除显示的指令为1,指令码为01H,光标因此复位到00H位置。光标复位的指令为2,光标恢复到00H地址。光标以及显示设置的指令为3,I/D标识低电平向左移动,高电平向右移动。S表示当屏幕内的文字都为右移或者左移则代表高电平有效,低电平无效。开关显示控制的指令为4,D表示整体显示的控制开和关,低电平代表显示关闭,高电平代表显示开启。C表示光标控制的开启和关闭,低电平代表没有
28、光标,高电平代表有光标。B表示光标控制有没有闪烁,低电平无闪烁,高电平有闪烁。显示或者光标移动位置的指令为5,S/C表示显示文字变动的时候代表高电平,移动光标的时候代表低电平。设置功能命令的指令为6,DL表示四位总线是代表高电平,八位总线是代表低电平,N表示单行显示是低电平,双行显示是高电平,F表示显示五乘十的字符是高电平,五乘七的字符是低电平。RAM设置地址的指令为7。DDRAM设置地址的指令是8。读取信号以及光标地址的指令为9,BF表示当高电平时忙,目前模块接受不了命令或数据,当作为低电平时代表空闲。写数据的指令为10。读数据的指令为1110。LCD1602的控制状态转换表如图3-6所示:
29、表3-6 控制状态转换表3.3.1 LCD1602程序原理该子程序设计是显示实时变化的4个点环境温度。设计时采用如下方法:首先要初始化LCD1602,然后编辑4个点需要显示的位置,写入指令和数据,最后显示字符,从而显示出4个点温度数值。流程图3-3如下:初始化LCD1602延时10毫秒设置4个温度点的位置写入命令写入数据显示4个温度点的数值返回图3-3 LCD程序流程图3.4 继电器控制子程序设计该子程序设计是当温度超过上限时,继电器吸合。当温度调节到控制温度范围内,继电器释放。不断的重复循环。设计时采用该方法:首先初始化程序,当输出低电平,继电器开关闭合,之后延迟一段时间,输出高电平,继电器开关断开,返回重复循环。以下是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广东省韶关市高职单招综合素质考试题库附答案详细解析
- 2026浙江丽水市教育局招聘教育人才22人笔试模拟试题及答案解析
- 2026广西河池市从“五方面人员”中选拔乡镇领导班子成员154人笔试备考试题及答案解析
- 福建省永春县2026年初三2月月考试卷语文试题含解析
- 2026届云南省玉溪市新平县重点名校下学期初三期末教学质量检测试题语文试题试卷含解析
- 2026届广西柳州市柳林中学初三下学期4月月考(三)语文试题含解析
- 四川省仁寿县2025-2026学年初三5月联考试题英语试题试卷含解析
- 2026年山东省蒙阴县重点名校初三年级第二学期教学质量调研(三)英语试题含解析
- 2026届浙江省杭州市江干区初三3月11的语文试题测试卷含解析
- 广西蒙山县重点名校2025-2026学年初三第二学期入学检测试题英语试题含解析
- 水利三防培训课件
- 2026届新高考高中英语语法填空题66篇(含答案解析)
- 2026年时事政治测试题库附参考答案(培优)
- 锅炉满水培训课件
- 2026春教科版(新教材)小学科学一年级下册(全册)教学设计(附教材目录)
- 小儿股静脉抽血课件
- 2026年湖南有色金属职业技术学院单招职业技能考试题库附答案
- 暖通高效机房设计
- 建筑毕业论文2000字
- 多器官功能衰竭长期卧床患者支持方案
- 2025年江西机电职业技术学院单招职业技能测试题库附答案
评论
0/150
提交评论