[互联网]无线传感器网络操作系统应用.doc

上传人:sccc 文档编号:4662799 上传时间:2023-05-05 格式:DOC 页数:53 大小:1.89MB
返回 下载 相关 举报
[互联网]无线传感器网络操作系统应用.doc_第1页
第1页 / 共53页
[互联网]无线传感器网络操作系统应用.doc_第2页
第2页 / 共53页
[互联网]无线传感器网络操作系统应用.doc_第3页
第3页 / 共53页
[互联网]无线传感器网络操作系统应用.doc_第4页
第4页 / 共53页
[互联网]无线传感器网络操作系统应用.doc_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《[互联网]无线传感器网络操作系统应用.doc》由会员分享,可在线阅读,更多相关《[互联网]无线传感器网络操作系统应用.doc(53页珍藏版)》请在三一办公上搜索。

1、南昌工程学院本科毕业设计(论文)南 昌 工 程 学 院毕 业 设 计 (论 文) 信息工程学院 系(院) 计算机科学与技术 专业毕业设计(论文)题目 无线传感器网络操作系统应用 学生姓名 刘名慧 班 级 08计算机科学与技术 学 号 2008100810 指导教师 刘有珠老师 完成日期 2012 年 5 月 28 日无线传感器网络操作系统应用无线传感器网络操作系统应用The application of TinyOS总计 毕业设计(论文) 42 页 表 格 2 个插 图 40 幅南昌工程学院本科毕业设计(论文)摘 要无线传感器网络(WSN)是在需要的区域范围中撒播大量的固定或移动的节点传感器,

2、然后通过自组织和多跳路由的办法连接起来,组成的无线网络。其作用是为了感应监控区域中的监测信息,收集处理并传输需要的监测数据,然后对数据进行融合加工并传送给监测者。这样就可以使得用户在随时随地了解到监控区域的所有自己感兴趣的详细数据。为做出的判断提供理论依据。WSN主要采用的技术有嵌入式计算技术、通信技术、传感器技术及分布式信息处理技术等,是时下最流行、最受关注的新一代科学技术。它是当代前沿科技的代表。应为WSN将这些技术融合在了一起。不管是人与人之间还是人与物亦或是物与物之间,我们都能通过这项技术实现计算和通讯。TinyOS是由美国某高校研发室开发,主要针对MICA系列节点的WSN嵌入式操作系

3、统,由于它的源码公开,所以随着传感节点的发展和推广,别的系列节点也由此借鉴,只要做一些适当的修改和创新,就可以将其应用于其他节点上。关键词: 无线传感器网络 传感器技术 TinyOS 通信技术南昌工程学院本科毕业设计(论文)AbstractWireless sensor network (WSN) is in the area where we need put a lot of random fixed or mobile node sensor, and then through the organization and connected to jump routing, that we

4、 composed of a wireless network. Its role is to sensing monitoring of the area of the monitoring information, collection and handling and transmission of data to monitor, and then the data fusion processing and transmitted to the monitoring. This can make users no matter he is at anywhere or anytime

5、 to understand that you are interested in detailed data in all the monitored area. For our judgment to provide the theory basis. The technology is mainly by WSN embedded computing technology, the communication technology, the sensor technology and distributed information processing technology, is th

6、e most popular, the most concern of a new generation of science and technology. It is the representative of the contemporary cutting edge technology. Should these technology integration of WSN together. Whether people and things or people and things or the thing between, we all can pass this technol

7、ogy to computing and communications. TinyOS is a university in the United States by the workshop development, mainly in MICA series of WSN nodes embedded operating system, because of its source code open, so with the development of the sensor node and the promotion, other series node has thus refere

8、nce, as long as do some modifications and innovation, it can be applied to other nodes.Key Words: Wireless sensor network; sensor technology; TinyOs; communication technology南昌工程学院本科毕业设计(论文)目 录摘 要IAbstract目 录III第一章 引 言11.1无线传感器网络概述21.1.1无线传感器网络的发展历史21.1.2无线传感器网络的定义和特点21.2课题研究的动态与背景31.3WSN的体系结构31.4WS

