一种基于GPS技术的新型无线传感网络节点设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一种基于GPS技术的新型无线传感网络节点设计
袁浩
【摘要】针对无线传感网络节点定位的需要,文章给出了一种基于高性能先进精简指令集机器(ARM)STM32系列微控制器,GPS模块以及CC2420射频通讯模块构成的新型无线传感网络节点的设计方案,分析了采用STM32微控制器性能优势,以及GPS坐标数据提取方法;文章给出了系统组成设计;重点阐述了节点的硬件设计,以及接收GPS模块数据的处理程序设计.
【期刊名称】《自动化与信息工程》
【年(卷),期】2009(030)001
【总页数】3页(P46-48)
【关键词】ARM;无线传感网络;节点;定位;GPS
【作者】袁浩
【作者单位】广东工业大学信息工程学院
【正文语种】中文
【中图分类】TN92
无线传感网络已大量用于各个领域,位置信息在无线传感网络监测过程中是相当重要的信息。
例如,目标跟踪、入侵检测、环境监测、结构健康监测[1]等,而且在某些特定应用中需要对节点进行大范围精确定位。
然而目前节点定位普遍采用无线信号强度,同时配合发射接收角度对位置进行估算。
无法精确定位。
为解决这个问题,从硬件设计角度提出一种新的温度监测无线传感网络节点设计方案。
由于
GPS技术的发展使得其芯片功耗和成本进一步降低,为GPS技术利用于无线传感网络定位提供了有利条件。
GPS系统具有定位精度高,实时性好,抗干扰能力强
等特点。
本方案采用了新型的微处理器和 GPS模块,比以往节点能耗更低,并能
提供精确的节点位置信息。
本设计方案中节点具有温度监测功能且能提供精确的自身位置信息。
节点由5个
单元组成,其系统框图如图1所示。
2.1计算处理单元
计算处理单位微控制器作为核心,负责收集由传感器采集到的信息,并将所得数据进行处理后送往无线模块发射出去。
作为接收端时,为了降低节点的能耗,要求微控制器采用事件驱动方式发送,即收到有效数据时工作,其他时间转入休眠,以降低功耗。
目前节点微控制器比较常用的是ATmage128L。
通过表1可知由于采用STM32F103微处理器,节点可以在更低功耗下,获得更强的处理能力,STM32
具有电压监控功能。
方案中采用的STM32系列32位闪存微控制器基于突破性的ARM CortexTM–M3内核,这是一款专为嵌入式应用而开发的,最高工作频率
72MHz,1.25DMips/MHz,具有非常高的速度功耗比。
单周期乘法和硬件除法。
同时,片上资源相当丰富。
存储器:从256k至512k字节的闪存程序存储器,高达64k字节的SRAM,带4个片选的存储器控制器。
支持CF卡、SRAM、PSRAM、NOR和NAND存储器。
时钟、复位和电源管理。
2.0~3.6伏供电和
I/O管脚。
上电/断电复位(POR/PDR)、可编程电压监测器(PVD)。
具有睡眠、停
机和待机模式。
有 VBAT为RTC和后备寄存器供电。
3个12位模数转换器,1μs 转换时间(多达21个输入通道) 转换范围:0至3.6V三倍采样和保持功能。
温度
传感器为2通道12位D/A转换器。
2.2通信单元
CC2420是 Chipcon公司推出的一款符合IEEE802.15.4[3]规范的2.4GHz射频芯
片。
CC2420的主要特点:低电流消耗,接收19.7mA, 发射17.4mA;低电源电压要求;使用内部电压调节器时2.1 V ~3.6V,可编程输出功率;独立的128字节发射、接收数据缓冲器;该芯片具有极低的电流消耗和封装尺寸,可以满足无线传感网络中节点功耗小、体积小、成本低等特点。
CC2420通过4线SPI总线(SI、SO、SC LK、CS_)设置芯片的工作模式并实现读写缓存数据[4]。
STM32F103通过SPI接口与CC2420进行数据传输,数据传输过程中,STM32F103工作于主设备模式,CC2420工作于从设备模式。
整个节点通过CC2420与外界通信[5],STM32 与CC2420的接口电路如图2所示。
2.3 GPS 单元
GPS系统基本工作原理:GPS系统主要包括有三个部分组成,即空间卫星部分、地面控制部分和用户接受部分。
GPS系统的空间部分由24颗GPS工作卫星所组成,均匀分布在6个轨道面上。
地面控制部分是整个系统的中枢,它由分布在全球的一个主控站、三个信息注入站和五个监测站组成。
用户设备部分则是由GPS 卫星接收机硬件GPS数据处理软件构成。
GPS卫星接收模块能够捕获到按一定卫星高度截止角所选择的待测卫星的信号,并跟踪这些卫星的运行,对所接收到的GPS信号进行变换、放大和处理,最后根据测量出 GPS信号从卫星到接收机天线的传播时间和解译出 GPS卫星所发送的导航电文,实时地计算出观测站的三维位置[2]。
本设计硬件连接图见图3。
设计中直接利用GPS卫星接收模块获取定位信息。
GPS模块与STM32F103采用异步串行方式通讯。
硬件连接上只需连接两个信号线TXD、RXD即可进行数据传输。
2.4 GPS数据格式
本设计方案中的 GPS模块遵循美国国家海洋局电子协会(National Marine Electronics Association)制定的NMEA-0183V20通信标准格式。
该模块数据帧格式为:8位数据位,1位停止位,无奇偶校验。
波特率设为4800b/s。
输出基于
NMEA0183的ASCII码,包括GGA,PLL,GSA,GSV,RMC,VTG,MSS等,各语句作用见表2。
根据这些定位语句不仅可确定位置,速度,时间等信息,还可指出当地的卫星接收情况。
RMC是Recommended minimum specific GNSS data的缩写。
是推荐
使用的GPS信号格式。
表3给出该数据格式的具体说明。
下面举例说明,假设有
如下RMC语句。
$GPRMC,161229.487,A,3723.2475,N,12158.3416,W,0.
13,309.62,120598, ,*10。
则可以知道经度为12158.3416°,纬度为3723.2475°。
2.5 GPS数据处理软件设计
系统软件总体流程为:首先初始化系统,设置好微处理器的各功能引脚,启动温度传感,启动串口通信,然后进入中断等待。
由于默认状态下,GPS接收模块每隔
一秒发送一次上述6种语句信息,从表2中可知,GPRMC语句是可以提供基本
定位信息的语句,所以接受程序的主要任务是从上述6种语句信息中识别出GPRMC语句并从中提取定位信息。
首先在这6种语句接收放到字符数组str[]中,然后将GPRMC语句提取放入substr[]中,下面是具体的代码实现:
char substr[]="GPRMC";
char substr2[69];
char *p;
int n=0;
p=strstr(str,substr);
while(*(p+n)!='$')
{
substr2[n]=*(p+n);
n++;
}
利用C语言库函数,可以得到字符数组str[ ]中”GPRMC”首字符所在的地址[6],将这个地址赋给字符指针p,然后通过字符指针p向substr2[ ]字符数组中填入GPRMC语句字符,直到遇到下一个字符”$”。
这样得到的字符数组substr2[ ]
里面就存放了GPRMC语句信息。
GPRMC语句说明见表3。
这样便可根据RMC
语句的格式确定GPS定位信息。
本文提出了一种新型的具有温度监测功能的无线传感网络节点,该节点能够利用GPS技术对自身位置精确定位,同时,能够监测环境温度。
由于GPS
信号在室外能够更好的接收卫星信号,所以特别适合一些室外监测应用,森林火灾监测,环境温度监测等。
由于采用STM32F103微控制器,内部集成了温度传感
功能,所以作为温度监测的节点来说无需另外再接温度采集模块,有效的降低了成本,提高了可靠性。
【相关文献】
[1] Sukun Kim, Pakzad, S.Culler, D.; Demmel, J.; Fenves, G.; Glaser, S.; Turon, M. Health Monitoring of Civil Infrastructures Using Wireless Sensor Networks, Proceedings of the Sixth International Symposium on Information Processing in Sensor Networks, 2007: 254-63
[2] [美]Elliott D Kaplan.GPS原理与应用[M].北京:电子工业出版社,2002: 5~10
[3] 黄双华,赵志宏,郭志,等. Zigbee无线传感网络路由研究与实现[J]. 电子测量技
术,2007,30(2):59~61,64
[4] 秦书波,徐中伟. 基于LPC2103的无线传感网络节点设计[J].国外电子元器件,2007( 3):24~
26,30
[5] 郑贵林,贾艳利. 基于MPS430F149无线传感网络节点的设计[J].武汉大学学报,2006,39(6):89~91
[6] 袁林,曹杰. 利用VC++实现GPS全球定位系统定位数据的提取[J]. 现代电子技术,
2004,27(24):105~107
袁浩,男,1981年生,硕士研究生,研究方向:嵌入式技术与无线传感网络的研究。