版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第6章基于TinyOS的传感器网络应用程序开发,主要内容,6.1典型无线传感器网络开发工具包6.2 nesC语言6.3 TinyOS操作系统6.4 TinyOS开发环境构建6.5简单无线测试6.6简单数据分发6.7简单数据集6.8 TinyOS模拟平台TOSSIM 6.9章摘要和补充阅读文献,6.1.1 MICA系列节点MICA系列节点包括WeC、Renee、MICA、MICA2、MICA2Dot和MICAz。WeC、Renee和MICA节点都使用TR1000无线芯片,MICA2和MICA2Dot使用CC1000无线芯片,MICAz节点使用CC2420的Renee芯片。6.1.1 MICA系列
2、节点,图6-1 MICA系列节点的网络图表,6.1.1 MICA系列节点,图6-3 MICAz系列MPR2400的物理,图6-4(a)多传感器模块MTS图6-2 MICA2系列MPR 2400、6.1.2 MICA系列处理器/无线主板、Atmega128L微处理器高级RISC体系结构128kb闪存、4KB EEPROM、4kb SRAM可配置I/O针53种不同的外部通信介面支持低功耗本机JTAG介面工作电压范围:牙齿系列是专门为低功耗低速率无线传感器应用程序开发的。6.1.2 MICA系列处理器/无线板,CC2420无线板2.4GHz IEEE 802.15.4标准16个可用通道数据传输速率2
3、50Kb/s O-QPSK调制超低电流消耗高灵敏度相邻通道干扰能力工作电压低输出功率控制硬件实现部分MAC层下面简要介绍了一些主要电路设计内容。传感器电源供应电路温湿度和照度检测电路磁传感器电路、6.1.3 MICA系列传感器板、MICA系列节点主要用作教学和研究实验。人们在由多个MICA节点组成的实验床上验证自己的算法,体验多跳网络的特性。为了便于开发,Crossbow开发了很多MIB510和MIB600介面板。6.1.4 MICA系列编程调试介面板,图6-8 MIB510连接和节点组装,6.1.5国内外其他常见无线传感器网络节点,图6-9 Smart Dust系列节点图6-10 Tmote
4、系列节点图6-11ii图6-12 GAINS系列节点图6牙齿传感器节点系列使用AVR 8位单筹码系列中最高级的Atmega128rfa1芯片作为处理器,采用高级RISC体系结构,集成了符合IEEE 802.15.4标准的无线射频,其性能与独立无线筹码AT86RF230类似。牙齿系列节点不仅可以与主机通信,还设计了可通过同一USB接口下载程序的USB接口,便于用户使用。6.2.1简介6.2.2术语6.2.3介面6.2.4组件6.2.5模块6.2.6附件,6.2 nesC语言基础,nesC是c语言扩展,基于实现TTS节目配置和节目组合分离的机构组件的行为规范由一组介面定义。接口徐璐通过接口静态链接
5、双向组件。6.2.1 nesC简介、6.2.1 nesC简介、图6-15基于nesC语言的通用应用程序节目框架、6.2.1 nesC每个特定程序通常包含顶级配件(top-level configuration)、核心处理模块和其他组件。6.2.1 nesC术语,图6-17附件的概念,6.2.1 nesC术语,图6-18模块的概念,6.2.3 nesC介面接口是供应商组件和用户组件之间双向的多功能交互通道。介面提供程序实现了一组介面功能,称为命令。介面用户也必须实现称为事件的功能函数集。6.2.3 nesC介面,事件回调机制可有效提高系统操作效率。图6-19组件介面、6.2.3 nesC介面和接
6、口由interface类型定义,interface语法定义如下:6.2.3 nesC介面,介面示例参数介面示例,包含参数的nesC具有两种茄子类型的组件模块附件,6.2.4 nesC组件,组件语法定义:6.2.4 nesC组件组件K提供的介面实例X的命令F由K提供的命令X . F;称为。组件K使用的介面实例X的命令F与K使用的命令X . F;称为。组件K提供的介面实例X的事件F由K使用的事件X . F;称为。组件K使用的介面实例X的事件F称为K提供的事件X.F。(请注意接口的两个方向导致的提供事件和使用事件的两个方向。)。6.2.4 nesC组件,常规组件关键字常规组件名称后面必须是参数列表和
7、6.2.4 nesC模块。模块是提供介面代码实现并分配组件内部状态的组件内部行为的具体实现。模块定义语法:6.2.4 nesC模块,命令是需要介面提供程序实现的接口的函数。介面用户调用牙齿函数。图像名为command,是界面提供的可调用命令。语法结构类C语言只需在开头添加command关键字。6.2.4 nesC模块,命令实现:module M1provides interface A1implementation command inta 1 . cm D1(intarg),6.2.4 nesc模块,使用命令:module M2uses interface A1implementationi
8、ntret=calla 1 . cm D1(0x 11);6.2.4 nesC模块,事件是需要介面提供程序调用的接口的函数。介面用户实现牙齿函数。名为Event的图像是介面用户实现的事件处理函数。语法结构类C语言只需在开头添加event关键字。6.2.4 nesC模块,事件实施:模块M1provides接口A1;implementation post a1 . event 1(0x 1,0x 2);/*事件处理程序*/,调用6.2.4 nesC模块,使用事件:module M2uses interface A1implementationevent voida 1 . event 1(inta
9、rg 1,intarg2)介面用户必须像事件处理程序一样实现事件的特定内容。6.2.4 nesC模块,操作是TinyOS系统提供的特殊机制,类似于线程。Task是一个函数,通常没有收购,没有返回值。Task可以在普通TinyOS程序中运行,task执行由TinyOS系统内核执行。此外,task执行对调用方没有影响。task运行后,计划在某个时间点运行。6.2.4 nesC模块,task的特征:没有参数,没有返回值系统不能按特定顺序在这些task之间抢占,但是如果task未运行,则可能会被中断抢占,牙齿task系统只能运行一次,运行一次task,然后执行另一个task,因此task一般应缩短,其
10、他task,6 . 2 . 2通常放置在module m1 implementation中,6.2.4 nesC模块,使用通用模块typedef关键字使用new关键字,6.2.6 nesC附件,实现徐璐其他组件的介面间连接的组件,连接多个组件,形成新组件,导出接口(其他形式的连接)附件定义语法查看连接和传导连接之间的区别。串联输入和串联输出n-to-k关系参数化地连接一个组件的多个茄子实例。6.2.6 nesC附件,通用部件是可重复使用的关系集使用方法,以配置高级抽象;与通用模块一样,6.3 TinyOS操作系统,TinyOS是California University的伯利兹分支开放源代码嵌
11、入式操作系统。基于组件的体系结构实现了多种应用程序的快速实施。由于与他们设计的硬件平台融合得很好,赢得了声誉,现在在无线传感器网络领域事实上已经成为标准平台。支持的平台:eyesIFXv2、intelmote2、mica2、mica2dot、micaZ、telosb、tinynode。6.3 TinyOS操作系统,TinyOS技术特征组件编程:提供一组可重复使用的组件,使应用程序可以通过连接配置文件连接各种组件,以执行所需的功能。事件驱动模式:Tinyos中的应用程序基于事件驱动模式,用于使用事件触发器唤醒传感器活动。事件就像在组件之间传递状态信息的信号。事件发生相应的硬件中断时,可以快速调用
12、相关事件处理程序。6.3 TinyOS操作系统,TinyOS技术特性轻量线程:任务。工作之间平等,不能徐璐抢占,不能按照先进先出队列安排日程。轻量线程提出了节点并发活动频繁、线程短的问题。两阶段调度方法:作业通常用于时间要求不高的应用程序。事件通常用于时间要求非常严格的应用程序,可以优先于任务和其他事件执行,在TinyOS中,事件通常由硬件中断处理驱动。6.3 TinyOS操作系统,TinyOS技术特征分区会话:TinyOS不提供阻塞操作。为了尽快完成耗时的操作,通常将牙齿操作的请求与牙齿操作的完成分开来实现活动消息通信:每个消息维护应用程序层的处理程序。节点收到消息后,消息的数据作为参数传递
13、到应用层的处理程序,以执行消息资料分析、计算处理或发送响应消息等任务。构建6.4 TinyOS开发环境,TinyOS开发的软件环境:Linux操作系统环境多种Linux版本或Cygwin可以构建TinyOS和nesC源代码目标板相关软件环境写入工具其他必需的软件工具、库和6.4 TinyOS开发环境。TinyOS开发的硬件环境:运行Linux操作系统的PC或虚拟机目标板和刻录工具测试环境;6 . 4 . 1 Ubuntu虚拟机创建;TinyOS开发必须在Linux环境中进行。在Windows环境中,可以使用Cygwin模拟和开发Linux环境,但是安装配置很麻烦,性能也很差。牙齿书籍选择了基于VMware虚拟机和Ubuntu 12.04 Linux发行版的TinyOS软件开发环境。有关创建虚拟机的步骤,请参阅教科书6.4.1部分的介绍或参阅网络指南。这里不再详细说明。6.4.2安装Java编译执行环境,TinyOS的许多组件依赖Java环境,因此必须首先安装JDK 1.6或更高版本。将JDK 1.6安装档案jdk-6u
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年大学第四学年(烹饪工艺与营养)凉菜制作工艺试题及答案
- 郑州市外国语中学2025-2026学年初三第一次适应性测试(一模)物理试题含解析
- 天水市第七中学2026年初三下学期第一次统一考试物理试题文试题含解析
- 浙江省金华市婺城区达标名校2025-2026学年初三TOP20三月联考(全国II卷)英语试题含解析
- 云南省涧彝族自治县重点名校2026届初三下学期期末教学质量检测试题试卷英语试题含解析
- 2026年人工智能在航空工程设计中的前沿应用
- 2026年噪声治理效果评估的方法与案例
- 云计算导论 习题及答案 第1章习题
- 雨花英烈精神的当代价值
- 血液科白血病干细胞移植指导
- 北体简介课件
- 《老年服务礼仪与沟通技巧》全套教学课件
- 公务接待基础培训课件
- 心脑血管幻灯片课件
- 吉林市2024~2025学年度初中毕业年级第一次阶段性教学质量检测 语文(含答案)
- 退役军人法制宣传课课件
- 纺织厂5S管理课件
- 公租房配售管理办法
- 【养猪场污水处理工艺中的初沉池设计案例830字】
- 医嘱规范开具培训课件
- 医疗器械单位岗位职责培训
评论
0/150
提交评论