9、N的应用与前景需求4第二章 基于TinyOS的WSN平台72.1泛在系统模式72.2节点的创建82.3System Configuration 系统配置9第三章 无线传感网络操作系统103.1TinyOS简介103.2TinyOS的特点113.3TinyOS组件介绍11第四章 nesC语言124.1nesC语言简介124.1.1nesC语言重要术语134.2TinyOS中的重要概念134.3NesC 的移植14第五章 ZigBee无线通信技术及其应用155.1Zigbee发展概况155.2Zigbee标准165.3ZigBee与几种无线传输技术165.3.1蓝牙(BlueTooth)165.3

10、.2Wi-Fi(IEEE802.11)165.3.3IrDA175.3.4ZigBee175.4几种常用无线通信方式性能比较175.5ZigBee与IEEE802.15.4的区别195.6TinyOS和ZigbeX195.6.1ZigbeX的配置195.6.2连接ISP接口235.6.3USB驱动235.7ZigbeX II的组成和通信255.7.1传感器节点255.7.2微控制器265.7.3射频调制解调器265.7.4传感器节点265.7.5直接序列扩频275.7.6频分多址27第六章 开发过程、数据分析及结果286.1TinyOS 开发环境286.1.1TinyOS开发环境286.1.2

11、集成开发环境286.1.3安装ZigbeX Studio开发环境286.2TinyOS开发流程介绍316.3具体实例数据分析、结果346.3.1项目架构346.3.2创建项目356.3.3创建组件实例356.3.4创建接口实例366.3.5描述关系366.3.6实现函数366.3.7运行结果38结 语40参考文献41致 谢42南昌工程学院本科毕业设计(论文)第一章 引 言自从第三次科学技术革命以来,计算机开始进入人们的日常生活,随着时代的发展,计算机无论在软件还是在硬件上都有了飞速发展,运算速度和智能化得到明显提高,但信息的获取和采集方式却跟不上需要。因此,融合了传感器技术、嵌入式计算技术和分

12、布式信息处理技术和无线通信技术的无线传感器网络便应时代的需要而产生。无线传感器网络的诞生掀起了一场PC时代的革命。无线传感器网络(WSN)是指在我们需要的区域范围中撒播大量的固定或移动的节点传感器,然后通过自组织和多跳路由的办法连接起来,组成的无线网络。其作用是为了感应监控区域中的监测信息,收集处理并传输需要的监测数据,然后对数据进行融合加工并传送给监测者。这样就可以使得用户在随时随地了解到监控区域的所有自己感兴趣的详细数据。为我们的判断提供理论依据。无线传感器网络结构如图1-1所示,因其独有的特点使它无论是在军事、还是民用(像工业、农业、环境医疗监测)领域都有着极其广泛的应用。WSN的特征主

13、要集中在:第一,无线传感器网络是一种嵌入式系统,可以提供分布处理,因此具有动态性和适应性;第二,它由大量的小型或微型感应节点构成,中心应用为通讯。特点表现在灵活、自由组织上,但严重限制了资源,并需要长时间的单任务串行处理与实时处理并存,同时要求在大部分时间保持低功耗状态。它是一种特殊通信网络,网络节点密集、通信自由组织。上述这些特点需要一个专门的软件系统来管理各硬件资源,以求最大限度地减少通讯功耗和算运功耗,这便就是TinyOS。图1-1 无线传感器网络结构1.1 无线传感器网络概述1.1.1 无线传感器网络的发展历史无线传感器网络第一阶段最早起源于冷战时期美国军方的一个项目,当时这个项目主要

14、是布置大量的传感器在海水中,用来监测敌方潜水艇,运用的技术是点对点传输。因为当时技术水平有限,传感器网络当时只具备获取数据的能力,所以难以进行推广应用。这是第一代传感器网络;伴随着相关科学技术(计算机技术和通信技术等)的日益发展和成熟,传感器网络被赋予了获取各种信号的综合处理能力,然后通过网络把传感器连接起来,便组成了有综合分析和处理能力的无线网络,我们就把它统称为第二代网络;再到了上世纪九十年代末期,总线技术开始出现,并应用于传感器网络上,智能传感器也实现了由现场总线连接传感器控制器构成了局域网,我们通过这种方式连接起来的具有一定智能的网络,具有多种功能。由此,无线传感器网络便慢慢的形成了。

