CN106900082B - 传感器网络节点的数据处理方法及传感器网络节点 - Google Patents

传感器网络节点的数据处理方法及传感器网络节点 Download PDF

Info

Publication number
CN106900082B
CN106900082B CN201710064238.4A CN201710064238A CN106900082B CN 106900082 B CN106900082 B CN 106900082B CN 201710064238 A CN201710064238 A CN 201710064238A CN 106900082 B CN106900082 B CN 106900082B
Authority
CN
China
Prior art keywords
data
sensor
cache region
operating system
network node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710064238.4A
Other languages
English (en)
Other versions
CN106900082A (zh
Inventor
林强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Information Science and Technology University
Original Assignee
Beijing Information Science and Technology University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Information Science and Technology University filed Critical Beijing Information Science and Technology University
Priority to CN201710064238.4A priority Critical patent/CN106900082B/zh
Publication of CN106900082A publication Critical patent/CN106900082A/zh
Application granted granted Critical
Publication of CN106900082B publication Critical patent/CN106900082B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25338Microprocessor

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明实施例提供了一种传感器网络节点的数据处理方法及传感器网络节点,其中,该方法包括:传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,调度每个传感器的数据采集进程进行数据采集,将每个传感器采集的数据分别存入该传感器自身对应的采集数据缓存区内,设置采集数据缓存区与传感器一一对应;针对每个采集数据缓存区中的数据,以完整数据单元为单位,向微处理器请求数据处理进程;在要求传感器网络节点向服务节点发送数据时,将微处理器处理过的数据存入发送数据缓存区中,发送数据缓存区中的数据通过网络设备发送给服务节点。该方案采集数据缓存区和发送数据缓存区的使用,可以降低数据溢出的情况。

Description

传感器网络节点的数据处理方法及传感器网络节点
技术领域
本发明涉及传感器网络技术领域,特别涉及一种传感器网络节点的数据处理方法及传感器网络节点。
背景技术
传感器网络是由大量传感器网络节点通过相互通信形成的网络,每个传感器网络节点由传感模块、处理模块和电源模块组成,完成数据采集、数据收发、数据转发三项基本功能。传感器网络节点具有广泛的应用。新一代更小、更廉价的低功耗设备的产生、分布式计算带来的数据计算和处理能力的提高、通信技术的发展以及微机电系统的发展,使得发展低成本、低功耗、多种距离通讯的多功能传感器成为可能。传感器网络按连接形式不同分为无线传感器网络和有线传感器网络两部分。无线传感器网络不需要固定网络支持,具有快速展开、布设方便等特点,但稳定性和可靠性要劣于有线传感器网络。传感器网络节点由于物理大小限制,一般存储空间有限,对有限的数据存储空间的利用率具有较高的要求。
嵌入式操作系统负责感知节点的全部软、硬件资源的分配、任务调度,控制、协调并发活动。它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面等。
实时操作系统(RTOS)是指能够及时响应随机发生的外部事件,并在规定的时间范围内完成对该事件处理的系统。实时系统的最主要特征就是其快速的处理能力,适应这种实时性的要求。实时系统在设计时力求简单而实用。一般的实时系统都拥有高精度的实时时钟;具有快速的中断响应和中断处理能力;支持多道程序设计,任务调度算法简单、实用,数据结构简洁、明了,任务切换速度快,能够处理时间驱动的任务(周期性任务)和事件驱动的任务。
对于强实时操作系统来说,不论进程采用哪个调度算法,都达到一个结果,即在规定时间内完成进程。同时在规定时间内完成采集设备的数据采集任务;在规定的时间内完成网络数据的发送任务。对于数据采集速度很高、采集数据多样化的传感器网络节点来说,可能存在数据溢出的问题。
发明内容
本发明实施例提供了一种传感器网络节点的数据处理方法,以解决现有技术中数据采集速度很高、采集数据多样化的传感器网络节点存在数据溢出的技术问题。该方法包括:传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,包括:调度每个传感器的数据采集进程进行数据采集,将每个传感器采集的数据分别存入该传感器自身对应的采集数据缓存区内,其中,设置多个所述采集数据缓存区,所述采集数据缓存区与所述传感器一一对应;针对每个所述采集数据缓存区中的数据,以完整数据单元为单位,向微处理器请求数据处理进程;在要求传感器网络节点向服务节点发送数据时,将所述微处理器处理过的数据存入发送数据缓存区中,所述发送数据缓存区中的数据通过网络设备发送给所述服务节点。
在一个实施例中,设置多个所述采集数据缓存区,所述采集数据缓存区与所述传感器一一对应,包括:针对每个所述传感器,根据以下参数计算该传感器对应的采集数据缓存区的大小:基于强实时操作系统的机制要求所述微处理器完成该传感器所采集数据的数据处理的时间、该传感器的数据采集进程中预设的数据采集单元长度以及所述微处理器处理数据的速率。
在一个实施例中,设置多个所述采集数据缓存区,所述采集数据缓存区与所述传感器一一对应,包括:针对每个所述传感器,通过以下公式计算该传感器对应的采集数据缓存区的大小:
Figure BDA0001220336980000021
其中,ri,1表示第i个传感器对应的采集数据缓存区的大小;di,2表示基于强实时操作系统的机制要求所述微处理器完成第i个传感器所采集数据的数据处理的时间;li,1表示第i个传感器的数据采集进程中预设的数据采集单元长度;v1表示所述微处理器处理数据的速率。
在一个实施例中,针对每个所述采集数据缓存区中的数据,以完整数据单元为单位,向微处理器请求数据处理进程,包括:针对每个所述采集数据缓存区中的数据,按照先进先出的规则,在所述采集数据缓存区中的数据未构成整数个完整数据单元时,设置标识位为0;在所述采集数据缓存区中的数据构成整数个完整数据单元时,设置所述标识位为1;在所述标识位为1时,以当前整数个完整数据单元为单位,向所述微处理器请求数据处理进程。
在一个实施例中,还包括:根据以下参数计算所述发送数据缓存区的大小:基于强实时操作系统的机制要求完成各传感器的处理后的数据的发送时间中的最大值、各传感器的处理后的数据的数据单元长度中的最小值、各传感器的处理后的数据的数据单元长度中的最大值以及基于强实时操作系统的机制要求对处理后的数据的发送速率。
在一个实施例中,还包括:通过以下公式计算所述发送数据缓存区的大小:
Figure BDA0001220336980000031
其中,rs表示所述发送数据缓存区的大小;di,3表示基于强实时操作系统的机制要求完成第i个传感器的处理后的数据的发送时间;n表示传感器的个数;li,2表示第i个传感器的处理后的数据的数据单元长度;v2表示基于强实时操作系统的机制要求对处理后的数据的发送速率。
本发明实施例还提供了一种传感器网络节点,以解决现有技术中数据采集速度很高、采集数据多样化的传感器网络节点存在数据溢出的技术问题。该传感器网络节点包括:传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,包括:数据采集模块,用于在基于强实时操作系统的机制调度每个传感器的数据采集进程时进行数据采集,将每个传感器采集的数据分别存入该传感器自身对应的采集数据缓存区内,其中,设置有多个所述采集数据缓存区,所述采集数据缓存区与所述传感器一一对应;数据处理模块,用于在每个所述采集数据缓存区中的数据,以完整数据单元为单位请求数据处理进程时,对各所述采集数据缓存区中请求数据处理进程的数据进行数据处理,在要求传感器网络节点向服务节点发送数据时,将处理过的数据存入发送数据缓存区中;网络模块,用于将所述发送数据缓存区中的数据发送给所述服务节点。
在一个实施例中,每个传感器对应的采集数据缓存区的大小是根据以下参数计算的:基于强实时操作系统的机制要求所述数据处理模块完成该传感器所采集数据的数据处理的时间、该传感器的数据采集进程中预设的数据采集单元长度以及所述数据处理模块处理数据的速率。
在一个实施例中,所述数据采集模块,包括:标识设置单元,用于针对每个所述采集数据缓存区中的数据,按照先进先出的规则,在所述采集数据缓存区中的数据未构成整数个完整数据单元时,设置标识位为0;在所述采集数据缓存区中的数据构成整数个完整数据单元时,设置所述标识位为1;进程请求单元,用于针对每个所述采集数据缓存区,在所述标识位为1时,以当前整数个完整数据单元为单位,向所述数据处理模块请求数据处理进程。
在一个实施例中,所述发送数据缓存区的大小是根据以下参数计算的:基于强实时操作系统的机制要求完成各传感器的处理后的数据的发送时间中的最大值、各传感器的处理后的数据的数据单元长度中的最小值、各传感器的处理后的数据的数据单元长度中的最大值以及基于强实时操作系统的机制要求对处理后的数据的发送速率。
在本发明实施例中,传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,使得可以有效提高嵌入式操作系统的强实时性;同时,在调度每个传感器的数据采集进程进行数据采集时,在申请数据处理进程触发中断之前,将每个传感器采集的数据分别存入该传感器自身对应的采集数据缓存区内,在每个采集数据缓存区中,以完整数据单元为单位,向微处理器请求数据处理进程;在数据发送之前,将处理后的数据存入发送数据缓存区中,以通过网络设备发送给服务节点。采集数据缓存区和发送数据缓存区的使用,使得即使是在数据采集速度很高、采集数据多样化的情况,也可以有效降低数据溢出的情况。采集数据缓存区和发送数据缓存区的使用,配合强实时性的进程调度机制,使得可以有效使用传感器网络节点有限的资源,有助于提高传感器网络节点的感知品质和控制服务品质、降低传感器网络节点的能源消耗。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1是本发明实施例提供的一种传感器网络节点的数据处理方法的流程图;
图2是本发明实施例提供的一种传感器网络节点的功能示意图;
图3是本发明实施例提供的一种具体的传感器网络节点的数据处理方法的流程图;
图4是本发明实施例提供的一种传感器网络节点的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在本发明实施例中,提供了一种传感器网络节点的数据处理方法,该传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,如图1所示,该方法包括:
步骤101:调度每个传感器的数据采集进程进行数据采集,将每个传感器采集的数据分别存入该传感器自身对应的采集数据缓存区内,其中,设置多个所述采集数据缓存区,所述采集数据缓存区与所述传感器一一对应;
步骤102:针对每个所述采集数据缓存区中的数据,以完整数据单元为单位,向微处理器请求数据处理进程;
步骤103:在要求传感器网络节点向服务节点发送数据时,将所述微处理器处理过的数据存入发送数据缓存区中,所述发送数据缓存区中的数据通过网络设备发送给所述服务节点。
由图1所示的流程可知,在本发明实施例中,传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,使得可以有效提高嵌入式操作系统的强实时性;同时,在调度每个传感器的数据采集进程进行数据采集时,在申请数据处理进程触发中断之前,将每个传感器采集的数据分别存入该传感器自身对应的采集数据缓存区内,在每个采集数据缓存区中,以完整数据单元为单位,向微处理器请求数据处理进程;在数据发送之前,将处理后的数据存入发送数据缓存区中,以通过网络设备发送给服务节点。采集数据缓存区和发送数据缓存区的使用,使得即使是在数据采集速度很高、采集数据多样化的情况,也可以有效降低数据溢出的情况。采集数据缓存区和发送数据缓存区的使用,配合强实时性的进程调度机制,使得可以有效使用传感器网络节点有限的资源,有助于提高传感器网络节点的感知品质和控制服务品质、降低传感器网络节点的能源消耗。
具体实施时,设置多个采集数据缓存区,采集数据缓存区与传感器网络节点包括的传感器一一对应,具体的,多个采集数据缓存区可以是物理上的多个单独的缓存器,也可以是在一个物理的缓存器中划分出的多个采集数据缓存区。
具体实施时,传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,具体是指传感器网络节点运行嵌入式操作系统对底层硬件(例如,微处理器、存储装置、供电装置、显示装置以及各类传感器等)进行管理,采用强实时操作系统的强实时机制进行进程调度,以有效提高嵌入式实时操作系统的强实时性。
具体实施时,每个传感器的数据采集进程可以预先设定好,例如,各传感器的数据采集进程形成的进程集合为:
M={P1,P2,...Pi...Pn}
其中,进程集合M中包括n个传感器的数据采集进程,Pi表示第i个传感器的数据采集进程的调度算法,例如,Pi可以由如下元素组成。
Pi={li,vi,di,si}
其中,li表示数据采集单元长度,di表示数据采集周期,vi表示第i个传感器的数据采集速率,si表示第i个传感器的序号。
具体实施时,设置多个采集数据缓存区,采集数据缓存区与传感器一一对应,如图2所示,以传感器网络节点包括三个传感器为例,则设置三个采集数据缓存区分别为r1,1、r2,1以及r3,1,三个采集数据缓存区存储的数据均向MPU(微处理器)申请进行数据处理进程,如果需要向服务节点发送数据,则处理后的数据均存储在发送数据缓存区rs中,以通过网络设备将发送数据缓存区中的数据发送给服务节点。具体的,发送数据缓存区可以设置在网络设备中。
具体实施时,每个传感器的数据采集进程可以预先设定好,例如,各传感器的数据采集进程形成的进程集合为:
M={P1,P2,...Pi...Pn}
其中,进程集合M中包括n个传感器的数据采集进程,Pi表示第i个传感器的数据采集进程的调度算法,例如,Pi可以由如下元素组成。
Pi={li,vi,di,si}
其中,li表示数据采集单元长度,di表示数据采集周期,vi表示第i个传感器的数据采集速率,si表示第i个传感器的序号。
具体实施时,为了进一步避免数据的溢出,在本实施例中,设置多个所述采集数据缓存区,所述采集数据缓存区与所述传感器一一对应,包括:针对每个所述传感器,根据以下参数计算该传感器对应的采集数据缓存区的大小:基于强实时操作系统的机制要求所述微处理器完成该传感器所采集数据的数据处理的时间、该传感器的数据采集进程中预设的数据采集单元长度以及所述微处理器处理数据的速率。
具体的,针对某个传感器来说,传感器设备本身决定了在规定时间d1内必须完成数据采集。在基于强实时操作系统的强实时约束机制下,要求操作系统在d2时间内必须完成数据的处理。微处理器处理数据的速率为v1,数据采集进程设定了数据采集单元长度为l1,则处理的时间为l1/v1;在基于强实时操作系统的强实时约束机制下,要求在d3时间内必须完成对处理后数据的发送,发送的速率为v2,处理后数据的数据单元长度为l2,则发送时间为l2/v2。基于这种情况下,针对每个传感器,可以通过以下公式计算该传感器对应的采集数据缓存区的大小:
Figure BDA0001220336980000071
其中,ri,1表示第i个传感器对应的采集数据缓存区的大小;di,2表示基于强实时操作系统的机制要求所述微处理器完成第i个传感器所采集数据的数据处理的时间;li,1表示第i个传感器的数据采集进程中预设的数据采集单元长度;v1表示所述微处理器处理数据的速率。
具体实施时,为了进一步使采集数据缓存区更好地配合强实时性进程调度,避免在申请数据处理进程触发中断之前出现数据溢出的问题,在本实施例中,针对每个所述采集数据缓存区中的数据,以完整数据单元为单位,向微处理器请求数据处理进程,包括:针对每个所述采集数据缓存区中的数据,按照先进先出的规则,在所述采集数据缓存区中的数据未构成整数个完整数据单元时,设置标识位为0;在所述采集数据缓存区中的数据构成整数个完整数据单元时,设置所述标识位为1;在所述标识位为1时,以当前整数个完整数据单元为单位,向所述微处理器请求数据处理进程。
具体的,针对不同类型的传感器,每个类型传感器采集的数据不同,例如,有采集温度、湿度数据的传感器,也有采集视频图像的传感器,对于采集温度、湿度数据的传感器来说,每次采集的数据是数值,一个数值即可以认为是一个完整数据单元;对于采集视频图像的传感器来说,每次采集的数据可能是完整的帧数据,也可能是不完整的帧数据,此时,一个完整的帧数据就可以认为是一个完整数据单元。传感器采集的数据实时存入该传感器对应的采集数据缓存区中,在采集数据缓存区中循环以下步骤来申请数据处理进程,使得每次处理的数据都是完整可识别的数据:随着传感器实时向采集数据缓存区中存入数据,按照先进先出的原则,采集数据缓存区中的数据会累计成一个或多个完整数据单元(即上述整数个完整数据单元),此时,设置标识位为1,以当前一个或多个完整数据单元为整体向微处理器请求数据处理进程;然后,当前一个或多个完整数据单元为整体进入微处理器进行数据处理,此时,采集数据缓存区中的数据不足以构成整数个完整数据单元,则将标识位设置为0,随着传感器实时向采集数据缓存区中存入数据,采集数据缓存区中的数据又构成整数个完整数据单元,则再次以当前整数个完整数据单元为整体向微处理器请求数据处理进程。
具体实施时,为了进一步使发送数据缓存区更好地配合强实时性进程调度,避免在数据发送之前出现数据溢出的问题,本申请设置了发送数据缓存区,针对每个传感器,可以计算出每个传感器的处理后数据所需的发送数据缓存区大小,例如,
Figure BDA0001220336980000081
其中,ri,2表示第i个传感器所需发送数据缓存区的大小;di,3表示基于强实时操作系统的机制要求完成第i个传感器的处理后的数据的发送时间;li,2表示第i个传感器的处理后的数据的数据单元长度;v2表示基于强实时操作系统的机制要求对处理后的数据的发送速率。
计算出每个传感器的处理后数据所需的发送数据缓存区大小后,为了实现在面对任何类型传感器的情况下都不会出现数据溢出的问题,在本实施例中,根据以下参数计算传感器网络节点的发送数据缓存区的大小:
基于强实时操作系统的机制要求完成各传感器的处理后的数据的发送时间中的最大值、各传感器的处理后的数据的数据单元长度中的最小值、各传感器的处理后的数据的数据单元长度中的最大值以及基于强实时操作系统的机制要求对处理后的数据的发送速率。
具体的,通过以下公式计算所述发送数据缓存区的大小:
Figure BDA0001220336980000091
其中,rs表示所述发送数据缓存区的大小;di,3表示基于强实时操作系统的机制要求完成第i个传感器的处理后的数据的发送时间;n表示传感器的个数;li,2表示第i个传感器的处理后的数据的数据单元长度;v2表示基于强实时操作系统的机制要求对处理后的数据的发送速率。
具体实施时,以下结合具体示例来详细描述上述传感器网络节点的数据处理方法,以该传感器网络节点包括3个传感器为例,如图3所示,该方法包括以下步骤:
步骤301:传感器网络节点加电后通过先运行配置文件,引导计算机加载和运行操作系统,即通过寄存器将地址指向操作系统存储模块。
步骤302:设定传感器网络节点所需完成的感知任务,即设定各传感器的数据采集进程。为维持同步,要求设定的各传感器的数据采集进程中数据采集开始时间为同一起始点,例如,进程集合M={P1,P2,P3},其中,以P1为例,P1={l1,v1,d1,s1},l1表示数据采集单元长度,d1表示数据采集周期,v1表示第1个传感器的数据采集速率,s1表示第1个传感器的序号。
步骤303:针对每个传感器设置一个采集数据缓存区,即设置三个采集数据缓存区;设置一个发送数据缓存区,该发送数据缓存区用于存储各传感器的处理后的数据。
具体的,针对第1个传感器来说,传感器设备本身决定了在规定时间d1,1内必须完成数据采集。在基于强实时操作系统的强实时约束机制下,要求操作系统在d1,2时间内必须完成数据的处理。微处理器处理数据的速率为v1,数据采集进程设定了数据采集单元长度为l1,1,则处理的时间为l1,1/v1;在基于强实时操作系统的强实时约束机制下,要求在d1,3时间内必须完成对处理后数据的发送,发送的速率为v2,处理后数据的数据单元长度为l1,2,则发送时间为l1,2/v2。基于这种情况下,可以通过以下公式计算第1个传感器对应的采集数据缓存区r1,1的大小:
Figure BDA0001220336980000101
此时,第1个传感器的处理后的数据所需的发送数据缓存区r1,2的大小为:
Figure BDA0001220336980000102
针对第2个传感器来说,传感器设备本身决定了在规定时间d2,1内必须完成数据采集。在基于强实时操作系统的强实时约束机制下,要求操作系统在d2,2时间内必须完成数据的处理。微处理器处理数据的速率为v1,数据采集进程设定了数据采集单元长度为l2,1,则处理的时间为l2,1/v1;在基于强实时操作系统的强实时约束机制下,要求在d2,3时间内必须完成对处理后数据的发送,发送的速率为v2,处理后数据的数据单元长度为l2,2,则发送时间为l2,2/v2。基于这种情况下,可以通过以下公式计算第2个传感器对应的采集数据缓存区r2,1的大小:
Figure BDA0001220336980000103
此时,第2个传感器的处理后的数据所需的发送数据缓存区r2,2的大小为:
Figure BDA0001220336980000104
针对第3个传感器来说,传感器设备本身决定了在规定时间d3,1内必须完成数据采集。在基于强实时操作系统的强实时约束机制下,要求操作系统在d3,2时间内必须完成数据的处理。微处理器处理数据的速率为v1,数据采集进程设定了数据采集单元长度为l3,1,则处理的时间为l3,1/v1;在基于强实时操作系统的强实时约束机制下,要求在d3,3时间内必须完成对处理后数据的发送,发送的速率为v2,处理后数据的数据单元长度为l3,2,则发送时间为l3,2/v2。基于这种情况下,可以通过以下公式计算第3个传感器对应的采集数据缓存区r3,1的大小:
Figure BDA0001220336980000105
此时,第3个传感器的处理后的数据所需的发送数据缓存区r3,2的大小为:
Figure BDA0001220336980000111
假设:d1,3≤d2,3≤d3,3,l1,2≤l2,2≤l3,2,考虑到各传感器的处理后数据所需的缓存区大小后,为了实现面对任何传感器的情况下发送数据缓存区均不会出现数据溢出的问题,则设定发送数据缓存区rs的大小为:
Figure BDA0001220336980000112
步骤304:各传感器采集的数据存入各自对应的采集数据缓存区中(例如,第1个传感器采集的数据存入采集数据缓存区r1,1中,第2个传感器采集的数据存入采集数据缓存区r2,1中,以此类推),针对每个采集数据缓存区中的数据,按照先进先出的规则,在采集数据缓存区中的数据未构成整数个完整数据单元时,设置标识位为0;在采集数据缓存区中的数据构成整数个完整数据单元时,设置标识位为1;在标识位为1时,以当前整数个完整数据单元为单位,向微处理器请求数据处理进程,在标识位为1时,读取当前整数个完整数据单元进行数据处理。
步骤305:针对每个采集数据缓存区中的数据,按照先进先出原则,位于采集数据缓存区头部的整数个完整数据单元为整体先向MPU(微处理器)发出数据处理进程申请。随着数据的实时存入,在采集数据缓存区中的数据再次构成整数个完整数据单元时,设置标识位为1,再以当前整数个完整数据单元为整体,向微处理器请求数据处理进程,采集数据缓存区中的后续数据依次推进。
步骤306:经微处理器处理后的数据如果需要发送给服务节点,则将处理后的数据存入发送数据缓存区中,再通过网络设备将发送数据缓存区中的数据发送给服务节点。网络设备可以以每次数据处理所得数据为整体发送给服务节点,依次将发送数据缓存区中的数据发送给服务节点。
步骤307:判断采集数据缓存区中是否有新的完整数据单元产生,若有,转至步骤304;若无,转至步骤308。
步骤308:采集数据缓存区中没有新的完整数据单元产生,将标识位设置为0,转至步骤304。
基于同一发明构思,本发明实施例中还提供了一种传感器网络节点,如下面的实施例所述。由于传感器网络节点解决问题的原理与传感器网络节点的数据处理方法相似,因此传感器网络节点的实施可以参见传感器网络节点的数据处理方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是本发明实施例的传感器网络节点的一种结构框图,传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,如图4所示,该传感器网络节点包括:
数据采集模块401,用于在基于强实时操作系统的机制调度每个传感器的数据采集进程时进行数据采集,将每个传感器采集的数据分别存入该传感器自身对应的采集数据缓存区内,其中,设置有多个所述采集数据缓存区,所述采集数据缓存区与所述传感器一一对应;
数据处理模块402,用于在每个所述采集数据缓存区中的数据,以完整数据单元为单位请求数据处理进程时,对各所述采集数据缓存区中请求数据处理进程的数据进行数据处理,在要求传感器网络节点向服务节点发送数据时,将处理过的数据存入发送数据缓存区中;
网络模块403,用于将所述发送数据缓存区中的数据发送给所述服务节点。
在一个实施例中,每个传感器对应的采集数据缓存区的大小是根据以下参数计算的:基于强实时操作系统的机制要求所述数据处理模块完成该传感器所采集数据的数据处理的时间、该传感器的数据采集进程中预设的数据采集单元长度以及所述数据处理模块处理数据的速率。
在一个实施例中,每个传感器对应的采集数据缓存区的大小是通过以下公式计算的:
Figure BDA0001220336980000121
其中,ri,1表示第i个传感器对应的采集数据缓存区的大小;di,2表示基于强实时操作系统的机制要求所述数据处理模块完成第i个传感器所采集数据的数据处理的时间;li,1表示第i个传感器的数据采集进程中预设的数据采集单元长度;v1表示所述数据处理模块处理数据的速率。
在一个实施例中,所述数据采集模块,包括:标识设置单元,用于针对每个所述采集数据缓存区中的数据,按照先进先出的规则,在所述采集数据缓存区中的数据未构成整数个完整数据单元时,设置标识位为0;在所述采集数据缓存区中的数据构成整数个完整数据单元时,设置所述标识位为1;进程请求单元,用于针对每个所述采集数据缓存区,在所述标识位为1时,以当前整数个完整数据单元为单位,向所述数据处理模块请求数据处理进程。
在一个实施例中,所述发送数据缓存区的大小是根据以下参数计算的:基于强实时操作系统的机制要求完成各传感器的处理后的数据的发送时间中的最大值、各传感器的处理后的数据的数据单元长度中的最小值、各传感器的处理后的数据的数据单元长度中的最大值以及基于强实时操作系统的机制要求对处理后的数据的发送速率。
在一个实施例中,所述发送数据缓存区的大小是通过以下公式计算的:
Figure BDA0001220336980000131
其中,rs表示所述发送数据缓存区的大小;di,3表示基于强实时操作系统的机制要求完成第i个传感器的处理后的数据的发送时间;n表示传感器的个数;li,2表示第i个传感器的处理后的数据的数据单元长度;v2表示基于强实时操作系统的机制要求对处理后的数据的发送速率。
在本发明实施例中,传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,使得可以有效提高嵌入式操作系统的强实时性;同时,在调度每个传感器的数据采集进程进行数据采集时,在申请数据处理进程触发中断之前,将每个传感器采集的数据分别存入该传感器自身对应的采集数据缓存区内,在每个采集数据缓存区中,以完整数据单元为单位,向微处理器请求数据处理进程;在数据发送之前,将处理后的数据存入发送数据缓存区中,以通过网络设备发送给服务节点。采集数据缓存区和发送数据缓存区的使用,使得即使是在数据采集速度很高、采集数据多样化的情况,也可以有效降低数据溢出的情况。采集数据缓存区和发送数据缓存区的使用,配合强实时性的进程调度机制,使得可以有效使用传感器网络节点有限的资源,有助于提高传感器网络节点的感知品质和控制服务品质、降低传感器网络节点的能源消耗。
显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种传感器网络节点的数据处理方法,其特征在于,传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,包括:
调度每个传感器的数据采集进程进行数据采集,将每个传感器采集的数据分别存入该传感器自身对应的采集数据缓存区内,其中,设置多个所述采集数据缓存区,所述采集数据缓存区与所述传感器一一对应;
针对每个所述采集数据缓存区中的数据,以完整数据单元为单位,向微处理器请求数据处理进程;
在要求传感器网络节点向服务节点发送数据时,将所述微处理器处理过的数据存入发送数据缓存区中,所述发送数据缓存区中的数据通过网络设备发送给所述服务节点;
设置多个所述采集数据缓存区,所述采集数据缓存区与所述传感器一一对应,包括:
针对每个所述传感器,通过以下公式计算该传感器对应的采集数据缓存区的大小:
Figure FDA0002399756650000011
其中,ri,1表示第i个传感器对应的采集数据缓存区的大小;di,2表示基于强实时操作系统的机制要求所述微处理器完成第i个传感器所采集数据的数据处理的时间;li,1表示第i个传感器的数据采集进程中预设的数据采集单元长度;v1表示所述微处理器处理数据的速率。
2.如权利要求1所述的传感器网络节点的数据处理方法,其特征在于,针对每个所述采集数据缓存区中的数据,以完整数据单元为单位,向微处理器请求数据处理进程,包括:
针对每个所述采集数据缓存区中的数据,按照先进先出的规则,在所述采集数据缓存区中的数据未构成整数个完整数据单元时,设置标识位为0;在所述采集数据缓存区中的数据构成整数个完整数据单元时,设置所述标识位为1;在所述标识位为1时,以当前整数个完整数据单元为单位,向所述微处理器请求数据处理进程。
3.如权利要求1所述的传感器网络节点的数据处理方法,其特征在于,还包括:
根据以下参数计算所述发送数据缓存区的大小:
基于强实时操作系统的机制要求完成各传感器的处理后的数据的发送时间中的最大值、各传感器的处理后的数据的数据单元长度中的最小值、各传感器的处理后的数据的数据单元长度中的最大值以及基于强实时操作系统的机制要求对处理后的数据的发送速率。
4.如权利要求1所述的传感器网络节点的数据处理方法,其特征在于,还包括:
通过以下公式计算所述发送数据缓存区的大小:
Figure FDA0002399756650000021
其中,rs表示所述发送数据缓存区的大小;di,3表示基于强实时操作系统的机制要求完成第i个传感器的处理后的数据的发送时间;n表示传感器的个数;li,2表示第i个传感器的处理后的数据的数据单元长度;v2表示基于强实时操作系统的机制要求对处理后的数据的发送速率。
5.一种传感器网络节点,其特征在于,传感器网络节点运行嵌入式操作系统,并基于强实时操作系统的机制进行进程调度,包括:
数据采集模块,用于在基于强实时操作系统的机制调度每个传感器的数据采集进程时进行数据采集,将每个传感器采集的数据分别存入该传感器自身对应的采集数据缓存区内,其中,设置有多个所述采集数据缓存区,所述采集数据缓存区与所述传感器一一对应;
数据处理模块,用于在每个所述采集数据缓存区中的数据,以完整数据单元为单位请求数据处理进程时,对各所述采集数据缓存区中请求数据处理进程的数据进行数据处理,在要求传感器网络节点向服务节点发送数据时,将处理过的数据存入发送数据缓存区中;
网络模块,用于将所述发送数据缓存区中的数据发送给所述服务节点;
每个传感器对应的采集数据缓存区的大小是通过以下公式计算的:
Figure FDA0002399756650000022
其中,ri,1表示第i个传感器对应的采集数据缓存区的大小;di,2表示基于强实时操作系统的机制要求所述数据处理模块完成第i个传感器所采集数据的数据处理的时间;li,1表示第i个传感器的数据采集进程中预设的数据采集单元长度;v1表示所述数据处理模块处理数据的速率。
6.如权利要求5所述的传感器网络节点,其特征在于,所述数据采集模块,包括:
标识设置单元,用于针对每个所述采集数据缓存区中的数据,按照先进先出的规则,在所述采集数据缓存区中的数据未构成整数个完整数据单元时,设置标识位为0;在所述采集数据缓存区中的数据构成整数个完整数据单元时,设置所述标识位为1;
进程请求单元,用于针对每个所述采集数据缓存区,在所述标识位为1时,以当前整数个完整数据单元为单位,向所述数据处理模块请求数据处理进程。
7.如权利要求5所述的传感器网络节点,其特征在于,所述发送数据缓存区的大小是根据以下参数计算的:
基于强实时操作系统的机制要求完成各传感器的处理后的数据的发送时间中的最大值、各传感器的处理后的数据的数据单元长度中的最小值、各传感器的处理后的数据的数据单元长度中的最大值以及基于强实时操作系统的机制要求对处理后的数据的发送速率。
CN201710064238.4A 2017-02-04 2017-02-04 传感器网络节点的数据处理方法及传感器网络节点 Active CN106900082B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710064238.4A CN106900082B (zh) 2017-02-04 2017-02-04 传感器网络节点的数据处理方法及传感器网络节点

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710064238.4A CN106900082B (zh) 2017-02-04 2017-02-04 传感器网络节点的数据处理方法及传感器网络节点

Publications (2)

Publication Number Publication Date
CN106900082A CN106900082A (zh) 2017-06-27
CN106900082B true CN106900082B (zh) 2020-04-28

Family

ID=59198575

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710064238.4A Active CN106900082B (zh) 2017-02-04 2017-02-04 传感器网络节点的数据处理方法及传感器网络节点

Country Status (1)

Country Link
CN (1) CN106900082B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109660819A (zh) * 2017-10-10 2019-04-19 中国移动通信有限公司研究院 基于移动边缘计算的业务缓存方法、装置及服务基站
CN109756580B (zh) * 2019-03-06 2021-04-27 中国人民解放军国防科技大学 气动数据采集方法及装置
CN109871643B (zh) * 2019-03-07 2023-05-16 中国人民解放军国防科技大学 一种飞行气动数据处理方法及装置
CN110245018B (zh) * 2019-06-14 2022-04-12 深圳市亿能科技有限公司 一种缓冲区数据采集方法及装置
CN112433595B (zh) * 2019-08-25 2024-04-30 深圳市君海达科技有限公司 一种计算机系统的能耗监管方法
CN113031761B (zh) * 2021-03-05 2023-06-23 西北工业大学 一种数据手套的多传感数据高速同步采样方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1812316A (zh) * 2005-01-25 2006-08-02 华为技术有限公司 一种链路汇聚处理方法和装置
CN103198126A (zh) * 2013-04-09 2013-07-10 江苏物联网研究发展中心 物联网时空数据管理方法
CN105229435A (zh) * 2013-03-05 2016-01-06 精量电子(美国)有限公司 用于多路复用和缓冲微型传感器阵列的系统和方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7414650B2 (en) * 2003-10-08 2008-08-19 Hewlett-Packard Development Company, L.P. System and method for capturing image data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1812316A (zh) * 2005-01-25 2006-08-02 华为技术有限公司 一种链路汇聚处理方法和装置
CN105229435A (zh) * 2013-03-05 2016-01-06 精量电子(美国)有限公司 用于多路复用和缓冲微型传感器阵列的系统和方法
CN103198126A (zh) * 2013-04-09 2013-07-10 江苏物联网研究发展中心 物联网时空数据管理方法

Also Published As

Publication number Publication date
CN106900082A (zh) 2017-06-27

Similar Documents

Publication Publication Date Title
CN106900082B (zh) 传感器网络节点的数据处理方法及传感器网络节点
US10194389B2 (en) Data processing device, data processing method, and program for sampling rate control of sensors
TW200928769A (en) Schedule and data caching for wireless transmission
EP3193222B1 (en) Client and server in supervisory control and data acquisition system
EP2779629A1 (en) Electronic device and method for processing image
US11803490B2 (en) Apparatus and method for data transmission and readable storage medium
US11204799B2 (en) Semiconductor device and systems using the same
CN109697090B (zh) 一种控制终端设备的方法、终端设备及存储介质
CN110196737A (zh) 一种异构多核处理系统
CN111158867A (zh) 时间同步处理方法、线程调度方法、装置及电子设备
JP4811260B2 (ja) プログラマブルコントローラ、及びその支援装置
WO2022160628A1 (zh) 命令处理装置、方法、电子设备以及计算机可读存储介质
US9304772B2 (en) Ordering thread wavefronts instruction operations based on wavefront priority, operation counter, and ordering scheme
CN110677623A (zh) 数据处理的方法、装置、设备和存储介质
US10061676B2 (en) Remotely located timing method and device for a processing unit in an information processing system
US10374981B1 (en) Data transfer circuitry given multiple source elements
GB2423165A (en) Host controller interface for packet-based timeshared bus
US9787493B2 (en) Communication apparatus, control apparatus, and program
US10713188B2 (en) Inter-process signaling system and method
CN110018906B (zh) 调度方法、服务器及调度系统
CN115437776A (zh) 绘图线程排程方法、装置及计算机设备
CN114691566A (zh) Ai模型的运行方法、加载方法、装置及ic芯片
CN111160283A (zh) 一种数据接入方法、装置、设备和介质
CN211180818U (zh) 视频处理设备
CN105373436A (zh) 控制设备和对此的运行方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant