数据修补系统、方法及其数据修补装置与流程

文档序号:16510568发布日期:2019-01-05 09:18阅读:267来源:国知局
数据修补系统、方法及其数据修补装置与流程

本发明是有关于一种数据修补系统、方法及其数据修补装置,且特别是有关于一种使用于太阳能模块阵列的数据修补系统、方法及其数据修补装置。



背景技术:

自动控制系统常常需要通过通信方式,来取得设备的数据或进行监控设备的动作。最常使用于自动控制系统的通信协定为modbus通信协定。然而,于监控系统中,通信品质的好坏往往决定了整体监控系统的稳定程度。降低通信异常将有助于降低设备的响应时间及增加系统数据的即时性。太阳能案场因为通信距离较长,故使用rs485线材及modbus通信协定作数据查询及状态监控。太阳能案场常因布线规划不佳,使得设备本身或环境因素产生线路干扰,而在数据通信过程中产生噪声而通信失败,导致数据搜集不齐全,无法获得即时与正确的数据。因此,如何有效地将受噪声干扰的数据修补复原,并通知使用者太阳能案场的布线可能有问题,实乃目前业界所致力的方向之一。



技术实现要素:

本发明有关于一种数据修补系统、方法及其数据修补装置。藉由数据修补装置执行过滤噪声演算法,可以让来自太阳能模块阵列的太阳能数据的噪声被过滤。而藉由数据修补装置执行数据修补演算法,使得太阳能数据因线路或环境干扰所导致的数据错误可以得到修复。如此,可以提升通信品质,改善系统的稳定程度。并且可以获得即时与正确的数据,以增加系统数据的即时性。

根据本发明的第一方面,提出一种数据修补系统,包括一太阳能模块阵列、一数据修补装置、以及一太阳能数据收集器。太阳能模块阵列用以传送一太阳能数据。数据修补装置用以接收太阳能数据,并判断太阳能数据是否通过一过滤噪声演算法。若此数据修补装置判断此太阳能数据通过此过滤噪声演算法,则产生一过滤数据。数据修补装置判断此过滤数据是否通过一循环冗余校验(cyclicredundancycheck,crc)检查。若数据修补装置判断过滤数据不通过循环冗余校验检查,则以一数据修补演算法修补此过滤数据,以产生一修补数据。数据修补装置将修补数据进行循环冗余校验检查。若修补数据通过此循环冗余校验检查,则视为完成数据修补。而太阳能数据收集器则是用以接收此修补数据。

根据本发明的第二方面,提出一种数据修补方法,包括以下步骤。接收一太阳能数据,并判断太阳能数据是否通过一过滤噪声演算法。若判断太阳能数据通过过滤噪声演算法,则产生一过滤数据,并判断过滤数据是否通过一循环冗余校验检查。若判断过滤数据不通过循环冗余校验检查,则以一数据修补演算法修补过滤数据,以产生一修补数据。将修补数据进行循环冗余校验检查。若修补数据通过循环冗余校验检查,则视为完成数据修补。传送修补数据至一太阳能数据收集器。

根据本发明的第三方面,提出一种数据修补装置,包括一收发单元及一处理单元。收发单元用以接收一太阳能模块阵列传送的一太阳能数据。处理单元则是用以判断太阳能数据是否通过一过滤噪声演算法,若处理单元判断太阳能数据通过过滤噪声演算法,则产生一过滤数据。处理单元更判断过滤数据是否通过一循环冗余校验检查。若处理单元判断过滤数据不通过循环冗余校验检查,则以一数据修补演算法修补过滤数据,以产生一修补数据。处理单元将修补数据进行循环冗余校验检查。若修补数据通过循环冗余校验检查,则视为完成数据修补。

以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。

附图说明

图1示出依照本发明一较佳实施例的一种数据修补系统的方块图。

图2示出依照本发明较佳实施例的数据修补系统的详细结构之一例的方块图。

图3a示出依照本发明一较佳实施例的一种数据修补方法的流程图。

图3b示出图3a中步骤310的详细流程图。

图4示出依照本发明较佳实施例的数据修补装置所执行的过滤噪声演算法之一例的示意图。

图5示出依照本发明较佳实施例的数据修补装置所执行的数据修补演算法的标头比对法之一例的示意图。

图6示出依照本发明较佳实施例的数据修补装置所执行的数据修补演算法的数据比对法之一例的示意图。

图7示出依照本发明较佳实施例的数据修补装置所执行的数据修补演算法的循环冗余校验比对法之一例的示意图。

其中,附图标记:

100:数据修补系统

102:太阳能模块阵列

104:数据修补装置

106:太阳能数据收集器

108:云端服务器

110:太阳能监控系统

202:收发单元

204:处理单元

206:警示装置

302~332:流程步骤

具体实施方式

下面结合附图对本发明的结构原理和工作原理作具体的描述:

请参照图1,其示出依照本发明一较佳实施例的一种数据修补系统的方块图。数据修补系统100包括一太阳能模块阵列102、一数据修补装置104、及一太阳能数据收集器106。太阳能模块阵列102用以传送一太阳能数据sd。数据修补装置104用以接收太阳能数据sd,并判断太阳能数据sd是否通过一过滤噪声演算法。若数据修补装置104判断太阳能数据sd通过过滤噪声演算法,则产生一过滤数据fd。数据修补装置104并判断过滤数据fd是否通过一循环冗余校验(cyclicredundancycheck,crc)检查。若数据修补装置104判断过滤数据fd不通过此循环冗余校验检查,则以一数据修补演算法修补过滤数据fd,以产生一修补数据md。数据修补装置104将修补数据md进行循环冗余校验检查。若修补数据md通过循环冗余校验检查,则视为完成数据修补。太阳能数据收集器106则是用以接收此修补数据md。

藉由数据修补装置104执行过滤噪声演算法,可以让来自太阳能模块阵列102的太阳能数据sd的噪声被过滤。而藉由数据修补装置104执行数据修补演算法,使得太阳能数据sd因线路或环境干扰所导致的数据错误可以得到修复。如此,可以提升通信品质,改善系统的稳定程度。并且可以获得即时与正确的数据,以增加系统数据的即时性。

其中,当数据修补装置104判断太阳能数据sd无法通过上述的过滤噪声演算法,则发出一无法过滤警示信息alrt1至一云端服务器108。云端服务器108再将此无法过滤警示信息alrt1传送至一太阳能监控系统110。太阳能监控系统110例如可藉由一显示器或一移动装置来显示对应至无法过滤警示信息alrt1的信号,例如是提醒信息(例如是一个警示信息)、提醒声响、或提醒用光信号,以让使用者得知太阳能数据sd因为噪声过多无法滤除,故无法通过上述的过滤噪声演算法。藉由此无法过滤警示信息alrt1,使用者将可得知太阳能模块阵列102可能有布线规划不佳,或太阳能模块本身有问题,或是因为环境因素而产生线路干扰,而在数据传送过程中产生噪声而通信失败。因此,此无法过滤警示信息alrt1将可提醒使用者太阳能模块阵列102的布线或设备可能有问题,而需进行检查。

若修补数据md无法通过循环冗余校验检查,则数据修补装置104发出无法修补警示信息alrt2至云端服务器108。云端服务器108再将此无法过滤警示信息alrt2传送至太阳能监控系统110,以让使用者得知太阳能数据sd数据有误且无法修补。藉由此无法修补警示信息alrt2,使用者将可得知太阳能模块阵列102本身或是传送数据的线路可能有问题,而在数据传送过程中产生数据错误。因此,此无法修补警示信息alrt2将可提醒使用者太阳能模块阵列102的布线或设备可能有问题,而需进行检查。

太阳能数据收集器106更用以发出一数据取得命令rqst,使数据修补装置104通知太阳能模块阵列102回传对应此数据取得命令rqst的太阳能数据sd。太阳能数据收集器106例如可以在太阳能监控系统110的控制之下,于使用者希望了解太阳能模块阵列102的状态时,发出此数据取得命令rqst,以要求太阳能模块阵列102回传对应此数据取得命令rqst的太阳能数据sd。

兹将上述的数据修补系统100进一步说明如下。请参照图2,其示出依照本发明较佳实施例的数据修补系统100的详细结构之一例的方块图。数据修补装置104例如包括一收发单元202及一处理单元204。收发单元202用以接收太阳能模块阵列102传送的太阳能数据sd。处理单元204则是用以判断太阳能数据sd是否通过过滤噪声演算法。若处理单元204判断太阳能数据sd通过过滤噪声演算法,则处理单元204产生过滤数据fd。处理单元204并判断过滤数据fd是否通过循环冗余校验检查。若处理单元204判断过滤数据fd不通过循环冗余校验检查,则以数据修补演算法修补过滤数据fd,以产生修补数据md。处理单元204将修补数据md进行循环冗余校验检查。若修补数据md通过循环冗余校验检查,则视为完成数据修补。