15、也就是被称为第三代的传感器网络;近几年,各方面科学技术快速发展,为无线传感器网络的进一步发展提供了条件,使它渐渐走进了我们的生活,这就是新兴的第四代传感器网络。1.1.2 无线传感器网络的定义和特点Tiny0S的研制者给出了无线传感器网络的定义:SensingCPURadioThousands of potential application;中国的研究人员认为:无线传感器网络是由大量的节点传感器通过自组织、多跳路由的方式构成的网络,目的为了感应监控区域中的监测信息,收集处理并传输需要的监测数据,然后对数据进行融合加工并传送给监测者。无线传感器网络通常可以理解为一个数据获取网络加上一个数据分布

16、网络和控制管理中心。无线传感器最主要的部分为数据集成采集单元、数据处理单元、无线数据收发单元和小型电池单元,一般尺寸小,成本较低、功耗也低、功能却多的特点;各传感器会把自己采集到的数据发送到数据汇聚中心进行处理、优化,然后传输给信息中心进行进一步分析。它是通过传感器中的探测功能实现对所在范围的温湿度、光照、压力压强等参数的监测,各节点会连接起来组成一个分布式网络,并将检测的数据经由无线电波送至信息处理中心进行分析、处理和转发。无线传感器网络是在特定地点或空间中安装各种传感器节点,采集周围环境和目标的传感数据信息。不同于现有主要面相通讯的网络,无线传感器网络自动采集终端信息,射频技术和小型传感器

17、节点是实现无线传感器网络的重要先决条件,但是射频技术可能会需要比传感和数据处理消耗更大的电源量进行无线通信,因此我们必须考虑环境操作因素。1.2 课题研究的动态与背景作为一项世界前沿的技术,无线传感器网络引起了全球范围的关注。最早开始进行相关研究的是美国军方,代表有C4KISR计划等。国际上许多大型研究机构和高等院校也都不甘落后,先后投入到该领域中进行研究工作,像Intel早在本世纪初就进行了基于微型传感器网络的新型计算发展规划,主要致力于研究WSN在医学、环境监测、大陆板块调查、空间探测领域的应用。美国Dust Networks和Crossbow Technologies等公司的“智能尘埃研

18、究已经成功到了应用测试阶段。现在,科学研究者们主要致力于高空监控跟踪检测以及工农业方面监控的实现,并有相当一部分技术已经成熟。NASA的JPLf实验室的Sensor Webs项目正在研究将WSN应用于未来的火星探测上,通过传感器探测监,视查外太空星球地表的环境状况,为以后人类的登陆作准备。国内大部分公司和企业在该方面主要研究大棚蔬菜温度监控,煤气抄表等领域因此,我们可以说国内关于传感器网络方面的研究只是在起步的阶段。尽管如此人们也尽力使WSN产品化,逐渐让它融入我们的生活。目前对WNS的研究还存在缺陷,在操作系统方面的研究十分少。其实,操作系统实现了对物理资源的抽象,并管理有限的内存、处理器等

19、资源,它的高效性与灵活性直接影响到系统性能,因此对于节点上操作系统的研究是非常有必要的。这也是个意义深远的课题,需要我们做出大量的理论和实践。无线传感器网络在各方面都与传统嵌入式系统有着巨大的差别,因此传统的以实现硬件资源访问控制为主的嵌入式系统就不适合传感器网络节点的要求了,所以急需开发出一款新型操作系统。近几年来,有很多操作系统被提出,其中最具代表的是TinyOS。操作系统按照内核调度策略分成两类:一类是非抢占式操作系统,另一类是抢占式操作系统。TinyOS属于前者。另外,操作系统还做一些必须的扩展扩充。鉴于操作系统是新兴的研究课题,目前没有相应的规范标准,所以难免有一些地方做的不到位,并

20、且应用需求和设计目的也在不断变换,操作系统被要求时时更新。1.3 WSN的体系结构最具代表性的WSN网络是层次型网络,它由分布在我们所需要监测区域中的节点传感器,构成网络的汇聚节点,和传输网络组成。我们需要的数据时通过在需要的检测区域内撒播大量的传感器节点组成的分布式网络,然后传感器节点将采集到的信息由网络传送到汇聚点,汇聚节点再将接收到的数据经过基站传送给主机,主机又将传感数据发送到终端的数据处理中心。传感器节点是组成WSN最重要的基本单元。它的主要目的是为了感应、收集信息并发送给终端。传感器节点通常包括四部分:传感单元、处理单元、无线收发单元和电源单元。其组成结构如图1-2:图1-2 传感

21、器节点结构组成1.4 WSN的应用与前景需求由于目前技术方面还不纯熟,WSN还难以大范围的投入使用。但近几年来计算机的发展也给它带来了机遇。目前无线传感器网络的应用有以下几个方面:1军事领域首先,通过一定方式将大量微型传感器节点布署到战场上(通常用飞机播撒或者火炮发射),然后节点附近的各种数据(如温湿度、声音等)进行收集,最后经由网络传至信息处理中心进行分析,随时了解战场动态,以掌握敌我军情,为进攻和撤退提供可靠的根据。如图1-3所示:图1-3 WSN军事领域应用2医疗护理无线传感器网络医疗护理上也发挥着巨大作用。通常用来测量每天24小时的血压、脉搏、呼吸等。同时也方便护理老年人和智障人士。从

22、而达到减轻护士的压力和负担。3环境的监测和保护近年来,环境问题越来越受人关注,用WSN进行环境监测,采集数据,如图1-4所示具有很多优点。它能有效避免在采集数据时对环境的破坏。从而达到保护环境的目的。图1-4 环境的监测4其他应用领域除此之外,WSN还有广泛应用。工农业、交通、高空作业等领域如图1-5所示都可以通过WSN来实现。这样既省人力有能防止危险发生。图1-5 WSN在农业上的应用综上所述,WSN的未来十分广阔,目前在各领域露出的只是冰山一角,以后一定会融入到我们生活的各个方面。同样,WSN作为一项意义深远、影响重大的前沿科学技术,它还存在着许多不足等待着我们解决。我们在对该领域的前景进

23、行了适当研究调查后,对重要的需求和趋势归纳如下: 1真正实现电子信息化需要WSN实地数据的采集和监控。传统的有线传感只能用在布线相对容易的短距离空间,而对很多长距离的监控无能为力。以前的传感器需要布线,同时传感器之间难以互相通信,制约了这种应用,现在这问题就好解决了。但是这种无线监控最大的问题是它不如有线传感器可靠。2. WSN为各种监控提供了先进的技术手段。用于生态环境、农作物生长环境、城市交通的监控等。大量的WSN节点的冗余可以提高节点的可靠性,但是它们需要相当长时间处于不维护的状态,因此电池的寿命就成了这种应用的关键。3. WSN也可用于监测特殊或危险物品。这些对物品的监测要求很高的可靠

24、性,而且要求低功耗以达到维持工作到所需时间的目的。39南昌工程学院本科毕业设计(论文)第二章 基于TinyOS的WSN平台TinyOS 是一种适用于泛在系统环境的WSN(无线传感器网络)技术,由Intel-UC Berkeley实验室开发,是开源项目。2.1 泛在系统模式泛在系统如图2-1所示,已经发展到可以在任何时间地点选择发送必要的信息和知识,已经跨过了只为人类取得信息阶段,开始从为人类到为对象的变化。1. 第一阶段,从为人类变成为对象。这一阶段在无人干预的情况下从一台机器到另一台机器之间管理工作。举例来说,为了交纳燃气和水费,抄表员需要挨家挨户打电话通知并查表,然后把数值记录在计费系统来

