展开

通信工程论文范文浅论无线传感网络节点软件高效远程更新的技术研

发布时间:2014-03-25   |  所属分类:通信:论文发表  |  浏览:  |  加入收藏

  摘要:无线传感网络(Wireless Sensor Networks,WSN)是利用传感器获取被感知物理对象的信息,通过无线通信将获取的感知信息传送给远端的监控终端,并在通信中间环节或终端对数据进行压缩、融合、分析等处理的一种无线通信网络。WSN使用方便灵活,可以实现重大装备、交通运输等领域中的关键指标监测、安全预警等[1]。在无线传感网络中,节点负责感知、采集和处理感知对象的物理信息,是整个无线传感网络中最重要的一环,节点的软硬件研究是无线传感网络设计的重点。

  关键词:通信工程论文范文,论文发表网,无线传感,网络节点软件,高效远程更新,技术研究

  无线传感网络节点一般是被随机部署至恶劣环境中,不易取回。但节点的设计研究,尤其是软件部分,不可能是一步到位的,需根据使用者的需求及时的对节点软件进行更新[2]。传统的更新方法是取回节点,通过下载器对节点软件进行更新,该方法受设备、更新地点和操作人员的限制。

  目前较先进的更新技术是通过物理总线与无线设备协同作业将编译器生成的程序文件直接写入MCU的ROM中[3]。此方法只需节点与网关在应用层实现连接,无需对硬件做任何改动即可实现节点软件更新,但此方法存在可靠性低、传输效率不高等问题。针对此问题,本文基于MSP430F149单片机,设计了一种无线传感网络节点软件高效更新方法,本方法采取程序文件差异、可变格式传输比较等措施提高了数据传输效率,通过强制更新等措施提高了节点软件远程更新的可靠性。

  1 系统概述

  本无线传感网络由节点、网关、服务器、数据库、客户端等组成,其组成及结构如图1所示。

  节点的主控制器(MCU)采用TI公司的MSP430F149单片机,MSP430F149单片机是一款超低功耗的16位单片机,采用了精简指令集(RISC)结构,具有丰富的寻址方式和大量的片内存储器。MSP430F149的具有60 KB的程序ROM(FLASH)和2 KB的RAM,能够完全满足系统程序驻留和用户程序存储的要求[3]。

  MSP430F149的程序存储在FLASH中,其FLASH可在正常工作电压下擦写。因此只要对MSP430F149的FLASH的存储内容进行更新即可实现对节点软件的远程更新。本文为提高节点运行的可靠性,在FLASH中存储一个更新引导程序和两个应用程序。当某应用程序更新失败时,节点自动运行另一应用程序,从而保证节点的正常工作。

  对节点软件进行远程更新时,拥有管理员权限的用户首先向程序开发人员索取欲更新程序文件,然后在客户端通过节点远程更新软件将程序数据按照预定协议更新至节点的内部FLASH。节点的更新引导程序与客户端进行程序数据交互,完成节点软件远程更新。

  2 更新流程

  2.1 程序数据格式

  本文对MSP430F149的程序编译采用IAR公司提供的MSP430系列单片机的集成开发和调试环境IAR Embedded Workbench。其可生成txt格式程序文件,其样式如下:

  “@”后的“3000”表示后面的程序数据从3 000地址后依次写入MSP430F149的FLASH,每一个“@”对应一个中断向量,“q”表示程序文件结束。只需将程序文件里的数据按地址写入FLASH的相应位置,即可实现节点软件的更新[4?5]。

  2.2 节点软件更新流程

  节点正常情况下运行的是应用程序。用户欲对节点软件进行远程更新时,选中节点后,用户首先选取相应的程序更新文件,然后点击节点软件远程更新按钮。节点在收到更新命令后进入更新引导程序,并向上位机索要程序数据。上位机软件收到该命令后判断并下发相应的数据,判断是否更新完成。具体更新过程分为以下七步:

  (1)客户端发送节点远程更新命令。

  (2)节点收到更新命令后将更新标志位置1,回复后程序指针PC指向复位向量。

  (3)节点程序重新运行,检测更新标志位,跳转到更新程序后向客户端索要程序数据。

  (4)客户端节点远程更新软件读取、处理并发送程序数据。

  (5)节点解析程序数据,擦除相应的FLASH后写入新的程序数据并向客户端继续索要。

  (6)客户端判断程序数据是否全部发送完毕,如果发送完毕,则发送节点软件更新完成指令,否则继续发送程序数据。

  (7)节点判断是否为更新完成指令,如果是,则判断程序数据是否完整,并选择是否跳入新的应用程序;如果不是,则继续重复步骤(3)~(7)。

  3 高效更新设计

  程序数据在无线传输过程易受到电磁干扰,导致数据阻塞和丢失[1]。为提高传输效率,本文主要采用以下三种措施来提高节点软件远程更新的效率。

  3.1 程序文件差异比较

  一个小的程序文件可以从根本上减少远程更新时间、提高更新效率[6]。一般情况下对节点的软件进行维护更新时只是对部分功能进行更新,生成的新程序与节点正在运行的旧程序内容差异不大,没有必要对节点的程序进行完全更新。因此本文对节点软件进行远程更新时,首先对新旧程序文件进行差异比对,删除新旧程序文件中相同的内容,保留差异的内容,并重新计算差异内容在FLASH中存储的地址,从而生成数据量较少的程序文件

转载请注明来自:http://www.uuqikan.com/tongxinlw/7307.html


上一篇:通信工程师论文发表浅谈光端机配电网通信设计
下一篇:通信评职论文发表浅论通信专业核心技能的改革