传感器网络应用程序的建模、仿真与自动代码生成框架

2011-09-21 09:16:17来源: 中华电子网

引言

  无线传感器网络(Wireless Sensor Networks,WSN)在现场应用时,通过无线信道通信进行信息共享和协作处理。

  WSN应用目前存在两种功能分析包,即特定平台操作系统和量身定制模型,在应用程序开发阶段都存在明显的缺陷。第一类将应用程序迁移到其他平台时很困难,例如从TinyOS迁移到MANTIS或迁移到ZigBee兼容平台,必须重写大量代码并进行大量调试。第二类有许多依赖于平台的具体代码需要开发和调试,如果在开发和集成阶段结束后发现问题,惟一的解决方法就是基于LED进行调试,极为耗时。
 

  参考仿真框架

  The MathWorks公司构建了基于 Simulink的传感器网络模型作为动态系统的基时仿真器。模型具有两个主要组件:无线信道模型(下文称为Communication Medium)和Node块。

  Communication Medium块可以通过C语言实现,可将其修改为重用任意现有信道和连接模型。

  Node块有多个完全参数化的mote,包含硬件与软件平台模型。例如包括计时器、LED以及应用程序的参数化Stateflow块。Stateflow是一种有限状态机语言,用于建模、仿真控制逻辑和流程图。可以用于实现各mote内运行的算法(应用程序、中间件或设备驱动器)。

  只需修改模板算法(Stateflow 库对象),在Communication Medium块中设置节点的连接参数即可开始仿真。使用动画状态图、观测仪器和显示器收集统计数据,以执行算法的功能分析。如果结果分析表明需要改进,则可通过改进算法实现。

  完成算法的功能分析后,通过算法的Stateflow自动为任何受支持的WSN平台生成代码。这是利用RealTime Workshop Embedded Coder软件的自定义功能完成的,它能为Simulink和Stateflow块生成可嵌入的ANSI C代码。

  

WSN的一个简单仿真框架

 

  图1 WSN的一个简单仿真框架

  WSN应用程序操作系统示例:TinyOS与MANTIS

  TinyOS的编程模型基于组件,概念实体由模块和配置两类组件表示,实现用于声明命令和事件签名的接口。事件即软件抽象,例如接受信息包、完成传感器取样等。命令用于触发操作,例如传感器读取操作或启动无线电接收和传输信息等。TinyOS应用程序是使用nesC编写的,这是C语言的一个扩展。

  MANTIS是一种轻量级、多线程的操作系统,能在能源受限的分布式传感器网络上进行多任务处理。调度程序采用基于优先级的轮叫调度,支持线程先占(pre-emption),允许操作系统在活动线程间自由切换而无需等待。由于采用了这样的方法,操作系统对于关键事件的响应速度比TinyOS更快。MANTIS的内核和API都是使用标准C语言编写的。

  

WSN应用程序建模、仿真和代码生成框架

  图2 WSN应用程序建模、仿真和代码生成框架

  实现 WSN 应用程序

  MANTIS线程和任务的计算主体以及TinyOS的命令实际上都是使用C语言编写的。在MANTIS中,集成非常直接,因为Real-Time Workshop Embedded Coder的ANSI C输出可直接用作用户线程。TinyOS的程序由高级抽象组成,但这些抽象的主体是使用C语言编写的,因而只需要一个代码转换器,以C语言代码作为输入,将代码分割成不同的部分(包括定义、函数等),并使用这些部分来生成nesC代码。

  本文使用The MathWorks公司的 Target Language Compiler(TLC)实现这样的代码转换器。它提供了生成特定平台代码的机制,可接受来自ANSI C代码的部分(例如包含、定义、函数代码等),也可为目标平台添加自定义代码。使用Stateflow时无需考虑通用函数在TinyOS或MANTIS中的实际实现,因为TLC库中已经实现了这些函数,可用于任意操作系统。通过使用TLC脚本自动生成TinyOS或MANTIS应用程序,在无需修改的前提下为目标平台编译和执行这些应用程序。 并且,TLC可重写并修改源代码,分割源代码并使之适合底层平台。这不仅实现了比编译器更出色的优化,还能方便的在硬件和软件平台之间迁移应用程序。

关键字:传感器网络

编辑:eeleader 引用地址:http://www.eeworld.com.cn/gykz/2011/0921/article_8519.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
传感器网络

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved