仓库温湿度控制系统(共16页).docx

上传人:飞****2 文档编号:6407162 上传时间:2022-02-02 格式:DOCX 页数:17 大小:304.10KB
返回 下载 相关 举报
仓库温湿度控制系统(共16页).docx_第1页
第1页 / 共17页
仓库温湿度控制系统(共16页).docx_第2页
第2页 / 共17页
点击查看更多>>
资源描述

《仓库温湿度控制系统(共16页).docx》由会员分享,可在线阅读,更多相关《仓库温湿度控制系统(共16页).docx(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上仓库温湿度控制系统姓名学号专业班级 提交日期目 录摘要.21 仓库温湿度控制系统设计任务和性能指标 .3 1.1 设计任务.3 1.2 性能指标.32 系统总体设计. .33 硬件设计 .4 3.1 单片机最小系统.4 3.2 LCD1602显示模块.53.3 温湿度传感器模块.63.3.1 SHT10温湿度传感器的介绍.63.3.2 SHT10与单片机的接口电路.73.4 报警模块.73.4 按键模块.83.4 控制模块.8 4 软件设计 .9 4.1 主程序流程图 .9 4.2 SHT10子程序流程图.10 4.3 LCD1602子程序流程图.10 4.4 输出控

2、制子程序流程图.11 4.5键盘扫描子程序流程图.115仿真与调试 .125.1 调试环境 .125.2不足与优化.136 总结 .137 参考文献 .13附件1系统仿真图.14 摘要防潮、防霉、防腐、防爆是仓库日常 工作的重要内容,是衡量仓库管理质量的重要指标。它直接影响到储备物资的使用寿命和工作可靠性。为保证日常工作的顺 利进行,首要问题是加强仓库内温度与湿度的监测工作。传统的方法是用湿度表、毛发湿度表、双金属式测量计和湿度试纸等测试器材,通过人工进行检测,对不符合温度和湿度要求的库房进行通风、去湿和降温等工作。为解决这种传统温湿度检测主要以人为基础、依靠人工轮流值班,人工巡回查看等方式来

3、测量和记录环境状况信息的模式,避免许多由人为因素造成的重大事故,解决效率低下不利于人才充分利用的问题,让测量更具有科学性,本设计提供了一套更方便和精确度更高的测控系统。本设计是基于AT89C52单片机的仓库温湿度自动控制系统,采用SHT10作为温湿度传感器,LCD1602液晶屏进行显示。SHT10使用类似于I2C总线的时序与单片机进行通信,因为它高度集成,已经包括A/D转换电路,所以使用方便,而且准确、耐用。LCD1602能够分两行显示数据,第一行显示温度,第二行显示湿度。这个控制系统能够测量仓库中的温度和湿度,并将其显示在液晶屏LCD1602上,同时将其与设定值进行对比,如果超出上下限,将进

4、行报警并通过串口向PC端发送信息以及启动温湿度调节设备。此外,还可以通过独立式键盘对设定的温湿度的上下限数值进行修改。经过整机调试,实现了仓库温湿度控制的模拟。1 仓库控制系统设计任务和性能指标1.1设计任务 为了保护仓库储存的物品的质量,创造适宜储存的环境,当库内温湿度适宜物品储存时,控制设备不用采取措施,温湿度传感器只是对库内进行检测。当库内温湿度不适宜物品储存时,报警装置进行报警,控制设备采取相应的措施对仓库温湿度进行调节,只至温湿度在限定的范围内。1.2性能指标本文要设计的仓库温湿度自动控制系统,要能够及时、准确地对仓库的温度、湿度进行采集,将其显示在LCD1602液晶显示器上,然后与

5、设定的上下限值进行比较,如果超出限制则启动温度、湿度控制设备,并通过蜂鸣器报警,直到温湿度回到规定的范围。另外,还要能够通过按键修改设定的温湿度上下限,来满足不同物品的储存条件。为了满足仓库储存的需要,此次设计要达到一下指标:(1)工作环境:仓库;(2)温度测量误差:1;(3)测温范围:-10+55;(4)湿度测量误差:5%RH;(5)测湿范围:0100%RH;(6)能否通过键盘电路修改上下限:能;(6)有无温湿度报警:有;2 系统总体设计本设计核心部件为AT89C51,信号采集及处理部分由SHT10构成,进入单片机后经处理后通过LCD1602显示温湿度,信号显示采用的液晶屏为57点阵,一行可

6、显示16字,两行,第一行显示温度,第二行显示湿度。通过上位机部分对测量的温湿度进行上下值的设定,应用RS-485通信方式完成测控电路与上位PC机的数据交换。当测量超过限定值,通过超限报警处理电路对其进行处理分别显示不同的二极管灯亮,蜂鸣器产生长鸣,串口向PC端发送具体的报警信息,控制设备采取相应的措施使温湿度到达设定的范围内。 硬件中包括五个按键,对温湿度上下限进行修改。开机后,所有器件初始化,温湿度传感器SHT11开始进行温湿度测量和计算,最后通过LCD液晶显示器显示结果。在测量结果中有超过设定的温湿度上下限的,通过温湿度控制部分作出反应。整体电路框图如图1所示:报警模块键盘输入LCD160

7、2显示SHT10温湿度传感器控制部分 AT89C52 单片机图1 整体电路框图3硬件设计3.1单片机最小系统 图2 单片机最小系统单片机最小系统包括单片机、电源电路、时钟电路和复位电路。时钟电路用于产生单片机工作时候所必须的时钟信号,单片机在时钟信号的节拍下逐条地执行指令。单片机有两种时钟信号产生方式,一种是内部时钟方式,另一种是外部时钟方式。外部时钟方式是把已有的时钟信号从XTAL1或XTAL2送入单片,一般用于有多个单片机的情况,所以本设计中时钟电路采用内部时钟方式,选用12M的晶振和两个30pF的电容与片内的高增益反相放大器构成一个自激振荡器。电源电路后面的模块中会单独提到,用5V的直流

8、电源。下面着重论述一下复位电路。图3 上电+手动复位电路单片机的复位主要有上电复位和手动复位,之所以要进行复位,目的就是为了让单片机进入初始状态,比如让PC指向0000H,这样单片机才能从头运行程序。因此上电的时候就要让单片机复位一次;在运行过程中,如果程序出错,也需要进行手动复位。 本设计中的复位电路就是上电+手动复位电路,复位时要让STC89C52RC的RST引脚得到2个机器周期以上的高电平。先说说上电复位的工作原理,当单片机上电时,电源+5V的Vcc通过10K的电阻对10uF的电容进行充电。刚上电时,有较大的电流从Vcc经电容、电阻流向GND,由于电容两端的电压不可突变,因此仍然为0V,

9、于是电阻的两端分得5V的电压,即RST引脚此时的电势为5V。随着充电的继续进行,电流会逐渐减小,电阻两端的电压UR=IR也逐渐减小,即RST引脚的电势逐渐减小。过了一定时间,RST引脚两端的电压下降到不再是高电平,只要这个充电的时间大于单片机两个机器周期,就能使单片机复位。程序运行过程中如果跑飞了、程序运行出错或操作错误使系统处于死锁状态时,就需要用到手动复位。手动复位就是在上电复位电路的电容两边并联一个微动开关,需要手动复位时将其按下,使之接通,RST获得高电平,而且人按动按钮的时间肯定是超过两个机器周期的,于是单片机复位。3.2 LCD1602显示模块测量到的温湿度值将显示到液晶屏LCD1

10、602上,它可以显示2行,每行16个字符。LCD1602共有三个存储器,它们是CGROM、CGRAM和DDRAM。CGROM用来保存LCD1602内部固化的一些字符的字模,比如英文的26个字母的大小写;CGRAM用来保存用户自己取的字模,比如,如果要显示汉字,就必须自己去汉字字模,在这里我们都用英语字母,故不用CGRAM;DDRAM用来存储要显示的字符的字模,它和屏幕上的位置是对应的,第一行为00H到0FH,第二行为40H到4FH。在这里需要注意的是,在向LCD1602写入显示数据存储器地址时,根据控制指令的格式,最高位D7为1,所以写入的数据为,第一行80H到8FH,第二行C0H到CFH。它

11、与单片机的接口电路如下图所示:图4 LCD1602与单片机的接口电路3.3 温湿度传感器模块3.3.1 SHT10温湿度传感器的介绍SHT11是瑞士Scnsirion公司推出的一款数字温湿度传感器芯片。该传感器内1个奄容式聚合体溺瀑元件和1个能隙式测温元件组成,并嗣1个14位AD转换器以及1个2-wire数字接口在单芯片中无缝结合,使得该产品具有功耗低、反应快、抗干扰能力强等优点。(1) SHT10的主要特点相对湿度和温度的测量兼有露点输出;全部校准,数字输出;接口简单(2-wire),响应速度快;越低功耗,自动休眠;出色的长期稳定性;超小体积(表面贴装);测湿精度土45RH,测温精度土05(

12、25)。测温范围-40123,测湿范围0100%RH(2)SHT10的命令与时序)SHTl0命令;命令时序发送一组“传输启动”序列进行数据传输初始化,如图5所示。其时序为:当SCK为高电平时DATA翻转保持低电乎,紧接着SCK产生1个发脉冲,随后在SCK为高电平时DATA翻转保持高电平。紧接着的命令包括3个地址位(仅支持“000”)和5个命令位。SHTl0指示正确接收命令的时序为:在第8个SCK时钟的下降沿之后将DATA拉为低电平(ACK位),在第9个SCK时钟的下降沿之后释放DATA(此时为高电平)。图5 命令时序复位时序如果与SHTl0的通信发生中断,可以通过随后的信号序列来复位串口,如图

13、6所示。保持DATA为高电平,触发SCK时钟9次或更多,接着在执行下次命令之前必须发送一组“传输启动”序列。这些序列仅仅复位串口,状态寄存器的内容仍然保留。图6 复位时序状态寄存器读写时序SHTl0通过状态寄存器实现初始状态设定。图7 读时序图8 写时序3.3.2 SHT10与单片机的接口电路图9 SHT10与单片机的接口电路SHT10采用类似于I2C的两线制串行总线,一根是时钟线,一根是数据线。为避免信号冲突,微处理器应驱动DATA 在低电平。需要一个外部的上拉电阻(例如:10k)将信号提拉至高电平。上拉电阻通常已包含在微处理器的I/O 电路中。3.4 报警模块当仓库的温湿度超过上下限时,除

14、了需要启动温湿度调节器之外,还需要进行报警,这里用到的是蜂鸣器、LED和串口。蜂鸣器为一种采用一体化结构的电子器件, 采用了直流电压来供电。蜂鸣器分为有源蜂鸣器和无源蜂鸣器。本设计中使用的是有源蜂鸣器,在它两端加载5V的直流电压就可以使之鸣叫。LED在这个模块中主要是显示温湿度不在限定范围内,不同的LED亮,显示对应的物理量超限。串口主要是当温室度超限,单片机不停地向PC端发出具体超限的物理量。报警电路图10所示图10 报警电路图蜂鸣器工作电流一般为10mA,而单片机的I/O口只能承受几毫安的电流,因此需要加三极管进行驱动。如上图所示,单片机的I/O口中的P3.5接PNP型三极管的基极,当P3

