




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 / 8试 析基于 MantisOS 的无线传感器网络应用开发模型论文关键词:无线传感器网络MantisOS软件工程 论文摘要:无线传感器网络是当今信息领域新的研究方向,应用前景十分广阔。考虑无线传感器网络的应用相关性,总结无线传感器网络应用程序开发研究经验,引入软件工程思想,提出一个无线传感器网络应用开发过程模型,可以提高开发速度和开发质量;随后给出了一个在Manti-sOS 下开发应用程序的技术模型,降低了使用MantisOS 的线程管理机制开发多任务应用程序可能出现的线程上下文切换开销。 0 引言 无线传感器网络(wirelesssensornetwork,WSN)就是由部署在监测区域内大量的廉价微型传感器节组成,通过无线通信方式形成的一个多跳的自组织的网络系统,其目的是协作地感知、采集和处理网络覆盖区域中感知对象的信息,并发送给观察者。无线传感器网络在军事、环境监测和预报、医疗、农业、采矿及智能家居、城市交通等领域的应用前景非常广阔,已经成为近年来信息网络的一个研究热2 / 8点。 无线传感器网络操作系统实现对物理资源的抽象,并管理有限的内存、处理器等资源,是无线传感器网络领域的一个研究重点。目前,具有代表性的无线传感器网络操作系统有 TinyOS,MantisOS,SOS,Contiki,EYESOS 等,其中,TinyOS 是实际上的传感器网络节点操作系统标准,TinyOS和基于 TinyOS 的应用基本上用 nesC 语言编写,把组件化、模块化的思想和基于事件驱动的执行模型结合起来,提高了应用开发的方便性和应用执行的可靠性。MantisOS 的内核和 API 用标准的 C 语言编写,对于应用程序开发人员来讲,不需要学习新的语言。但由于没有开发模型可供参考,给开发人员带来很大的不便。将无线传感器网络应用开发的特点和具体的开发环境结合起来,提出了一个基于MantisOS 的 WSN 应用开发模型,由一个融人软件工程思想的通用的开发过程模型和一个基于 MantisOS 的单线程多任务技术模型组成。 1MantisOS 美国科罗拉多大学开发的 MantisOS 是一个以易用性和灵活性为目标的无线传感器操作系统,支持快速、灵活地搭建无线传感器网络原型系统。在易用性方面,MantisOS 以很小的内存需求实现了典型的分层操作系统结构(如图 1 所3 / 8示),支持多线程、抢占式调度和同步信号量、设备驱动的典型服务,并使用 C 语言作为整个内核及 API 的编程语言,从而获得良好的跨平台开发和代码重用支持,降低了原型开发的难度。MantisOS 的网络协议栈采用用户线程的形式,充分考虑了性能和灵活性的折中。目前,一个包含多线程可抢占调度器、标准 vo 同步支持以及网络协议栈的MantisOS 内核,对 RAM 的需求不到 SOOByte(不包括线程栈),对 Flash 的需求约 4KB。 2WSN 应用程序开发模型 开发平台及工具 WSN 应用程序开发的硬件平台包括传感器节点,如MICA2,MICA2DOT,nymph 等,传感器板,编程板,PC 机及串口连接线等。如图 2 所示。其中,传感器节点上集成了处理器和 Flash 存储器,传感器板上集成了通用的传感技术,用于采集温度、光线等环境数据,编程板用来将应用程序导人节点,PC 机通过串口连接线读取节点的数据,然后对节点数据进行分析。 WSN 应用程序开发的软件平台是在 UNIX/Linux 环境中下4 / 8载 MantisOS 工具包及 MantisOS 系统源码进行解压安装,并设置相应的系统环境变量。应用程序代码编写工具可用记事本、文本编辑器等。 开发过程 依据软件工程的思想,结合无线传感器网络及嵌人式系统开发的特征,总结在开发无线传感器网络应用过程中的经验,形成了如图 3 所示的 WSN 应用程序开发过程,遵循这个过程,可以提高开发速度和提升开发质量。整个开发过程分为分析、设计、实现和测试四个阶段。 分析阶段 整个开发过程始于分析阶段,这个阶段显示系统应该做什么。系统分析员定义需求,指出系统要实现的目标,WSN应用程序的系统分析阶段有三个步骤:定义应用环境、定义要求、定义系统需求。无线传感器网络是应用相关的,不同的应用背景对传感器网络的要求不同,其硬件平台、软件系统和网络协议必然会有很大差别,在开发传感器网络应用中,更关心传感器网络的差异川。因此,在分析阶段,要分析具体的应用背景及用户或用户代表对系统的期望,5 / 8并给出明确的定义,在此基础上分析员要能够准确地定义系统的需求。只有让系统更贴近应用,才能做出最高效地目标系统。例如要开发一个防火监控系统,应对节点能耗、报警及安全等问题作出明确定义。 设计阶段 设计阶段定义系统怎样完成在分析阶段所定义的需求。依据分析阶段定义的系统需求,设计选用适合目标系统的硬件平台、软件系统等。如在防火监控系统开发中,可以选用 MICA2 节点和 MantisOS 分别作为目标系统的传感器节点和软件平台。然后使用模块化原则,使用结构图将系统应用程序先划分为较小的部分,以便能够容易理解和处理。在模块划分的过程中,要尽量达到模块间的松散藕合,以提高可重用性,使维护修改更容易,实现新的用户需求。 实现阶段 在实现阶段,要完成系统软硬件平台的定制和创建实际的程序。根据目标系统的设计和需求,定制传感器节点的功能,并对 WSN 操作系统(软件平台)进行裁减,剔除开发目标系统所不需要的部分,以节省有限的空间,提高系统运行效率。 6 / 8使用流程图或伪代码将应用程序模块间的数据逻辑流程表示出来,然后开始使用指定或选定的语言编写程序代码。语言的选择是基于系统开发所使用的软件平台,即 WSN 操作系统。如在 TinyOS 下使用 nesC 语言,而在 MantisOS 下则使用 C 语言。最后在 UNIX/Linux 环境中进行调试。 测试阶段 将编译成功的应用程序导人节点进行测试。白盒测试是程序员的责任,必须确保每一条指令和每一种可能的情况都已经被测试过,需要构造多组测试用例来验证应用程序。当目标系统构建完毕,测试工程师通过利用系统需求和他的系统开发知识以及用户的工作环境来产生测试计划对整个系统进行测试,以确保所有的应用程序能够在一起工作。技术模型 无线传感器网络操作系统实现对物理资源的抽象,并管理有限的内存、处理器等资源。不同的操作系统的实现机制和策略不尽相同,如 TinyOS 操作系统在软件体系结构上体现了事件驱动模式和组件化编程技术,但没有区分用户和内核模式,没有提供内存保护机制。而 MantisOS 是一个支持无线传感器网络快速构建的多线程嵌人式操作系统,7 / 8支持多模态原型以及传感器节点动态重编程、远程调试 70因此,在不同的操作系统上开发具体应用,必须充分考虑各个操作系统的技术特点,充分发挥其优势,开发出高效的应用程序。 这一部分给出了在 MantisOS 平台上开发应用程序的一个技术模型,如图 4 所示,采用队列结构来实现单线程多任务,降低了多线程多任务所可能出现的线程切换开销,适合传感器节点能源、内存等资源十分有限的特点。 在这个模型中,定义一个任务队列结构,每个应用程序创建一个线程,线程启动时初始化任务队列,并对队列进行管理。每隔一定时间间隔,检查队列中是否有任务到达,如果有任务,则启动任务执行,完成后将该任务从队列中删除;如果没有任务,线程睡眠。共享缓冲区用于数据的接收和发送或节点其他参数的存储和处理。 3 结束语 无线传感器网络的应用前景十分广阔,基于 MantisOS 的无线传感器网络应用开发研究的基础上,引人软件工程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度样板房样板间租赁与展示协议
- 2025年金融机构安全防护服务合同范本
- 2025年度物联网创业借款合同范本模板
- 2025版体育设施委托代建管理协议
- 贵州省大方县2025年上半年事业单位公开遴选试题含答案分析
- 2025版室外地面铺砖施工进度跟踪合同
- 2025年度房产买卖及社区配套服务协议
- 2025年度建筑测绘简单合同范本
- 2025版税务局税收筹划与税务筹划支持合同
- 2025贷款反担保协议范本:跨境电商贷款反担保示范
- 九年级《道德与法治》(上册)教学计划及教学进度
- 商场租户撤场协议书范本
- 九年级上册英语书译林版单词表
- 车库业主与租赁者安装充电桩协议书
- 园林工程竣工验收与养护期
- 儿童感觉统合能力发展评定量表
- 《养老护理员》-课件:协助老年人如厕
- 丙酸丙酯的分离工艺
- 二维层状材料的堆叠效应
- 审计资料交接清单
- 从业人员晨检记录表
评论
0/150
提交评论