一种面向无线传感网络的数据流式构件模型及应用生成方法与流程

文档序号:12362804阅读:147来源:国知局
一种面向无线传感网络的数据流式构件模型及应用生成方法与流程

本发明涉及一种用于无线传感器网络数据汇聚的数据流式构件模型,及相应的应用生成方法。用于支持无线传感网络微节点应用程序的构件式开发,提供快速组装系统的能力和工具,属于计算机技术领域。



背景技术:

1988年,Mark Weiser提出“普适计算”思想,促使计算、通信和传感器3项技术相结合,产生了无线传感网络。经过数十年,无线传感网络技术获得了很大的发展,并在很多领域中发挥了非常重要的作用。

近些年,物联网的兴起及互联网、移动互联网、物联网的融合发展,无线传感网络通常是更大的物联网络的末端,是底层感知网络。但无线传感网络技术应用中的软件技术成熟度不够,规范及标准尚在逐步制定的过程之中,相应的应用软件开发过程缺乏普遍适用的规范及标准,软件可复用性差。为提高应用软件及软件开发过程的标准化程度,减少重复工作,降低开发难度和成本,加快应用软件开发速度,提高软件开发效率,在该领域引入合适的应用计算模型及软件构件开发方法,并提供开发工具支持应用开发是非常有必要的。

构件软件开发以构件模型为核心,本发明提出面向无线传感网络应用开发的数据流式构件模型,并提出开发工具,用于构件生产、组装、测试及管理等,从而有效提高传感网络应用软件的开发效率。

现有的构件模型有通用构件模型及嵌入式领域构件模型。通用构件模型不适用于嵌入式领域。嵌入式构件模型主要有针对特定嵌入式应用定义的模型和通过剪裁通用模型功能而得到精简构件模型;前者缺少跨领域协同,而且没有足够的开发工具;后者也缺乏实时特点支持、微节点支持等无线传感网络领域最基本的一些属性,对于无线传感网络微节点缺乏适应性。因此开发适用于无线传感网络微节点应用自身特点的软件构件模型成为本发明的基础。



技术实现要素:

无线传感网络应用中,传感器微节点通过特定协议组成传感网络,通常成为物联系统的末端子系统,并运行应用程序,主要承担检测和控制任务。

在系统规划时,传感器微节点除了其基本的检测和控制任务外,根据实际的系统处理模型,也会被指定分担一些简单数据处理任务,并且将初步的数据处理结果汇聚到汇聚节点,由整个传感网络分布式地完成数据处理任务。

系统运行时,按照数据规划,微节点运行控制、查询、预处理、结果上报、节点状态等任务,将数据汇聚到局部中心处理节点。这样的处理模型通常具有周期性特征和数据流特征。

显然,现有的嵌入式系统中使用的软件构件模型,无论从实时性、代码规模及效率特性等诸多方面并不适用于无线传感网络微节点应用。

为了解决无线传感网络微节点的应用程序的开发效率,本发明在于提供一种面向无线传感网络微节点的应用软件数据流构件模型。该软件构件模型关注无线传感网络应用的数据流特征、效率特征、资源受限特征和并发实时特征,适用于该领域的组装和增量式的应用软件开发。为此,本发明采用如下技术方案。

一种面向于无线传感网络微节点,适用于数据汇聚的应用软件构件模型,其包括如下基本元素:构件、端口、连接。构件具有自包容、向外部提供数据处理功能的特性。

基本元素:构件,构成应用系统基本的功能性组成单元。构件具有属性,用来表述构件的元信息。构件基本属性包括:构件名、标准名、绑定名。构件名是构件的名字;标准名是该构件符合的标准输出标识名;绑定标识名是构件的连接绑定标识名。构件规约是通过构件描述语言对构件进行的形式化的描述,从而使得构件的使用者能够了解构件的接口及其功能。

基本元素:端口,是构件与外界连接的接口。构件的端口是实现构件组装的基础之一。

其中,端口分为数据端口、控制端口两类,每个端口为输入端口或输出端口中的一种。数据端口是各种构件对数据处理的程序端口形式;控制端口是对各种构件进行控制的程序端口形式。本发明所述的构件对数据输入端口的数据进行处理后,将生成的数据从数据输出端口送出;控制输入端口是对构件的控制操作,构件可以通过控制输出端口对与它连接的构件进行控制。

所述的端口的属性具体包括:端口名、端口类型、端口标准、流控标志。端口名是端口的名字;端口类型是指端口处理的信息类型,是单字、字节流、数据包、控制端口三种类型中的一种;端口标准,对于数据端口,它定义端口处理数据的意义,符合同一标准的数据端口,它们对数据的理解以及处理方式是一致的;对于控制端口,端口标准是一组函数的组合,符合同一标准的控制端口,它们的程序是一致的,包含同一组函数。控制端口标准非常多,基本系统提供基础的标准控制端口标准,用户可以自行定义控制端口标准。