15、.5为低电平时,三极管导通,5V的电压加载到蜂鸣器两端,于是蜂鸣器鸣叫;当P3.5高电平时,三极管截至,蜂鸣器不鸣叫。串口的2、3号脚分别接单片机的P3.0和P3.1,便于与PC机进行通信。四个LED正极直接与VCC相连,当负极出现低电平时,对应的LED亮。3.5 按键模块按键电路图如下图所示图11 按键电路图键盘分为编码式和非编码式键盘。其中,非编码式键盘又包括矩阵式键盘和独立式键盘。矩阵式键盘较为复杂,一般用于按键数目较多,而单片机可用的I/O口又比较有限时。本控制系统中只需要用到5个按键,数目较少,并且可用的I/O口充足,故采用独立式键盘,一个按键对应一个单片机的I/O口管脚。本设计中总

16、共用到5个按键式开关,它们用来改变设定的温湿度上下限数值。从K1到K5,分别控制进入温度上下限设置、进入湿度上下限设置、数值加、数值减、确认并退出。本设计中的键盘是低电平有效。未按键时,上拉电阻保证了单片机的I/O口是确定的高电平;当某个键按下时,I/O口变为低电平。本设计可以直接设定温湿度参数的上下限值,从而达到对温湿度控制报警的功能。3.6 控制模块控制模块电路图如下所示图12 控制模块电路图控制模块主要由直流电机、继电器、加热丝等构成。由于单片机的输出电流一般为30-40mA,输出的低电平为0.1V左右,而直流电机的驱动电流为200mA,驱动电压为5V,继电器的驱动电流约为90Ma,所以

17、要用三级管放大,通过继电器使电机开关吸合,避免电机不能正常工作。控制模块的主要功能是当温湿度不在限定范围时,控制设备开始工作,使温湿度达到自己限定的范围内。4软件设计4.1 主程序流程图Yes是否超限?将温湿度与设定值比较启动温湿度调节设备对温湿度数据进行修正No在液晶屏上显示温湿度测量温湿度是否有按键?初始化LCD1602Yes开始进入键盘扫描子程序串口设置NoSHT10复位图13 主程序流程图4.2 SHT10子程序流程图开始发送启动时序发送控制字接收数据测量结束?接收校验位结束NoYes图14 SHT10子程序流程图4.3 LCD1602子程序流程图开始LCD1602初始化设置首行数据指

18、针写入首行字符设置第二行数据指针写入第二行字符结束图15 LCD1602子程序流程图4.4 输出控制子程序流程图开始返回主程序温度、湿度是否超出上下限?启动温湿度调节设备蜂鸣器报警温湿度是否回到限定值内?停止报警停止温湿度控制设备温湿度是否留有足够的裕量?结束NoYesYesYesNoNo图16 输出控制子程序4.5 键盘扫描子程序流程图开始退出键盘子程序延时10ms退出键盘子程序上限或下限加一或减一P2.3或P2.4是否按下?NoP2.3或P2.4是否仍被按下?YesYesNoP2.5或P2.6是否按下?P2.5或P2.6是否按下?YesNo图17 YesNo键盘扫描子程序为了防止抖动,按键

19、电路中都要消抖的措施,本设计中是采用的软件消抖,在单片机检测到某个键按下后,延时10ms再监测,如果仍然按下,才视为按下了该键。K1、K2、K3、K4、K5分别对应单片机的P2.3-P2.7引脚。按下K1,也就是使P2.3为低电平时,进入温度上限的设置,再按一次进入温度下限的设置;按下K2,进入湿度上限的设置,再按一下进入温度下限的设置。在每个设置里面,按K3增加限值,按K4减小限值。设置好以后,按K5退出设置。5仿真与调试5.1 调试环境本设计用到了Keil uVision4和Proteus7.8两种软件进行联合调试。实验中使用C语言在Keil uVision4进行编写源代码,并通过编译检查

20、源程序中的代码是否正确。原理图是在Proteus7.8提供的环境中绘画。在Keil uVision4编译无误后生成HEX文件,并将其导入到原理图中,在原理图没有错误后就可以进行仿真。通过仿真可以进行调试,使设计达到要求。5.2 不足与优化不足:按键会出现抖动,延时时间过短致使按键按下时单片机可能没来得及响应。SHT10测量温湿度最大误差可达到4.5,对于一些温湿度要求较高的物品还存在较大的误差。优化方案:对于按键出现抖动的情况,我们可以增大延时时间来,解决这个问题。对于一些对温湿度要求比较高的物品,我们可以使用其它精度比较高而且比较有经济效益的的传感器,同时可以采取多点测量的方法来解决。6总结

