一种CAN网络采样点检测方法、装置、存储介质及电子设备与流程

文档序号:20874152发布日期:2020-05-26 16:14阅读:300来源:国知局
本发明涉及汽车电子控制领域,特别涉及一种can网络采样点检测方法、装置、存储介质及电子设备。
背景技术
::随着社会的快速发展,汽车已经成为了每家每户不可缺少的一部分。在车辆生产过程中,控制器局域网(controllerareanetwork,can)因实时性好、抗干扰能力强、可靠性高等优点被广泛应用在汽车总线中。汽车can局域网中各节点通讯必须遵循统一的波特率(baudrate),采样点影响到整车网络的错误帧数量,目前整车can网络的采样点为控制器出厂默认值,iso11898规定了采样点范围在70%~85%之间,由于不同整车环境对采样点的要求也不同,因此采样点太靠前或靠后都会导致整车can网络不稳定,从而降低了整车can网络的稳定性。技术实现要素:本申请实施例提供了一种can网络采样点检测方法、装置、存储介质及电子设备。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。第一方面,本申请实施例提供了一种can网络采样点检测方法,所述方法包括:获取预设can网络采样点集合和预设采样点配置参数集合;根据预设公式获取所述can网络采样点集合中目标采样点;基于所述目标采样点获取所述采样点配置参数集合中目标采样点配置参数;基于所述目标采样点配置参数完成can驱动初始化。可选的,所述获取预设can网络采样点集合和采样点配置参数集合之前,还包括:根据车辆控制器配置信息计算生成满足整车can网络波特率的不同采样点配置参数集合,将所述满足整车can网络波特率的不同采样点配置参数集合作为预设采样点配置参数集合。可选的,所述获取预设can网络采样点集合和采样点配置参数集合之前,还包括:当接收到来自总线报文时,通过高速模拟采集电路采集can信号的模拟量生成can网络采样点集合,将所述can网络采样点集合作为预设can网络采样点集合。可选的,所述预设公式为bestsample=(100–((100–i)/2))/can_scansamplenum_c,其中bestsample为最佳采样点,i为can信号模拟值,can_scansamplenum_c为上电扫描次数。可选的,所述高速模拟采集电路满足最高100mhz模拟采集的电路。第二方面,本申请实施例提供了一种can网络采样点检测装置,所述装置包括:集合获取模块,用于获取预设can网络采样点集合和预设采样点配置参数集合;采样点获取模块,用于根据预设公式获取所述can网络采样点集合中目标采样点;参数获取模块,用于基于所述目标采样点获取所述采样点配置参数集合中目标采样点配置参数;初始化完成模块,用于基于所述目标采样点配置参数完成can驱动初始化。可选的,所述装置还包括:第一集合生成模块,用于根据车辆控制器配置信息计算生成满足整车can网络波特率的不同采样点配置参数集合,将所述满足整车can网络波特率的不同采样点配置参数集合作为预设采样点配置参数集合。可选的,所述装置还包括:第二集合生成模块,用于当接收到来自总线报文时,通过高速模拟采集电路采集can信号的模拟量生成can网络采样点集合,将所述can网络采样点集合作为预设can网络采样点集合。第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。第四方面,本申请实施例提供一种电子设备,可包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述的方法步骤。本申请实施例提供的技术方案可以包括以下有益效果:在本申请实施例中,首先获取预设can网络采样点集合和预设采样点配置参数集合,再根据预设公式获取所述can网络采样点集合中目标采样点,然后基于所述目标采样点获取所述采样点配置参数集合中目标采样点配置参数,最后基于所述目标采样点配置参数完成can驱动初始化。本方案通过检测整车网络中各个控制器节点的采样点,并支持采样点自动适应和调节来满足不同的整车can网络,从而提高整车网络的稳定性。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。图1是本申请实施例提供的一种can网络采样点检测方法的流程示意图;图2是本申请实施例提供的一种can网络采样点检测方法的主程序流程图;图3是本申请实施例提供的一种can网络采样点bit波形示意图;图4是本申请实施例提供的一种can网络采样点计算过程图;图5是本申请实施例提供的一种can网络采样点检测装置的结构示意图;图6是本申请实施例提供的另一种can网络采样点检测装置的结构示意图;图7是本申请实施例提供的一种电子设备的结构示意图。具体实施方式以下描述和附图充分地示出本发明的具体实施方案,以使本领域的技术人员能够实践它们。应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。到目前为止,在汽车can网络配置方案中,目前整车can网络的采样点为控制器出厂默认值,iso11898规定了采样点范围在70%~85%之间,由于不同整车环境对采样点的要求也不同,因此采样点太靠前或靠后都会导致整车can网络不稳定,从而降低了整车can网络的稳定性。为此,本申请提供了一种can网络采样点检测方法、装置、存储介质及电子设备,以解决上述相关技术问题中存在的问题。本方案通过检测整车网络中各个控制器节点的采样点,并支持采样点自动适应和调节来满足不同的整车can网络,从而提高整车网络的稳定性,下面采用示例性的实施例进行详细说明。下面将结合附图1-附图4,对本申请实施例提供的can网络采样点检测方法进行详细介绍。请参见图1,为本申请实施例提供了一种can网络采样点检测方法的流程示意图。如图1所示,本申请实施例的所述方法可以包括以下步骤:s101,获取预设can网络采样点集合和预设采样点配置参数集合;其中,can网络是控制器局域网,控制器局域网(controllerareanetwork,can)因实时性好、抗干扰能力强、可靠性高等优点被广泛应用在汽车总线中。预设can网络采样点集合是控制器通过高速模拟采集电路采集can信号的模拟量生成can网络采样点集合,将所述can网络采样点集合作为预设can网络采样点集合。预设采样点配置参数集合是根据控制器的芯片型号、系统时钟等条件,计算出的满足整车can网络波特率的不同采样点的配置参数。在一种可能的实现方式中,首先将控制器中can模块电路设计成满足最高100mhz模拟采集的电路,然后通过算法软件计算采样点的位置。具体的,首先获取该车辆控制器的芯片型号、系统时钟等参数条件,再根据获取的参数条件计算车辆can网络波特率的不同采样点配置,其中波特率为单位时间内通信通道传输码元的速率,最后生成预设采样点配置参数集合,将预设采样点配置参数集合作为初始数据保存在控制器中。例如表1所示,表1中示出了不同采样点的百分比对应了不同的配置参数,例如当获取的采样点(sampletable)为a时,对应的配置参数(sampleparameter)为a,当采样点为b时,对应的配置参数为b,当采样点为c时,对应的配置参数为c,当采样点为d时,对应的配置参数为d,当采样点为e时,对应的配置参数为e。表1具体的,当控制器在上电进行初始化时,首先接收总线报文,然后通过设定的高速模拟采集电路采集can信号的模拟量,模拟量是指变量在一定范围连续变化的量,再根据不同can波特率调整不同的采样周期以保障一个bit的数据样本数为100个,然后将采集的样本放到缓存区进行缓存,放在缓存区的数据样本作为预设can网络采样点集合。s102,根据预设公式获取所述can网络采样点集合中目标采样点;其中,预设公式为计算最佳采样点的数学公式,该数学公式为bestsample=(100–((100–i)/2))/can_scansamplenum_c,其中bestsample为最佳采样点,i为can信号模拟值,can_scansamplenum_c为上电扫描次数。目标采样点为can网络采样点集合中最符合当前场景的最佳采样点位置。在本申请实施例中,基于s101可得出表1中不同采样点对应的配置参数。例如图2所示,首先开始上电后,控制器通过设定的高速模拟采集电路采集can信号的模拟量,然后根据当前can波特率计算1bit的时间,再计算任意一个高位bit的模拟量波形,例如图3所示,然后在时间t中根据波形的上升沿和下降沿确定出最佳采样点,由图可以看出最佳采样点的位置是t/2处的位置点,再将此采样点与表1的配置表中的采样点进行比较,然后取最接近的值最为最终采样点,最后基于最终采样点对应的参数,进行初始化采样点,初始化结束后结束。s103,基于所述目标采样点获取所述采样点配置参数集合中目标采样点配置参数;在本申请实施例中,为了降低控制器负荷,此方案所提供的功能首先只在上电后can_scansamplewaittime_c时间内执行,一共进行can_scansamplenum_c次扫描,中间隔时间为can_scansampletime_c;计算采样点首先使用均值滤波方法,依次将10个(编号为:i,i+1,...,i+9)can信号模拟值求平均值,当此平均值大于can信号高电平标定量(默认值3v)时,系统判断i为can信号的上升沿,然后根据计算公式:最佳采样点位置bestsample=(100–((100–i)/2))/can_scansamplenum_c;bestsample与表1中采样点sampletable中每一个元素比较,取最接近的值作为can模块初始化的配置参数。s104,基于所述目标采样点配置参数完成can驱动初始化。在本申请实施例中,基于步骤s103可得到can模块初始化的目标配置参数,当控制器获取到目标配置参数后,根据该目标配置参数的具体值完成can驱动初始化来保障当前车辆can网络的稳定性。具体的,例如图4所示,图4是本方案提供的利用软件算法进行计算当前车辆最佳采样点的流程图,开始上电后,当can信号模拟值i小于90时,首先使用均值滤波方法依次将10个(编号为:i,i+1,...,i+9)can信号模拟值求平均值,当此平均值大于can信号高电平标定量(默认值3v)时,系统判断i为can信号的上升沿。当此平均值小于can信号高电平标定量(默认值3v)时,则对can信号模拟值i加1重新判断后根据滤波方法计算平均值进行判断。当平均值大于默认值3v时,根据算法程序中提供的计算公式sample[n++]=100-((100-i)/2)和sample=(sample[0]+...sample[n])/(n+1)计算出最佳采样点的位置为sample,最后将sample和sampletable中的采样点进行对比得到sampletable中与sample最接近的值,根据得到sampletable中与sample最接近的值可获取对应的配置参数,最后根据对应的配置参数重新初始化can驱动,初始化结束后保障整车can网络的稳定。在本申请实施例中,首先获取预设can网络采样点集合和预设采样点配置参数集合,再根据预设公式获取所述can网络采样点集合中目标采样点,然后基于所述目标采样点获取所述采样点配置参数集合中目标采样点配置参数,最后基于所述目标采样点配置参数完成can驱动初始化。本方案通过检测整车网络中各个控制器节点的采样点,并支持采样点自动适应和调节来满足不同的整车can网络,从而提高整车网络的稳定性。下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。请参见图5,其示出了本发明一个示例性实施例提供的can网络采样点检测装置的结构示意图。该can网络采样点检测装置可以通过软件、硬件或者两者的结合实现成为设备的全部或一部分。该装置1包括集合获取模块10、采样点获取模块20、参数获取模块30、初始化完成模块40。集合获取模块10,用于获取预设can网络采样点集合和预设采样点配置参数集合;采样点获取模块20,用于根据预设公式获取所述can网络采样点集合中目标采样点;参数获取模块30,用于基于所述目标采样点获取所述采样点配置参数集合中目标采样点配置参数;初始化完成模块40,用于基于所述目标采样点配置参数完成can驱动初始化。可选的,如图6所示,所述can网络采样点检测装置1还包括:第一集合生成模块50,用于根据车辆控制器配置信息计算生成满足整车can网络波特率的不同采样点配置参数集合,将所述满足整车can网络波特率的不同采样点配置参数集合作为预设采样点配置参数集合。第二集合生成模块60,用于当接收到来自总线报文时,通过高速模拟采集电路采集can信号的模拟量生成can网络采样点集合,将所述can网络采样点集合作为预设can网络采样点集合。需要说明的是,上述实施例提供的can网络采样点检测装置在can网络采样点检测方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的can网络采样点检测装置与can网络采样点检测方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。在本申请实施例中,首先获取预设can网络采样点集合和预设采样点配置参数集合,再根据预设公式获取所述can网络采样点集合中目标采样点,然后基于所述目标采样点获取所述采样点配置参数集合中目标采样点配置参数,最后基于所述目标采样点配置参数完成can驱动初始化。本方案通过检测整车网络中各个控制器节点的采样点,并支持采样点自动适应和调节来满足不同的整车can网络,从而提高整车网络的稳定性。本发明还提供一种计算机可读介质,其上存储有程序指令,该程序指令被处理器执行时实现上述各个方法实施例提供的can网络采样点检测方法。本发明还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各个方法实施例所述的can网络采样点检测方法。请参见图7,为本申请实施例提供了一种电子设备的结构示意图。如图7所示,所述电子设备1000可以包括:至少一个处理器1001,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(display)、摄像头(camera),可选用户接口1003还可以包括标准的有线接口、无线接口。其中,网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。其中,处理器1001可以包括一个或者多个处理核心。处理器1001利用各种借口和线路连接整个电子设备1000内的各个部分,通过运行或执行存储在存储器1005内的指令、程序、代码集或指令集,以及调用存储在存储器1005内的数据,执行电子设备1000的各种功能和处理数据。可选的,处理器1001可以采用数字信号处理(digitalsignalprocessing,dsp)、现场可编程门阵列(field-programmablegatearray,fpga)、可编程逻辑阵列(programmablelogicarray,pla)中的至少一种硬件形式来实现。处理器1001可集成中央处理器(centralprocessingunit,cpu)、图像处理器(graphicsprocessingunit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1001中,单独通过一块芯片进行实现。其中,存储器1005可以包括随机存储器(randomaccessmemory,ram),也可以包括只读存储器(read-onlymemory)。可选的,该存储器1005包括非瞬时性计算机可读介质(non-transitorycomputer-readablestoragemedium)。存储器1005可用于存储指令、程序、代码、代码集或指令集。存储器1005可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图7所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及can网络采样点检测应用程序。在图7所示的电子设备1000中,用户接口1003主要用于为用户提供输入的接口,获取用户输入的数据;而处理器1001可以用于调用存储器1005中存储的can网络采样点检测应用程序,并具体执行以下操作:获取预设can网络采样点集合和预设采样点配置参数集合;根据预设公式获取所述can网络采样点集合中目标采样点;基于所述目标采样点获取所述采样点配置参数集合中目标采样点配置参数;基于所述目标采样点配置参数完成can驱动初始化。在一个实施例中,所述处理器1001在执行所述获取预设can网络采样点集合和采样点配置参数集合之前时,还执行以下操作:根据车辆控制器配置信息计算生成满足整车can网络波特率的不同采样点配置参数集合,将所述满足整车can网络波特率的不同采样点配置参数集合作为预设采样点配置参数集合。在一个实施例中,所述处理器1001在执行所述获取预设can网络采样点集合和采样点配置参数集合之前时,还执行以下操作:当接收到来自总线报文时,通过高速模拟采集电路采集can信号的模拟量生成can网络采样点集合,将所述can网络采样点集合作为预设can网络采样点集合。在本申请实施例中,首先获取预设can网络采样点集合和预设采样点配置参数集合,再根据预设公式获取所述can网络采样点集合中目标采样点,然后基于所述目标采样点获取所述采样点配置参数集合中目标采样点配置参数,最后基于所述目标采样点配置参数完成can驱动初始化。本方案通过检测整车网络中各个控制器节点的采样点,并支持采样点自动适应和调节来满足不同的整车can网络,从而提高整车网络的稳定性。本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。所属技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本文所披露的实施例中,应该理解到,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。应当理解的是,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本发明并不局限于上面已经描述并在附图中示出的流程及结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1