基本元素:连接,是将各个构件体结合的机制,表示构件之间的基本关系。构件的连接是通过构件的端口之间的连接而实现的。在利用构件进行复用时,通过对构件端口的连接进行构件组装,形成节点上运行的应用程序。

对于连接,任何情况下,一个输出端口只能连接到一个输入端口上;而一个输入端口可以连接多个输出端口。只有相同端口类型和端口标准的端口间才可以连接。

为了使用已有的构件组装生成可以在节点上运行的应用程序,首先要描述其构件模型以及组装的要求,用三种描述文件进行描述,包括构件描述文件、组装描述文件、端口标准描述文件。

本发明所述的构件描述文件提供的功能包括:

(1)描述构件的功能和接口,方便开发人员对构件功能的理解以及对构件的使用;

(2)描述构件的端口信息,方便开发人员对构件进行复用生成应用;

(3)在软件工具的支持下,可以通过对规划的构件集合进行组装,实现构件式应用的自动生成;

(4)为构件管理提供构件规范描述,便于管理以及利用规约匹配来进行构件检索。

其中,构件描述文件,提供构件标准化的规范和描述的功能。描述内容包括构件的基本属性、构件的端口属性。

其中,组装描述文件,通过对端口间连接的描述,说明构件之间如何进行组装形成应用。描述构件间的连接其实就是描述端口间的连接。描述内容包括:组成应用的各个构件信息、构件与构件间的连接信息。所述的对构件与构件间连接信息描述,是以构件的角度描述该构件的输出端口与其它构件的输入端口连接;通过对每个构件的每个输出端口的描述,描述所有连接。

其中,端口标准描述文件,提供了构件系统内所有端口标准特性功能的描述。数据端口标准是由开发人员自定义的;端口标准描述文件只提供对控制端口的端口标准描述的功能。端口标准描述文件,对单个端口标准的描述,是对它所包含的一组函数的描述,包括函数名、返回值、参数列表。

通过建立无线传感网络微节点的应用构件模型,可以开发符合模型规范的微节点的应用构件,并且规范化一系列的构件模型描述文件,通过构件生成工具,按照应用构件模型的定义和应用规划,就可以通过构件组装的方法自动生成相应的构件式应用程序。

附图说明:

图1 是本发明所述的构件模型示意图;

图2 是按照本发明所述构件模型的构件基本分类图。

具体实施方式。

无线传感网络应用中,传感器微节点通过特定协议组成传感网络,通常成为物联系统的末端,并运行应用程序,主要承担检测和控制任务。

在系统规划时,传感器微节点除了其基本的检测和控制任务外,根据实际的系统处理模型,也会被指定分担一些简单数据处理任务,并且将初步的数据处理结果汇聚到汇聚节点,由整个传感网络分布式地完成数据处理任务。

本发明提供了一种面向无线传感器网络微节点的应用软件构件模型。该软件构件模型关注无线传感器网络应用的数据流特征、效率特征、资源受限特征和并发实时特征,适用于该领域的组装和增量式的应用软件开发。

一种面向于无线传感器网络微节点的应用软件构件模型,其包括如下基本元素:构件、端口、连接。构件具有自包容、向外部提供数据处理功能的特性。

下面结合附图来说明本发明的具体实施方式。

如图1所示,是本发明所述的构件模型示意图。从图中可见,一种面向于无线传感网络微节点的应用软件构件模型,其基本元素包括:构件、端口、连接。

如图2所示,为无线传感器网络应用中,按照本发明所述构件模型的构件分类。由图可见,本发明所述的构件模型的构件是各个数据处理部件,是数据的发送、接收、处理器件。根据数据处理方式的不同,把构件分为两类:基本构件与连接器类构件。

其中,基本构件进一步包括:数据源、数据阱、收发器、过滤器、控制器;连接器类构件进一步构件包括:转接器、汇聚器、分流器、多路器等。

所述的数据源是指发送数据的部件,一般对应于各种数据接收器和传感器。从内部系统角度,它是数据流的源点,一般有一个数据输出端口。

所述的数据阱是指接收数据的部件,一般对应于各种数据接收器和传感器,对应于各种数据发送器和执行部件。从内部系统角度,它是数据到达的终点,一般只有一个数据输入端口。

所述的收发器是系统与外界的通讯设备,从外界接收数据作为本系统的数据源,同时作为本系统的数据阱将本系统的数据发送到外界。

所述的过滤器将输入的数据进行加工,产生输出数据。系统中的大部分构件都是过滤器。

所述的控制器构件只有控制端口,没有数据端口。

其中,连接器类构件与基本构件一样也是构件,但其目的是起连接基本构件的作用。它的端口类型、端口个数,随着连接端构件的不同而发生变化。在该领域中连接器对于规范数据流特征非常有效,通常它们的代码也比较简单。

