6.TinyOS实验培训

合集下载

TinyOS入门共16页文档

TinyOS入门共16页文档
• Open source, open developer community • tinyos • Tutorials:
– docs.tinyos/tinywiki/index.php/TinyOS_Tutorial s
2
安装
• 多种安装方法,参看 docs.tinyos/tinywiki/index.php/Gettin g_started_%282.1%29
TinyOS入门(1)
胡四泉

What?
• An operating system for low power, embedded, wireless devices
– Wireless sensor networks (WSNs) – Sensor-actuator networks – Embedded robotics
• 在本实习中,在WindowsXP上用 VMPlayer运行XubunTOS虚拟机
安装启动步骤
• 安装VMPlayer • 解压xubuntos-2.1-vm.tar.gz到E盘根目录,确认
E:\Xubuntos 2.1目录下包含虚拟机文件Xubuntos 2.1.vmx • 运行VMPlayer • 在VMPlayer中打开Xubuntos 2.1.vmx • 如果系统询问你虚拟机是move还是copy来的,选择 copy; • 如果内存不足,系统建议你reduce memory请accept • 等待Xubuntos启动完成 • 输入用户名xubuntos 密码tinyos • 使用Ctrl+Alt+Enter组合键在虚拟机与WindowsXP间切 换
观察程序结构
• make telosb docs
Thanks! Go Ahead! Good Luck!

关于TinyOS编程的详细说明说明书

关于TinyOS编程的详细说明说明书

Programmable transistor potentiometer allows variable Built-in antenna provides 1-4 feet transmission rangeLight Sensor 51-pin-connector Temperature Se nsorAccelerometerSerial Port ConnectionParallel Port ConnectionProcessor/Radio Board51-Pins ConnectorsWhat is TinyOS?w Small, open source, energy efficient operating system designed by UC Berkeley w It was designed specifically for networked sensorsw Event-based systemEach system module is designed to operate bycontinually responding to incoming eventsMore TinyOS stuffw Two-level schedulingEvent handlers deal with hardware interrupts Tasksl Execution mechanism provided for long runningcomputationsl Runs to completion in backgroundl Can be interrupted by low-level system eventsl Task scheduling performed by simple FIFO queueMore TinyOS stuffw ComponentsAllows application developers to combineindependent components into an applicationspecific configurationA specialized language, NESC, was developed toexpress a component graph and the command/event interfaces between componentsThe TinyOS web sitew /tos/index.html DownloadSupportPublicationsHardware DesignsRelated WorkThe TinyOS download & install /tos/download.htmlw Installation packages available for:Windows 2000/XPl Choice of Installshield or Manual installationLinuxw Installation includes other software (Cygwin, JDK, avr tools, etc.)The TinyOS directoryw TinyOS subdirectories:appscontribdoctoolstosSpecification of aTinyOS programw A nesC application consists of one ormore components linked together to form an executablew A component provides and uses interfaces. These interfaces are the only point of access to the component and are bi-directionalw An interface declares a set of functions called commands that the interface provider must implement and another set of functions called events that the interface user must implementSpecification of aTinyOS programw For a component to call the commands in an interface, it must implement the events of that interfacew A single component may use or provide multiple interfaces and multiple instances of the same interfaceImplementation of aTinyOS programw There are two types of components in nesC: modules and configurationsw Modules provide application code, implementing one or more interfacew Configurations are used to assemble other components together, connecting interfaces used by components to interfaces provided by others. This is called wiringImplementation of aTinyOS programw Every nesC application is described by a top-level configuration that wires together the components insidew nesC uses the filename extension ".nc" for all source files --interfaces, modules, and configurationsWhat is NesC?w Network Embedded Systems Cw C-like syntax supporting TinyOSw Reference manual online:/papers/nesc-ref.pdfTinyOS Tutorialsw Provide sample programs with explanation of code w Tutorials included with TinyOS installationw Most up-to-date version of tutorials are online: /tos/tinyos-1.x/doc/tutorial/index.htmlCompiling and uploadingw To compile a TinyOS application, you must first enter the directory of the appw Type: make <platform>w Valid platforms include: mica, mica2, mica2dot w To compile and install: make <platform> install w To assign ID #: make <platform> install.X where X is the node ID (0, 1, 2, …)More compiling and uploading w To install a program that has already been built (no rebuild of target),type: make reinstall[.X] <platform>w To compile a program for use with the TOSSIM simulator, type: make pcw Note: For more information about the TOSSIM simulator, see Lesson 5 in the tutorial:/tos/tinyos-1.x/doc/tutorial/lesson5.htmlExample #1: Blinkw Lesson 1 in the tutorial:/tos/tinyos-1.x/doc/tutorial/lesson1.htmlExample #2: Sensingw Lesson 2 in the tutorial:/tos/tinyos-1.x/doc/tutorial/lesson2.htmlExample #3: Using the radio w Lesson 4 in the tutorial:/tos/tinyos-1.x/doc/tutorial/lesson4.htmlWhat should I do next?1.Download and install TinyOS2.Read the first four tutorialsw Implement the tutorials (schedule TBA)3.Read Chapter 1 of the WSN textbook4.Read “System Architecture Directions forNetworked Sensors”What should I do next? 5.Think about project ideas –use yourimagination//news/article.html?item_id=285/dataman/ActiveTape/Tree/Technologies we haven’t tried yet:Mica2Dot motesTASKNetwork reprogrammingSimulatorsOther helpful linksw Crossbow: Spec sheets and prices for Berkeley motes and othersensor network productsw Search the TinyOS mailing list archives: /tos/search.html。

无线传感器网络操作系统TinyOS

无线传感器网络操作系统TinyOS
5
现有的WSN操作系统
• 当前已有多个有代表性的开源的无线 传感器网络操作系统:
Tiny OS 2.1:美国加州大学伯克利分校开发 Mantis OS 0.9.5 (Multimodal Networks of Insitu Sensors) :美国克罗拉多大学开发 SOS 1.7:美国加州大学洛杉矶分校开发
– 命令(command):接口的提供者必须实现它们; – 事件(event):接口的使用者必须实现它们 。
19
组件,接口,命令和事件
• 接口的特点:
Provides未必一定有组件使用,但uses一定要有人提供,否则编 译会提示出错。在动态组件配置语言中uses也可以动态配置。 接口可以连接多个同样的接口,叫做多扇入/扇出。 一个module可以同时提供一组相同的接口,又称参数化接口,表 明该Module可提供多份同类资源,能够同时给多个组件分享。
13
TinyOS的技术特点-3
分阶段作业(Split-Phase Operations)
TinyOS没有提供任何阻塞操作,为了让一个耗时较长的操 作尽快完成,一般来说都是将对这个操作的请求和这个操 作的完成分开来实现,以便获得较高的执行效率。
主动消息通信(Active Message)
每一个消息都维护一个应用层的处理程序。当节点收到消 息后,就会把消息中的数据作为参数,传递给应用层的处 理程序,由其完成消息数据的解析、计算处理或发送响应 消息等工作。
9
TinyOS的设计理念
• 由于WSN的特殊性,研究人员在设计TinyOS系统 时就提出以下几个原则:
– 1)能在有限的资源上运行:要求执行模式允许在单一 的协议栈上运行; – 2)允许高度的并发性:要求执行模式能对事件作出快 速的直接响应; – 3)适应硬件升级:要求组件和执行模式能够应对硬件/ 软件的替换; – 4)支持多样化的应用程序:要求能够根据实际需要, 裁减操作系统的服务; – 5)鲁棒性强:要求通过组件间有限的交互渠道,就能 应对各种复杂情况; – 6)支持一系列平台:要求操作系统的服务具有可移植 性。 10

人工智能教育虚拟实验室操作手册

人工智能教育虚拟实验室操作手册

