仓库温湿度控制系统Word文档格式.docx
- 文档编号:18310361
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:22
- 大小:378.03KB
仓库温湿度控制系统Word文档格式.docx
《仓库温湿度控制系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《仓库温湿度控制系统Word文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
这个控制系统能够测量仓库中的温度和湿度,并将其显示在液晶屏LCD1602上,同时将其与设定值进行对比,如果超出上下限,将进行报警并通过串口向PC端发送信息以及启动温湿度调节设备。
此外,还可以通过独立式键盘对设定的温湿度的上下限数值进行修改。
经过整机调试,实现了仓库温湿度控制的模拟。
1仓库控制系统设计任务和性能指标
1.1设计任务
为了保护仓库储存的物品的质量,创造适宜储存的环境,当库温湿度适宜物品储存时,控制设备不用采取措施,温湿度传感器只是对库进行检测。
当库温湿度不适宜物品储存时,报警装置进行报警,控制设备采取相应的措施对仓库温湿度进行调节,只至温湿度在限定的围。
1.2性能指标本文要设计的仓库温湿度自动控制系统,要能够及时、准确地对仓库的温度、湿度进
行采集,将其显示在LCD1602液晶显示器上,然后与设定的上下限值进行比较,如果超出限制则启动温度、湿度控制设备,并通过蜂鸣器报警,直到温湿度回到规定的围。
另外,还要能够通过按键修改设定的温湿度上下限,来满足不同物品的储存条件。
为了满足仓库储存的需要,此次设计要达到一下指标:
(1)工作环境:
仓库;
(2)温度测量误差:
土1C;
(3)测温围:
-10~+55C;
(4)湿度测量误差:
±
5%R;
H
(5)测湿围:
0〜100%RH
(6)能否通过键盘电路修改上下限:
能;
(6)有无温湿度报警:
有;
2系统总体设计
本设计核心部件为AT89C51,信号采集及处理部分由SHT10构成,进入单片机后经处理后通过LCD1602显示温湿度,信号显示采用的液晶屏为5X7点阵,一行可显示16字,两行,第一行显示温度,第二行显示湿度。
通过上位机部分对测量的温湿度进行上下值的设定,应用RS-485通信方式完成测控电路与上位PC机的数据交换。
当测量超过限定值,通过超限报警处理电路对其进行处理分别显示不同的二极管灯亮,蜂鸣器产生长鸣,串口向PC端发送具体的报警信息,控制设备采取相应的措施使温湿度到达设定的围。
硬件中包括五个按键,对温湿度上下限进行修改。
开机后,所有器件初始化,温湿度传感器SHT11开始进行温湿度测量和计算,最后通过LCD液晶显示器显示结果。
在测量结果中有超过设定的温湿度上下限的,通过温湿度控制部分作出反应。
整体电路框图如图1所示:
报警模块
AT89C52
单片机
键盘输入
SHT10温湿
度传感器
LCD1602
显示
控制部分
图1整体电路框图
3硬件设计
3.1单片机最小系统
lOiaF
山5
—C1
卜3OpF
=C3
J
._is、
——
界
RJTO叫玄
E>
ATJ^lg77
»
cki?
zr
vc-c
1*0OACW
2*0.1■JJZS1
PB2ALJ2
POUALM
PO5AD5
POJSAJZH5-
Fft”AI>
?
P1.D.T5
r41
PJZtH-CIni.J^CEXOP】.*<
EX】RLJ.CEJi2fl齐匸-F咒呂J*l.CEX4
F*2D3呂
H金.L沁PQ工AJO^^.311
P2.dA12P215AISF^.frAidP2A15
GKD
图2单片机最小系统
单片机最小系统包括单片机、电源电路、时钟电路和复位电路。
时钟电路用于产生单片机工作时候所必须的时钟信号,单片机在时钟信号的节拍下逐条地执行指令。
单片机有两种时钟信号产生方式,一种是部时钟方式,另一种是外部时钟方式。
外部时钟方式是把已有的时钟信号从XTAL1或XTAL2送入单片,一般用于有多个单片机的情况,所以本设计中时钟电路采用部时钟方式,选用12M的晶振和两个30pF的
电容与片的高增益反相放大器构成一个自激振荡器。
电源电路后面的模块中会单独提到,用5V的直流电源。
下面着重论述一下复位电路。
图3上电+手动复位电路
单片机的复位主要有上电复位和手动复位,之所以要进行复位,目的就是为了让单片机进入初始状态,比如让PC指向0000H,这样单片机才能从头运行程序。
因此上电的时候就要让单片机复位一次;
在运行过程中,如果程序出错,也需要进行手动复位。
本设计中的复位电路就是上电+手动复位电路,复位时要让STC89C52RC的RST引脚得到2个机器周期以上的高电平。
先说说上电复位的工作原理,当单片机上电时,电源+5V的Vcc通过10K的电阻对10uF的电容进行充电。
刚上电时,有较大的电流从Vcc经电容、电阻流向GND,由于电容两端的电压不可突变,因此仍然为0V,于是电阻的两端分得5V的电压,即RST引脚此时的电势为5V。
随着充电的继续进行,电流会逐渐减小,电阻两端的电压UR=IR也逐渐减小,即RST引脚的电势逐渐减小。
过了一定时间,RST引脚两
端的电压下降到不再是高电平,只要这个充电的时间大于单片机两个机器周期,就能使单片机复位。
程序运行过程中如果跑飞了、程序运行出错或操作错误使系统处于死锁状态时,就需要用到手动复位。
手动复位就是在上电复位电路的电容两边并联一个微动开关,需要手动复位时将其按下,使之接通,RST获得高电平,而且人按动按钮的时间肯定是超过两个机器周期的,于是单片机复位。
3.2LCD1602显示模块
测量到的温湿度值将显示到液晶屏LCD1602上,它可以显示2行,每行16个字符。
LCD1602共有三个存储器,它们是CGROM、CGRAM和DDRAM。
CGROM用来保存LCD1602部固化的一些字符的字模,比如英文的26个字母的大小写;
CGRAM用来保存用户自己取的字模,比如,如果要显示汉字,就必须自己去汉字字模,在这里我们都用英语字母,故不用CGRAM;
DDRAM用来存储要显示的字符的字模,它和屏幕上的位置是对应的,第一行为00H到0FH,第二行为40H到4FH。
在这里需要注意的是,在向LCD1602写入显示数据存储器地址时,根据控制指令的格式,最高位D7为1,所以写入的数据为,
第一行80H到8FH,第二行C0H到CFH。
它与单片机的接口电路如下图所示:
图4LCD1602与单片机的接口电路
3.3温湿度传感器模块
3.3.1SHT10温湿度传感器的介绍
SHT11是瑞士Scnsirion公司推出的一款数字温湿度传感器芯片。
该传感器1个奄容式聚合体溺瀑元件和1个能隙式测温元件组成,并嗣1个14位A/D转换器以及1个2-wire数字接口在单芯片中无缝结合,使得该产品具有功耗低、反应快、抗干扰能力强等优点。
(1)SHT10的主要特点
♦相对湿度和温度的测量兼有露点输出;
♦全部校准,数字输出;
♦接口简单(2-wire),响应速度快;
♦越低功耗,自动休眠;
♦出色的长期稳定性;
♦超小体积(表面贴装);
♦测湿精度土4.5%RH,测温精度土0.5C(25C)。
♦测温围-40~123C,测湿围0~100%RH
(2)SHT10的命令与时序
命令
OOOOM
OOO11
T*tit
OOIO1
Mt找烝疔舒
OO111
斗衩毎阳TZ##
OO11O
O1V111lOjt
欣塞竝"
Hfit口.iW除3烝离呑彌力
网认*F6命令WT铃待主少1Lz
M1IJIO
①)SHTI0命令
2;
命令时序
o
图5命令时序
DAIA
SCK
发送一组“传输启动”序列进行数据传输初始化,如图5所示。
其时序为:
当SCK为高电平时DATA翻转保持低电乎,紧接着SCK产生1个发脉冲,随后在SCK为高电平时DATA翻转保持高电平。
紧接着的命令包括3个地址位(仅支持“000”)和5个命令位。
SHT10指示正确接收命令的时序为:
在第8个SCK时钟的下降沿之后将DATA拉为低电平(ACK位),在第9个SCK时钟的下降沿之后释放DATA(此时为高电平)
3复位时序
如果与SHTl0的通信发生中断,可以通过随后的信号序列来复位串口,如图6所示。
保持DATA为高电平,触发SCK时钟9次或更多,接着在执行下次命令之前必须发送一组“传输启动”序列。
这些序列仅仅复位串口,状态寄存器的容仍然保留。
data
图6复位时序
4状态寄存器读写时序
SHTIO通过状态寄存器实现初始状态设定
图7读时序
图8写时序
3.3.2SHT10与单片机的接口电路
SHT10采用类似于I2C的两线制串行总线,一根是时钟线,一根是数据线。
为避免信号冲突,微处理器应驱动DATA在低电平。
需要一个外部的上拉电阻(例如:
10kQ)将
信号提拉至高电平。
上拉电阻通常已包含在微处理器的I/O电路中。
3.4报警模块
当仓库的温湿度超过上下限时,除了需要启动温湿度调节器之外,还需要进行报警,这里用到的是蜂鸣器、LED和串口。
蜂鸣器为一种采用一体化结构的电子器件,采用了直流电压来供电。
蜂鸣器分为有
源蜂鸣器和无源蜂鸣器。
本设计中使用的是有源蜂鸣器,在它两端加载5V的直流电压就
可以使之鸣叫。
LED在这个模块中主要是显示温湿度不在限定围,不同的LED亮,显示对应的物理量超限。
串口主要是当温室度超限,单片机不停地向PC端发出具体超限的物理量。
报警电路图10所示
图10报警电路图
蜂鸣器工作电流一般为10mA,而单片机的I/O口只能承受几毫安的电流,因此需要加三极管进行驱动。
如上图所示,单片机的I/O口中的P3.5接PNP型三极管的基极,当
P3.5为低电平时,三极管导通,5V的电压加载到蜂鸣器两端,于是蜂鸣器鸣叫;
当P3.5高电平时,三极管截至,蜂鸣器不鸣叫。
串口的2、3号脚分别接单片机的P3.0和P3.1,
便于与PC机进行通信。
四个LED正极直接与VCC相连,当负极出现低电平时,对应的LED亮。
3.5按键模块
按键电路图如下图所示
键盘分为编码式和非编码式键盘。
其中,非编码式键盘又包括矩阵式键盘和独立式键盘。
矩阵式键盘较为复杂,一般用于按键数目较多,而单片机可用的I/O口又比较有限时。
本控制系统中只需要用到5个按键,数目较少,并且可用的I/O口充足,故采用独立式键盘,一个按键对应一个单片机的I/O口管脚。
本设计中总共用到5个按键式开关,它们用来改变设定的温湿度上下限数值。
从K1
到K5,分别控制进入温度上下限设置、进入湿度上下限设置、数值加、数值减、确认并退出。
本设计中的键盘是低电平有效。
未按键时,上拉电阻保证了单片机的I/O口是确定的
高电平;
当某个键按下时,I/O口变为低电平。
本设计可以直接设定温湿度参数的上下限值,从而达到对温湿度控制报警的功能。
3.6控制模块
控制模块电路图如下所示
图12控制模块电路图
控制模块主要由直流电机、继电器、加热丝等构成。
由于单片机的输出电流一般为30-40mA,输出的低电平为0.1V左右,而直流电机的驱动电流为200mA,驱动电压为5V,继电器的驱动电流约为90Ma所以要用三级管放大,通过继电器使电机开关吸合,避免电机不能正常工作。
控制模块的主要功能是当温湿度不在限定围时,控制设备开始工作,使温湿度达到自己限定的围。
4软件设计
4.1主程序流程图
串口设置
SHTlj
}复位
初始化LCD1602
图13主程序流程图
4.2SHT10子程序流程图
1
r
发送启动时序
发送控制字
开始
测量结束?
No
4.3LCD1602子程序流程图
fYes
接收数据
F
接收校验位
图14SHT10子程序流程图
结束
4.4输出控制子程序流程图
温湿度是否留有足够的裕量?
温度、湿度是否超
出上下限?
温湿度是否回到限定值内?
停止报警
Yes
图16输出控制子程序
启动温湿度调节设备
停止温湿度控制设备
蜂鸣器报警
返回主程序
4.5键盘扫描子程序流程图
图17键盘扫描子程序
为了防止抖动,按键电路中都要消抖的措施,本设计中是采用的软件消抖,在单片机检测到某个键按下后,延时10ms再监测,如果仍然按下,才视为按下了该键。
K1、K2、K3、K4、K5分别对应单片机的P2.3-P2.7引脚。
按下K1,也就是使P2.3为低电平时,进入温度上限的设置,再按一次进入温度下限的设置;
按下K2,进入湿度上限的设置,再按一下进入温度下限的设置。
在每个设置里面,按K3增加限值,按K4减小限值。
设置好以后,按K5退出设置。
5.仿真与调试
5.1调试环境
本设计用到了KeiluVision4和Proteus7.8两种软件进行联合调试。
实验中使用C语言在KeiluVision4进行编写源代码,并通过编译检查源程序中的代码是否正确。
原理图是在Proteus7.8提供的环境中绘画。
在KeiluVision4编译无误后生成HEX文件,并将其导入到原理图中,在原理图没有错误后就可以进行仿真。
通过仿真可以进行调试,使设计达到要求。
5.2不足与优化不足:
按键会出现抖动,延时时间过短致使按键按下时单片机可能没来得及响应。
SHT10测量温湿度最大误差可达到±
4.5,对于一些温湿度要求较高的物品还存在较大的误差。
优化方案:
对于按键出现抖动的情况,我们可以增大延时时间来,解决这个问题。
对于一些对温湿度要求比较高的物品,我们可以使用其它精度比较高而且比较有经济效益的的传感器,同时可以采取多点测量的方法来解决。
6.总结
这次的课程设计是利用单片机AT89C52来设计仓库温湿度控制系统,设计中使用LCD1602进行对当前温度和湿度进行显示,使用温湿度传感器SHT10对温湿度测量,当温湿度超限时,蜂鸣器发出报警信号,同时,控制设备进行相应的操作使温湿度回到限定的围。
通过模拟,基本实现了对仓库温湿度的控制。
这次课程设计让我学习和了解了很多东西。
通过查找资料,我了解了SHT10温湿度传感器的使用方法,并对里面的一些函数和设计思路有了一定的认识,同时,了解了LCD1602后,我知道了1602该如何使用,并能够初步的使用它。
由于使用SHT10温湿度传感器时,单片机的P3.6和P3.7分别于SHT10的DATA和SCK直接相连,而单片机与SHT10的接口电路中,数据端DATA接了一个上拉电阻,让我加深了单片机部的P1、P2、P3口有上拉电阻。
另外在这次实验中我知道蜂鸣器分为有源和无源两种,也知道了它们接入电路的区别。
这次课程设计体会最深的对软件和硬件的调试,软件调试过程中遇到了很多麻烦,如按键延时过短,导致单片机没来得及响应使液晶显示屏上还是按键按下前的字符,通过改正延时时间的长度,最终把这个问题解决了;
在硬件调试中也遇到了一些问题,如蜂鸣器没有声音,最后经过查阅资料,是因为蜂鸣器的电压和电流不够,通过三极管的放大作用,最终蜂鸣器发出声音,其次还可以通过改变蜂鸣器的频率改变声音的音调。
通过这次课程设计,我知道我们在遇到问题时,我们应该多动脑,同时应该多查阅资料以便解决问题。
同时,在这次课程设计中,我知道我们的知识面很小,我们在今后学习中应该多阅读一些书来丰富我们的知识,这样在以后遇到问题时,我们能够快速的处理。
7.参考文献
[1]毅刚.单片机原理及应用(第二版).高等教育,2009
[2]陆荣鑑,品,周.SHT10传感器在温湿度监测系统中的应用[J].传感器与微系统,2012,(31)
[3]环,滕召胜.基于SHT10单片集成传感器温湿度检测模块设计[J].国外电子测量技术,2006,(25)
[4]童诗白.华成英.模拟电子技术基础[M]..高等教育,2000
⑸郭天祥.51单片机C语言教程.:
电子工业,2008
[6]隋清江.基于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语言程序设计(第四版)•清华大学,2010
[13]泉溪.单片机原理与应用实例仿真(第二版)•航空航天大学,2011
附录一系统仿真图
>
rr*c
向FC机发送佶息
亘
-E
iL-
*
T
rfl-
—
iKST
F1C
i*
T^7
L?
1
=—fr—S
1^11-
rasirT
razm
ra.*x>
十rrjs^fFr:
'
fr
2S
13JR
神1J!
~~^2~
U2
■H'
Z
W—」」h
<
阵温度问度值
b
w
T»
TE-
单片机课程设计期末成绩评定表
姓名
学号
报告题目:
报告答辩记录:
成绩类别
考勤成绩
(10%)
答辩成绩
(20%)
报告成绩
(50%)
实物成绩
总分(百分制)
成绩
评语:
指导教师签字:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 仓库 温湿度 控制系统