2012年第09期 Computer CD Software and Applications 软件设计开发
基于STM32的无线传感网络车辆检测节点的设计
朱武辉,王放
(长安大学电子与控制工程学院,西安 710064)
摘要:当车辆经过时会引起地磁的改变,利用传感器可以检测到这种变化。再针对无线传感器网络低功耗,低成本等条件,提出了一种基于STM32超低功耗系列的无线网络车辆检测节点,该节点由STM32L151微处理器,nRF24L01无线通信模块和HMC1052传感器等构成。该无线节点可以广泛运用于各种交通道口的车辆控制,具有安装简便,可靠性高等特点。
关键词:无线传感器网络;STM32L151;nRF24L01;HMC1052
中图分类号:TP274 文献标识码:A 文章编号:1007-9599 (2012) 09-0166-02
制机制和四种超低功耗模式。 无线传感网络是具有信号采集,数据处理,无线通信等多种
(三)无线通信模块 功能,由部署在监控区域内大量小型传感器而组成。
该模块选用的是nRF24L01芯片,其具有全球开放ISM频段现在应用于实际中的无线传感器节点,多以MSP430为MCU
2.4Ghz免许可使用功能,最高工作速率2Mbps,高效GFSK调制,模块,nRF905为无线通信模块。这样可以满足低功耗,低成本的
内置硬件CRC检错机制,抗干扰能力强,低功耗1.9 – 3.6V工要求。但是,本身所选的MCU的计算能力不够,存储空间不够,
作,适合电池供电应用,具有自动应答机制,和CRC校验,数据需要扩展FLASH来存储数据。
通讯稳定可靠,通信距离在开阔地60m左右,室内30m左右。 本文依据功耗,成本,电源等多方面的要求,设计了一种使
nRF24L01芯片具有两种收发模式,分别为普通收发模式以及用nRF24L01为无线模块和意法半导体公司的超低功耗,高性能
特有的shockburst收发模式,本设计使用Shockburst模式。 的STM32L151为MCU模块的无线传感器节点。
Shockburst模式发射需要用到的接口引脚为CE,SCK,MISO。即: 一、硬件设计
1.CE置高,使nRF24L01工作。 该硬件模块主要包括传感器模块,处理器模块,无线通信模
2.将接收地址和待发送的数据按时序送入nRF24L01。 块,电源模块等四个部分。 3.CE置低,激发nRF24L01进行shockburst方式发射。 4.发射后,nRF24L01进入空闲状态。
Shockburst模式接收需要用到的接口引脚为CE,IRQ,SCK,MOSI。即:
1.配置本机地址和接收的数据包大小。 2.CE置高,进入接收状态。
3.200us后,nRF24L01进入监视状态,等待数据包
4.当接收到正确的数据包,nRF24L01自动把字头,地址和校验位移去 图1 硬件结构图 5.nRF24L01通过把IRQ(引起单片机中断)置高
(一)传感器模块 6.单片机把数据从nRF24L01读出 本设计是基于磁阻传感器的车辆检测器,磁阻传感器是利用7.数据读取完毕后,IRQ置低,此时,若CE高,则等待下一地球磁场在广阔的区域内有一定的磁场强度,当带磁物体通过个数据包,若CE低,则开始其它工作流程。 时,会引起地磁场的变化,从而通过传感器可以检测到由于磁性无线通信模块通过射频信号进行数据的接受与发送,处理器物体而引起的地磁场的变化。 通过SPI接口对模块进行控制。
传感器HMC1052测得的场强以差分信号的形式输出,分别经LMV358的两个放大器进行信号放大,放大后的信号送到处理器的ADC端口进行数据采集。
图2传感器电路
(二)处理器模块
STM32L151微控制器是基于Cortex-M3内核,意法半导体公司STM32F系列的升级,是众多要求高性能同时更关注节能应用的更佳选择。其内置了128K的FLASH,16K的RAM,超低的能耗至185A/DMIPS,24通道的12位ADC使传感器的模拟信号转换为处理器可以运算的,处理的数字信号。具有JTAG接口利于调试程序,2个SPI接口可方便的与通信模块对接,并且支持时钟控
图3 STM32L151与nRF24L01接口电路
(四)电源模块
由于在用于车辆检测方面,要求传感器节点体积小,安装方便。所以本设计选用电池供电,采用3.6v的干电池供电。为了达到节电的作用,处理器选用超低功耗模式,无线射频模块选用掉电模式,直到有数据处理和收发时激活模块。
二、软件部分
基于磁阻传感器的车辆检测无线节点主要由主控器
— 166 —
计算机光盘软件与应用
2012年第09期 Computer CD Software and Applications 软件设计开发
STM32L105实现实时采样,计算磁偏移量等工作。每个节点的单片机软件流程图如图4所示。每个下位机测量电路以及上位机都将接入无线通信模块来完成互相通信功能。 图5 节点中断程序流程
图4软件流程图
无线传感器网络节点(包括普通传感器节点和汇聚节点),遵循休眠,唤醒,正常工作的工作模式。系统在完成初始化后,进入低功耗休眠模式,等待被中断唤醒且执行中断程序,中断执行完毕后,系统回到中断前的状态,继续执行低功耗模式。节点的中断程序流程如图5所示。
(上接第165页)
Set DataGrid3.DataSource = sst3 End If 三、系统测试
软件测试是一项非常重要的工作。它在软件的整个生存期中占据重要的位置,对软件的运行具有极其重要的意义。本系统主要采用黑盒测试和白盒测试两种,测试情况如下:
(一)查询图书信息模块测试
测试内容:按照各种方式查询看能否列出图书信息。 操作:输入要查询的图书信息。 结果:正确的显示了图书信息。
结论:要查询的图书和图书信息表中的相应记录一致。 (二)查询读者信息模块测试
测试内容:按照各种方式查询看能否列出读者信息。 操作:输入要查询的读者信息。
结果:正确的显示出了要查询的读者信息。
结论:列出的读者信息和数据库读者信息表中相应的记录一致。
(三)添加借书信息模块测试
测试内容:借阅一本图书检查能否借阅成功。 操作:输入要借阅的图书信息。
三、结束语
本文利用STM32L151超低功耗、高性能单片机和nRF24L01无线通信模块实现了一种具有高灵敏感知到车辆对地磁场的变化,并从变化中提取车辆信息的网络节点,具有较高的可靠性和准确性。此外,该设计还具有体积小、安装方便、组网简单、易于维护等优点。通过实地综合验证,证明了该车辆检测无线节点对交通道路车辆检测具有实际的意义。
参考文献:
[1]孙利民,李建中.无线传感器网络[M].北京:清华大学出版社,2005
[2]杨俊刚,史浩山,段爱媛.无线传感器网络节点软件设计及实现[J].计算机测量与控制,2009,17(11):2306-2308
[3]赵海,赵杰,刘铮,等.一种无线传感器网络节点的设计与实现[J].东北大学学报:自然科学版,2009,30(6):809-812
[4]王永虹,徐炜,郝立平.STM32系列ARM Cortex-M3控制器原理与实践[M].北京:北京航空航天大学出版社,2008
[5]李希胜,于广华.各向异性磁阻传感器在车辆探测中的应用[J].北京可以大学学报,2006,28(6):577-590
[作者简介]朱武辉(1987-),男,长安大学电子与控制工程学院硕士研究生,交通信息工程及控制;王放 (1987-),男,长安大学电子与控制工程学院硕士研究生,交通信息工程及控制
结果:图书借阅成功。
结论:在图书信库存信息表中该图书的库存量减1,说明测试成功。
(四)添加还书信息模块测试
测试内容:归还一本图书检查能否成功。 操作:选择要归还的图书信息。 结果:归还成功。
结论:在图书信息表中该图书的库存量加1,说明测试成功。 四、总结
由于时间仓促,在这次程序设计的过程中,本软件还有不完善的地方,这有待我以后继续完善,恳请各位同行提出批评改进意见。
参考文献:
[1]刘圣才,李春葆.Visual Basic 6 程序设计导[M].北京:清华大学出版社,2002,7
[2]龚沛曾,陆慰民,杨志强.Visual Basic 程序设计教程 (6.0版) [M].高等教育出版社,2003,5
[作者简介]张蕴(1979-),女,本科,专业:信息管理与信息系统,研究方向:数据库系统设计
— 167 —
因篇幅问题不能全部显示,请点此查看更多更全内容