工业物联网网关中的数据处理方法及工业物联网网关
技术领域
本申请涉及信息通信技术领域,尤其涉及工业物联网网关。
背景技术
当前,以智能制造为核心的新一代信息通信技术与制造业加速融合,正逐渐成为全球先进制造业发展的突出趋势。制造企业一边面临着用工成本上升的压力,一边又面临着同行业企业在自动化、网络化、数字化等方面的转型升级的竞争压力。制造企业生产设备不断增多,对数字化需求也越来越多,大量工业自动化设备也通过工业物联网(Internetof Things,IoT)网关接入网络,设备数据源源不断通过工业IoT网关到达应用部分。
目前,IoT网关普遍存在以下问题:
(1)接入的自动化设备种类多,每种设备的数据类型、格式差异较大,即异构数据源较多;设备数据通过工业IoT网关后,由于缺乏统一的数据标准,给后续的工业大数据处理、数字化应用等带来大量的适配、转换处理等工作;
(2)工业IoT网关接入的设备较多时,由于实时性的要求,数据上传的频率较快,给IoT网关的下一节点带来了访问流量的压力、带宽的压力。
发明内容
本申请实施例提供了工业物联网网关中的数据处理方法及工业物联网网关,解决了通过现有IoT网关需要在数字化应用过程中处理大量适配、转换等工作,并解决了数据上行带来的流量压力的问题。
一方面,本申请实施例提供了一种工业物联网网关中的数据处理方法。工业物联网网关IoT接收分别来自多个工业设备的相应第一应用层数据包;对所述第一应用层数据包进行解析,得到以下内容中的至少一项或多项:设备运行状态、设备的报警类型、设备对应产品的数目信息、设备对应产品的生产周期的相关信息、设备所处状态的持续时间信息;将根据所述第一应用层数据包解析而得到的内容,按照预设的格式,覆盖在所述第一应用层数据包的请求数据部分,从而得到第二应用层数据包;将所述第二应用层数据包通过网络发送给与所述多个工业设备对应的所述工业IoT网关的下一节点设备。
在一个示例中,将当前时刻得到的所述第二应用层数据包与前一时刻得到的第二应用层数据包,进行匹配;在所述当前时刻的第二应用层数据包与前一时刻的第二应用层数据包相匹配的情况下,丢弃所述当前时刻的第二应用层数据包。
在一个示例中,所述按照预设的格式,覆盖所述第一应用层数据包的请求数据部分,从而得到第二应用层数据包,具体包括:预设所述第二应用层数据包的请求数据部分的字节长度,在根据所述第一应用层数据包识别出的内容对应的总字节长度,少于所述预设的字节长度的情况下,在所述第二应用层数据包的请求数据部分的高位进行补零处理。
在一个示例中,预先对所述设备运行状态、设备的报警类型、设备对应产品的数目信息、设备对应产品的生产周期的相关信息、设备所处状态的持续时间信息进行分类;其中,第一类别数据对应的是在所述第二应用层数据包中出现概率大的信息,第二类别数据对应的是在所述第二应用层数据包中出现概率小的信息。
在一个示例中,所述在对所述第一应用层数据包进行解析之后,所述方法还包括:确定所述解析出的内容中的第一部分属于所述第一类别数据,所述解析出的内容中的第二部分属于所述第二类别数据;或者确定所述解析出的内容属于第一类别数据;或者确定所述解析出的内容属于第二类别数据;对于所述第一类别数据使用短编码方式进行编码,对所述第二类别数据使用长编码方式进行编码,从而得到所述第二应用层数据包。
在一个示例中,所述预设的格式具体为:在所述第二应用层数据包的请求数据的第0到第199字节中,包含所述工业设备是否与客户端进行交互的信息;在所述第二应用层数据包的请求数据的第200字节到第299字节中,包含所述工业设备上传的数据;且所述工业设备上的传数据包括所述设备运行状态、所述设备的报警类型、所述设备对应产品的数目信息、所述设备所处状态的持续时间信息、与设备关键部件的寿命相关的信息;在所述第二应用层数据包的请求数据的第310字节到第399字节中,包含设备生产产品过程的相关数据;在所述第二应用层数据包的请求数据的第400字节到第599字节中,包含与数据运算相关的信息;在所述第二应用层数据包的请求数据的第600字节到第2000字节中,包含设备各部件的逻辑控制相关信息。
在一个示例中,所述设备对应产品的生产周期的相关信息,包括实时周期、周期时间、独立周期中的一项或多项;所述实时周期是指在工业设备生产产品的一个周期内所包括的若干步骤中一个步骤的时间;所述周期时间是指所述工业设备生产产品的一个周期的时间,且所述周期时间等于若干实时周期之和;所述独立周期是指对于生产一个产品时并列工作的若干设备部件,各部件对应生产产品的时间。
在一个示例中,所述设备运行状态包括非急停状态、急停状态、通讯故障状态;所述非急停状态包括非直通状态和直通状态;所述非直通状态包括非自动状态和自动状态;所述自动状态包括报警状态和非报警状态;所述设备的报警类型包括停机报警类和设备异常类;所述设备对应产品的数目信息包括产品总数、好产品数、坏产品数、直通产品数;所述设备所处状态的持续时间信息包括加工状态时间、空闲状态时间、待机状态时间、故障状态时间、关机状态时间。
另一方面,本申请实施例提供了一种工业物联网网关,该工业物联网网关包括接收器、处理器、发射器。接收器用于接收分别来自多个工业设备的相应第一应用层数据包;处理器用于对所述第一应用层数据包进行解析,得到以下内容中的至少一项或多项:设备运行状态、设备的报警类型、设备对应产品的数目信息、设备对应产品的生产周期的相关信息、设备所处状态的持续时间信息;以及将根据所述第一应用层数据包解析而得到的内容,按照预设的格式,覆盖在所述第一应用层数据包的请求数据部分,从而得到第二应用层数据包;发射器用于将所述第二应用层数据包通过网络发送给与所述多个工业设备对应的所述工业IoT网关的下一节点设备。
另一方面,本申请实施例还提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:工业物联网网关IoT接收分别来自多个工业设备的相应第一应用层数据包;对所述第一应用层数据包进行解析,得到以下内容中的至少一项或多项:设备运行状态、设备的报警类型、设备对应产品的数目信息、设备对应产品的生产周期的相关信息、设备所处状态的持续时间信息;将根据所述第一应用层数据包解析而得到的内容,按照预设的格式,覆盖在所述第一应用层数据包的请求数据部分,从而得到第二应用层数据包;将所述第二应用层数据包通过网络发送给与所述多个工业设备对应的所述工业IoT网关的下一节点设备。
本申请实施例通过定义统一的IoT网关内数据映射标准,统一异构设备数据源的数据标准。IoT网关在接入不同的工业设备时,对上层数字化应用屏蔽设备数据的差异性。同时在满足设备数据传输实时性要求的情况下,降低设备数据上行带来的流量压力
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种工业IoT网关中的数据映射方法应用场景示意图;
图2为本申请实施例提供的一种工业IoT网关的数据处理方法流程图;
图3为本申请实施例提供的一种HTTP请求报文示意图;
图4为本申请实施例提供的一种工业IoT网关的结构示意图。
具体实施方式
为了更清楚的阐释本申请的整体构思,下面结合说明书附图以示例的方式进行详细说明。
图1是本申请实施例提供的一种工业IoT网关中的数据映射方法应用场景示意图。
如图1所示,工业设备11、工业设备12……工业设备n等若干工业设备,接入到工业IoT网关。各工业设备的种类不完全相同,每个工业设备的数据类型、数据格式存在差异,因此,异构数据源较多。为了解决该问题,本申请实施例的工业IoT网关根据工业设备的特征以及工业设备对应产品的特征,将各异构数据源进行解析,然后根据预设的标准,对各异构数据进行映射,得到具有相同格式的数据。然后再将该映射后的数据进行压缩处理,再经由网络发送给该若干工业设备对应的工厂数字化应用系统30。
需要说明的是,图1中列出的工厂数字化应用系统30包含实时监控设备31、故障预警设备32、历史分析设备33、数据平台34、应用平台35、私有/公有云平台36、边缘设备37等多个设备,仅是一个例子。工厂数字化应用系统30可以包括上述任意一个设备或者任意多个设备,也可以包括其他的数字化应用层面的设备。此外,上述各设备可以是一个独立的硬件,也可以是任意两个或多个设备集成到一个硬件设备上。本申请实施例对此并未作出限定。
工厂数字化应用系统30中的设备预存有上述映射方式的数字字典,其根据数字字典,对接收到的映射后的数据进行解析,根据解析结果进行实时监控、故障预警、历史数据分析等相关应用。
由以上内容可见,本申请实施例提供的工业IoT网关在接入不同的工业设备后,通过数据映射的方式,为工厂数字化应用系统中各设备屏蔽了数据的差异。下面详细阐述IoT设备如何对来自多个工业设备的异构数据进行映射,得到具有统一格式的数据。
图2是本申请实施例提供的一种工业IoT网关的数据处理方法流程图。
步骤210、多个工业设备分别向工业IoT网关发送应用层数据包。
在本申请的一个实现方式中,工业设备发送的应用层数据包为HTTP请求报文,HTTP请求报文的格式如图3所示。HTTP请求报文包括:请求行(request line)、请求头部(header)、空行和请求数据(request data)四个部分组成。其中,请求行包括:请求方法、URL、协议版本信息(如,GET/admin_ui/rdx/core/images/close.png HTTP/1.1)。请求头部包括头部字段名、值。请求数据是HTTP请求中携带的数据。
多个工业设备种类并不完全相同,因此,各工业设备发送给工业IoT网关的HTTP数据包中的请求数据部分的格式不相同。
步骤220、工业IoT网关对其接收到的应用层数据包进行解析。
不同类型的工业设备发送的应用层数据包中的请求数据部分的格式可能不同,因此,可以根据目前工业设备的特征以及工业设备生产的产品的特征,对各工业设备发送给工业IoT网关的应用层数据包中的请求数据进行归类,类别至少包括:设备运行状态、设备所处状态的持续时间信息、设备的报警类型、设备对应产品的数目信息、设备对应产品的生产周期的相关信息。
在本申请的一种实现方式中,该设备运行状态包括非急停状态、急停状态、通讯故障状态。该非急停状态包括非直通状态和直通状态,该非直通状态包括非自动状态和自动状态。该自动状态包括报警状态和非报警状态。该非报警状态包括非暂停状态和暂停状态。该非暂停状态包括非提示状态和提示状态。
本领域技术人员可以理解的是,该设备运行状态的种类很多,但是在设备运行过程中,设备的运行状态仅有一种。
在本申请的一种实现方式中,设备所处状态的持续时间信息是指工业设备在一个统计时间段(比如一天或一个班次)内,该设备各运行状态所占据的时长,包括加工状态时间、空闲状态时间、待机状态时间、故障状态时间、关机状态时间。
在本申请的一种实现方式中,设备的报警类型包括停机报警类和设备异常类。当人为或非人为生产动作导致设备异常时,设备存在一种报警提示,或者是停机报警或者是设备异常。设备异常是指由异常而引发的报警,该异常报警仅是提示性报警,并不会导致停机。而停机报警的报警程度相对更高。停机报警是在机器运行或者人为操作引发故障,导致设备无法继续运行,或者缺料从而无法继续生产导致的报警。
由于单个设备的零部件不止一种,因此,出现报警的原因类型会有多种,也会存在单台设备上多种报警同时存在的情况。
在本申请的一种实现方式中,上述设备对应产品的数目信息包括:工业设备在生产过程中所加工的产品的总数、产品的NG数(坏产品数)、产品的OK数(好产品数)、直通数(无论产品好坏都通过的数量)。
在本申请的一种实现方式中,设备对应产品的生产周期的相关信息包括实时周期、周期时间、独立周期。
该实时周期是指在工业设备加工产品的一个周期之内所包括的若干步骤中一个步骤的时间。
该周期时间是指该工业设备加工产品的一个周期的时间,且该周期时间等于若干实时周期之和。
也就是说,工业设备每次加工完成产品之后,会记录本次加工的总时长,即为周期时间。
然而,工业设备从单次生产动作开始到动作结束,会涉及到很多设备部件之间的联动,往往部件之间并不是串行执行动作,而是并行执行。每种设备部件都会有特定的动作执行的时间范围。
该独立周期就是对于加工一个产品时并列工作的若干部件,各部件对应的加工本次产品的时间。因此,通过对这些设备部件的执行时间进行统计,可以对设备部件的工作状态进行更细粒度的监控。
综上,本申请实施例的工业IoT网关通过解析其接收到的应用层数据包中的请求数据,识别出发送该应用层数据包的工业设备的当前状况信息或者该工业设备生产的产品的信息。例如:设备当前运行状态、设备在当前运行状态的持续时间、设备的报警类型、设备生产的产品的数目信息、设备对应产品的生产周期的相关信息等等。
步骤230、工业IoT网关将其对应用层数据包识别出的内容,按照预设的格式,覆盖到该应用层数据包的请求数据上,从而得到映射后的应用层数据包。
具体地,在对应用层数据包的请求数据的内容进行解析之后,将解析出的内容按照如下表1的方式,填充到新的应用层数据包的请求数据中,而新的应用层数据包的其它部分与原应用层数据包相同。
请求数据中的信息存储地址 |
请求数据中的信息存储内容 |
0000字节-0199字节 |
是否设备与客户端进行交互 |
0200字节-0299字节 |
设备上传的数据 |
0310字节-0399字节 |
设备生成产品过程的相关数据 |
0400字节-0599字节 |
与数据运算相关的信息 |
0600字节-2000字节 |
设备各部件之间的逻辑控制相关信息 |
表1
由表1可知,在新的应用层数据包的请求数据的第0到第199字节中,包含内容的是工业设备是否与客户端进行交互的信息。
在新的应用层数据包的请求数据部分的第200字节到第299字节中,包含的内容是工业设备上传的数据。该工业设备上传的数据包括:设备运行状态、设备的报警类型、设备对应产品的数目信息、设备所处状态的持续时间以及与设备关键部件的寿命相关的信息。该与设备关键部件的寿命相关的信息可以是设备关键部件的使用次数或设备关键部件的使用时间,例如活塞的升降次数等。
在新的应用层数据包的请求数据部分的第310字节到第399字节中,包含的内容是设备生产产品过程的相关数据。该设备生产产品过程的相关数据具体为设备各部件在产生产品的操作过程中的相关数据;例如,机械臂向左、向右等。
在新的应用层数据包的请求数据部分的第400字节到第599字节中,包含的内容是与数据运算相关的数据。
在新的应用层数据包的请求数据部分的第600字节到第2000字节中,包含内容的是设备各部件之间的逻辑控制的相关信息。
本领域技术人员可以理解的是,上述设备运行状态、设备的报警类型、设备对应产品的数目信息、设备所处状态的持续时间以及与设备关键部件的寿命相关的信息所包含的全部内容或者部分内容,可能存在重复或者交叠的现象。
下面详细阐述该工业IoT设备在解析出该设备运行状态、设备所处状态的持续时间、设备的报警类型、设备对应产品的数目信息、设备对应产品的生产周期的相关信息等之后,如何将得到的结果覆盖到该第一应用层数据包的请求数据上,以得到新的应用层数据包。
具体地,可以根据设备运行状态对生产的影,将设备运行状态分为以下八种状态,并将当前设备运行状态存储在新的应用层数据包的请求数据的第200个字节上,如表2所示:
表2
由表2可知,当新的应用层数据包的请求数据的第200个字节中是0时,表示通讯故障,例如设备断电、数据采集线开路等。当新的应用层数据包的请求数据的第200个字节中是1时,表示急停状态。当新的应用层数据包的请求数据的第200个字节中是5时,表示直通状态。当新的应用层数据包的请求数据的第200个字节中是3时,表示暂停状态。当新的应用层数据包的请求数据的第200个字节中是6时,表示提示状态。当新的应用层数据包的请求数据的第200个字节中是7时,表示非提示状态。当新的应用层数据包的请求数据的第200个字节中是2时,表示报警状态。当新的应用层数据包的请求数据的第200个字节中是4时,表示非自动状态。
而在工业IoT网关通过应用层数据包得到设备报警类型时,将其存储在新的应用层数据包的请求数据的第201字节到第209字节,占用9个字节,共72位。
设备的报警类型包括停机报警类和设备异常类。设备异常是指由异常而引发的报警,且该异常是不会导致停机,仅是提示性报警。停机报警的报警程度更高,停机报警是指在机器运行或者人为操作而引发的故障而导致设备无法继续运行,或者由于缺料而无法继续生产而导致的报警。
在工业IoT网关通过应用层数据包得到设备对应产品的数目信息时,将其存储在新的应用层数据包的请求数据的第210字节到第229字节。其中,该设备对应产品的数目信息包括产品总数、产品OK(即好产品)数、产品NG(即坏产品)数、产品直通数。本领域技术人员可知,加工生产的产品从原料到出设备有OK状态、NG状态、直通状态通过设备。
具体的存储方式如下表3所示:
表3
由表3可知,当新的应用层数据包的请求数据的第210字节到211字节中存储的内容,表示工业设备生产产品的总数。当新的应用层数据包的请求数据的第212字节到213字节中存储的内容,表示工业设备生产产品的OK产品(即好产品)数。当新的应用层数据包的请求数据的第214字节到215字节中存储的内容,表示工业设备生产NG产品(即坏产品)数。当新的应用层数据包的请求数据的第216字节到217字节中存储的内容,表示工业设备生产直通产品(无论好坏都通过的产品)数。其中,产品总数、产品OK数、产品NG数、产品直通数的数据类型均为Double,即双精度浮点型。
在工业IoT网关通过应用层数据包得到设备所处状态的持续时间后,将其存储在新的应用层数据包的请求数据的第230字节到第249字节,如下表4所示:
起始地址 |
数据类型 |
说明 |
D230 |
Double |
加工时间:自动运行有效时间 |
D232 |
Double |
空闲时间:自动运行等待时间 |
D234 |
Double |
待机时间:非自动运行的时间 |
D236 |
Double |
故障时间:设备存在报警时间 |
D238 |
Double |
关机时间:设备断电累计时间 |
表4
由表4可知,当新的应用层数据包的请求数据的第230字节到231字节中存储的内容,表示工业设备加工产品的时间,即工业设备自动运行的有效时间。当新的应用层数据包的请求数据的第232字节到233字节中存储的内容,表示工业设备的空闲时间,自动运行的等待时间。当新的应用层数据包的请求数据的第234字节到235字节中存储的内容,表示工业设备的待机时间,即非自动运行的时间。当新的应用层数据包的请求数据的第236字节到237字节中存储的内容,表示工业设备的故障时间,即工业设备存在报警的时间。当新的应用层数据包的请求数据的第238字节到239字节中存储的内容,表示工业设备的关机时间,即工业设备断电累计的时间。其中,工业设备加工产品的时间、工业设备的空闲时间、工业设备的待机时间、工业设备的故障时间、工业设备的关机时间的数据类型均为Double,即双精度浮点型。
工业IoT网关通过应用层数据包得到与设备关键部件的寿命相关的信息,然后将其存储在新的应用层数据包的请求数据的第250字节到第269字节,如下表5所示:
起始地址 |
数据类型 |
说明 |
D250 |
Double |
设备10的关键部件11的使用次数 |
D252 |
Double |
设备10的关键部件12的使用时长 |
... |
Double |
...... |
D268 |
Double |
...... |
表5
本领域技术人员可以理解的是,设备的关键部件与具体的设备相关,不同的设备具有不同的关键部件。而与设备关键部件的寿命相关的信息,如部件的使用次数、使用时长等。例如,设备的关键部件之一是活塞,而与设备的关键部件的寿命相同的信息是活塞的升降次数。
在本申请的一种实现方式中,预设该新的应用层数据包的请求数据的字节长度,例如长度为2000字节,工业IoT网关在根据应用层数据包识别出的内容(具体为应用层数据包通过该预设格式而得到的内容)的总字节长度,少于所述预设的字节长度的情况下,而对于该新的应用层数据包的请求数据的低位,仍旧由该识别出的各项内容覆盖,而在新的应用层数据包的请求数据的高位进行补零处理。
需要说明的是,本申请实施例公开了工业IoT网关对工业设备发送的数据进行解析,从而得到与该工业设备相关或者与该工业设备产品相关的信息,而后再通过预设的格式,将解析到的内容覆盖到新的应用层数据包的请求数据。而具体的如何对数据进行解析、如何根据解析结果对数据进行归类,以及如何将解析数据覆盖到新的数据包的哪些地址上,不限于前面内容所述。
步骤240、工业IoT网关对解析出的内容在映射后的应用层数据包中出现概率大的信息,使用短编码方式进行编码,而对解析出的内容在映射后的应用层数据包中出现概率小的信息,使用长编码方式进行编码。
具体地,预先对来自工业设备的数据进行分类,如对预先对设备运行状态、设备的报警类型、设备对应产品的数目信息、设备对应产品的生产周期的相关信息、设备所处状态的持续时间信息等内容进行分类;其中,第一类别数据对应的是在映射后的应用层数据包中出现概率大的信息,第二类别数据对应的是在映射后的应用层数据包中出现概率小的信息。对该第一类别数据使用短编码方式进行编码,对该第二类别数据使用长编码方式进行编码,得到映射后的应用层数据包。
更为具体地,工业IoT网关在对其接收到的应用层数据包进行解析之后,确定其解析出的内容中的一部分数据属于第一类别数据,其解析出的内容中的另一部分数据属于第二类别数据。或者工业IoT网关确定其解析出的内容全部属于第一类别数据。或者工业IoT网关确定其解析出的内容全部属于第二类别数据。其中,第一类别数据对应的是在映射后的应用层数据包中出现概率大的信息,第二类别数据对应的是在映射后的应用层数据包中出现概率小的信息。那么,工业IoT网关对于该第一类别数据使用短编码方式进行编码,对该第二类别数据使用长编码方式进行编码,从而得到映射后的应用层数据包。
在本申请的一个实施例中,上述编码方法可以采用哈夫曼编码。
在本申请的一个实现方式中,在当前的映射后应用层数据包与之前的映射后数据包相匹配的情况下,或者说,两个数据包的请求数据的内容相同的情况下,则丢弃当前的映射后的应用层数据包。
具体地,将当前时刻得到的映射后的应用层数据包与前一时刻得到的映射后的应用层数据包,进行匹配。在该当前时刻的映射后应用层数据包与前一时刻的映射后应用层数据包相匹配的情况下,丢弃该当前时刻的映射后应用层数据包。
步骤250、该工业IoT网关将映射后的数据包通过网络发送给与该多个工业设备对应的该工业IoT网关的下一节点设备。
该下一节点设备可以是与该多个工业设备对应的工厂的数字化应用系统,也可以是该系统中的一个或多个设备,如监控设备、故障预警设备、数据分析设备等等。该下一节点设备还可以是与该多个工业设备对应的监控设备、故障预警设备、数据分析设备中的一个。
步骤260、该工业IoT网关的下一节点设备对其接收到的映射后的应用层数据包进行解析,并根据解析后的内容根据需要进行相应的应用,例如用于故障报警等。
具体地,该工业IoT网关的下一节点设备预存有数据字典,该节点设备根据该数据字典能够解析出该映射后的数据包中的内容。
数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。简而言之,数据字典是描述数据的信息集合,是对系统中使用的所有数据元素的定义的集合。
图4是本申请一个实施例提供的一种工业IoT网关的结构示意图。该工业IoT网关400包括接收器410、处理器420、发送器430。
接收器410用于接收分别来自多个工业设备的相应第一应用层数据包。
处理器420用于对所述第一应用层数据包进行解析,得到以下内容中的至少一项或多项:设备运行状态、设备的报警类型、设备对应产品的数目信息、设备对应产品的生产周期的相关信息、设备所处状态的持续时间信息;以及将根据所述第一应用层数据包解析而得到的内容,按照预设的格式,覆盖在所述第一应用层数据包的请求数据部分,从而得到第二应用层数据包。
发射器430用于将所述第二应用层数据包通过网络发送给与所述多个工业设备对应的所述工业IoT网关的下一节点设备。
本申请实施例提供的工业IoT网关的数据处理方法以及工业IoT网关,通过对工业设备发送的数据进行分析,然后通过预设格式对接收到的数据进行映射,屏蔽了多种类型的工业设备发送的数据的差异性,降低了带宽的压力,同时在满足了数据传输实时性的情况下,降低了数据上行带来的流量压力。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执轨道,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执轨道的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。