人工智能教育虚拟实验室操作手册第一章:概述 (2)1.1 虚拟实验室简介 (2)1.2 实验室功能与特点 (3)第二章:系统安装与配置 (3)2.1 系统安装流程 (3)2.1.1 硬件准备 (3)2.1.2 制作启动盘 (4)2.1.3 安装系统 (4)2.2 配置环境要求 (4)2.2.1 操作系统 (4)2.2.2 硬件配置 (4)2.2.3 软件环境 (4)2.3 驱动安装与更新 (4)2.3.1 硬件驱动 (5)2.3.2 系统更新 (5)2.3.3 软件更新 (5)第三章:用户注册与登录 (5)3.1 用户注册流程 (5)3.2 用户登录与退出 (5)3.2.1 用户登录 (5)3.2.2 用户退出 (6)3.3 用户信息管理 (6)第四章:实验项目选择与预约 (6)4.1 实验项目列表 (6)4.2 实验项目预约流程 (7)4.3 实验项目预约时间安排 (7)第五章:实验操作指南 (7)5.1 实验操作界面 (7)5.2 实验操作步骤 (8)5.3 实验数据输入与输出 (8)第六章:实验数据处理与分析 (8)6.1 数据导入与导出 (8)6.1.1 数据导入 (8)6.1.2 数据导出 (9)6.2 数据处理工具 (9)6.2.1 数据清洗 (9)6.2.2 数据转换 (9)6.3 数据分析结果展示 (10)第七章:实验报告撰写与提交 (10)7.1 实验报告模板 (10)7.1.1 封面 (10)7.1.2 目录 (10)7.2 实验报告撰写步骤 (11)7.3 实验报告提交与审核 (11)第八章:实验室管理与维护 (12)8.1 实验室管理人员权限 (12)8.1.1 权限设置 (12)8.1.2 权限申请与审批 (12)8.2 实验室设备维护 (12)8.2.1 设备保养 (12)8.2.2 设备维修 (12)8.2.3 设备报废与更新 (12)8.3 实验室安全与环保 (13)8.3.1 安全管理 (13)8.3.2 环保管理 (13)第九章:技术支持与常见问题解答 (13)9.1 技术支持联系方式 (13)9.1.1 客户服务 (13)9.1.2 在线客服 (13)9.1.3 邮箱咨询 (13)9.2 常见问题解答 (14)9.2.1 如何登录人工智能教育虚拟实验室? (14)9.2.2 实验过程中遇到操作问题怎么办? (14)9.2.3 实验数据如何保存? (14)9.2.4 实验报告如何导出? (14)9.3 技术更新与升级 (14)9.3.1 更新与升级通知 (14)9.3.2 更新与升级流程 (14)9.3.3 更新与升级注意事项 (14)第十章:用户反馈与建议 (14)10.1 用户反馈渠道 (14)10.1.1 反馈渠道概述 (14)10.1.2 反馈渠道特点 (15)10.2 用户反馈处理流程 (15)10.2.1 反馈接收与分类 (15)10.2.2 反馈处理与回复 (15)10.3 用户建议采纳与改进 (16)10.3.1 建议采纳 (16)10.3.2 改进措施 (16)第一章:概述1.1 虚拟实验室简介虚拟实验室是一种基于网络技术和虚拟现实技术的实验环境,它模拟了传统实验室的实验设备和实验过程,为用户提供了一个安全、高效、便捷的实验平台。

虚拟实验培训计划方案模板

虚拟实验培训计划方案模板

虚拟实验培训计划方案模板一、培训目的本虚拟实验培训计划的目的是为了提供一种全新的实验教学模式,通过虚拟实验工具的使用,让学生能够在模拟的实验环境中进行实际操作,提高实验能力和技巧,培养学生的创新意识和实践能力,促进学生对科学知识的深入理解和掌握。

二、培训对象本次虚拟实验培训计划适用于高校中的理工科学生,包括本科生和研究生,尤其适用于实验条件受限、实验设备不足的学校或课程。

三、培训内容1. 虚拟实验工具的介绍与操作a. 虚拟实验软件的特点及优势b. 虚拟实验软件的基本操作和使用方法c. 虚拟实验软件的常见功能及应用技巧2. 虚拟实验实例演示与操作a. 给学生演示一些典型的虚拟实验实例,包括化学、物理、生物等多个学科的实验b. 引导学生进行实例操作,让他们亲自体验虚拟实验的操作流程和效果3. 虚拟实验应用案例分析a. 分析虚拟实验在科研、教学和工程实践中的应用案例b. 探讨虚拟实验与传统实验的优劣势比较四、培训方式1. 线上培训本次虚拟实验培训将采用线上授课的方式进行,学生可以通过网络平台参与培训,无需受到地域、时间等限制。

2. 交互式教学培训课程将以交互式教学的形式进行,学生可以实时与教师进行互动交流,解答问题和讨论疑点。

3. 实践操作培训课程中将设置虚拟实验操作环节,要求学生实际操作虚拟实验软件,掌握操作技巧,并进行实验结果的分析和总结。

五、培训教材本次虚拟实验培训的教材将由培训机构提供,包括虚拟实验的基本介绍、实验案例演示、操作流程指导等相关内容。

六、培训评估1. 课程考核学生在培训结束后需要进行虚拟实验操作考核,通过对学生操作过程的记录和实验结果的分析来评估学生对虚拟实验工具的掌握程度。

2. 学习反馈培训结束后,学生将进行学习反馈,填写培训内容的满意度调查表,提供对本次培训的建议和意见。

七、培训师资本次虚拟实验培训将邀请具有丰富实验教学经验的教师作为授课老师,他们将对学生进行虚拟实验工具的介绍、操作技巧的讲解、实例演示等培训工作。

《实验指导书_TinyOS系统与nesC程序设计》

《实验指导书_TinyOS系统与nesC程序设计》

TinyOS系统与nesC程序设计课内实验指导书一、课内实验项目一览表二、详细实验指导书实验一:编程环境建立一实验目的1、掌握Java基本开发环境(JDK)的安装和配置方法。

2、掌握cygwin程序的安装,在建立windows下类似Unix环境。

3、掌握Linux基本命令及cygwin下安装TinyOS的方法。

二实验原理无三实验环境1、运行Windows的PC机,能够连接Internet2、PC机配置要求:四实验内容和步骤1、java jdk安装首先,我们安装JA V A开发工具JA V A JDK 1.6官方下载地址:/javase/downloads/.安装过程只需下一步……下一步便可,默认安装路径是C:\Program Files\Java上图是TinyOS 2.0.2 安装时截取的JA V A JDK1.5的图,只供参考。

然后,我们需要设置电脑的环境变量,需要新建两个环境变量,以便使用JDK 具体过程如下:右击我的电脑——〉属性——〉高级——〉环境变量先新建或编辑系统变量:变量名(N):JA V A_HOME变量值(V):JDK安装的路径,其默认的路径为:C:\Program Files\Java\jdk1.6.0_10变量名(N):CLASSPATH变量值(V):.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;;%JAVA_HOME%\bin;%JAVA_HOME%\jr e\bin;在系统变量(S)栏选中变量为Path的选项,点编辑在变量值(V)的末尾添加:;%JAVA_HOME%\bin; ;%JAVA_HOME%\jre\bin;然后新建或编辑用户变量:同样再设置一个JAVA_HOME,变量值也一样。

在用户变量的PATH中添加:;%JAVA_HOME%\bin:$PATH;%JAVA_HOME%\jre\bin:$PATH;这样,我们的环境变量已经设置完毕了。

tinyos课程设计

tinyos课程设计一、教学目标本课程旨在通过学习TinyOS操作系统,使学生掌握嵌入式系统的原理和开发方法,培养学生的实践能力和创新精神。

具体目标如下:1.知识目标:了解TinyOS操作系统的基本概念、架构和原理;掌握TinyOS中的关键模块和编程方法;了解嵌入式系统在实际应用中的优势和局限。

2.技能目标:能够使用TinyOS开发环境进行程序设计;能够进行TinyOS操作系统的配置、编译和调试;具备嵌入式系统的设计和开发能力。

3.情感态度价值观目标:培养学生的团队协作精神和自主学习能力;增强学生对嵌入式系统领域的兴趣和好奇心;引导学生关注嵌入式系统在社会发展和产业应用中的重要性。

二、教学内容本课程的教学内容主要包括以下几个部分:1.TinyOS操作系统的基本概念和架构;2.TinyOS中的关键模块和编程方法,如调度器、事件驱动机制、存储管理等;3.嵌入式系统的设计方法和开发流程;4.实际应用案例分析,了解嵌入式系统在各个领域的应用。

教学大纲安排如下:第1周:TinyOS概述和架构介绍第2周:TinyOS编程基础和关键模块第3周:嵌入式系统设计方法和流程第4周:实际应用案例分析三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式:1.讲授法:用于讲解基本概念、原理和方法;2.案例分析法:通过分析实际应用案例,使学生更好地理解嵌入式系统的应用;3.实验法:让学生动手实践,掌握TinyOS操作系统的开发方法和技巧;4.讨论法:鼓励学生积极参与课堂讨论,培养学生的思考能力和团队协作精神。

四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《TinyOS操作系统原理与应用》;2.参考书:《嵌入式系统设计原理与应用》;3.多媒体资料:教学PPT、视频教程等;4.实验设备:嵌入式开发板、编程器等。

通过本课程的学习,希望学生能够掌握TinyOS操作系统的基本原理和开发方法,具备嵌入式系统的设计和开发能力,为今后的学习和职业发展打下坚实基础。

Lesson1---TinyOS入门1

• 运行环境:TinyOS 2.1 + Cygwin (Windows XP) • Cygwin在Windows下提供一个类似Linux的环境
11
一、编译和安装
• 作为一开始的学习,先来编译一个非常简 单的程序 Blink。若没有硬件节点,可以用 TinyOS的TOSSIM仿真平台进行编译运行。 • 编译TinyOS程序使用make命令,TinyOS系 统有一个强大的扩展性很强的make 系统, 位于 tinyos-2.x/support/make目录中。 • 先运行如下命令检查环境是否正确配置。 • $ tos-check-env
8
• 总的来说,TinyOS 调度模型有以下特点:
(1)任务单线程运行到结束,仅分配单个任务栈, 这对内存受限系统很有利。 (2)任务调度算法采用非抢占式的FIFO 算法,任 务之间相互平等,没有优先级之分。 (3)TinyOS 的调度策略具有能量意识,当任务队 列为空时,处理器进入休眠模式,直到外部事件 将它唤醒,能有效的降低系统能耗。 (4)这种基于事件的调度策略,允许独立的组件共 享单个执行的上下文, 只需少量运行空间就能获 得高度的并发性。
• 规范
– nesC应用程序由一个或多个组件连接而成。 – 一个组件可以提供或使用接口:
» 组件中command接口由组件本身实现; » 组件中event接口由调用者实现; » 接口是双向的,调用command接口必须实现其event接口。
26
2.1 配件和模块
• 组件有两种:配件和模块。 • 模块(module):提供一个或多个接口的实现。 • 配件(configuration):把其他的组件装配起来, 连接组件使用的接口到其提供者。 • 每个nesC应用程序都必须有且只有一个顶层配件 (top-level configuration)连接内部组件。 • 之所以区别设计模块与配件,是为了让系统设计 者在构建应用程序的时候可以脱离现有的实现。 例如:设计者可以提供配件,只是简单地把一个 或多个模块连接起来,而不涉及其中具体的工作。 同样地,另一个开发者负责提供一组模块库,这 些模块可以普遍使用到众多应用中。

TinyOS课后习题

第一章1、下列关于TinyOS描述错误的是(C)A.TinyOS起源于吉利福尼亚大学伯克利分校的研究项目B.WSN操作系统是无线传感器网络的关键支撑技术之一C.TinyOS是使用C语言编写D.最新的TinyOS版本支持IPv6协议2、下列不属于TinyOS编程特点的是(A)A.结构式编程B.组件式编程C.事件驱动编程D.平台化编程3、使用mytinyOS平台编译并下载程序的命令是(make cc2530 install)4、简述TinyOS的优缺点。

(1)、优点:TinyOS有成千上万的用户,现有的体系结构已有5年以上的历史,代码可靠、有效,错误极少,这对项目工程来说至关重要;支持低功耗和并发执行模式,因此特别适合于无线传感器节点;支持技术上优异的网络协议,如汇聚协议CTP和6LoWPAN协议等。