25、统计费用。现在抄表员多数使用移动终端如PDA 等在用户家中直接将使用数值记录下来。当他在用户家中输入数据时,系统就会自动实时或者批量处理输入的数据。当然抄表员也需要其他的帮助。第一阶段设立了无需帮助直接从表发送数据到计费系统的目标。_ T2T(Thing to thing or Internet of the thing) 物体到物体或因特网到物体_ M2M(Machine to machine) 机器到机器_ O2O(Objects to Object) 对象到对象_ U2O(Ubiquitous to Object) 泛在系统到对象_ U2T(Ubiquitous to thing) 泛在

26、系统到物体2. 第二阶段,从对象获取必要信息机器会产生我们无法想象的巨大的数据类型。不必要的数据不应该被收集或是在收集阶段应该被删除。第二阶段设立了基本知识基础为人们过滤数据的目标。_ T2P(Thing to person) 物体到人_ O2P(Object to Person) 对象到人3. 第三阶段,随时随地选择必要的信息或知识最后一个阶段设立了泛在系统的目标,在这个系统中,我们可以随时随地使用从对象网络中收集到的信息。_ Ad-Hoc Network ad-hoc 网络_ Compact Sensor Note 紧凑型传感信息_ Mass Storage Data Processing

27、 Technology 大规模存储数据处理技术为了实现泛在系统的最后一个阶段我们需要网络与所有对象相互沟通、去获取数据,需要大规模存储数据处理技术来对收集到的海量信息进行再加工,无线传感器网络提供了网络和传感技术的双重优势。图2-1 泛在系统2.2 节点的创建我们知道传感器网络通过使用Mote节点监控着外部环境,那就需要超乎想象的Mote节点才能大量的收集数据。因此,节点便成了重中之重。1. 开放合作研究合同Intel 和UC 伯克利大学签约开放合作研究,该研究基于共同所有非排他性原则,其目的是扩大无线传感器网络市场。由于基于Linux,所有的软件可以快速的在开放环境下开发并按照开源规则发布。

28、2. Mote 节点无线传感器网络需要向外发送控制信号或传感器数据,这通常是再不用其他电源的情况下几天甚至几年仅使用电池供电,所以从硬件层面来说,Mote节点具有低通信速率和低功耗的特性。拥有一个简单的温度湿度传感器和CDS 传感器的Mote节点已经有两种被研发出来,名字是Mica和Telos,他们的区别在于处理器的不同。Mica基于Atmel公司的ATmega128L,具有流行的开源开发环境并且功耗很低,Telos基于TI的MSP430,在提供很高性能的同时保持了极低的功耗。射频部分由Chipcon公司的CC1000提供,基于IEEE802.15.4协议的物理层和MAC层标准。但是在升级的M

29、ote节点中CC1000会被性能更高的CC2420所替代,Chipcon也在逐步取代TI。Intel和UC伯克利大学的Mote节点正在逐步的更新,使用改进的射频部件并添加不同的传感器作为可选配置,同事还具备基础的Mica和Telos架构。目前Mica系列和Telos系列的各种产品正在逐渐的走向市场。3. 创立TinyOSMote节点的固件通常使用C语言开发,当在两个平台之间切换时就很容易产生问题。支持其它处理器会造成软件复杂度的增加,也导致了维护和除错的困难。对传感器和射频组件的改变或添加会导致C语言处理的力不从心。更有甚者,C语言是传统的顺序执行语言,我们需要有很高的C语言编程技巧才能实现诸

30、如有效地分开执行处理未定义的传感器相应或者是模块化编程以提高复用性。UC伯克利大学开发了nesC,这是一种由C语言扩展出来的网络嵌入式系统语言,同时他们也研发出了TinyOS这种简单的非占先式调度的小型操作系统。这个系统用来解决分开执行、复用性和扩展性等问题。TinyOS包括了用于实现无线传感器网络的主要部件,只需要添加极少量的用户代码就可以简单快速的研发出应用系统。2.3 System Configuration 系统配置无线传感器网络由智能传感器节点(硬件),传感器平台(软件)、无线网络和服务器系统组成。无线网络由传感器传感器节点中的传感器平台软件实现,智能传感器节点由环境传感器和处理器构