所述的转接器具有一个输入和多个输出端口,根据需要将输入的“信息”转发到某一个输出。它既可以是控制,也可以是数据。转接器还有一个控制输入端口,转接器将输入数据转接到哪一个端口完全由其控制端口指定。转接器不是多路器,它不对输入数据进行任何加工,也不能根据数据的内容向输出端口分配数据。

所述的汇聚器具有多个输入和一个输出,将所有的输入“信息”都汇聚到一个输出中。和转接器一样,它既可以是控制,也可以是数据。汇聚器还有一个控制输出端口,该端口说明输出端口输出的是哪一个输入端口的数据。当汇聚器和转接器结合使用时,该控制输出端口与转接器的控制输入端口相连。单独使用时,不用做任何连接。

所述的分流器具有一个输入和多个输出,将输入端口的数据或控制转发到每一个输出端口。

所述的多路器具有一个输入和多个输出。它将从输入端口得到的多路混合的输入根据数据内部的通道标记分配到与该通道对应的输出端口。

为了使用已有的构件组装生成应用系统,首先要描述其构件模型以及组装的要求,用三种描述文件进行描述,包括构件描述文件、组装描述文件、端口标准描述文件。

本发明所述的构件模型描述文件提供的功能包括:

(1)描述构件的功能和接口,用于开发人员对构件功能的理解以及对构件的使用;

(2)描述构件的端口信息,用于对构件进行复用生成应用;

(3)在软件工具的支持下,可以通过对规划的构件集合进行组装,实现应用的自动生成;

(4)为构件管理提供构件规范描述,便于管理以及利用规约匹配来进行构件检索。

其中,构件描述文件,提供构件标准化的规范和描述的功能。描述内容包括构件的基本属性、构件的端口属性。

其中,组装描述文件,通过对端口间连接的描述,说明构件之间如何进行组装形成应用。描述构件间的连接其实就是描述端口间的连接。描述内容包括:组成应用的各个构件信息、构件与构件间的连接信息。所述的对构件与构件间连接信息描述,是以构件的角度描述该构件的输出端口与其它构件的输入端口连接;通过对每个构件的每个输出端口的描述,描述所有连接。

其中,端口标准描述文件,提供构件系统内所有端口标准特性功能的描述,通常嵌在构件描述文件之中。数据端口标准是由开发人员自定义的;端口标准描述文件只提供对控制端口的端口标准描述的功能。端口标准描述文件,对单个端口标准的描述,是对它所包含的一组函数的描述,包括函数名、返回值、参数列表。

构件描述文件具体格式模板示例如下:

<component name = 构件名>

对构件属性的描述:

<standard name :构件符合的标准/>

<output_file name:构件连接绑定文件名/>

对构件端口的描述:

<data_in: 端口a,端口属性 /> ,每个端口依次描述;

<data_out: 端口b,端口属性 /> ,每个端口依次描述;

<control_in: 端口c,端口属性 /> ,每个端口依次描述;

<control_out:端口d1,端口属性 />,每个端口依次描述;

</component >。

组装描述文件具体格式模板示例如下:

<construct name= 组装名/>

组成应用的各个构件信息:

从第一个构件名称、构件模型描述文件的路径及文件名,依次描述

对连接的描述:(依次对构件1,…n的有连接的输出端口进行描述)

对构件1的输出端口的连接进行描述:

<bind comp =构件1>

<port name=源端口名 dest_comp=目的构件名dest_port=目的端口名/>

</bind>

对构件n的输出端口的连接进行描述:

</construct>。

基于以上所述构件模型的构件组装,采用静态绑定的方法,构件的连接实现为端口函数的宏定义的替换;编译生成代码甚至与手写代码相差无几。使用本发明所述的构件模型进行软件开发,几乎完全等同于普通的手写软件开发,不影响代码占用RAM空间的大小和代码运行速率。

基于以上所述构件模型的构件开发工具,包括构件模型、构件库、构件开发工具、构件组装工具。应用开发工具运行在支持构件开发的操作系统之上,用于搭建各个领域的应用,方便快速地进行软件开发。应用开发工具采用构件化的软件开发技术,基于发明所述的软件构件模型,以及基于模型的构件描述语言以及解析器,用于构件的生成、应用的生成,并分别实现构件为源代码模板,实现应用为构件源代码。构件组装工具以构件模型与构件库为基础,用以方便地组装生成应用。构件开发工具还可以生成构件库,为复用提供大量可用构件;再利用构件库已存在的构件,开发无线传感器网络应用程序。大量的行业与领域相关的自定义构件将会大大提高应用程序开发效率,缩短产品的开发周期,并且提高产品质量。

总之,本发明把构件化的软件开发方法引入无线传感网络领域,通过建立无线传感网络微节点的应用构件模型,可以开发符合模型规范的微节点的应用构件,并且规范化一系列的构件模型描述文件,通过构件生成工具,按照应用构件模型的定义和应用规划,就可以通过构件组装的方法自动生成相应的应用程序。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1