(2)、缺点:它的组件式编程模型对于新手来说需要一段时间来适应;对于计算机密集型程序需要程序员将程序分成若干小部分,逐个执行,即需要使用TinyOS的“分阶段作业”机制,此类程序比较难写。

第二章1、对于C程序员来说,nesC提出了三个“新概念”: 组件、接口和__并发执行模型____。

2、nesC程序的入口函数是_booted事件函数。

3、关于nesC程序文件组成叙述正确的是____D_____。

A只能是nc文件 B不可以包含C语言头文件C可以不使用Makefile文件 D.程序中的nc文件可分为组件文件和接口文件4、下列关于nesC语言叙述错误的是_C 。

A.接口是一个被声明的有意义函数的集合B.参数化接口实质上是接口数组C.通用接口是指有数据类型的接口,其意义在于可以使接口多次实例化D.通用组件多次声明后,它将在程序内存在多份代码或组件关系组织5、nesC程序文件组成:C语言头文件:TinyOS程序的运行需要少量的C谙言头文件.它们被组件文件包含从而参与程序的编译。

这些头文件主要包括结构体、数据定义以及宏定义等。

ros 机器人操作系统初级教程实训报告

ros 机器人操作系统初级教程实训报告什么是ROS机器人操作系统?如何进行初级教程实训?本文通过一步一步回答这些问题,来介绍ROS机器人操作系统初级教程实训的相关内容。

第一步:了解ROS机器人操作系统ROS(Robot Operating System)是一种用于构建机器人软件的开源操作系统。

它提供一系列工具、库和约定,使得开发者能够快速、方便地构建各种类型的机器人应用。

ROS是一个灵活、模块化的系统,它支持多个操作系统(如Linux、Mac OS和Windows)以及多个机器人平台(如PR2、TurtleBot和DJI等)。

ROS以其良好的可扩展性和广泛的机器人社区支持,成为了机器人开发的首选操作系统。

第二步:选择合适的ROS初级教程实训在ROS的官方网站(Tutorials)开始。

这些教程提供了一些基本的概念和操作指南,如安装ROS操作系统、创建和编译ROS软件包、运行ROS 节点等。

此外,还有其他更专业的教程,如视觉SLAM(Simultaneous Localization and Mapping)和路径规划等。

选择适合自己的教程,根据实际应用需求进行学习。

第三步:准备ROS实验环境在进行ROS实训之前,需要搭建好相应的实验环境。

首先,选择一个ROS 支持的操作系统,如Ubuntu 18.04 LTS。

其次,根据官方文档的指引,安装ROS操作系统。

ROS有两个主要的发行版,即ROS 1和ROS 2。

初学者可以选择ROS 1 Melodic Morenia版本进行实训。

安装完ROS操作系统后,还需要安装一些常用的ROS软件包,如rviz(可视化工具)和rosbridge(ROS与外部系统的接口)等。

最后,确保计算机与机器人硬件之间的连接正常,如通过USB或网络连接。

第四步:进行ROS初级教程实训一旦环境准备好,就可以开始进行ROS初级教程实训了。

跟随教程的步骤,学习如何创建ROS工作空间、编写ROS软件包和节点,以及如何进行ROS通信和数据传输等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

