本发明涉及数据处理,具体涉及一种ak协议轮速传感器协议数据位解析方法和装置。
背景技术:
1、ak协议是一种轮速传感器和电子控制单元(ecu)标准接口,用于数据信号的传输。传感器的信号经过信号调制单元处理,产生速度信号和数据信号。
2、当前,各零部件供应商主要利用专用的外设芯片,解析ak协议数据信号。采用专用的外设芯片解析ak协议数据信号的方案均面临如下问题:专用外设芯片成本较高。
技术实现思路
1、为了克服现有技术的不足,本发明实施例的目的在于提供一种ak协议轮速传感器协议数据位解析方法和装置,可以降低产品成本,保证供应链安全,提高了企业竞争力。
2、为解决上述问题,本发明实施例第一方面公开一种ak协议轮速传感器协议数据位解析方法,其包括以下步骤:
3、接收ak协议轮速传感器发送的电流信号,并将所述电流信号转换成第一电压信号和第二电压信号,所述第一电压信号包括速度信号脉冲、协议数据位脉冲,所述第二电压信号仅包括速度信号脉冲;
4、捕获所述第一电压信号和第二电压信号的上升沿和下降沿的时间,并将捕获到的第一电压信号的上升沿和下降沿的时间戳记为第一时间戳集合,将捕获到的第二电压信号的上升沿和下降沿的时间戳记为第二时间戳集合,保存所述第一时间戳集合和第二时间戳集合;
5、根据所述第一时间戳集合和第二时间戳集合获取一组完整的协议数据位的时间戳,记为协议数据时间戳;
6、根据所述协议数据时间戳对所述协议数据位进行解析,得到各协议数据位的值。
7、本发明实施例基于轮速传感器的电流信号转换成第一电压信号和第二电压信号,并根据第一电压信号和第二电压信号,捕获上升沿和下降沿的第一时间戳集合和第二时间戳集合,根据第一时间戳集合和第二时间戳集合提取协议数据位的时间戳(记为协议数据时间戳),对协议数据位进行解析,从而得到各个协议数据位的值,完成对协议数据位的解析,可以降低了产品的成本,提高了企业竞争力。
8、作为一种较佳的实施方式,在本发明实施例第一方面中,接收ak协议轮速传感器发送的电流信号,并将所述电流信号转换成第一电压信号和第二电压信号,包括:
9、通过ak信号分离电路,基于信号比对将所述电流信号转换成第一电压信号和第二电压信号。
10、ak信号分离电路可以通过比较器实现,示例性地,其可以通过一定的i/v转换电路完成电流信号和电压信号的转换,然后在基于转换后的电压信号与基准电压信号的比对,从而得到相应的脉冲信号,可以将得到的脉冲信号记为第一电压信号和第二电压信号。
11、对于高速工况而言,由于其速度脉冲幅值28ma,协议数据位脉冲幅值14ma,因此,从高速工况中可以提取到第一电压信号和第二电压信号,其中,第二电压信号的高电平对应速度脉冲幅值28ma,也就是说第二电压信号只有在速度脉冲大于或等于第一预设值(例如23.5ma)时,才会输出高电平,而小于该第一预设值时,则输出低电平,由此可见,第二电压信号仅包括速度信号脉冲,而不包括协议数据位脉冲。
12、而第一电压信号,也是通过比较器完成,比较器用于获取脉冲幅值在大于第二预设值(例如11.7 ma)时,输出高电平,而小于该第二预设值时,则输出低电平,第一电压信号不仅包括速度信号脉冲,还包括协议数据位脉冲。
13、对于低速工况而言,由于其速度脉冲幅值14ma,协议数据位脉冲幅值14ma,因此,对低速工况下的脉冲信号提取仅能够提取到第一电压信号,速度信号脉冲是融合于协议数据位脉冲之间的,其不能单独提取第二电压信号。
14、对于低速到高速工况而言,其速度脉冲幅值既包括14ma,又包含速度脉冲幅值28ma,因此,其可以提取到速度脉冲幅值为28ma的第二电压信号,又可以提取到脉冲幅值为28ma、14ma以及协议数据位脉冲幅值14ma的第一电压信号。
15、对第一电压信号和第二电压信号的上升沿和下降沿的时间戳的获取方式,可以通过边沿捕获模块完成。边沿捕获模块可以采用例如gtm/tim模块、emios模块、flexio模块等实现。由于上升沿是脉冲信号由0向1转变的瞬间,下降沿是脉冲信号由1向0转变的瞬间,因此,通过边沿捕获模块采集所有的0到1以及1到0的时间点,即得到第一时间戳集合和第二时间戳集合。
16、作为一种较佳的实施方式,在本发明实施例第一方面中,在高速工况下,根据所述第一时间戳集合和第二时间戳集合获取一组完整的协议数据位的时间戳,记为协议数据时间戳,包括:
17、在预设的采样周期内,基于第二时间戳集合确定最后一个速度脉冲的上升沿的时间戳和倒数第二个速度脉冲的下降沿的时间戳,分别记为第一基准高速时间戳和第二基准高速时间戳;
18、获取所述第一基准高速时间戳和第二基准高速时间戳之间的所有第一时间戳集合,所述第一基准高速时间戳和第二基准高速时间戳之间的所有第一时间戳集合即所述协议数据时间戳。
19、在高速工况下,由于相邻两个速度脉冲之间的脉冲均为协议数据脉冲,直接将相邻两个速度脉冲之间的脉冲构建协议数据时间戳即可。
20、作为一种较佳的实施方式,在本发明实施例第一方面中,在低速工况下,根据所述第一时间戳集合和第二时间戳集合获取一组完整的协议数据位的时间戳,记为协议数据时间戳,包括:
21、在预设的采样周期内,按照从后到前的时间顺序对所述采样周期内的第一时间戳集合进行排序;
22、从排序后的第一时间戳集合中按照先后顺序选取预设数量的第一时间戳,构成所述协议数据时间戳,所述协议数据时间戳中任意相邻的第一时间戳之差均位于[tp/2,tp]中,tp为脉冲宽度。
23、同一帧的协议数据中,相邻两个时间戳之间的差值处于tp/2与tp之间,因此,在低速工况下,由于仅具有第一电压信号,则可以将相邻两个时间戳之间的差值处于tp/2与tp之间的第一时间戳构建协议数据时间戳。
24、作为一种较佳的实施方式,在本发明实施例第一方面中,在低速到高速工况下,根据所述第一时间戳集合和第二时间戳集合获取一组完整的协议数据位的时间戳,记为协议数据时间戳,包括:
25、在预设的采样周期内,基于第二时间戳集合确定最后一个速度脉冲的上升沿的时间戳,记为第一基准高速时间戳;
26、从所述第一基准高速时间戳开始,按照从后到前的时间顺序对所述采样周期内的第一时间戳集合进行排序;
27、从排序后的第一时间戳集合中按照先后顺序选取预设数量的第一时间戳,构成所述协议数据时间戳,所述协议数据时间戳中相邻的第一时间戳之差均位于[tp/2,tp]中,tp为脉冲宽度。
28、从低速到高速工况中,由于存在第一电压信号和第二电压信号,因此,可以从第二电压信号中确定第一基准高速时间戳,基于该第一基准高速时间戳作为起始,在第一时间戳集合中选取最靠近该第一基准高速时间戳的一组相邻两个时间戳之间的差值处于tp/2与tp之间的第一时间戳构建协议数据时间戳。
29、作为一种较佳的实施方式,在本发明实施例第一方面中,根据所述协议数据时间戳对所述协议数据位进行解析,得到各协议数据位的值,包括:
30、按照时间的先后顺序对所述协议数据时间戳进行排序;
31、基于排序后的协议数据时间戳的第一个时间戳确定第一个协议数据位的值:
32、如果timestamp0-timestamp-2 = 1.5tp,则bit0=0;
33、如果timestamp0-timestamp-2 = 2tp,则bit0=1;
34、其中,timestamp0为排序后的协议数据时间戳的第一个时间戳,timestamp-2为第一时间戳集合中位于timestamp0之前的第2个时间戳;bit0为第一个协议数据位的值;
35、当bitk=0时,则协议数据位bitk中心边沿对应的时间戳为timestampk+1,此时,计算timestampk+2和timestampk+1的差值,记为第一差值,如果第一差值为tp/2,则bitk+1 = 0;如果第一差值为tp,则bitk+1 =1;
36、当bitk=1时,则协议数据位bitk中心边沿对应的时间戳为timestampk,此时,计算timestampk+1和timestampk的差值,记为第二差值,如果第二差值为tp/2,则bitk+1 = 0;如果第二差值为tp,则bitk+1 =1;其中,0≤k≤6,tp为脉冲宽度;
37、根据bit0到bit7的总和确定bit8的值,如果bit0到bit7的总和为偶数,则bit8=0,如果bit0到bit7的总和为奇数,则bit8=1。
38、协议数据位采用曼彻斯特编码(ieee 802.3),其编码规则为:位中间电平从低到高跳变表示“1”;位中间电平从高到低跳变表示“0”。再根据ak协议标准,速度脉冲的宽度为tp(标称值50us),速度脉冲的下降沿与第一个协议数据位码元宽度为tp/2,基于此,可以确定协议数据时间戳中的码元,并基于曼彻斯特编码规则以及速度脉冲的下降沿与第一个协议数据位码元宽度为tp/2,对各个协议数据位的值进行解析。
39、本发明实施例第二方面公开了一种ak协议轮速传感器协议数据位解析装置,其包括:
40、接收单元,用于接收ak协议轮速传感器发送的电流信号,并将所述电流信号转换成第一电压信号和第二电压信号,所述第一电压信号包括速度信号脉冲、协议数据位脉冲,所述第二电压信号仅包括速度信号脉冲;
41、捕获单元,用于捕获所述第一电压信号和第二电压信号的上升沿和下降沿的时间,并将捕获到的第一电压信号的上升沿和下降沿的时间戳记为第一时间戳集合,将捕获到的第二电压信号的上升沿和下降沿的时间戳记为第二时间戳集合,保存所述第一时间戳集合和第二时间戳集合;
42、获取单元,用于根据所述第一时间戳集合和第二时间戳集合获取一组完整的协议数据位的时间戳,记为协议数据时间戳;
43、解析单元,用于根据所述协议数据时间戳对所述协议数据位进行解析,得到各协议数据位的值。
44、本发明实施例基于轮速传感器的电流信号转换成第一电压信号和第二电压信号,并根据第一电压信号和第二电压信号,捕获上升沿和下降沿的第一时间戳集合和第二时间戳集合,根据第一时间戳集合和第二时间戳集合提取协议数据位的时间戳(记为协议数据时间戳),对协议数据位进行解析,从而得到各个协议数据位的值,完成对协议数据位的解析,可以降低了产品的成本,提高了企业竞争力。
45、作为一种较佳的实施方式,在本发明实施例第二方面中,所述解析单元,包括:
46、排序子单元,用于按照时间的先后顺序对所述协议数据时间戳进行排序;
47、确定子单元,用于基于排序后的协议数据时间戳的第一个时间戳确定第一个协议数据位的值:
48、如果timestamp0-timestamp-2 = 1.5tp,则bit0=0;
49、如果timestamp0-timestamp-2 = 2tp,则bit0=1;
50、其中,timestamp0为排序后的协议数据时间戳的第一个时间戳,timestamp-2为第一时间戳集合中位于timestamp0之前的第2个时间戳;bit0为第一个协议数据位的值;
51、第一解析子单元,用于当bitk=0时,则协议数据位bitk中心边沿对应的时间戳为timestampk+1,此时,计算timestampk+2和timestampk+1的差值,记为第一差值,如果第一差值为tp/2,则bitk+1 = 0;如果第一差值为tp,则bitk+1 =1;
52、第二解析子单元,用于当bitk=1时,则协议数据位bitk中心边沿对应的时间戳为timestampk,此时,计算timestampk+1和timestampk的差值,记为第二差值,如果第二差值为tp/2,则bitk+1 = 0;如果第二差值为tp,则bitk+1 =1;其中,0≤k≤6,tp为脉冲宽度;
53、根据bit0到bit7的总和确定bit8的值,如果bit0到bit7的总和为偶数,则bit8=0,如果bit0到bit7的总和为奇数,则bit8=1。
54、协议数据位采用曼彻斯特编码(ieee 802.3),其编码规则为:位中间电平从低到高跳变表示“1”;位中间电平从高到低跳变表示“0”。再根据ak协议标准,速度脉冲的宽度为tp(标称值50us),速度脉冲的下降沿与第一个协议数据位码元宽度为tp/2,基于此,可以确定协议数据时间戳中的码元,并基于曼彻斯特编码规则以及速度脉冲的下降沿与第一个协议数据位码元宽度为tp/2,对各个协议数据位的值进行解析。
55、本发明实施例第三方面公开一种电子设备,包括:存储有可执行程序代码的存储器;与所述存储器耦合的处理器;所述处理器调用所述存储器中存储的所述可执行程序代码,用于执行本发明实施例第一方面公开的一种ak协议轮速传感器协议数据位解析方法。
56、本发明实施例第四方面公开一种计算机可读存储介质,其存储计算机程序,其中,所述计算机程序使得计算机执行本发明实施例第一方面公开的一种ak协议轮速传感器协议数据位解析方法。
57、本发明实施例第五方面公开一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本发明实施例第一方面公开的一种ak协议轮速传感器协议数据位解析方法。
58、本发明实施例第六方面公开一种应用发布平台,所述应用发布平台用于发布计算机程序产品,其中,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本发明实施例第一方面公开的一种ak协议轮速传感器协议数据位解析方法。
59、本发明实施例基于第一时间戳集合和第二时间戳集合提取协议数据时间戳,从而根据协议数据时间戳对协议数据位进行解析,获取各协议数据位的值,与现有技术相比,本发明实施例的有益效果在于:
60、1、不需要专用芯片对协议数据位进行解析,降低产品成本,保证供应链安全,提高了企业竞争力;
61、2、根据解析得到的各协议数据位的值,进而获取智能型轮速传感器的场幅大小、模式状态、方向信息、校验信息等。