掌桥专利:专业的专利平台
掌桥专利
首页

一种面向边缘计算网关数据采集自适应滤波方法

文献发布时间:2024-04-18 20:01:30


一种面向边缘计算网关数据采集自适应滤波方法

技术领域

本发明涉及自适应滤波技术领域,尤其涉及一种面向边缘计算网关数据采集自适应滤波方法。

背景技术

边缘计算是一种分布式计算范式,它将计算资源放置在离数据源和终端设备更近的位置,以降低延迟和提高性能。了解边缘计算的原理和架构对于开发面向边缘计算的数据采集和处理方法至关重要。在嵌入式网关技术中,主机与IO板卡之间的通信至关重要。为了保证系统的稳定性和效率,主机需要能够及时、准确地识别并控制连接的IO板卡。传统的方法可能涉及繁琐的手动配置或依赖外部的硬件标识,这些方法不仅操作复杂,而且容易出错。

为了有效地实现上述通信,必须要有一种机制来识别并控制连接到主机的各种设备,即能够使主机自动检测连接的IO板卡,读取IO板卡的具体型号,并据此确定其注册信息,从而获取到模拟数据。当前自适应滤波技术大都是参考自适应,考虑到没有合适的参考信号和模型不复杂化。

为此,我们设计出了一种面向边缘计算网关数据采集自适应滤波方法来解决以上问题。

发明内容

本发明正是针对网关数据采集和滤波现有技术中存在的问题,提供一种面向边缘计算网关数据采集自适应滤波方法,该技术方案提出一种获取网关模拟数据并进行自适应滤波的方法,通过主机与IO板卡之间的通信,利用串口通信、GPIO引脚状态检测以及RS485控制来自动检测和读取IO板卡的注册信息,并进一步确定IO板卡的型号获取到模拟数据,通过初始化状态量

为了实现上述目的,本发明采用了如下技术方案:

一种面向边缘计算网关数据采集自适应滤波方法,主要包括以下步骤:

步骤1,主机与IO板卡通信,获取IO板设备地址;

步骤2,主机读取IO板卡注册表信息,获取IO板卡型号;

步骤3,判断IO板卡型号对应含模拟数据的通道,以获取到待滤波模拟数据;

步骤4,调用自适应滤波器对模拟数据进行滤波。

具体的,作为本发明优选的方案,步骤1中,所述主机与IO板卡通讯,获取IO板设备地址包括以下步骤:

步骤1.1,初始化UART串口设备和RS-485控制设备,并打开UART串口设备和RS-485控制设备;

步骤1.2,配置UART串口设备,当UART串口设备被打开后,就对波特率参数、数据位参数、停止位参数以及校验参数进行初始化;

步骤1.3,初始化并配置GPIOX引脚为输入模式,并配置8个cs引脚为输入模式;

步骤1.4,主机与IO板卡通信并获取IO板设备地址。

具体的,作为本发明优选的方案,步骤2中,所述主机读取IO板卡注册表信息,获取IO板卡型号包括:

步骤2.1,监测GPIOX引脚状态,持续检查GPIOX引脚的状态,当其状态为0时,读取IO板卡的注册表信息;

步骤2.2,通过读取IO板卡的注册表信息,获取到IO板卡的型号包括:

步骤2.2.1,主机配置UART串口设备为发送模式,再通过UART串口设备发送一个请求到IO板卡,请求IO板卡返回注册信息,等待数据传输完成;

步骤2.2.2,主机配置UART串口设备为接收模式,从UART串口设备读取IO板卡的响应;

步骤2.2.3,解析得到的数据并判断是否有效,对于成功接收的数据,主机通过循环打印数据的值;

步骤2.2.4,验证接收到的数据是否符合预期的格式,通过检查帧的开始和结束标志、位置信息以及其他特定值来确认数据的有效性;

步骤2.2.5,主机确认响应有效后,获取IO板卡的型号,并在主机中更新IO板卡型号的注册表。

具体的,作为本发明优选的方案,步骤3中,所述判断IO板卡型号对应含模拟数据的通道,以获取到待滤波模拟数据包括以下步骤:

步骤3.1,主机从已更新IO板卡型号的注册表中读取IO板卡的型号;