当处理单元204判断太阳能数据sd无法通过过滤噪声演算法,则处理单元204发出无法过滤警示信息alrt1至云端服务器108。若处理单元204判断修补数据md无法通过循环冗余校验检查,则处理单元204发出无法修补警示信息alrt2至云端服务器108。

上述的处理单元例如是可以执行程序的处理器或中央处理器(cpu),或其他具有控制、处理、运算功能的硬件或固件。而收发单元则例如为可以接受或发送信号的硬件或电路。

数据修补装置104更包括一警示装置206,用以于处理单元204发出无法过滤警示信息alrt1或无法修补警示信息alrt2时,发出一警示提醒信号。此警示提醒信号可为一光信号及一声音信号二者至少其中之一。例如,警示装置206可以是一发光二极管(lightemittingdiode,led)灯,上述的光信号例如为某种颜色的led灯点亮时所发出的光线,以提醒使用者注意。此光信号也可以是某种频率的闪光信号。警示装置206例如也可以是一警铃,而上述的声音信号则可以例如是警铃声,以提醒使用者注意。

太阳能模块阵列102、数据修补装置104、及太阳能数据收集器106例如是通过rs485串口(serialport)来彼此通信。于太阳能模块阵列102中,每个太阳能模块亦可各自包含一个逆变器(inverter)或者分别与一个逆变器电性连接,以将太阳能模块所产生的直流(dc)信号转为交流(ac)信号。数据修补装置104及太阳能数据收集器106例如是通过网络路由器(未示出)来将数据传送至云端服务器108。

兹将数据修补系统100所使用的数据修补方法进一步说明如下。请参照图3a,其示出依照本发明一较佳实施例之一种数据修补方法的流程图。本实施例的数据修补方法包括以下步骤。首先,于步骤302,接收太阳能数据sd。接着,进入步骤304,判断此太阳能数据sd是否通过过滤噪声演算法。于步骤304中,若判断太阳能数据sd通过过滤噪声演算法,则进入步骤306,产生过滤数据fd。而当判断太阳能数据sd无法通过此过滤噪声演算法时,则进入步骤316,发出无法过滤警示信息alrt1至云端服务器108。

于步骤306之后,接着执行步骤308,判断过滤数据fd是否通过循环冗余校验检查。于步骤308中,若判断过滤数据fd不通过循环冗余校验检查,则进入步骤310,以数据修补演算法修补过滤数据fd,以产生修补数据md。然后,执行步骤312,将此修补数据md进行循环冗余校验检查。

于步骤312中,若修补数据md通过循环冗余校验检查,则进入步骤314,视为完成数据修补,并传送此修补数据md至太阳能数据收集器106。于步骤312中,若修补数据md无法通过此循环冗余校验检查,则进入步骤318,发出无法修补警示信息alrt2至云端服务器108。

兹将上述的过滤噪声演算法进一步说明如下。请参照图4,其示出依照本发明较佳实施例的数据修补装置104所执行的过滤噪声演算法之一例的示意图。数据修补装置104于接收太阳能数据sd后,藉由过滤噪声演算法以找出太阳能数据sd的一标头部分402,并根据标头部分402检索太阳能数据sd的一数据部分404及一循环冗余校验码部分406,藉此过滤噪声。

更进一步来说,过滤噪声演算法例如是依照太阳能数据收集器106所发出的数据取得命令rqst的内容值,来找出太阳能数据sd的标头部分402。以modbus通信协定为例,如图4所示,数据取得命令rqst的第[0]个字节定义了从属装置的地址(slaveaddress),假设其十六进位的内容值例如为01,代表此数据取得命令rqst为对应至太阳能模块阵列102中,地址为01的太阳能模块或太阳能模块的逆变器。数据取得命令rqst的第[1]个字节定义了此数据取得命令rqst所对应的功能(function),假设其十六进位的内容值例如为03,代表此数据取得命令rqst为针对内容值03所对应的功能。

于太阳能数据收集器106发出数据取得命令rqst之后,数据修补装置104通知太阳能模块阵列102回传对应此数据取得命令rqst的太阳能数据sd,如图4所示。太阳能数据sd的第[0]个字节定义了从属装置的地址,假设其十六进位的内容值例如为01,代表此太阳能数据sd为对应至太阳能模块阵列102中,地址为01的太阳能模块或太阳能模块的逆变器。太阳能数据sd的第[1]个字节定义了此太阳能数据sd所对应的功能,假设其十六进位的内容值例如为03,代表此太阳能数据sd为针对内容值03所对应的功能。

于本实施例的过滤噪声演算法中,例如是依照太阳能数据收集器106所发出的数据取得命令rqst的第[0]个字节的内容值01与第[1]个字节内容值03,来找出太阳能数据sd的标头部分402,亦即是太阳能数据sd的第[0]个字节与第[1]个字节。也就是,本实施例的过滤噪声演算法从包含有太阳能数据sd的一串数据中,找到内容值为01与03的部分,来找出太阳能数据sd的标头部分402。接着,从内容值为01与03的字节之后的下一个字节(亦即是太阳能数据sd的第[2]个字节)可以得知,数据部分的字节个数为04,意指接下来的四个字节皆为数据字节,而得到数据部分404。而数据部分404接下来的两个字节则为循环冗余校验码,而可得到循环冗余校验码部分406。如此,即可得到太阳能数据sd的完整数据。这样一来,即可得知包含有太阳能数据sd的一串数据中,于标头部分402前面的部分为噪声,且于循环冗余校验码部分406之后的部分亦为噪声,过滤噪声演算法可将这些噪声滤除,而得到太阳能数据sd。

若数据修补装置104无法依照上述方法,根据数据取得命令rqst的第[0]个字节的内容值01与第[1]个字节内容值03,来找出太阳能数据sd的标头部分402的话,则则数据修补装置104亦无法根据标头部分402检索太阳能数据sd的数据部分404及循环冗余校验码部分406,而无法过滤噪声。此时,数据修补装置104判断太阳能数据sd无法通过上述的过滤噪声演算法,而将会发出无法过滤警示信息alrt1至云端服务器108。

兹将上述的数据修补演算法进一步说明如下。请同时参考图3b,其示出图3a中步骤310的详细流程图。如图3b的流程图所示,数据修补演算法包含一标头比对法320、一数据比对法322及一循环冗余校验比对法324。请参照第5至7图,其中图5示出依照本发明较佳实施例的数据修补装置所执行的数据修补演算法的标头比对法之一例的示意图;图6示出依照本发明较佳实施例的数据修补装置所执行的数据修补演算法的数据比对法之一例的示意图;图7示出依照本发明较佳实施例的数据修补装置所执行的数据修补演算法的循环冗余校验比对法之一例的示意图。

如图3b的步骤320所示,标头比对法将此太阳能数据sd(亦即是将太阳能数据sd藉由过滤噪声演算法过滤噪声号所得到的过滤数据fd)的一标头部分与多个已知标头进行比对,并标示出此些已知标头中的至少一正确标头,此至少一正确标头对应到至少一第一已知数据,如图3b的步骤326所示。以图5所示的数据dx为例,标头比对法将数据dx的标头部分(字节索引值为[0]至[2]的内容值01、03及14)分别与一正确数据表的数据d1至数据d10的多个已知标头进行比对(字节索引值为[0]至[2]的内容值),并找出与dx的标头部分中的至少一个字节的内容值相同的至少一正确标头。于图5的例子中,数据d1至数据d10的标头的字节索引值为[0]与[1]的内容值为01与03(如粗线框线所框示),其与数据dx的标头部分的字节索引值为[0]与[1]的内容值01与03相同。数据d1至数据d10的标头的字节索引值为[0]至[2]内容值的三个字节中,只要有一个字节的内容值与数据dx之对应的标头部分的字节的内容值相同,即可被选为正确标头。于本例中,所得到的至少一正确标头例如是数据d1至数据d10的标头。这些标头对应到多个第一已知数据,亦即是数据d1至数据d10。其中,上述的正确数据表例如是记录了最近10笔成功传输的正确数据d1至d10。

如图3b的步骤322所示,数据比对法将太阳能数据sd(或过滤数据fd)的一数据部分与多个已知数据组进行比对,并标示出此些已知数据组中的至少一正确数据组,此至少一正确数据组对应到至少一第二已知数据,如图3b的步骤328所示。以图6所示的数据dx为例,数据比对法将数据dx的数据部分(字节索引值为[3]至[6]的内容值ff、ff、fa、0a)分别与正确数据表的数据d1至数据d10的多个已知数据组进行比对(字节索引值为[3]至[6]的内容值),并找出与dx的数据部分中的至少一个字节的内容值相同的至少一正确数据组。于图6的例子中,数据d2的字节索引值为[6]的内容值0a与数据dx的数据部分的字节索引值为[6]的内容值0a相同,而数据d5的字节索引值为[4]的内容值ff与数据dx的数据部分的字节索引值为[4]的内容值ff相同,如粗线框线所框示。故数据d2的数据组与数据d5的数据组被选为正确数据组。于本例中,所得到的至少一正确数据组例如是数据d2与数据d5的数据组。这些数据组对应到多个第二已知数据,亦即是数据d2与数据d5。