21、这次的课程设计是利用单片机AT89C52来设计仓库温湿度控制系统,设计中使用LCD1602进行对当前温度和湿度进行显示,使用温湿度传感器SHT10对温湿度测量,当温湿度超限时,蜂鸣器发出报警信号,同时,控制设备进行相应的操作使温湿度回到限定的范围内。通过模拟,基本实现了对仓库温湿度的控制。这次课程设计让我学习和了解了很多东西。通过查找资料,我了解了SHT10温湿度传感器的使用方法,并对里面的一些函数和设计思路有了一定的认识,同时,了解了LCD1602后,我知道了1602该如何使用,并能够初步的使用它。由于使用SHT10温湿度传感器时,单片机的P3.6和P3.7分别于SHT10的DATA和SCK

22、直接相连,而单片机与SHT10的接口电路中,数据端DATA接了一个上拉电阻,让我加深了单片机内部的P1、P2、P3口有上拉电阻。另外在这次实验中我知道蜂鸣器分为有源和无源两种,也知道了它们接入电路的区别。这次课程设计体会最深的对软件和硬件的调试,软件调试过程中遇到了很多麻烦,如按键延时过短,导致单片机没来得及响应使液晶显示屏上还是按键按下前的字符,通过改正延时时间的长度,最终把这个问题解决了;在硬件调试中也遇到了一些问题,如蜂鸣器没有声音,最后经过查阅资料,是因为蜂鸣器的电压和电流不够,通过三极管的放大作用,最终蜂鸣器发出声音,其次还可以通过改变蜂鸣器的频率改变声音的音调。通过这次课程设计,我

23、知道我们在遇到问题时,我们应该多动脑,同时应该多查阅资料以便解决问题。同时,在这次课程设计中,我知道我们的知识面很小,我们在今后学习中应该多阅读一些书来丰富我们的知识,这样在以后遇到问题时,我们能够快速的处理。7参考文献1 张毅刚. 单片机原理及应用(第二版). 高等教育出版社,20092 陆荣鑑,李品,孙周. SHT10传感器在温湿度监测系统中的应用J. 传感器与微系统,2012,(31) 3 孙环,滕召胜. 基于SHT10 单片集成传感器温湿度检测模块设计J. 国外电子测量技术,2006,(25)4 童诗白.华成英. 模拟电子技术基础M.北京.高等教育出版社,20005 郭天祥. 51单片

24、机C语言教程.北京:电子工业出版社, 20086 隋清江. 基于PROTEUS的LCD1602接口设计与仿真J. 仿真技术,2010,(7)7 刘天时,刘赏,付春. 一种单片机键盘电路设计与消抖处理J. 计算机与网络,2010,(10)8 赵亮. 跟我学51单片机(四)独立-矩阵键盘应用与设计J. 电子制作,2011,(4)9 黄震宇. 温湿度控制系统设计J. 粮油装备与自动控制,2008,(15)10 于志赣,刘国平. 液显LCD1602 模块的应用J. 计算机技术应用,2009,(4) 11 赵亮. 液晶显示模块LCD1602应用J. 电子制作,2007,(3)12谭浩强. C语言程序设计(第四版).清华大学出版社, 201013李泉溪. 单片机原理与应用实例仿真(第二版).北京航空航天大学出版社, 2011附录一 系统仿真图单片机课程设计期末成绩评定表姓 名学 号专业班级报告题目: 报告答辩记录:成绩类别考勤成绩(10%)答辩成绩(20%)报告成绩(50%)实物成绩(20%)总分(百分制)成 绩评语: 指导教师签字: 年 月 日专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 教育教学

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