步骤3.2,根据IO板卡的型号,检查型号数据库或预定义的型号列表,确定该型号的IO板卡与引脚是否支持模拟数据输入通道,若不支持则跳过;

步骤3.3,配置通道并获取模拟数据,若IO板卡支持模拟数据输入,主机配置相应的通道来准备数据接收,主机通过特定的命令或请求,向IO板卡发送数据读取请求;

步骤3.4,主机等待并读取从IO板卡传回的模拟数据;

步骤3.5,模拟数据被主机成功读取后,主机调用预定义的滤波器类型判断模型来分析模拟数据;

步骤3.6,根据滤波器类型判断模型的分析结果,主机给出建议或自动选择最适合的滤波器来处理模拟数据。

具体的,作为本发明优选的方案,步骤4中,所述调用自适应滤波器对模拟数据进行滤波包括:

步骤4.1,获得经过边缘计算网关采集的数据,以m路n次采集的网关数据Z的形式呈现;

步骤4.2,数据Z的第k列数据

步骤4.3,对m路传感器的检测模型进行建模,将非线性系统进行泰勒展开,以线性化得到一个状态方程和观测方程或者进行特征工程直接线性建模:

式中,

步骤4.4,在滤波过程的预测阶段,进行状态估计的预测,涉及到预测状态的估计值和协方差矩阵:

式中,

步骤4.5,在滤波的更新阶段,根据预测状态估计值和实际传感器观测值之间的差异,更新状态量的值和协方差矩阵的值,不断校正和优化对系统状态的估计:

其中

式中,

步骤4.6:对步骤4.4、4.5中的过程噪声矩阵

;

;

式中,

步骤4.7,基于更新后的状态量,得到最后的滤波结果:

与现有技术相比,本发明的有益效果是:本发明中对主机与IO板卡选择高效稳定的通信方式,确保了数据的实时传输和高准确率,通过代码设计成功地获取了IO板卡的设备地址,从而避免了复杂的设备查询和匹配过程,简化了数据采集的流程,还提高了数据的质量和可靠性;在主机读取IO板卡注册表信息的过程中,不仅可以快速地获取IO板卡的型号,还具备一套高效的数据解析算法,确保能够从注册表中准确地提取出所需信息;系统具有自适应的模型匹配功能,能够兼容多种IO板卡,进而大大提高了系统的可扩展性和灵活性;本发明可以自适应地判断IO板卡型号对应的模拟数据通道,确保系统能够准确地匹配到正确的数据通道,从而得到待滤波的模拟数据;对网关数据进行滤波所采用的自适应卡尔曼滤波方式可以处理任何常见的网关设备数据的滤波,避免了传统网关数据滤波的人为干预以及滤波方法的有限性;采用的自适应卡尔曼滤波器有效的对非线性系统进行自适应滤波,使用更加灵活,具有较低的计算复杂性,更加适用于资源受限的环境,实现了面向边缘计算网关数据的采集和滤波的全自动化过程。

附图说明

图1为本发明的主机与IO板卡通讯获取到模拟通道数据的流程图;

图2为本发明的对模拟数据进行自适应卡尔曼滤波的流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。

本实施例所提出的一种面向边缘计算网关数据采集自适应滤波方法,对非线性模型进行了线性化,以及对特征工程直接构建线性模型,然后运用了自适应卡尔曼滤波技术。该方法相较于其他的滤波方法具有最小均方误差、可以有效消除噪声和抖动、对系统不确定性有一定的鲁棒性、响应速度快等优点。

如图1所示,所涉及的面向边缘计算网关数据采集自适应滤波方法主要包括以下步骤:

步骤1,主机与IO板卡通信,获取IO板设备地址;

步骤2,主机读取IO板卡注册表信息,获取IO板卡型号;

步骤3,判断IO板卡型号对应含模拟数据的通道,以获取到待滤波模拟数据;

步骤4,调用自适应滤波器对模拟数据进行滤波。

首先需要对在本实施例中涉及到的名称进行解释说明,UART(UniversalAsynchronous Receiver-Transmitter) 为通用异步收发器的缩写,UART是计算机硬件的一部分,用于异步串行通信。它将字节转换为串行位流以进行传输,并将接收到的串行位流转换回字节。包含波特率(每秒传输的符号或调制级数)、数据位(UART 通信中每个字节的位数)、停止位(标识数据字节的结束)、校验(检查数据字节在传输过程中是否有误)等参数。RS-485是一种多点通信的差分信号传输标准,常用于长距离或在有电气噪音的环境中的通信。GPIO(General-Purpose Input/Output)为通用输入/输出的缩写,GPIO 是一种在计算机、微控制器或其他设备上的通用引脚,可以由用户自定义为输入或输出。在本发明中,使用GPIOX的值来判断对应板卡是否被注册。