如图3b的步骤324所示,循环冗余校验比对法将太阳能数据sd(或过滤数据fd)的一循环冗余校验码部分与多个已知循环冗余校验码进行比对,并标示出此些已知循环冗余校验码中的至少一正确循环冗余校验码,此至少一正确循环冗余校验码对应到至少一第三已知数据,如图3b的步骤330所示。以图7所示的数据dx为例,循环冗余校验比对法将数据dx的循环冗余校验码部分(字节索引值为[7]至[8]的内容值cb与ff)分别与正确数据表的数据d1至数据d10的多个已知循环冗余校验码进行比对(字节索引值为[7]至[8]的内容值),并找出与dx的循环冗余校验码部分中的至少一个字节的内容值相同的至少一正确循环冗余校验码。于图7的例子中,数据d5的字节索引值为[7]的内容值cb与数据dx的循环冗余校验码部分的字节索引值为[7]的内容值cb相同,如粗线框线所框示,故数据d5的循环冗余校验码被选为正确循环冗余校验码。于本例中,所得到的至少一正确循环冗余校验码例如是数据d5的循环冗余校验码。此至少一正确循环冗余校验码对应到至少一个第三已知数据,亦即是数据d5。

数据修补装置104或数据修补装置104的处理单元204依据此至少一第一已知数据、此至少一第二已知数据及此至少一第三已知数据以比对出重复次数最高者作为此修补数据md,并且判断是否可以得到此修补数据md,如图3b的步骤332所示。由图5至图7的例子可知,至少一第一已知数据包括数据d1至d10,至少一第二已知数据包括数据d2与d5,而至少一第三已知数据则包括数据d5。其中,重复次数最高者为数据d5,因此数据d5作为上述的修补数据md,如于图3b的步骤332所示。

于图3b的步骤332的产生修补数据md并判断修补数据md是否产生的步骤中,若已得到此修补数据md,例如是上例中的数据d5,则进入步骤312,将此修补数据md(亦即是数据d5)进行循环冗余校验检查。例如是将数据d5的标头(字节索引值为[0]至[2]的内容值)与数据组(字节索引值为[3]至[6]的内容值)进行循环冗余校验的一特定运算,以得到二个字节的循环冗余校验码,再与数据d5的循环冗余校验码的二个字节相较。若相同,则代表此修补数据md(亦即是数据d5)通过循环冗余校验检查。

于图3b的步骤332的产生修补数据md并判断修补数据md是否产生的步骤中,若无法得到此修补数据md,则进入步骤318,由数据修补装置104或数据修补装置104的处理单元204发出无法修补警示信息alrt2至云端服务器108。

于另一实施例中,亦可以于得到至少一第一已知数据、至少一第二已知数据、及至少一第三已知数据时,就先进行循环冗余校验检查。再将通过循环冗余校验检查的至少一第一已知数据、至少一第二已知数据、及至少一第三已知数据中找出相同者以作为修补完成的正确数据。

于更另一实施中,数据修补装置104可以更具有一错误计数器。于比对上述的至少一第一已知数据、至少一第二已知数据、及至少一第三已知数据,并判断是否有相同的数据之后,同时将此错误计数器的计数值加1。当错误计数器的计数值大于一临界值时,则数据修补装置104发送一错误过多警示信息至云端服务器108以传送至太阳能监控系统110来提醒使用者。

本发明实施例藉由数据修补装置执行过滤噪声演算法,可以让来自太阳能模块阵列的太阳能数据的噪声被过滤。而藉由数据修补装置执行数据修补演算法,使得太阳能数据因线路或环境干扰所导致的数据错误可以得到修复。如此,可以提升通信品质,改善系统的稳定程度。并且可以获得即时与正确的数据,以增加系统数据的即时性。

而且,当数据修补装置判断太阳能数据无法通过上述的过滤噪声演算法,则发出一无法过滤警示信息至云端服务器,并传送至太阳能监控系统以提醒使用者。若修补数据无法通过循环冗余校验检查,则数据修补装置发出无法修补警示信息至云端服务器,并传送至太阳能监控系统,以让使用者得知太阳能数据有误且无法修补。当使用者收到警示信息之后,使用者将可得知太阳能模块阵列本身或是传送数据的线路可能有问题,而尽早掌握时效进行检查。

当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

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