型号: | IOT-EZ240 |
---|---|
品牌: | - |
原产地: | 中国 |
类别: | 电子、电力 / 通信和广播电视设备 / 网络通信设备 |
标签︰ | 传感网实验箱 , 物联网实验箱 |
单价: |
-
|
最少订量: | - |
即时通讯: | 最后上线︰2014/04/14 |
IOT-EZ240实验设备是开发者在多年对传感网、物联网的研究以及教学基础上,真正从学习、研究传感网、物联网关键技术的角度出发,整理提炼所需的最关键的基本实验设备。通过实验箱中所配置的节点和网关设备,配合实验教材,使用者能够掌握传感网、物联网最基本的概念以致关键的核心技术。在实验箱熟练使用的基础上,完全能够根据实际学习、研究的情况,实现更多的、新的实验,研究深入的问题乃至研制传感网、物联网的产品。
实验套件配套教程的编写是结合在广大实际研究和开发传感网、物联网关键技术的真正需求,以及根据多年学生实际学习过程中所出现的各种问题,总结了使用者更加关注的核心技术,从初学者对TinyOS以及Contiki操作系统的最基本的工作原理入手,由浅入深地分析这两大操作系统的使用方法、设计理念、程序结构、组网通信、网络传输等关键技术。
TinyOS是UC Berkeley(加州大学伯克利分校)开发的开放源代码操作系统,专为嵌入式无线传感网络设计,操作系统基于构件(component-based)的架构使得快速的更新成为可能,而这又减小了受传感网络存储器限制的代码长度。
TinyOS的构件包括网络协议、分布式服务器、传感器驱动及数据识别工具。其良好的电源管理源于事件驱动执行模型,该模型也允许时序安排具有灵活性。
Contiki 是一个适用于有内存的嵌入式系统的开源的、高可移植的、支持网络的多任务操作系统。包括一个多任务核心、TCP/IP 堆栈、程序集以及低能耗的无线通讯堆栈。Contiki 采用C 语言开发的非常小型的嵌入式操作系统,运行只需要几K的内存。
Contiki 是一个小型的,开源的,极易移植的多任务电脑操作系统。它专门设计以适用于一系列的内存受限的网络系统,包括从8位电脑到微型控制器的嵌入系统。它的名字来自于托尔·海尔达尔的康提基号。
Contiki只需几KB的代码和几百字节的内存就能提供多任务环境和内建TCP/IP支持。
作为基础的内核以及大部分的核心功能是Swedish Institute of Computer Science的网络内嵌系统小组的Adam Dunkels开发的。
Contiki可以在每个进程内选择是否支持先占式多线程,进程间通讯通过事件利用消息来实现。Contiki中还包括一个可选的GUI子系统,可以提供对本地终端、基于VNC的网络化虚拟显示或者Telnet的图形化支持。
Contiki基于事件驱动模型,即多个任务共享同一个栈(stack),而不是每个任务分别占用独立的栈(如uCOS、FreeRTOS、Linux等)。Contiki每个任务只占用几个字节的RAM,可以大大节省RAM空间,更适合节点资源十分受限的无线传感器网络应用。
Contiki提供完整的IP网络和低功耗无线网络协议栈。对于IP协议栈,支持IPv4和IPv6两个版本,IPv6还包括6Lowpan帧头压缩适配器,ROLL RPL无线网络组网路由协议、CoRE/CoAP应用层协议,还包括一些简化的Web工具,包括Telnet、http和web服务等。Contiki还实现了无线传感器网络领域知名的MAC和路由层协议,其中MAC层包括X-MAC、CX-MAC、ContikiMAC、CSMA-CA、LPP等,路由层包括AODV、RPL等。支持类似SQL 的数据库Antelope,各类小型的web程序,如简单的Telnet客户端、FTP、Email等
Contiki提供了Cooja无线传感器网络仿真工具,能够多对协议在电脑上进行仿真,仿真通过后才下载到节点上进行实际测试,有利于发现问题,减少调试工作量。除此之外,Contiki还提供MSPsim仿真工具,能够对MSP430微处理器进行指令级模拟和仿真。仿真工具对于科研、算法和协议验证、工程实施规划、网络优化等很有帮助。
无线传感器网络中节点数量多,节点的运行维护是一个难题,contiki可以通过多种交互方式,如Web浏览器,基于文本的命令行接口,或者存储和显示传感器数据的专用程序等。基于文本的命令行接口是类似于Unix命令行的Shell工具,用户通过串口输入命令可以查看和配置传感器节点的信息、控制其运行状态,是部署、维护中实用而有效的工具。
Contiki实现了一个简单、小巧、易于使用的文件系统,称为CoffeeFile System(CFS),它是基于Flash的文件系统,用于在资源受限的的节点上存储数据和程序。CFS是充分传感器网络数据采集、数据传输需求以及硬件资源受限的特点而设计的,因此在耗损平衡、坏块管理、掉电保护方面、垃圾回收、映射机制方等方面进行优化,具有使用的存储空间少、支持大规模存储的特点。CFS的编程方法与常用的C语言编程类似,提供open、read、write、close等函数,易于使用。
为了延长传感器网络的生命周期,控制和减少传感器节点的功耗至关总重要,无线传感器网络领域提出的许多网络协议都围绕降低功耗而展开。为了评估网络协议以及算法能耗性能,需要测量出每个节点的能量消耗,由于节点数量多,使用仪器测试几乎不可行。Contiki提供了一种基于软件的能量分析工具,自动记录每个传感器节点的工作状态、时间,并计算出能量消耗,在不需要额外的硬件或仪器的情况下就能完成网络级别的能量分析。Contiki的能量分析机制既可用于评价传感器网络协议,也可用于估算传感器网络的生命周期。
Contiki采用BSD授权协议,用户可以下载代码,用户科研和商业,且可以任意修改代码,无需任何专利以及版权费用,是彻底的开源软件。尽管是开源软件,但是contiki开发十分活跃,在持续不断更新和改进之中。Contiki的作者Adam是一个编程的天才,它发明了LwIP、uIP、Protothred、contiki等软件,都在工业界得到广泛应用,大家熟知的LwIP就是一个例子。Adam还是IPSO组织的发起人之一,未来将会不断推进6Lowpan的标准化及应用。
Contiki可运行于各种平台上,包括嵌入式微控制器(例如TI MSP430及Atmel AVR)以及旧的家用电脑。程序代码量只有几K,存储器的使用量也只有几十Kb。可以说Contiki是一个专门针对物联网或者无线传感器网络应用的操作系统和协议栈,在科研以及产业化方便得到广泛的应用。
Contiki与TinyOS两中系统的比较如下:
性能指标 |
TinyOS |
Contiki |
所属领域 |
无线传感器网络、物联网 |
无线传感器网络、物联网 |
软件类型 |
小型OS +无线网络协议栈 |
小型OS +无线网络协议栈 |
OS特性 |
非抢占、共享栈空间 |
非抢占、共享栈空间 |
协议支持 |
802.15.4、6Lowpan、RPL、CoAP |
802.15.4、6Lowpan、RPL、CoAP |
开发语言 |
专用NesC语言,入门较难,其它领域几乎不使用(有可能导致失业) |
通用的C语言,入门容易,在各领域广泛使用 |
编译器 |
专用的编译器,性能和稳定性未经过验证,目前无商用编译器支持 |
通用的C编译器,如GCC、IAR等 |
开发环境 |
Linux、Cygwin,命令行模式,开发调试困难,门槛高 |
Linux Eclipse、或者Windows IAR,IAR图形化集成开发环境,功能强大 |
仿真器 |
Tossim,较为简单 |
Cooja,功能丰富、强大 |
可移植性 |
需要移植编译器,很难 |
C语言很好移植 |
支持的硬件 |
少数几种类型的处理器 |
8位、16位、32位几乎所有的处理器类型 |
开发团队 |
主要由Berkeley大学开发,目前核心人员已经去CISCO,不再开发,目前TinyOS很少更新代码 |
由LWIP的作者Adam dunkels团队以及ETH大学开发,目前已经成立公司全职开发,每周都有代码更新 |
发展趋势 |
TinyOS从一开始就主要做科研仿真,用户逐年骤减,基本上无产品 |
Contiki可以做科研,也有不少产品,2014年Adam团队的目标是要将Contiki作成物联网领域的首要选择 |