接下来,针对于本实施例面向边缘计算网关数据采集自适应滤波方法的主要步骤展开详细的说明。

步骤1,主机与IO板卡通信,获取IO板设备地址包括以下详细步骤:

步骤1.1,初始化串口和485控制设备:

在这一步,程序尝试打开两个设备——UART串口设备和RS-485控制设备;

UART串口设备:通过UART串口设备的路径来打开UART串口设备,若设备打开失败,程序会返回错误信息;

RS-485控制设备:通过RS-485控制设备的路径打开RS-485控制设备,同样,若设备打开失败,程序会返回错误信息。

步骤1.2,配置UART串口设备:

一旦UART串口设备被成功打开,就需要对波特率、数据位、停止位、校验等UART串口设备参数进行初始化。

步骤1.3,配置GPIO:

通过以下方法初始化和配置GPIO:

步骤1.3.1,初始化并配置GPIOX引脚为输入模式;

步骤1.3.2,配置8个cs(chip select)引脚为输入模式。

步骤1.4,主机与IO板卡通信并获取IO板卡设备地址。

本实施例中为了获取IO板卡设备地址,主机需要能够识别哪个IO板卡已插在对应办卡位置上(或者说是当前激活的),在代码中,主机使用8个cs(chip select)引脚来识别并选择特定的IO板卡,在主循环中,程序会不断检查每个cs引脚的状态,如果某个cs引脚的状态为0,表示该IO板卡已插在对应位置上,从而获取到该IO板卡的位置。

在本实施例中主机与IO板卡通信的技术手段经过了深入研究和优化。选择高效稳定的通信协议,确保了数据的实时传输和高准确率。通过代码设计,成功地获取了IO板设备地址,从而避免了复杂的设备查询和匹配过程。此外,考虑到工业现场可能存在的各种干扰,在通讯过程中增加了多重错误检测和纠正机制,大大提高了通信的稳定性。与传统的通讯方法相比,本发明不仅简化了数据采集的流程,还提高了数据的质量和可靠性。

步骤2,为主机读取IO板卡注册表信息,获取IO板卡的型号包括以下详细步骤:

步骤2.1,监测GPIOX引脚状态,

程序持续检查GPIOX引脚的状态,当GPIOX引脚的为0时,读取IO板卡的注册表信息。

步骤2.2,读取注册表信息以确定IO板卡的型号,通过与IO板卡通信,从而读取其注册表信息,并进一步获取到IO板卡的型号:

步骤2.2.1,主机首先配置UART串口设备为发送模式,再通过UART串口设备发送一个请求到IO板卡,请求IO板卡返回注册信息,并延迟1毫秒以等待数据传输完成。

步骤2.2.2,主机配置UART串口设备为接收模式,从UART串口设备读取IO板卡的响应。

步骤2.2.3,主机解析得到的数据并判断是否有效,对于成功接收的数据,主机通过循环打印数据的值。

步骤2.2.4,验证接收到的数据是否符合预期的格式,通过检查帧的开始和结束标志、位置信息以及其他特定值来确认数据的有效性。

步骤2.2.5,主机确认响应有效后,获取IO板卡的型号,并在主机中更新IO板卡型号的注册表。

本实施例中,在主机读取IO板卡注册表信息的过程中,本发明展现出了创新性与实用性。不仅可以快速地获取IO板卡型号,还具备一套高效的数据解析算法,确保能够从注册表中准确地提取出所需信息。此外,考虑到不同型号的IO板卡可能有不同的注册表结构,系统具有自适应的模型匹配功能,能够兼容多种IO板卡,进而大大提高了系统的可扩展性和灵活性。

步骤3中,判断IO板卡的型号对应含模拟数据的通道,以获取到待滤波模拟数据包括以下详细步骤:

步骤3.1,读取IO板卡型号,主机从已更新IO板卡型号的注册表中读取IO板卡的型号。

步骤3.2,判断是否支持模拟数据输入,根据IO板卡的型号,检查型号数据库或预定义的型号列表,确定该型号的IO板卡与引脚是否支持模拟数据输入通道,若是则进入下一步,若不支持则跳过,返回到读取已更新IO板卡型号的注册表确定IO板卡的型号。

步骤3.3,配置通道并获取模拟数据,若IO板卡支持模拟数据输入,主机会配置相应的通道来准备数据接收,主机会通过特定的命令或请求,向IO板卡发送数据读取请求。

步骤3.4,读取模拟数据,主机等待并读取从IO板卡传回的模拟数据。

步骤3.5,调用滤波器类型判断模型,一旦模拟数据被主机成功读取后,主机会调用预定义的滤波器类型判断模型来分析模拟数据。

步骤3.6,输出滤波器建议,根据滤波器类型判断模型的分析结果,主机会给出建议或自动选择最适合的滤波器来处理模拟数据Z。

本实施本采用了一种先进的数据处理技术,可以自适应地判断IO板卡型号对应的模拟数据通道。通过建立一个完整的IO板卡型号和数据通道的型号数据库或预定义的型号列表,确保系统能够准确地匹配到正确的数据通道,从而得到待滤波的模拟数据。

如图2所示,步骤4中,通过初始化状态量

步骤4.1,在这一步骤中,我们首先获得经过边缘计算网关采集的数据,通常以m路n次采集的网关数据Z的形式呈现。

步骤4.2,数据Z的第k列数据

步骤4.3,在这一步骤中,我们对m路传感器的检测模型进行建模,这通常涉及将非线性系统进行泰勒展开,以线性化得到一个状态方程和观测方程或者进行特征工程直接线性建模:

式中,

步骤4.4,在滤波过程的预测阶段,进行状态估计的预测,涉及到预测状态的估计值和协方差矩阵:

式中,

步骤4.5,在滤波的更新阶段,根据预测状态估计值和实际传感器观测值之间的差异,更新状态量的值和协方差矩阵的值,不断修正和优化对系统状态的估计:

其中

式中,

步骤4.6:对步骤4.4、4.5中的过程噪声矩阵

;

;

式中,

步骤4.7,基于更新后的状态量,得到最后的滤波结果:

从而获取虚拟数据Z,这个结果代表了本实施对传感器模拟数据的最佳估计,考虑了先前的预测和观测的信息,从而实现了自适应滤波的目标。

本实施例中对网关数据进行滤波所采用的自适应卡尔曼滤波方式几乎可以处理任何常见的网关设备数据的滤波,避免了传统网关数据滤波的人为干预以及滤波方法的有限性。自适应卡尔曼滤波器是一个最优估计器,它基于贝叶斯框架,通过最小化估计误差的协方差来提供最优估计,也就是在线性系统和高斯噪声的情况下,提供了最小均方误差的状态估计;自适应卡尔曼滤波器在高维系统的数据滤波中表现良好,这意味着即使对于建模复杂的系统也可以实现对数据的实时滤波;自适应卡尔曼滤波有很强的鲁棒性,它通过自动调整估计过程中的权重,以适应不同的测量和系统动态条件,这使得它能够应对噪声水平变化和系统参数漂移等问题,从而适用于各种复杂的应用场合;本实施例采用的自适应卡尔曼滤波器还可以有效的对非线性系统进行自适应滤波,尤其在提前对系统进行特征工程预处理之后,这使得它可以在实际应用中使用更加灵活;自适应卡尔曼滤波器通常还具有更好的平滑性,它基于过去的状态估计和测量来估计当前状态,不会引入突然的大幅度变化,这也是符合大多数网关模拟数据量的特性。此外,自适应卡尔曼滤波具有较低的计算复杂性,更加适用于资源受限的环境;本实施例独特的网关模拟数据获取和自适应滤波方式,实现了面向边缘计算网关数据的采集和滤波的全自动化过程。整体看来本发明在边缘计算网关数据滤波领域具备卓越的应用潜力。

上述步骤共同构成了面向边缘计算网关数据采集的自适应滤波方法,该方法通过不断迭代预测和观测,从原始数据中提取出准确的信息,这样随着滤波的进行,会越来越能够达到理想的滤波处理效果。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

技术分类

06120116561646