-基于单片机的房间人数流动监测系统设计与实现.docx
- 文档编号:30815033
- 上传时间:2024-01-30
- 格式:DOCX
- 页数:39
- 大小:2.32MB
-基于单片机的房间人数流动监测系统设计与实现.docx
《-基于单片机的房间人数流动监测系统设计与实现.docx》由会员分享,可在线阅读,更多相关《-基于单片机的房间人数流动监测系统设计与实现.docx(39页珍藏版)》请在冰豆网上搜索。
河北大学2017届本科生毕业论文(设计)
装
订
线
本科生毕业论文(设计)
题目:
基于单片机的房间人数流动监测系统设计与实现
学院电子信息工程学院
学科门类工学
专业自动化
学号2013442121
姓名戴林浩
指导教师赵淑欢
2017年5月25日
基于单片机的房间人数流动监测系统设计与实现
摘 要
当今社会科学技术飞速发展推动了社会生产生活产品的自动化进程,我们的生活中开始出现越来越多的自动化产品。
随着科学技术自动化技术的广泛应用,早期的靠人员监测人数流动的效率已经无法满足社会发展的需求,自动化监测统计必然成为替代人工监测的新方式。
自动化产品的设计中最常见的就是单片机控制的设计与应用,因此利用单片机进行房间人数流动监测系统的设计。
此系统设计的控制核心选用STC89C52芯片来接收、处理数据信息,利用两个红外线传感器进行扫描检测,检测人员的进出,传感数据传回单片机控制中心对人数进行计算分析处理,再由LCD液晶屏输出显示人数进出情况,使用蜂鸣器对当前人数超出设定值时进行报警工作。
本设计中使用C语言作为的单片机控制程序编写语言,C语言程序具有结构清晰,方便理解和易于修改的特点。
关键词:
人数流动监测;红外线传感器;51单片机;液晶显示
DesignandRealizationofPeopleNumberFlowMonitoringSysteminTheRoomBasedonSingleChipMicrocomputer
ABSTRACT
Therapiddevelopmentofsocialscienceandtechnologytopromotethesocialproductionandlifeoftheproductautomationprocess,ourlivesbegantoappearmoreandmoreautomationproducts.Withtheextensiveapplicationofscienceandtechnologyautomationtechnology,theearlypeoplerelyonthespeedofmonitoringtheflowofpeoplehasbeenunabletomeettheneedsofsocialdevelopment,automatedmonitoringstatisticsmustbecomeanewalternativetomanualmonitoring.Themostcommondesignofautomationproductsisthedesignandapplicationofsingle-chipcontrol,therefore,theuseofsingle-chipdesignofthepeopleflowmonitoringsystemintheroom.
ThecoreofthiscontrolsystemdesignusesSTC89C52chiptoreceiveanddealwiththeinformation.Usingtwoinfraredsensorsforscanningdetection,detectionofpersonnelintoandout,sensingdatabacktothesingle-chipcontrolcentertocalculatethenumberofpeopletodealwithandthendisplaythenumberofpeopletoenterandgooutbytheLCDscreen,systemusesthebuzzertoalarmwhenthecurrentnumberexceedsthesetvalue.TheuseofClanguageasthedesignofthemicrocontrollerprogramminglanguage,Clanguageprogramhasaclearstructureandeasytounderstandaswellasmodifythecharacteristics.
Keywords:
Peoplenumberflowmonitoring;Infraredsensor;The51singlechipmicrocomputer;Liquidcrystaldisplay
目 录
1 绪论 1
1.1 课题研究的背景 1
1.2 课题研究的意义 1
1.3 国内外研究现状 1
1.4 本课题研究的内容 2
1.5 本课题非技术因素考虑 2
2 设计方案部分 3
2.1 设计方案方框图部分 3
2.2 设计方案流程图部分 3
3 系统的硬件设计 5
3.1 单片机最小系统电路设计 5
3.2 单片机红外线传感器电路设计 8
3.3 单片机显示电路设计 9
3.4 单片机蜂鸣器报警电路设计 12
3.5 单片机出入指示灯电路设计 13
3.6 单片机按键控制电路设计 13
3.7 单片机电源电路设计 14
3.8 单片机PCB板设计 14
4 系统的软件设计 16
4.1 红外检测和计数模块设计 16
4.2 LCD1602显示模块设计 16
4.3 按键控制模块程序设计 17
4.4 报警电路模块程序设计 18
4.5 系统软件程序的整体设计 18
5 系统调试 20
5.1 Protues硬件仿真 20
5.2 Protues仿真情况分析 21
5.3 硬件实物调试 22
5.4 硬件实物调试分析 23
6 总结 24
参考文献 25
致谢 26
附录 27
河北大学2017届本科生毕业论文(设计)
1 绪论
1.1 课题研究的背景
今天的社会发展很快,人口增长速度非常快,人流量越来越大。
伴随人流量的过大监测不到位,发生部分突发事件对公共安全和人身安全造成极大的危害。
人流量数据对教室、商场、车站、机场、旅游场所、图书馆、等公共场所的日常管理有重要的作用,通过统计人的进出流量可以统计车站出入口的人群流向,图书馆出入口的合理与否,部分区域对人群的受欢迎程度,各个商场的开关店最佳时间等。
人流的监测统计对于当今社会是非常必要的。
通过人流的监测可以为管理者提供准确数据进而更加方便的分析问题,处理问题和解决问题。
1.2 课题研究的意义
人数流动监测统计系统已经发展了很多年。
目前室内人数流动监测统计系统技术的发展越来越好,现代科技的应用可以更好地实现这些功能。
如今,单芯片微型计算机技术发展迅速,基于单片机的计数设备和产品在生产生活当中广泛应用,单片机技术的发展推动了生产技术的改进和发展。
当前社急切需要大量的熟练掌握单片机技术,可以开发,应用和维护这些单片机产品的高级人才。
单片机的体积小,功能强大,可靠性能高,性能价格比高,推动了工业生产技术的进步和自动化产品的发展。
虽然现实社会已经实现了部分工业自动化的发展,但现在相应的技术并没有发展完善,对我们的设计师来说这种技术的发展并没有结束,而是还有很多相关技术需要我们去完善。
房间人数流动监测系统是一种用来监测室内人数流动的传感器计数器,通过应用传感器的检测将检测到的信息进行反馈,经控制中心处理后在显示屏上显示出来。
1.3 国内外研究现状
人们最早是以人工的形式来统计人流量数据的。
监测组织者安排相应人员在指定的地点,以目测的形式在一段时间内观察记录进出房间的人数流动情况,然后利用数学的计算方法对房间的人数流动信息进行处理分析从而达到监测统计的目的。
随着社会科技的发展进步和对提升工作效率的迫切需求,依靠人力进行监测统计的方式必然会被与时俱进的自动化统计所替代。
早期自动统计人数流动信息的有超声波系统和压力传感系统,它们具有容易实现、成本低的优点,超声波系统利用超声波反馈次数来统计人数,压力传感系统利用压力传感器计数,当人体通过产生感应信号后进行计数,相应信息被发送至处理器进行统计。
现在自动统计人数流动信息开始向基于视频的人流统计系统发展。
随着计算机和图像处理技术的发展,人流统计的方法有了进一步提升的可能。
越来越多的基于视频分析的人流统计系统开始应用在我们的生产生活当中。
采用视频分析技术的视频客流统计系统开始崭露头角,因其优越的性能、精确的统计结果、简单的安装实现方式以及低廉的成本等特性,正逐步被商场等购物场所采纳使用[1]。
基于视频的人流统计系统被各种场所广泛安装使用。
各种场所的普遍应用为各种形式的人数流动监测系统发展提供了充足的发展动力。
1.4 本课题研究的内容
基于单片机的房间人数流动监测系统设计,其中单片机是房间人数流动监测系统的控制中心用来存储系统程序,接收控制信号和计数信号后处理分析相应数据。
红外线模块用于检测人员出入信号,显示模块实现对监测统计数据的实时显示,报警模块提醒房间人数超出容量。
以上部分共同组成房间人数流动监测系统。
1.5 本课题非技术因素考虑
研究本课题时,在考虑设计自身技术因素的同时还要考虑到非技术因素对基于单片机的房间人数流动监测系统的影响。
从社会方面上来讲,当前社会大力支持科学技术的发展,为单片机技术的发展应用提供了很好的社会环境;从环境安全方面来讲,现代社会人口增长迅速,伴随着各种场所人流量的急剧增长,产生了由于人员过多而发生踩踏等危险事件,为了避免危险事件的再次发生,社会环境安全的需要推动了人数流动统计的发展;从创新意识方面来讲,国家强调要坚持走中国特色自主创新道路、实施创新驱动发展战略。
为我们在进行单片机设计时添加创新元素提供了战略指导,引导我们的设计要具有创新性。
2 设计方案部分
2.1 设计方案方框图部分
基于单片机的房间人数流动监测系统设计方案:
使用单片机作为房间人数流动监测系统设计的控制核心,人数检测信号数据由控制核心部分处理分析,通过红外线模块的两个红外线传感器不同行进方向的扫描来判断人员的进出方向,人员行进方向由1-2为进入方向,有2-1为外出方向,依此模拟实现对人数出入的计数,计数信号送至单片机控制中心,再由单片机控制中心处理数据后在显示模块上显示出来,由报警模块进行超出房间人数设定值的报警。
系统设计方框图如图2-1所示。
图2-1 基于单片机的房间人数流动监测系统设计方框图
2.2 设计方案流程图部分
基于单片机的房间人数流动监测系统主要由红外检测计数模块、单片机控制模块、液晶显示模块、蜂鸣器报警模块、按键控制模块、出入指示灯构成。
单片机控制模块选用STC89C52芯片,搭建单片机的晶振电路、复位电路和按键控制模块电路作为人数流动监测系统的总的控制模块。
红外检测模块由两个红外线传感器组成,检测传感器1、2放置在房间出入口,一前一后相邻安装(需要一定距离控制),人员经过由1-2为进入方向;由2-1为外出方向。
传感器未收到感应信号时,传感器输出端口为高电平;传感器收到感应信号时,传感器输出端口为低电平。
当前房间人数为进入人数减去外出人数。
当前房间人数超出房间人数容量设定值是报警模块蜂鸣器响警报,人数恢复低于房间人数容量时警报解除。
LCD1602显示模块实时显示进入、外出、当前房间人数和房间人数容量设定值情况。
系统设计流程图如图2-2所示。
图2-2 基于单片机的房间人数流动监测系统设计流程图
3 系统的硬件设计
3.1 单片机最小系统电路设计
单片机芯片、复位电路、时钟电路共同构成了单片机的最小系统电路[2]。
3.1.1 STC89C52片简介
STC89C52芯片兼容标准MCS-51指令系统及80C51引脚结构,芯片是带8K字节闪烁可编程可擦除只读存储器的低电压,高性能COMOS8的微处理器,具有在系统可编程(ISP)特性,通过使用ISP软件将单片机设计的软件程序下载到单片机芯片[3]。
我们的STC89C52芯片使用了PDIP-40的封装形式。
STC89C52单片机芯片可在3.4V~6.0V电压范围内正常工作。
3.1.2 STC89C52引脚功能介绍
STC89C52与工业标准的MCS-51指令集和输出管脚完全兼容,它有着MCS-51系列单片机的所有特点。
内部8k字节的Flash、128位的RAM、32位双向输入输出线、三个十六位定时/计时器、两级中断优先级、6个中断源、一个全双工异步串行口及时钟发生器等。
STC89C52芯片的引脚图如图3-1所示。
.
图3-1 STC89C52引脚图
STC89C52芯片的各引脚功能:
第一部分电源接线。
VCC:
接正极+5V。
VSS:
接地端。
第二部分时钟接线。
XTAL1:
晶振电路反相输入端。
XTAL2:
晶振电路反相输出端。
第三部分控制口线为4个接线。
ALE/PROG:
地址锁存允许信号输出引脚/片内EPROM编程脉冲输入引脚。
ALE功能:
锁存P0口送出的低8位地址允许地址锁存。
PROG功能:
片内有可擦可编程只读存储器,该存储器编程时,编程脉冲输入该引脚。
/PSEN:
外ROM读取选通信号。
RST/VPD:
复位/备用电源。
RST功能:
复位信号输入端。
VPD功能:
在VCC掉电情况下,接备用电源。
/EA/VPP:
内外ROM选择/片内EPROM编程电源。
/EA功能:
内外ROM选择端。
VPP功能:
片内可擦可编程只读存储器编程期间,施加编程电源VPP。
第四部分I/O口线P0、P1、P2、P3共四个八位可编程口。
P0口是三态双向I/O口,通常叫做数据总线口,因为只有P0口能直接用于对外部存储器的读/写操作。
P0口也可以用于输出外部存储器的低8位地址。
因为具有分时输出的特性,所以应该在外部加锁存器将此地址数据和地址都锁存起来。
P1口是通用的准双向I/O口。
输出高电平时,不接上拉电阻即可向外提供电流负载。
P2口是从系统扩展时作为高8位地址线使用的接口。
在不使用扩展外部存储器情况下,P2口也可以用作编程用户的I/O口使用,P2口也是标准的双向口。
P3口是双功能口,P3口在作为通用I/O口时,为准双向口。
使用第一功能时操作使用方法与P1口相同。
使用特殊功能时P3口将为闪烁编程和编程校验接收单片机控制信号。
特殊功能如表3-1所示。
表3-1 P3口特殊功能表
接口
特殊功能
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(外部数据存储器读选通)
3.1.3 单片机复位电路设计
单片机复位电路:
复位按键操作可以初始化整个单片机系统。
单片机在开机后进行复位操作,可以使CPU和各部分模块处于同一个初始状态。
当程序运行出现错误,系统出现失控状态时,通过复位按键操作可以重新启动系统,恢复初始状态。
单片机的复位电路由自锁式小按键、1K电阻、10uF电容、10K电阻、VCC和GND组成。
单片机中复位按键按下使得电容C1上电,瞬间使得RST引脚变为高电平,在电容C1的充电作用下令RST引脚的高电平逐渐下降。
RST引脚的高电平能够保持足够的时间,单片机的复位操作就可以实现。
复位电路如图3-2所示。
图3-2 复位电路图
3.1.4 单片机时钟电路设计
单片机通用的时钟电路有两种。
一种是内部时钟方式,另一种是外部时钟方式。
本设计采用内部时钟方式,该方式为通过将放大器与石英晶体以及电容相连形成自激振荡器,从而产生时钟信号。
内部时钟主要由晶振和电容组成,通常两个小电容的取值30pF,两个电容的作用是稳定频率和快速起振。
晶振取值约为12Mhz,得以保证振荡器电路的快速性和稳定性。
单片机时钟电路的两个引脚分别连接到51芯片的XTAL1和XTAL2引脚来为51单片机提供时钟信号。
单片机采用时钟脉冲信号作为参考来正常工作。
单片机的时钟电路图设计如图3-3所示。
图3-3 时钟电路图
3.2 单片机红外线传感器电路设计
3.2.1 红外检测模块介绍
红外线模块介绍:
该红外线传感器模块具有红外线发射与红外线接收感应器,障碍物遮挡住模块发射出的红外线后,模块接收到被障碍物反射回来的红外线,从而产生一次传感信号,将传感信号发送至比较器处理后,输出端口由高电平转变为低电平,输出指示灯亮,表示红外线传感器检测到障碍物,并将传感信号通过OUT端口发送出去。
此传感器的检测范围为2~30cm,通过调节电位器来改变检测距离,3.3V-5V为它的工作电压范围。
此传感器具有简单易用,检测距离可调,方便安装使用的优点,但光照环境有可能影响该传感器的探测准确度,现在的机器人避障、流水线计数、自动循迹平衡车都在应用这种红外线模块。
红外线传感器模块内部电路原理图如图3-4所示。
图3-4 红外线传感器模块电路原理图
3.2.2 模块参数说明
(1)传感模块正常工作未检测到障碍物时,OUT端口保持输出高电平信号,电源指示灯亮;遇到障碍物时,OUT端口为低电平,输出指示灯亮。
(2)传感模块检测距离为2~30cm,检测角35°,通过对电位器的调节可以改变检测距离。
顺时针调节电位器检测距离增加;逆时针调节电位器检测距离减少。
传感模块调节检测距离时依据障碍物遮光面积越大检测距离越大,障碍物遮光面积越小检测距离越小的原理进行调节。
(3)OUT端口与单片机I/O口直连。
(4)LM393比较器使模块工作更稳定。
(5)3-5V直流电源为该模块供电,工作时电源指示灯亮。
3.2.3 单片机红外线传感器电路
单片机红外线传感器电路中红外线传感器的VCC引脚连接单片机电路的VCC,传感器的GND引脚连接单片机电路的GND,传感器的OUT端口连接单片机的P2.1和P2.2引脚。
单片机工作时,由红外线传感器模块接收感应信号并由内部电路处理输出由遮光产生的低电平信号送至单片机处理分析信号,由单片机内部程序进行下一步操作,即触发指示灯电路并将统计结果在显示电路进行信息显示。
红外线传感器电路图如图3-5所示。
图3-5 红外线传感器电路图
3.3 单片机显示电路设计
3.3.1 LCD1602液晶显示模块
1602字符型液晶显示屏是用于显示数字、字母和符号的点阵式LCD。
它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)[11]。
LCD1602显示效果为16X2,每行16个字符的模块显示字符和数字,有两行显示空间。
LCD1602引脚图如图3-6所示。
图3-6 LCD1602引脚图
3.3.2 LCD1602各引脚功能如下:
第1脚:
GND接地。
第2脚:
VCC接正极。
第3脚:
VL端口对LCD对比度进行调整,利用10K的电位器调整,对比度随VL引脚处电压的升高而减弱。
第4脚:
RS端口进行寄存器选择。
信号为1时,选择数据寄存器;信号为0时,选择指令寄存器。
第5脚:
RW端口进行读写信号操作,信号为1时为读操作,信号为0时为写操作。
当RS和RW的数字信号共同为1时写入显示地址或者指令;当RS数字信号为0,RW数字信号为1时,读忙信号;当RS数字信号为1,RW数字信号为0时,写入数据。
第6脚:
E端口为使能端。
E端口信号由1变为0时,液晶模块刷新。
第7~14脚:
D0~D7是双向数据线,为LCD传送数据。
第15脚:
背光源正极。
第16脚:
背光源负极。
3.3.3 LCD1602指令和基本时序说明
1602液晶模块内部的控制器有11条控制指令,控制指令如表3-2所示。
表3-2 控制指令表
序号
指令
RS
RW
D7
D6
D5
D4
D3
D2
D1
D0
1
清显示
0
0
0
0
0
0
0
0
0
1
2
光标返回
0
0
0
0
0
0
0
0
1
*
3
置输入模式
0
0
0
0
0
0
0
1
I/D
S
4
显示开/关控制
0
0
0
0
0
0
1
D
C
B
5
光标或字符移位
0
0
0
0
0
1
S/C
R/L
*
*
6
置功能
0
0
0
0
1
DL
N
F
*
*
7
置字符发生存贮器地址
0
0
0
1
字符发生存贮器地址
8
置数据存贮器地址
0
0
1
显示数据存贮器地址
9
读忙标志或地址
0
1
BF
计数器地址
10
写数到CGRAM或DDRAM)
1
0
要写的数据内容
11
从CGRAM或DDRAM读数
1
1
读出的数据内容
1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的[7]。
指令1:
清屏指令RS=0,RW=0,01H功能:
清除液晶显示器,即将DDRAM中的内容全部填入20H(空白字符)光标撤回显示屏左上方将地址计数器(AC)设为0,光标移动方向为从左向右,并且DDRAM的自增量为1(I/D=1)[9]。
指令2:
光标归位指令RS=0,RW=0,0000_001X功能:
将地址计数器(AC)设为00H,DDRAM内容保持不变,光标移至左上角[9]。
指令3:
进入模式设置指令功能:
设定每次写入1位数据后光标移位方向并且设定次写入一个字符是否移动[8]。
I/D=0光标左移,DDRAM地址自增1;I/D=1光标右移,DDRAM地址自增1。
SH=0且DDRAM是读操作(CGRAM读或写),屏幕不移动;SH=1且DDRAM是写操作,屏幕移动,移动方向由I/D决定。
指令4:
显示开关控制功能:
D=1,显示功能开;D=0,显示功能关,DDRAM中的数据依然保留[9]。
C=1,有光标;C=0,没有光标。
B=1,光标闪烁;B=0,光标不闪烁。
指令5:
设置显示屏或光标移动方向的指令功能:
整屏的移动或光标移动。
S/C=0,R/L=0光标左移,地址计数器减1,显示内容和光标一起左移;S/C=0,R/L=1光标右移,地址计数器加1,即显示内容和光标一起右移。
S/C=1,R/L=0显示内容左移。
光标不移动。
S/C=1,R/L=1显示内容右移,光标不移动。
指令6:
功能设定指令功能:
设定数据总线位数、显示的行数及字形[9]。
DL=1,数据总线是8位;DL=0,数据总线是4位。
N=0,显示一行;N=1,显
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 房间 人数 流动 监测 系统 设计 实现