31、成,射频调制解调器也是无线网络的一部分。传感器平台软件在智能节点中运行,由嵌入式软件专为智能传感器节点优化而成。服务器系统整合了由智能传感器节点收集到的数据并针对应用来进行处理。当智能传感器节点的数量增加并导致传感数据增加时,服务器系统也会越发显得重要。在Windows和Linux系统下,操作系统和应用程序可以被独立安装,但是TinyOS是将操作系统和应用程序的代码结合在一起编译并形成单一的可执行固件。为了实现无限出其应用程序,我们需要智能传感器操作系统,数据处理和射频通讯等中间件为用户提供相应的服务,同时也需要数据库来收集数据并为传感器节点硬件建立查询处理。南昌工程学院本科毕业设计(论文)第

32、三章 无线传感网络操作系统操作系统从传感器采集数据并进行运算处理,然后通过射频技术发送数据。一般有Intel和UC伯克利大学的TinyOS,ETRI的NanoOS,日本的Tron Project三种,其中Intel和UC伯克利大学的TinyOS是最流行的,它是具有组件化的编程,事件驱动的执行模式的特点。Intel和UC伯克利大学的TinyOS提供了低功耗控制,运行稳定,网络存取,分布式处理等功能,同时还为用户提供了友好的接口,所有的数据都是非排他性的和相互的。尤其是TinyOS包含硬件抽象层、通信和传感器控制设计的可执行文件大小仅有4KB。它是目前无线传感器网络的典型操作系统,最近诸如麻省理工

33、学院、哈弗大学、耶鲁大学、剑桥大学的研究所,以及Intel、Crossbow、Bust Network、Arch Rock等厂商也加入了这个项目的开发。3.1 TinyOS简介TinyOS作为无线传感器网络中主流的操作系统,它支持目前出现的多种节点。就2.x版本而言,支持mica系列、telos系列等节点。TinyOS作为开源的操作系统,其价值不单体现在支持多个系列的节点上。对单片机爱好者来说,更是学习各种单片机编程的首选资料;对操作系统爱好者而言也具有相当大的参考价值,其简单性使读者更加容易进行入门学习。TinyOS的优点表现在不牺牲性能的情况下提高可靠性,并建立高效的组件模型。组件模型可以

34、让研发人员更为快捷有效的将组件配置组合在底层文件中,并为顶层文件的应用程序提供相应的服务。组件有两类:模块组件和配置组件,组件与组件之间是通过配置文件链接在一起的。一个组件由若干命令和事件构成,命令和事件就是调用该模块的接口,通过接口,我们有效的将各组件联系在一起,这就是TinyOS的框架结构,如图3-1所示:图3-1 TinyOS的总体框架图3.2 TinyOS的特点TinyOS的特点表现为:1.组件化编程。组件化编程使得程序实现起来简单,高效。2.事件驱动模式。TinyOS为非抢占资源的操作系统,一般按顺序执行,一个事件完成后触发下一个开始。3.3 TinyOS组件介绍TinyOS程序的基

35、本组件包括用户入口点、用户函数、延时、定时器、PRN、LED和任务。用户入口点是TinyOS 启动后开始运行的代码;延时以微秒为单位将下条语句的执行时间延后;定时器用于并发执行,以毫秒为单位,当clock条件达到并被触发后就会生成相关事件;随机数生成器提供32或16位PRN;LED指示内部状态;任务是基于事件的TinyOS程序的重要组件之一,根据延时长短来处理执行不同的事件。组件提供(provides)和使用(uses)接口。我们通过接口访问组件,接口具有双向性。一个接口声明了一系列命令(command)函数和一系列事件(event)函数,接口的提供者必须实现该接口声明中所包含命令,接口使用者

