引言
由于城市对智能交通系统[1]的需求,车流量检测技术在近些年发展迅速,现有很多检测方法如视频检测技术、微波感知技术、环形感应线圈检测技术、红外传感感应技术等。视频检测技术虽然能够大范围地采集道路环境,但在恶劣天气的情况下检测效果要大打折扣;微波感知技术在车辆类型单一的道路上能够提供准确数据,但无法应对路况不均路段的需要;环形感应线圈需要置于路面之中,需要损坏道路进行安置,施工多有不便[2] ;而红外传感器成本低廉,通过检测路面车辆所发出的红外线来得到流量等信息,效果能够达到要求[3]。所以本文选用热释电红外传感器作为车流量检测设备,构建传感器检测模块。
1 系统方案设计
本检测系统用一个无线传感器模块节点采集车流量数据,执行在线车辆检测,与汇聚节点进行射频通信等。本文设计的检测节点硬件框图如图1所示,节点组成包括微处理模块、射频模块、传感器模块以及存储模块,并根据调试需要增加了串行通信接口。检测节点用热释电红外传感器来侦测车流量数据。微处理器模块是整个传感器节点的核心,负责设定节点工作模式、对传感器进行数据采集和检测处理、控制射频模块收发等。射频模块负责数据通信,结合相应通信协议完成数据包的收发。存储模块用于保存工作参数配置,并根据需要保存一定时期内的检测记录或原始数据以便调用。
2 系统硬件设计
2.1 传感器模块设计
红外传感器选用高灵敏度的LHI807,再在外面加一片菲涅尔透镜,菲涅尔透镜有两个作用:一是聚焦作用;二是将探测区域内分为若干个明区和暗区,使进入探测区域的移动物体以温度变化的形式在PIR上产生变化热释红外信号[4] 。当有车经过红外检测器时,热释电红外传感器会产生交变的电压信号,经过滤波,一级放大,再通过电容耦合到第二级放大,输出信号进入窗口电压比较器。放大器选用LM324集成运算放大器。电位器R决定了一个窗口电压区间,低于该电压区间,输出为低电平;高于该电压区间,输出为高电平。输出信号经过射频模块发射出去。原理图如图2所示。
2.2 微处理器模块与射频模块
ZigBee 是一种无线通信技术,它形成的网络必然涉及到射频电路,一般情况下是由一块 MCU、无线收发芯片,以及外围电路组成。CC2530 微处理器的出现,大大简化了射频电路设计,它集成无线射频功能,因此并不需要额外的射频芯片来做 RF 收发器。它是基于2.4GHz 真正意义上的片上系统(SoC),总体成本材料非常低,却能建立强大的无线网络节点。采用标准的增强型 8051 内核,拥有 8KB 的 RAM,可编程闪存,其闪存版本有四种,分别是 CC2530F32/64/128/256。另外,CC2530 有不同的运行模式,分别是主动模式 RX(接收数据),功耗约为 24mA;主动模式 TX(发送数据),功耗约为29mA;供电模式 1(唤醒),功耗约为 0.2mA;供电模式 2(睡眠状态,只有定时器运行),功耗约为 1μA;供电模式 3(只有外部中断),功耗约为 0.4μA。其中休眠模式时具有超低功耗,再加上无线传感器通常是周期性采集特点,这种休眠功耗使得一个节点的持续工作时间非常久,无需经常更换电池。这种节点最后往往是封装在一个密封外壳里,甚至还有防盗螺丝,如果经常更换电池就会带来不少工作量。
CC2530 通过简单的四线(SI、SO、CS、 CLK)与 SPI 兼容的串行接口配置。CC2530 芯片正常工作时需要 32MHz 的参考时钟用于数据接收与发送。参考时钟可以来自外部时钟源, 也可以由内部晶体振荡器产生。如果使用外部时钟源,可以直接从 XOSC_Q1 脚输入,并且令 XOSC_Q2脚悬空;如果使用内部晶体振荡器, 晶振两端应接在 XOSC_Ql和 XOSC_Q2引脚之间,并且置位 CC2530 里的选通寄存器。协调器与路由设备、终端设备的功能不同,这主要取决于软件,电路上区别不大,协调器与路由设备一般采用外置天线,而终端设备在车辆探测中采用内置天线。内置天线可以方便节点的外盒封装,使得节点完全密封;外置天线可以灵活改变收发增益,为了兼顾二者,以应用不同的场合,采用内置天线与外置天线同时集成于节点的做法,但在同一时刻只有一个天线发生作用。CC2530 芯片的 RF_P 与 RF_N 管脚接收发天线。另外,P1_0 与 P1_1 口分别接两个 LED 小灯,用来指示节点的运行状态。CC2530 芯片的电路原理图如图3所示。
2.3 串口模块
串口通信模块主要针对数据的接收基站,将终端检测节点通过路由设备上传来的数据,传输到 PC 机,在 PC 端进行处理。因此,必须在协调器上设计串口通信模块。本文所采用串口独立设计的方法,可以使协调器与路由节点共用同一种硬件节点,也就是不把串口电路集成到协调器节点上面,而是利用编程接口把串口通信模块与 ZigBee 节点相连。这样做的好处有两点,一是可以在批量生产时,可以不把这三种设备区分开来,只需要生产一种硬件电路即可;二是可以方便地对每个节点进行调试,看在做板时候是否达到性能上的要求,筛选出不合格品。串口通信模块的电路原理图如图4所示。
3 系统软件设计
3.1 ZigBee协议简介
ZigBee协议层从下到上分别为物理层(PHY)、介质访问控制层(MAC)、网络层(NWK)、应用层(APL)等。其中PHY层和MAC层标准由IEEE802.15.4标准定义,NWK层和APL层由ZigBee标准定义。每一层为它的上层提供一套特定的服务,每一个服务实体通过一个服务访问点(SAP)为上层提供服务。ZigBee协议栈的顶层由应用框架、ZigBee设备对象(ZDO)和应用支持(APS)子层组成。软件设计部分基于TI公司的Z-Stack协议栈,结合IAR Workbech进行软件开发。
3.2 软件部分设计
本文中为了使节点的设计具有通用性和便于开发的特点,采用了 TI 公司开发的Z-stack协议栈,这个协议栈最明显的特点是兼容性非常好,完全支持 IEEE 802.15.4 的片上系统解决方案,另外它还支持丰富的新特性,比如无线下载,通过 ZigBee网络,可以将程序以无线的方式下载到节点去。
TI 公司的 Z-stack 协议栈是基于 IAR 开发环境的,IAR Embedded Workbench功能非常强大,不仅可以提供编译下载等常用开发功能,同时也能结合下载器对程序进行单步跟踪调试,这种单步调试在编程时非常有用,对于快速发现问题有很好的效果。在 IAR 环境下打开工程文件 SampleApp.eww,就可以看到从 HAL到 APP 层的文件夹树状结构,Z-stack 协议栈采用 OSAL 片上操作系统,事件轮循机制,下载好相应的程序,系统进行初始化,然后进入低功耗模式,监听事件的发生,当有事件发生,系统自动唤醒,进入中断处理事件当中,处理完后退回到原处继续监听;若同时有几个事件发生,系统会首先判断他们的优先级,逐一处理,利用中断模式可以在一定程度上降低系统功耗。整个 Z-stack 协议栈的工作流程一般为系统启动,驱动初始化,OSAL 初始化,然后进入任务轮循阶段开始处理事件,其中最重要的部分是在 SampleApp_Init()函数上进行的各类初始化工作。软件流程如图5所示。
3.3 结果分析
为了验证分析系统的准确性,要在某一时段检测正确来衡量,应从多个节点同时运行一个比较长的时间来检验其性能。因此,在前面搭接平台的基础上,检验4个传感器节点上每通过30辆车的准确性。记录结果如表1所示。
从表1可以看到,基于该无线传感器网络的车辆检测系统具有较高的准确率,平均在 98%以上,良好的高精确度使得车辆检测系统拥有很好市场应用前景,在未来智能交通发展的具有一席之地。
参考文献:
[1]杨东凯.智能交通系统(ITS)的发展及其模型化研究[J]. 北京航空航天大学学报,2000(1):73-78
[2]刘晓林,彭达峰. 线圈与视频车辆检测器在道路检测中的应用比较[J]. 广东自动化与信息工程, 2004.4:55-56
[3]李建.热释电传感器原理与应用[J].传感器世界, 2005,11(7):34-35
[4]赵明,徐科军,倪伟,等.一种无线传感器网络节点设计和通信协议研究[J].仪器仪表学报,2005.8(26):630-632