钟 鼎,尹媛媛
(中国地质大学 研究生院,湖北 武汉 430074)
随着我国经济的高速发展,人们的生活水平不断提高,每到节假日,各重点景区,特别是博物馆等地,参观人数激增都会给为景区的文物保护和安全管理工作带来很大的压力。为了应对急剧增加的旅客人数,保护当地的文物和旅游公共设施,维护各个景区或博物馆的正常次序,提高景区游客的旅游质量,许多博物馆和景区都采取了景区游客每天总量限制、限流、分流等措施。为更好实现景区人流量统计管理,需要设计一种人流量统计监控系统可以实时对某区域内的人流量进行实时测量并把数据显示在监控系统上,更好地对某区域人流量进行管理。本文对该系统整体设计以及对各模块的硬件电路,软件设计进行了详细描述。显示当前人数为0,当有一个人甲通过入口进入该区域,在通过入口处,红外检测模块检测到有人进入,主控制器接收红外检测模块的数据并通过显示电路把当前人数显示出来,这时显示器显示现有人数为1,在经过游览区后,甲从出口处离开时,主控制模块B的红外检测模块检测到有人离开,通过无线传输模块发送信息给主控制模块A,控制模块A的无线传输模块接收到信息后把信息传输给主控制器,控制器接收到信息后随即对当前人数减1后显示出来,即显示现有人数为1-1=0。通过这样方法,景区工作人员在显示器上可以准确知道在任何时候某区域内的现有人数,从而有效地进行管理。
统计监控系统主要由主控制模块A和主控模块B组成。主控制模块A由主控制器,红外检测模块,无线传输模块,显示模块组成,安装在游览区的入口处。主控模块B由主控制器,红外检测模块,无线传输模块组成,安装在游览区的出口处。假设该区域内现有人数为0,这时主控制器A显示屏上
图1 系统整体结构Fig.1 System structure
意法半导体公司新推出的STM32F103RBT6处理器作为主控制器,是基于ARM公司最新推出的V7平台的Cortex-M3内核的32位的处理器[1]。该处理器具有64引脚,128 K FLASH,20k SRAM,2个 SPI接口,3个串口, 一个 USB,1个CAN,51个IO口[2]。芯片的数据处理能力为1.25 DMips/MHz,在72MHz的工作时钟下消耗36 mA(所有外设处于工作状态),待机时下降到2 μA,是目前32位处理器市场上功耗最低的产品,加上其具有睡眠、待机、停机等模式优化功能[1],使其适合在外接电池的环境下使用。相对常用的51系列单片机,它不仅在价格上与其相当,在数据处理能力上却达到接近DSP的能力并能顺畅地运行μC/OS-II的操作系统,具有较好的发展前景,在本设计中其配置的硬件的SPI接口可直接与无线收发模块NRF24L01+通信。
人体辐射的红外光波长为8~14 μm,热释电红外传感器D203S使用被动红外技术,能将波长为8~12 μm之间的红外信号变化转变为电信号,并能对自然界中的白光信号具有抑制作用[3],因此在被动红外探测器的警戒区内,当无人体移动时,热释电红外感应器感应到的只是背景温度,当人体进入警戒区,通过菲涅尔透镜,热释电红外感应器感应到的是人体温度与背景温度的差异信号,把这种微弱的差异信号通过状态控制器BISS0001的多级的放大比较后产生状态信号[4]。
如图2中,在A引脚接低电平后,进入不重复触发工作方式,当红外传感器感应到温度差异后,温度差异转化为电量差△Q传输到状态控制器BISS0001处理,DATA输出高电平,并稳定延时T1后,拉为低电平,经过T2(防干扰保护时间)后,等待下一次触发,从图中对 R1、C1、R2、C2设置可以对T1、T2进行设置,当人流量过大时,可以把T1、T2设置较短一些,提高其反应速度,两个时间控制的数量关系为:T1=49152R1×C1,T2=24R2×C2。 当 C2=0.01μF,R2=1 MΩ 时,带入以上数量关系得到T2=0.24 s。DATA数据口与STM32处理器的PA0连接,STM32用查询的方法对PA0信号判断,来决定下一步的操作。
图2 红外检测模块电路Fig.2 Passive InfraRed detection circuit
ZigBee采用IEEE802.15.4标准,使用2.4 G公共频率,是目前在短距离无线传输中性价较高的产品,具有成本低,低耗电,网络结点多等特点,被视为替代有线监控和网络控制最有效的技术[5]。目前最常用的NRF24L01+是在NRF24L01加强型,两者在引脚上完全一样,在使用PCB制板天线NRF24L01+通信距离一般可达到100 m,在使用加长天线后通信距离还可有较大提升。
如图3所示,NRF24L01+的SCK、MOSI、MISO与 STM32处理器使用SPI口通信协议,主控模块B配置为发送模式,当B感应到有人通过时,把接收结点地址和发送的数据(数据内容规定为1)写入缓冲区,CE置为高电平并保持至少10μs,延迟130μs后发射数据后立即进入接收模式,接收应答信号[6]。当主控模块B配置为接收模式时,当接收方检测到有效的地址时,就将接收到数据(1)存储在接收缓存中,同时中断标志位RX_DR置高,IRQ变低,接收方则同时进入发射状态回传应答信号。实际上,在图3中为主控模块B的连接,A和B模块基本相同,区别在于主控模块A中IRQ引脚连接的是PA13,这样设置在于IRQ拉低时,STM32会产生外部中断。
显示模块使用有机发光二极管OLED,其自发光而不需要背光源,对比度高,反应速度快,被称为是下一代平面显示器的应用技术,在很多便携式产品上使用,在较亮的强光环境下也能达到较好的显示效果,OLED和STM32、NRF24L01+一样使用3.3 V供电,分辨率为128×64,支持IIC、SPI、8080并口等多种通信方式[2]。显示器使用SSD1306控制器,当使用8080并口通信方式时,线路连接和通信方式和以前常用的12864LCD有很多相似的地方且支持单色和双色选择,在有中文字模下支持中文显示功能,本设计中未使用中文显示功能。
图3 NRF24L01+电路Fig.3 NRF24L01+circuit
软件设计是在MDK环境下直接对寄存器编程。在软件设计中分为主控模块A和主控模块B,两个模块在软件设计基本思想大部分相同,设计中需要注意以下几点:1)主控制模块A的无线传输模块始终工作在接收状态,主控模块B的无线传输模块始终工作在发送状态,主控模块B在发现有人通过时就发送信息给主控模块A,即主控模块B中红外检测模块输出DATA拉高一次,模块B就发送一次信息。2)在本设计中,设定全局变量t用来存储当前某区域当中的现有人数(初始化值为0),当出口有人离开,主控模块B感应后发送“1”的信息给模块A,在软件设计我们假设一个缓存数组buff[3],A接收到信息后把信息转存在缓存入buff中并检测buff中信息是否为“1”,如果检测通过则对变量t减1后更新显示器即可,如果检测未通过则清空buff即可。主控模块A软件整体设计流程如图4。主控制模块B的设计思想和A基本相同,区别在于主控模块B不需要显示功能,同时也不需要外部中断功能。
主控制模块A使用外部中断下降延触发方式,当模块A接收到数据IRQ拉低后,STM32的PA13口检测到下降延触发外部中断,STM32处理器转而处理中断程序,先对buff中数据检测是否为1(可直接用buff[0]-1=0?来判断),如果为1,则把全局变量t当前数值减1表示已有一人离开,如果不为1直接清空buff等待下一次中断的到来,中断程序流程如图4。
图4 主控模块A流程图Fig.4 Main control module A system flow
经实验证明,该监控系统实时性好,操作简单,成本低廉,红外检测模块可以通过对电阻和菲涅尔透镜的不同规格的选择设置不同的感应区域,感应监控点可以最高设置6个,适合在中小游览景区、展览馆进行限流,分流管理情况下使用。
[1]范书瑞.Cortex-M3嵌入式处理器原理与应用[M].北京:电子工业出版社,2011.
[2]刘军.例说stm32[M].北京:北京航空航天大学出版社,2011.
[3]杨波.热释电红外传感器的原理和应用[J].仪表技术,2008(6):66-68.
YANG-Bo.Principle and application of pyroelectric infrared transducer[J].Instrumentation Technology,2008(6):66-68.
[4]王化祥,等.传感器原理及应用[M].天津:天津大学出版社,2007.
[5]陈珍萍.基于自适应提升小波变换的电能质量检测结点[J].电子技术应用,2011,37(7):86-88.
CHEN Zhen-ping.A power quality monitoring node based on improved wavelet transform[J].Application of Electronic Technique,2011,37(7):86-88.
[6]时志云.新型高速无线射频器件NRF24L01及应用[J].电子设计工程,2007(8):42-44.
SHI Zhi-yun.A new kind of high speed wireless RF transceiver-Nrf24l01 and its application[J].Electronic Design Engineering,2007(8):42-44.