36、必须实现该接口声明的所有的事件。一个组件可以提供或使用多个接口。nesC组件的关系是,一个人使用接口,另一个人实现接口,两者是独立的。在用户模块中需要编写接口实例,然后创建组件实例并在配置中连接到用户模块。嵌入式开发环境与程序开发环境或开发软件安装执行环境是分开的,这点与PC不同。PC上的软件开发环境叫做本地开发环境,在Mote节点这种特定硬件平台上安装和操作的程序需要交叉编译。因此,TinyOS具有很强的移植能力,目前在很多平台上都有应用,所以他的研究价值非常高。南昌工程学院本科毕业设计(论文)第四章 nesC语言TinyOS是用nesC语言进行编写的、是一种新型研发出的针对传感器网络的操作

37、系统。它起先是用汇编与C语言编写,但后来发现C语言不能有效便捷地支持传感器网络的应用开发。为此,相关工作人员对C语言进行了相关方面的扩展,开发出现在的nesC语言。4.1 nesC语言简介NesC语言是针对TinyOS程序开发而特别设计的一种C语言的扩展,在提供了程序开发人员熟悉的C语言作为编程语言的同时,实现了TinyOS的模块化思想,方便了TinyOS系统组件和应用程序的开发。nesC支持TinyOS的并发模型,能够跟其它软件或组件连接组成一个健壮的网络嵌入式系统。其主要目标是让开发人员能够有效地建立起完善的、并发式系统组件,并能在编译时作出全面的检查。NesC语言编写的应用程序由一系列组

38、件及接口构成, 一个组件通常提供几个接口, 接口可以看作是组件实现一系列函数的声明。一个组件通过引用其他组件的相同类型的接口声明, 可以调用其他组件对应接口的函数, 从而实现组件间功能的相互调用。NesC语言编写的程序中有两种组件:模块组件和配置组件。配置组件(configuration)描述组件接口与接口间的关系,主要用于将别的组件绑定在一起,并通过接口实现组件间的连接。模块组件(module)通过提供系统自带的函数来实现各个接口的功能。一个TinyOS程序就是由NesC语言编写的由模块组件和配置组件组成,其中各个组件间通过相同类型的接口相互连接。当用户调用某一接口的函数时,TinyOS将通

39、过配置组件的连接关系寻找实现该函数的模块组件, 并最终调用该模块组件所提供的对应函数来实现用户要求的功能。TinyOS就是一个大程序,它由好多组件构成组件与组件之间通过接口联系。组件通过调用接口来实现对另外组件的调用。但是组件实现的函数必须在它它的接口中声明,否则不能被其他组件使用,这是组件化编程的重要特征之一,如图4-1所示;图4-1 组件化编程介绍4.1.1 nesC语言重要术语1.组件规范:定义的接口名、使用范围、行为对象和生命周期。2.规范元素:是组成组件规范的元素,一般有interface、command、event等。它由组件提供和使用。3.范围: nesC的范围与C语言里的生命周

40、期是一样的。4.组件:构成nesC程序的基本单元。可分为两类:模块组件和配件组件。一个组件有声明和实现两各部分。5.连接:接口与接口之间的连接就是通过它来实现的。6.接口:就是一系列函数声明的集合,函数名即为接口名。4.2 TinyOS中的重要概念TinyOS定义了许多的重要的概念,这些概念在nesC语言上得到了充分体现。nesC应用程序是由组件组成的,这些组件之间的连接是通过定义连好的、具有双向性质的接口。nesC建立在C语言的基础上,它与C语言在有些概念存在明显不同,最具代表的有:组件,接口,模块及任务。nesC中模块的定义如下:module模块名uses interface 1ist1;

41、 /使用接口列表1;provides interface 1ist2; /提供接口列表2;implementation /命令处理程序和事件或处理程序的实现代码;任务函数它的返回类型为空、无参数。在TinyOS中,任务是用来被被调度的实体,相当于我们常说的线程或进程,一个任务需要有一个声明。配件模块的定义如下:configuration配件名uses interface 1ist1; /使用的接口名1;provides interface list2; /提供的接口名2;implementationcomponent 1ist /实现此配件的组件列表;connection 1ist /规范元素