6/24
物联网实验平台技术培训
接口( 接口(interface) )
接口是访问组件的唯一途径。 接口是访问组件的唯一途径。 接口是命令( 函数的集合。 接口是命令(command)和事件 )和事件(event)函数的集合。 函数的集合 interface Timer { command void startPeriodic(uint32_t dt); … event void fired(); … }
2011-5-20
19/24
物联网实验平台技术培训
点对点通信实验
CSMA/CA机制使节点在发送数据之前,首先去侦听信道 机制使节点在发送数据之前, 机制使节点在发送数据之前 状况,只有在信道空闲的情况下才发送数据, 状况,只有在信道空闲的情况下才发送数据,从而避免了 数据碰撞,保证了节点间数据稳定传输; 数据碰撞,保证了节点间数据稳定传输; 链路层重发机制是当节点数据发送失败时,链路层会重发, 链路层重发机制是当节点数据发送失败时,链路层会重发, 直到发送成功或重发次数到达设定的阈值为止, 直到发送成功或重发次数到达设定的阈值为止,提高了数 据成功到达率; 据成功到达率; 重复包判断机制是节点根据发送数据包的源节点地址及数 据包中的dsn域判断该包是不是重复包,如果是重复包, 域判断该包是不是重复包, 据包中的 域判断该包是不是重复包 如果是重复包, 则不处理,防止节点收到同一个数据包的多个拷贝。 则不处理,防止节点收到同一个数据包的多个拷贝。
物联网实验平台技术培训
物联网实验平台技术培训
——TinyOS实验培训 实验培训 成都道惟尔科技有限公司 易杰洋
物联网实验平台技术培训
培训内容
一、TinyOS基础常识 基础常识
二、演示实验——光照及温湿度采集实验 演示实验 光照及温湿度采集实验
三、演示实验——点对点通信实验 演示实验 点对点通信实验
图4_6 光照及温湿度采集实验结果
2011-5-20 16/24
物联网实验平台技术培训
培训内容
一、TinyOS基础常识 基础常识
二、演示实验——光照及温湿度采集实验 演示实验 光照及温湿度采集实验
三、演示实验——点对点通信实验 演示实验 点对点通信实验
2011-5-20
17/24
物联网实验平台技术培训
组件SHTC提供了 提供了SHT接口如下: 接口如下: 组件 提供了 接口如下 interface SHT { command error_t read(); event void readDone(error_t result, uint16_t temperature, uint16_t humidity); }
2011-5-20 11/24
物联网实验平台技术培训
光照及温湿度采集实验
SHT11接于 接于CC2430芯片的 芯片的P1_0和P1_1,分别用于时 接于 芯片的 和 , 钟同步和数据收发,引脚方向可以设置为输出( 钟同步和数据收发,引脚方向可以设置为输出(向 SHT11发送命令)和输入(接收采集数据)。 发送命令)和输入(接收采集数据)。 发送命令 主设备需向SHT11发送复位序列进行同步,之后发送 发送复位序列进行同步, 主设备需向 发送复位序列进行同步 传输启动序列,然后就可以向SHT11发送命令了。 传输启动序列,然后就可以向 发送命令了。 发送命令了
点对点通信实验
实验目的
了解CC2430芯片射频收发原理。 芯片射频收发原理。 了解 芯片射频收发原理 编程实现节点之间的点对点通信。 编程实现节点之间的点对点通信。
实验内容
设置节点的节点ID与网络 ,编程实现同一网络中( 设置节点的节点 与网络ID,编程实现同一网络中(网 与网络 相同) 络ID相同)两节点之间通信。要求从串口输入目的地址 相同 两节点之间通信。 和要发送的内容,目的地址以16进制形式输入 进制形式输入( 和要发送的内容,目的地址以 进制形式输入(如: 0xF3),内容长度为 个字节。 ),内容长度为 个字节。 ),内容长度为10个字节
2011-5-20 7/24
物联网实验平台技术培训
培训内容
一、TinyOS基础常识 基础常识
二、演示实验——光照及温湿度采集实验 演示实验 光照及温湿度采集实验
三、演示实验——点对点通信实验 演示实验 点对点通信实验
2011-5-20
8/24
物联网实验平台技术培训
光照及温湿度采集实验
实验目的
掌握TinyOS基于组件的编程方法 基于组件的编程方法 掌握 了解CC2430片上 片上ADC采集光照值的工作原理 了解 片上 采集光照值的工作原理 了解数字温湿度传感器SHT的工作原理 的工作原理 了解数字温湿度传感器
2011-5-20
10/24
物联网实验平台技术培训
光照及温湿度采集实验
系统组件AdcC提供了接口 提供了接口AdcControl和Read<int16_t>,由模块 系统组件 提供了接口 和 ,由模块AdcP 通过对相应寄存器的操作和中断的控制实现了接口中的命令,供用户调用。 通过对相应寄存器的操作和中断的控制实现了接口中的命令,供用户调用。 组件AdcC提供了 提供了AdcControl接口如下: 接口如下: 组件 提供了 接口如下 interface AdcControl { command void enable(uint8_t reference, uint8_t resolution, uint8_t input);/*配置 配置ADC*/ 配置 command void disable();/*关闭 关闭ADC功能 功能*/ 关闭 功能 } 组件AdcC提供了 提供了Read接口如下: 接口如下: 组件 提供了 接口如下 interface Read<val_t> { command error_t read();/*触发 触发ADC采样操作 采样操作*/ 触发 采样操作 event void readDone( error_t result, int16_t val );/*采样结束,返回样值*/ 采样结束,返回样值 采样结束 }
2011-5-20
2/24
物联网实验平台技术培训
一、TinyOS基础知识 基础知识
TinyOS是专门为 是专门为WSN设计的低功耗嵌入式操作系统。 设计的低功耗嵌入式操作系统。 是专门为 设计的低功耗嵌入式操作系统 其特点为: 其特点为: 采用简单的先进先出非抢占式任务调度策略 基于组件( 基于组件(component)的程序模型 ) 集成了Active Message通信协议 集成了 通信协议
实验内容
编程实现光照强度和温湿度的周期性采集
2011-5-20
9/24
物联网实验平台技术培训
光照及温湿度采集实验
实验原理
光照传感器采集值为模拟值需经过片上ADC进行处理。 进行处理。 光照传感器采集值为模拟值需经过片上 进行处理 CC2430芯片的片上 芯片的片上ADC,分辨率可配置为 ,10,12,14 芯片的片上 ,分辨率可配置为8, , , 位。 ADC输入:P0端口引脚的信号,P0_0-P0_7分别对应于 输入: 端口引脚的信号 端口引脚的信号, 输入 分别对应于 AIN0-AIN7。光照传感器输出信号接在 引脚。 。光照传感器输出信号接在P0_0引脚。 引脚 ADC输出:转换结果以2的补码形式保存在寄存器 输出:转换结果以 的补码形式保存在寄存器 的补码形式保存在寄存器ADCH 输出 和ADCL中。 中
2011-5-20
14/24
物联网实验平台技术培训
光照及温湿度采集实验
实验步骤
将硬件正确连接 打开Cygwin,切换到相应目录下,输入编译烧录命 ,切换到相应目录下, 打开 令: make dw1 install
图4_5 编译烧录
2011-5-20 15/24
பைடு நூலகம்
物联网实验平台技术培训
光照及温湿度采集实验
接口
图4_4 配置文件中组 件结构关系
2011-5-20 13/24
物联网实验平台技术培训
光照及温湿度采集实验
module LightSHTSensorM { uses interface Boot; …… 模块 uses interface SHT; } implementation { task void SensorDataLight() 定义任务 { /*ADBG(DBG_LEV, “\r\nStart Light reading...”); 14bit 、参考电压 VDD 3.3V、AD通道 通道0(p0.0)*/ 、 通道 call AdcControl.enable(ADC_REF_AVDD, ADC_14_BIT, ADC_AIN0); …… } event void AdcRead.readDone(error_t result, int16_t val) { /* 响应于 响应于AdcRead.read(),系统 转换完成触发该事件 转换完成触发该事件*/ ,系统AD转换完成触发该事件 事件 if (result == SUCCESS) { ADBG(DBG_LEV, "LightRead.readDone: SUCCESS, value=0x%x\r\n", val); } …… } …… event void Timer1.fired() { …… post SensorDataSHT(); } 提交任务 }
实验结果分析
周期性采样光照值 和温湿度值。 和温湿度值。 value为16位的光照 为 位的光照 值,此值越大表示光照 越弱; 越弱; temperature为温度 为温度 其单位为摄氏度, 值,其单位为摄氏度, 图中显示采集到的温度 值为19.2摄氏度; 摄氏度; 值为 摄氏度 humidity为湿度值, 为湿度值, 为湿度值 其单位为%, 其单位为 ,图中显示 采集到湿度值为57.2%。 采集到湿度值为 。
相关文档
最新文档