行李绳厂家
免费服务热线

Free service

hotline

010-00000000
行李绳厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

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

发布时间:2020-06-30 19:47:48 阅读: 来源:行李绳厂家

引言

本文引用地址:无线传感器网络(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代码。

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

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

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

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

河北西装订做

临沂制做工服

吉林工服订做

太原工作服订做