42、(接口、命令、事件)的连接关系;接口定义如下:不同的组件提供自身相应的接口,应用程序则通过调用这些接口来实现对于更低层的组件和硬件的调用。例如在本例中的如下代码:uses interface Timer as Timer0;uses interface Timer as Timer1;uses interface Timer as Timer2;uses interface Leds;uses interface Boot;其中接口Timer是一个带参数的接口,它使用类型作为参数,接口中的类型参数被放在一对尖括号中,当串连提供者和使用者的接口带有类型参数时,它们的类型必须相互匹配,有时类型参数

43、只是用来做类型匹配检测的,而并没有用到命令和事件中去,本例中的Timer接口就是如此,虽然它带有一个类型参数,但它里面没有一个函数用到了这个类型参数。4.3 NesC 的移植在进行TinyOS 应用程序开发时, 我们首先是要用NesC编写需要的程序,生成一个.nc为扩展名文件,再确认没有语法错误后,调用编译器编译代码为硬件可以识别的二进制或十六进制机器码,编译的文件产生.ihex文件,然后将其下载在mote节点里运行,移植成功后,运行便能成功接收数据。南昌工程学院本科毕业设计(论文)第五章 ZigBee无线通信技术及其应用社会在发展,人类在进步,通讯手段也日新月异,其中以短距离无线电波通信发展

44、最为迅猛。在近几年中,人们不断探索与研发,形成了当今各种各样的无线通信应用产品。最流行的短距离无线数据通信标准有蓝牙(Bluetooth)、Wi-Fi(IEEE802.11)和被认为最有发展潜力的ZigBee(IEEE802.15.4)等。5.1 Zigbee发展概况 ZigBee的名字源于蜜蜂的通信方式,蜜蜂传递信息是以跳舞的方式进行的,它们跳的舞类似Zigzag形状,所以后来就用他来命名了。同其他短距离无线协议相比,ZigBee具有低功耗、低成本、低速率、低复杂性、低资源等显著的优势,使其具有广泛的应用前景,无法比拟的未来。ZigBee组成如图5-1所示。图5-1 ZigBee组成结构5.

45、2 Zigbee标准Zigbee是由Zigbee联盟指定的、未在IEEE802.15.4中定义的上层标准-低速无线个人局域网,此标准由IEEE802.15.4小组与ZigBee联盟共同制定。另一方面,TinyOS使用基于IEEE802.15.4标准的射频调制解调器并使用nesC实现了无线传感器网络应用程序。ZigBee的标准如图5-2所示:图5-2 ZigBee的几种标准此外,ZigBee还有低功耗、成本低、时延短、网络容量大、安全可靠的特点。5.3 ZigBee与几种无线传输技术5.3.1 蓝牙(BlueTooth)蓝牙(BlueTooth)最早是爱立信研制出应用于耳机通信的一种模块,后来逐

46、渐应用于无线通信和通讯设备的无线连接。 5.3.2 Wi-Fi(IEEE802.11)Wi-Fi(Wireless Fidelity,无线高保真)也是一种无线通信协议。主要作用是提供WLAN热点接入,是目前WLAN技术标准,工作频率为2.4GHz。5.3.3 IrDA IrDA是通过红外线进行点对点的通信技术。目前这方面技术相对成熟,主要应用在手机等小型移动设备上。5.3.4 ZigBee ZigBee技术是最新发展的前沿短距离无线通信技术。平台结构如图5-3所示,它功能强大,优势明显,在未来拥有广阔市场。图5-3 ZigBee平台结构5.4 几种常用无线通信方式性能比较几种常用无线传输方式比较如图5-4所示:图5-4 常用无线传输方式性能比较与Zigbee接近的无线通讯技术是802.11(WIFI)、蓝牙和UWB。802.11和UWB都被设计用于大量数据传输这种领域,蓝牙最初被定义为低速数据传输模式,与Zigbee的应用有部分重叠。Zigbee通常需要15ms传输延时以及30ms加入新网络,而蓝牙需要花费3 秒来加入新网络,传输延时为2ms。但是蓝牙价格

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号