CN115664574B - 一种基于车载以太网的分布式can记录仪互联方法及装置 - Google Patents
一种基于车载以太网的分布式can记录仪互联方法及装置 Download PDFInfo
- Publication number
- CN115664574B CN115664574B CN202211242515.3A CN202211242515A CN115664574B CN 115664574 B CN115664574 B CN 115664574B CN 202211242515 A CN202211242515 A CN 202211242515A CN 115664574 B CN115664574 B CN 115664574B
- Authority
- CN
- China
- Prior art keywords
- recorder
- slave
- host
- message
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Time Recorders, Dirve Recorders, Access Control (AREA)
Abstract
本申请实施例公开了一种基于车载以太网的分布式CAN记录仪互联方法及装置,通过CAN记录仪主机和CAN记录仪从机根据同步协议进行时间同步处理,以使CAN记录仪主机和CAN记录仪从机中对应的计数器时间戳一致;CAN记录仪主机和CAN记录仪从机分别通过各自的CAN收发器端口接收CAN数据;CAN记录仪主机通过以太网端口接收各个CAN记录仪从机发送的CAN数据报文,并按照时间序列将CAN数据报文进行存储;每隔预设时间间隔,重新进行CAN记录仪主机和CAN记录仪从机的时间同步处理,时间同步完成后按照新的同步时间戳接收CAN数据,并记录接收时刻的时间信息到对应的CAN数据报文中,能够解决车载以太网扩展CAN通道时灵活性较差的问题,提升车载以太网扩展CAN通道的灵活性。
Description
技术领域
本申请实施例涉及车载通信技术领域,尤其涉及一种基于车载以太网的分布式CAN记录仪互联方法及装置。
背景技术
随着科学技术的进步,汽车朝着智能化、自动化和无人化方面发展。现阶段,智能汽车的中的CAN记录仪能够记录对应的CAN报文数据,便于后续对CAN报文数据进行分析处理,获取对应的故障信息。
现有的车载以太网CAN记录仪采用高性能的FPGA芯片提供***时钟,各CAN通道采用此时间基准,采集CAN报文数据,标记上时间标识。
然而,现有的车载以太网的CAN记录仪,一旦硬件和软件上设计完成后,对应的CAN通道的最大数量也固定了,比如一个芯片仅支持8路CAN通道。当车载以太网***需要扩展更多的CAN通道时,则需要重新设计硬件和软件,灵活性较差。
发明内容
本申请实施例提供一种基于车载以太网的分布式CAN记录仪互联方法及装置,能够解决车载以太网扩展CAN通道时灵活性较差的问题,提升车载以太网扩展CAN通道的灵活性,以及节约成本投入。
在第一方面,本申请实施例提供了一种基于车载以太网的分布式CAN记录仪互联方法,应用于CAN记录仪,所述CAN记录仪包括ARM芯片模块和FPGA芯片模块,所述CAN记录仪包括CAN记录仪主机和CAN记录仪从机,包括:
CAN记录仪主机和CAN记录仪从机根据同步协议进行时间同步处理,以使所述CAN记录仪主机和所述CAN记录仪从机中对应的计数器时间戳一致;
所述CAN记录仪主机和所述CAN记录仪从机分别通过各自的CAN收发器端口接收CAN数据,并根据各自的计时器将接收到CAN数据时刻的时间信息记录在对应的CAN数据报文中;
所述CAN记录仪主机通过以太网端口接收各个所述CAN记录仪从机发送的CAN数据报文,并按照时间序列将所述CAN数据报文进行存储;
每隔预设时间间隔,重新进行所述CAN记录仪主机和所述CAN记录仪从机的时间同步处理,时间同步完成后按照新的同步时间戳接收CAN数据,并记录接收时刻的时间信息到对应的CAN数据报文中。
进一步的,所述CAN记录仪主机和所述CAN记录仪从机根据同步协议进行时间同步处理,以使所述CAN记录仪主机和所述CAN记录仪从机中对应的计数器时间戳一致,包括:
所述CAN记录仪主机和各个所述CAN记录仪从机进行报文交互,所述报文包括时间戳信息;
各个所述CAN记录仪从机根据对应报文的时间戳信息计算对应的时钟偏差值和传输延时值;
各个所述CAN记录仪从机根据对应的时钟偏差值和传输延时值修正自身的计时器时间戳,以使自身的计时器时间戳与所述CAN记录仪主机的计时器时间戳一致。
进一步的,所述CAN记录仪主机和各个所述CAN记录仪从机进行报文交互,包括:
所述CAN记录仪主机发送Sync同步报文给所述CAN记录仪从机,所述Sync同步报文携带发送所述Sync同步报文时的主机时间戳t1;
所述CAN记录仪从机接收到所述Sync同步报文时,获取所述主机时间戳t1,并记录接收到所述Sync同步报文时的从机时间戳t2;
所述CAN记录仪从机发送Delay_Req报文给所述CAN记录仪主机,所述Delay_Req报文携带发送所述Delay_Req报文时的从机时间戳t3;
所述CAN记录仪主机基于接收到的Delay_Req报文发送Delay_Resp报文给所述CAN记录仪从机,所述Delay_Resp报文携带发送所述Delay_Resp报文时主机时间戳t4。
进一步的,所述各个所述CAN记录仪从机根据对应报文的时间戳信息计算对应的时钟偏差值和传输延时值,包括:
根据公式Delay=(t2-t1)+(t4-t3)/2,计算得到所述时钟偏差值,其中Delay代表时钟偏差值;
根据公式Offset=(t2-t1)-(t4-t3)/2,计算得到所述传输延时值,其中Offset代表传输延时值。
进一步的,所述每隔预设时间间隔,重新进行所述CAN记录仪主机和所述CAN记录仪从机的时间同步处理,包括:
所述CAN记录仪主机根据预设时间间隔自动生成Sync同步报文,并将所述Sync同步报文写入高优先级发送缓冲区;
每隔预设时间间隔,所述CAN记录仪主机基于所述高优先级发送缓冲区发送所述Sync同步报文给所述CAN记录仪从机后,进行等待接收应答;
若主机等待超时,则继续发送所述Sync同步报文,直到接收到从机应答发送的Delay_Req报文。
进一步的,所述CAN记录仪主机和各个所述CAN记录仪从机进行报文交互,包括:
所述CAN记录仪主机和各个所述CAN记录仪从机通过以太网帧报文进行交互,其中,所述以太网帧报文的帧结构包括前导码、帧开始定界符、目的MAC、源MAC、协议类型、负荷和FCS。
在第二方面,本申请实施例提供了一种基于车载以太网的分布式CAN记录仪互联装置,包括:
包括CAN记录仪主机和至少一个CAN记录仪从机;
所述CAN记录仪主机包括ARM芯片模块和FPGA芯片模块,所述ARM芯片模块和FPGA芯片模块相连;
所述CAN记录仪主机通过FPGA芯片模块的车载以太网端口与所述CAN记录仪从机连接,以通过权利要求1-6任一所述的基于车载以太网的分布式CAN记录仪互联方法进行互联。
进一步的,所述CAN记录仪主机的FPGA芯片模块包括多个CAN收发器端口;
每一所述CAN记录仪从机包括多个CAN收发器端口;
所述CAN记录仪主机的FPGA芯片模块的车载以太网端口通过双绞线与每一所述CAN记录仪从机的车载以太网端口连接。
在第三方面,本申请实施例提供了一种基于车载以太网的分布式CAN记录仪互联设备,包括:
存储器以及一个或多个处理器;
所述存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的基于车载以太网的分布式CAN记录仪互联方法。
在第四方面,本申请实施例提供了一种存储计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的基于车载以太网的分布式CAN记录仪互联方法。
本申请实施例通过CAN记录仪主机和CAN记录仪从机根据同步协议进行时间同步处理,使得CAN记录仪主机和CAN记录仪从机的计时器时间戳一致,同步处理后,CAN记录仪主机和CAN记录仪从机分别通过各自的CAN收发器端口接收CAN数据,并根据各自的计时器将接收到CAN数据时刻的时间信息记录在对应的CAN数据报文中,CAN记录仪主机通过以太网端口接收各个CAN记录仪从机发送的CAN数据报文,并按照时间序列将CAN数据报文进行存储,每隔预设时间间隔,重新进行CAN记录仪主机和CAN记录仪从机的时间同步处理,时间同步完成后,按照新的同步时间戳接收CAN数据,并记录接收时刻的时间信息到对应的CAN数据报文中。采用上述技术手段,可以通过每隔预设时间间隔,重新进行CAN记录仪主机和CAN记录仪从机的时间同步处理,使得每隔预设时间间隔重新调整CAN记录仪主机和CAN记录仪从机的计时器时间戳一致,避免长时间不进行时间同步导致CAN记录仪主机和CAN记录仪从机的计时器时间戳存在偏差,从而可以保障时间同步后各自接收到CAN数据报文中的时间信息的可比性。此外,CAN记录仪主机通过以太网端口接收各个CAN记录仪从机发送的CAN数据报文,使得可以使用CAN记录仪从机的CAN收发器端口实现CAN通道的扩展,需要扩展多少CAN通道就对应互联多少个CAN记录仪从机即可,提高了车载以太网扩展CAN通道的灵活性,避免重新设计硬件和软件,从而实现节约成本投入。并且,CAN记录仪主机按照时间序列将CAN数据报文进行存储,使得后续对于CAN记录仪主机存储的CAN数据报文进行时间信息分析时,可以以相同时间戳为基准分析,在分析得到故障情况时,能够提高确定故障发生时间点的准确性。
附图说明
图1是本申请实施例提供的一种基于车载以太网的分布式CAN记录仪互联方法的流程图;
图2是本申请实施例提供的一种CAN记录仪的芯片结构示意图;
图3是本申请实施例提供的一种CAN记录仪主机和CAN记录仪从机连接示意图;
图4是本申请实施例提供的一种车载以太网通信连接过程流程图;
图5是本申请实施例提供的一种时间同步交互示意图;
图6是本申请实施例提供的一种以太网数据帧结构示意图;
图7是本申请实施例提供的一种CAN记录仪主机时间同步方法流程图;
图8是本申请实施例提供的一种CAN记录仪从机时间同步方法流程图;
图9是本申请实施例提供的一种MAC控制器IP核结构示意图;
图10是本申请实施例提供的一种车载以太网电路模型图;
图11是本申请实施例提供的一种基于车载以太网的分布式CAN记录仪互联设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
现有技术中,CAN记录仪一般只采用FPGA芯片,硬件和软件一旦设计完成,CAN通道的最大数量也是固定的,例如8路CAN通道。当***需要进行CAN通道的扩展时,则需要重新设计硬件和软件,灵活性较差。并且,由于多CAN通道端口,需要占用大量逻辑资源,而高性能和多资源的FPGA芯片,价格昂贵,所以直接在CAN记录仪的FPGA芯片上扩展设置更多的CAN通道端口,将要花费更大的成本投入。
本申请提供的基于车载以太网的分布式CAN记录仪互联方法及装置,旨在CAN记录仪扩展CAN通道时,通过每隔预设时间间隔重新进行CAN记录仪主机和CAN记录仪从机的时间同步处理,以重新调整CAN记录仪主机和CAN记录仪从机的计时器时间戳一致,避免长时间不进行时间同步导致CAN记录仪主机和CAN记录仪从机的计时器时间戳存在偏差,从而可以保障时间同步后各自接收到CAN数据报文中的时间信息的可比性。此外,CAN记录仪主机通过以太网端口接收各个CAN记录仪从机发送的CAN数据报文,并按照时间序列将CAN数据报文进行存储,使得后续对于CAN记录仪主机存储的CAN数据报文进行时间信息分析时,可以以相同时间戳为基准分析,在分析得到故障情况时,能够提高确定故障发生时间点的准确性。相对于传统的CAN记录仪扩展CAN通道方式,其通常需要重新设计硬件和软件,灵活性较差。基于此,提供本申请实施例的基于车载以太网的分布式CAN记录仪互联方法,以解决现有车载以太网扩展CAN通道时灵活性较差的问题。
图1给出了本申请实施例提供的一种基于车载以太网的分布式CAN记录仪互联方法的流程图,本实施例中提供的基于车载以太网的分布式CAN记录仪互联方法可以由基于车载以太网的分布式CAN记录仪互联设备执行,该基于车载以太网的分布式CAN记录仪互联设备可以通过软件和/或硬件的方式实现,该基于车载以太网的分布式CAN记录仪互联设备可以是两个或多个物理实体构成,也可以是一个物理实体构成。一般而言,该基于车载以太网的分布式CAN记录仪互联设备可以是车载以太网设备,如CAN记录仪等。
下述以CAN记录仪为执行基于车载以太网的分布式CAN记录仪互联方法的主体为例,进行描述。参照图1,该基于车载以太网的分布式CAN记录仪互联方法,应用于CAN记录仪,所述CAN记录仪包括ARM芯片模块和FPGA芯片模块,所述CAN记录仪包括CAN记录仪主机和CAN记录仪从机,具体包括:
S101、CAN记录仪主机和CAN记录仪从机根据同步协议进行时间同步处理,以使所述CAN记录仪主机和所述CAN记录仪从机中对应的计数器时间戳一致。
图2是本申请实施例提供的一种CAN记录仪的芯片结构示意图,参照图2,本实施例提供的CAN记录仪采用的是高性能的SOC芯片模块,该SOC芯片模块包括ARM芯片模块和FPGA芯片模块。CAN记录仪采用ARM芯片模块和FPGA芯片模块的结合方式,编写车载以太网MACFPGA IP核将时间同步功能所需的精确时间戳校时功能封装于底层FPGA中,上层协议的软件状态以及通信机制的实现,均在linux***应用中完成。如图2所示,FPGA芯片模块外扩8路CAN收发器端口,用于连接CAN总线,通过CAN总线进行CAN数据的收发。FPGA芯片模块用于对接收到CAN数据时,标记时间标识,形成CAN数据报文,并存储。根据FPGA芯片模块的资源可以根据需要设计成任意CAN通道(CAN收发器端口)数量的CAN记录仪产品。而随着新能源汽车的发展,需要记录仪支持的CAN通道的数量越来越多,当超过12路CAN通道以上时,则需要消耗大量的FPGA逻辑资源。而FPGA芯片随着逻辑资源数量的增加,价格也会越来越高,而且也越难购买。
因此,为了在实现CAN通道扩展的同时节约成本投入,本申请实施例提出一种由多台CAN记录仪进行互联,以扩展CAN通道的实施方式。多台CAN记录仪进行互联时,其中一台为CAN记录仪主机,其余的为CAN记录仪从机。图3是本申请实施例提供的一种CAN记录仪主机和CAN记录仪从机连接示意图,参照图3,CAN记录仪主机通过FPGA芯片模块的车载以太网端口与CAN记录仪从机连接。CAN记录仪主机的FPGA芯片模块包括多个CAN收发器端口,每一CAN记录仪从机包括多个CAN收发器端口,CAN记录仪主机的FPGA芯片模块的车载以太网端口通过双绞线与每一CAN记录仪从机的车载以太网端口连接,通过CAN记录仪主机和CAN记录仪从机进行时间同步处理,即可以CAN记录仪主机和CAN记录仪从机中对应的计数器时间戳一致,从而实现使得相同时刻CAN记录仪主机和CAN记录仪从机接收到的CAN数据对应的记录的时间信息是一致的,因而可以通过多台CAN记录仪同时进行CAN数据的收发,进而实现了CAN通道的拓展。
CAN记录仪主机的FPGA芯片模块的车载以太网端口通过双绞线与每一CAN记录仪从机的车载以太网端口进行物理连接后,为了实现了CAN记录仪主机和CAN记录仪从机的时间同步,则需要进行CAN记录仪主机和CAN记录仪从机的通信连接。图4是本申请实施例提供的一种车载以太网通信连接过程流程图,参照图4,S1011、禁止发送。在建立通信连接之前,连接状态位必须设置为1,CAN记录仪主机和CAN记录仪从机之间禁止发送报文数据。S1012、从机静默。多机通信方式有2种:空闲帧唤醒和地址唤醒。其中空闲帧唤醒可以同时唤醒所有从机,在从机处于静默模式时发送空闲帧(即所有位均为1的数据),唤醒多个从机,实现多个从机同步。因此,当CAN记录仪从机处于静默模式时,主机状态配置完成。S1013、训练状态。CAN记录仪主机通过发送空闲序列开始CAN记录仪主机的训练过程,一旦CAN记录仪从机(接收端)同步了空闲序列,CAN记录仪从机也进入训练状态并发送空闲序列。S1014、发送空闲报文。当最小等待时间定时器溢出后,CAN记录仪从机进入“发送空闲报文”状态。S1015、发送空闲报文或数据。当CAN记录仪主机接收到从属的空闲序列并完成同步后,进入“发送空闲报文或数据”状态。在CAN记录仪从机检测到CAN记录仪主机的状态变化后进入相同的状态,则双向数据连接建立成功,可以开始通信。示例性的,进入训练状态后,若最小等待时间定时器计时完成,CAN记录仪主机的rem(睡眠)接收状态完成,则CAN记录仪主机进入发送“发送空闲报文或数据”状态。若最小等待时间定时器计时完成,CAN记录仪从机的rem接收状态未完成,则CAN记录仪从机进入发送“发送空闲报文”状态。若最小等待时间定时器计时完成,CAN记录仪主机的LOC接收状态完成,则CAN记录仪主机发送“发送空闲报文或数据”给对应的CAN记录仪从机。若此时CAN记录仪从机在最小等待时间定时器计时完成,处于LOC接收状态完成,rem接收状态未完成,则CAN记录仪从机发送空闲报文给CAN记录仪主机,直至CAN记录仪从机和CAN记录仪主机进入相同状态后,完成CAN记录仪从机和CAN记录仪主机的通信连接,可以开始通信。此外,若最小等待时间定时器完成,CAN记录仪从机和CAN记录仪主机的LOC接收状态均未完成,则重新从步骤S1012的从机静默状态开始进行通信连接训练过程。通过上述通信连接训练过程,可以实现CAN记录仪主机与至少一个CAN记录仪从机的通信连接,实现多机通信,从而使得后续可以使用多个CAN记录仪进行统一接收CAN数据,实现CAN通道的有效扩展。
通过上述建立通信连接的方式,实现CAN记录仪主机和CAN记录仪从机的通信连接后,为实现CAN记录仪主机和CAN记录仪从机接收到CAN数据时,能够实现相当于一台CAN记录仪进行CAN数据接收和记录的效果,则需要将CAN记录仪主机和CAN记录仪从机进行时间同步。CAN记录仪主机和CAN记录仪从机根据同步协议进行时间同步处理,以使CAN记录仪主机和CAN记录仪从机中对应的计数器时间戳一致。CAN记录仪主机和各个CAN记录仪从机进行报文交互,所述报文包括时间戳信息;各个CAN记录仪从机根据对应报文的时间戳信息计算对应的时钟偏差值和传输延时值。各个CAN记录仪从机根据对应的时钟偏差值和传输延时值修正自身的计时器时间戳,以使自身的计时器时间戳与CAN记录仪主机的计时器时间戳一致。
图5是本申请实施例提供的一种时间同步交互示意图,参照图5,CAN记录仪主机发送Sync同步报文给CAN记录仪从机,该Sync同步报文携带发送该Sync同步报文时的主机时间戳t1。CAN记录仪从机接收到该Sync同步报文时,获取主机时间戳t1,并记录接收到该Sync同步报文时的从机时间戳t2。CAN记录仪从机发送Delay_Req报文给CAN记录仪主机,该Delay_Req报文携带发送该Delay_Req报文时的从机时间戳t3。CAN记录仪主机基于接收到的Delay_Req报文发送Delay_Resp报文给CAN记录仪从机,该Delay_Resp报文携带发送该Delay_Resp报文时主机时间戳t4。根据公式Delay=(t2-t1)+(t4-t3)/2,计算得到时钟偏差值,其中Delay代表时钟偏差值;根据公式Offset=(t2-t1)-(t4-t3)/2,计算得到传输延时值,其中Offset代表传输延时值。CAN记录仪从机得到时钟偏差值Delay和传输延时值Offset后,即可以根据时钟偏差值Delay和传输延时值Offset修正本地时钟,使得与CAN记录仪主机实现时间同步。通过CAN记录仪主机和CAN记录仪从机的时间同步,是可以提高数据互传的传输效率,在两者的时间同步后,提高CAN记录仪主机和CAN记录仪从机接收到CAN数据的实时性和扩展性。
在一实施例中,图6是本申请实施例提供的一种以太网数据帧结构示意图,参照图6,CAN记录仪主机和各个CAN记录仪从机通过以太网帧报文进行交互,其中,以太网帧报文的帧结构包括前导码、帧开始定界符、目的MAC、源MAC、协议类型、负荷和FCS。以太网帧报文的帧结构前后均包括有帧间隙。为了区分IP和ARP等以前以太网中已定义的协议类型,协议中定义了0X1010为级联通信的协议类型。其中负荷数据帧包括帧标志和64bit时间戳。时间戳统一在帧开始定界符时采样记录。数据中使用1字节数据作为同步帧的标志,用于区分Sync、Delay_Req和Delay_Resp三种时间同步数据帧,例如,帧标志为SYNC,标志值为0x01在,帧标志为DELAY_REQ,标志值为0x02,帧标志为DELAY_RESP,标志值为0x03。Sync和Delay_Resp这两种帧的帧标志后携带8字节的时间戳数据。
示例性的,经过上述时间同步处理之后,当需要用到20路CAN通道来记录一辆汽车的CAN数据时,而且要求记录时每个CAN收发器端口记录的CAN报文时间戳同步。此时,一台CAN记录仪最多只有8路CAN通道(如图1),这是可以将3台CAN记录仪通过车载以太网进行连接,如图2所示,形成一台CAN记录仪主机连接两台CAN记录仪从机,设置完时间同步后,即可以满足要求记录20路CAN数据。3台CAN记录仪的时间戳由于进行了时间同步处理,精度达到了微妙级别,相当于三台CAN记录仪作为整体的一台设备进行使用,实现了CAN通道的有效扩展,提高了车载以太网扩展CAN通道的灵活性,避免重新设计硬件和软件,从而节约成本投入。
S102、所述CAN记录仪主机和所述CAN记录仪从机分别通过各自的CAN收发器端口接收CAN数据,并根据各自的计时器将接收到CAN数据时刻的时间信息记录在对应的CAN数据报文中。
首次时间同步完成后,可以使用CAN记录仪主机和CAN记录仪从机同时进行CAN数据的收发。CAN记录仪主机和CAN记录仪从机分别通过各自的CAN收发器端口接收CAN数据,并根据各自的计时器将接收到CAN数据时刻的时间信息记录在对应的CAN数据报文中。通过时间同步之后,同一时间CAN记录仪主机和CAN记录仪从机分别接收到的CAN数据对应的CAN数据报文中的时间信息一致,使得后续对CAN数据进行分析时,能够基于相同时间戳的基础上进行分析,提高了CAN数据时间性分析的准确性。
示例性的,同一时间CAN记录仪主机接收到CAN数据A,CAN记录仪从机1接收到CAN数据B,则CAN记录仪主机记录CAN数据A对应的时间信息与CAN记录仪从机1记录CAN数据B时间信息相同。CAN记录仪主机记录CAN数据A对应的时间信息并形成CAN数据报文a,并存储在CAN记录仪主机对应的存储模块中。CAN记录仪从机1记录CAN数据B时间信息并形成CAN数据报文b,并存储在CAN记录仪从机1中对应的存储模块中。
S103、所述CAN记录仪主机通过以太网端口接收各个所述CAN记录仪从机发送的CAN数据报文,并按照时间序列将所述CAN数据报文进行存储。
基于CAN记录仪主机与各个CAN记录仪从机通过以太网端口实现了连接,因此两者可以进行信息的交互。CAN记录仪主机通过以太网端口接收各个CAN记录仪从机发送的CAN数据报文,并按照时间序列将CAN数据报文进行存储。基于CAN记录仪主机也将自身接收到CAN数据,并根据计时器将接收到CAN数据时刻的时间信息记录在对应的CAN数据报文中,并存储对应的CAN数据报文。因而,在接收到CAN记录仪从机发送的CAN数据报文,CAN记录仪主机结合自身存储的CAN数据报文,将所有的CAN数据报文按照时间序列进行排列并存储在对应的文件夹中。通过CAN记录仪主机对自身存储的CAN数据报文和CAN记录仪从机的存储的CAN数据报文进行综合排序存储,实现对扩展CAN通道获取的时间同步的CAN数据报文进行汇总存储,使得后续对于CAN记录仪主机存储的CAN数据报文进行时间信息分析时,可以以相同时间戳为基准分析,在分析得到故障情况时,能够提高确定故障发生时间点的准确性。
S104、每隔预设时间间隔,重新进行所述CAN记录仪主机和所述CAN记录仪从机的时间同步处理,时间同步完成后按照新的同步时间戳接收CAN数据,并记录接收时刻的时间信息到对应的CAN数据报文中。
在首次进行CAN记录仪主机和CAN记录仪从机的时间同步后,基于每台CAN记录仪的计时器的生产工艺不同,时间同步后运行一段时间,每台CAN记录仪的计时器的误差都不相同,因而,需要每隔预设时间间隔重新进行一次CAN记录仪主机和CAN记录仪从机的时间同步处理,以不断进行时间同步,使得CAN记录仪主机和CAN记录仪从机中对应的计数器时间戳一致,以减少CAN记录仪主机和CAN记录仪从机中对应的计数器时间戳的误差,从而提高了得到CAN数据对应的时间参照基准一致性。每隔预设时间间隔,重新进行CAN记录仪主机和所述CAN记录仪从机的时间同步处理,时间同步完成后按照新的同步时间戳接收CAN数据,并记录接收时刻的时间信息到对应的CAN数据报文中。需要说明的是,新一轮的时间同步处理完成之前,按照之前的同步时间戳记录接收CAN数据的时间信息,新一轮的时间同步处理完成后,新接收到的CAN数据按照新的同步时间戳记录接收CAN数据的时间信息。
在一实施例中,图7是本申请实施例提供的一种CAN记录仪主机时间同步方法流程图,参照图7,应用于CAN记录仪主机,该CAN记录仪主机时间同步方法包括:S1041、初始化级联主机。CAN记录仪主机上电后,根据配置信息初始化CAN记录仪主机。S1042、进入级联主机工作状态。CAN记录仪主机中的同步校时处理模块进入同步主机工作状态。S1043、构造Sync报文。根据配置信息的周期,每个预设时间间隔,CAN记录仪主机主动构造Sync报文。S1044、Sync报文写入到高优先级发送缓冲区。S1045、发送Sync报文。每隔预设时间间隔,CAN记录仪主机基于高优先级发送缓冲区发送该Sync报文给CAN记录仪从机。S1046、等待接收Delay_Req报文。CAN记录仪主机发送Sync报文给CAN记录仪从机后,进行等待接收应答。若主机等待超时,则继续发送所述Sync报文,直到接收到从机应答发送的Delay_Req报文。S1047、接收报文写入接收缓冲区。MII接收处理模块将接收到的车载以太网报文保存到接收缓冲区。S1048、记录报文达到时间并解析报文。记录接收报文时的时间戳,并对报文进行解析。S1049、判断是否是Delay_Req报文。接收报文过程中通过判断以太网帧协议是否是0x1010判断报文是否为时间同步报文,若是时间同步报文,则通知同步校时处理模块处理,CAN记录仪主机的同步校时处理模块判断该报文是否为Delay_Req报文。若不是时间同步报文,则重新执行步骤S1046-S1048,直至得到接收到的报文为Delay_Req报文。S1050、获取当前时间构造Delay_Resq报文。若判断接收到的报文为Delay_Req报文,则获取当前时间戳,并构造Delay_Resq报文。S1051、Delay_Resq报文写入高优先级缓冲区。S1052、发送Delay_Resq报文。S1053、等待同步周期。CAN记录仪主机发送Delay_Resq报文后,完成一次CAN记录仪主机时间同步工作。
在一实施例中,图8是本申请实施例提供的一种CAN记录仪从机时间同步方法流程图,参照图8,用于CAN记录仪从机,该CAN记录仪从机时间同步方法包括:S1060、初始化级联从机。CAN记录仪从机上电后,根据配置参数初始化同步从机。S1061、进入级联从机工作状态。CAN记录仪从机的同步校时处理模块进入同步从机工作状态。S1062、等待接收报文。CAN记录仪从机等待接收Sync报文。S1063、接收报文写入接收缓冲区。CAN记录仪从机将接收到的报文写入接收缓冲区。S1064、记录报文达到时间并解析报文。S1065、判断是否是Sync报文。若判断不是Sync报文,则继续重复步骤S1063-S1064直到得到Sync报文。若判断是Sync报文,则进一步解析出Sync报文中携带的主机时间戳t1,并记录下当前接收到Sync报文时刻的时间作为从机时间戳t2。S1066、构造Delay_Req报文。基于对接收到报文解析后,CAN记录仪从机构造Delay_Req报文。S1067、Delay_Req报文写入高优先级发送缓冲区。S1068、发送Delay_Req报文。基于CAN记录仪从机的高优先级发送缓冲区发送Delay_Req报文,并记录发送Delay_Req报文时的从机时间戳t3。S1069、等待接收报文。CAN记录仪从机发送Delay_Req报文给CAN记录仪主机后,等待CAN记录仪主机发送回来的Delay_Resp报文。S1070、接收报文写入接收缓冲区。CAN记录仪从机将接收到的报文写入接收缓冲区,以便于后续对接收缓冲区的报文进行解析。S1071、记录报文达到时间并解析报文。对应缓存在接收缓存区的报文进行解析,以筛选出对应的Delay_Resp报文。S1072、判断是否是Delay_Resp报文。若不是,则重复步骤S1069-S1071,直至得到Delay_Resp报文。若判断接收到的报文为Delay_Resp报文,则解析Delay_Resp报文得到主机时间戳t4。S1073、计算时钟偏差用于时钟同步。通过得到的四个时间戳t1、t2、t3和t4进行计算得到主从时钟偏差值和传输延时值,使用这两个参数完成CAN记录仪从机的时间同步。
上述,通过CAN记录仪主机和CAN记录仪从机根据同步协议进行时间同步处理,使得CAN记录仪主机和CAN记录仪从机的计时器时间戳一致,同步处理后,CAN记录仪主机和CAN记录仪从机分别通过各自的CAN收发器端口接收CAN数据,并根据各自的计时器将接收到CAN数据时刻的时间信息记录在对应的CAN数据报文中,CAN记录仪主机通过以太网端口接收各个CAN记录仪从机发送的CAN数据报文,并按照时间序列将CAN数据报文进行存储,每隔预设时间间隔,重新进行CAN记录仪主机和CAN记录仪从机的时间同步处理,时间同步完成后,按照新的同步时间戳接收CAN数据,并记录接收时刻的时间信息到对应的CAN数据报文中。采用上述技术手段,可以通过每隔预设时间间隔,重新进行CAN记录仪主机和CAN记录仪从机的时间同步处理,使得每隔预设时间间隔重新调整CAN记录仪主机和CAN记录仪从机的计时器时间戳一致,避免长时间不进行时间同步导致CAN记录仪主机和CAN记录仪从机的计时器时间戳存在偏差,从而可以保障时间同步后各自接收到CAN数据报文中的时间信息的可比性。此外,CAN记录仪主机通过以太网端口接收各个CAN记录仪从机发送的CAN数据报文,使得可以使用CAN记录仪从机的CAN收发器端口实现CAN通道的扩展,需要扩展多少CAN通道就对应互联多少个CAN记录仪从机即可,提高了车载以太网扩展CAN通道的灵活性,避免重新设计硬件和软件,从而实现节约成本投入。并且,CAN记录仪主机按照时间序列将CAN数据报文进行存储,使得后续对于CAN记录仪主机存储的CAN数据报文进行时间信息分析时,可以以相同时间戳为基准分析,在分析得到故障情况时,能够提高确定故障发生时间点的准确性。
在上述实施例的基础上,图2是本申请实施例提供的一种CAN记录仪的芯片结构示意图,图3为本申请实施例提供的一种CAN记录仪主机和CAN记录仪从机连接示意图。参考图2和图3,本实施例提供的基于车载以太网的分布式CAN记录仪互联装置具体包括:CAN记录仪主机和至少一个CAN记录仪从机。CAN记录仪主机包括ARM芯片模块和FPGA芯片模块,ARM芯片模块和FPGA芯片模块相连。CAN记录仪主机通过FPGA芯片模块的车载以太网端口与所述CAN记录仪从机连接,以通过上述基于车载以太网的分布式CAN记录仪互联方法进行互联。CAN记录仪主机的FPGA芯片模块包括多个CAN收发器端口。每一CAN记录仪从机包括多个CAN收发器端口。示例性的,CAN记录仪主机的FPGA芯片模块的车载以太网端口通过双绞线与每一所述CAN记录仪从机的车载以太网端口连接。当需要用到20路CAN通道来记录一辆汽车的CAN数据时,而且要求记录时每个CAN收发器端口记录的CAN报文时间戳同步。此时,一台CAN记录仪最多只有8路CAN通道(如图1),这是可以将3台CAN记录仪通过车载以太网进行连接,如图2所示,形成一台CAN记录仪主机连接两台CAN记录仪从机,其中CAN记录仪主机有8路CAN通道(0-7),CAN记录仪从机1设置有6路CAN通道(8-13),CAN记录仪从机2设置有4路CAN通道(14-17),因此3台CAN记录仪构成20路CAN通道。设置完时间同步后,即可以满足要求记录20路CAN数据。3台CAN记录仪的时间戳由于进行了时间同步处理,精度达到了微妙级别,相当于三台CAN记录仪作为整体的一台设备进行使用,实现了CAN通道的有效扩展,提高了车载以太网扩展CAN通道的灵活性,避免重新设计硬件和软件,从而节约成本投入。
在一实施例中,现有的纯ARM芯片实现PTP校时,时间计时器完全依赖于ARM处理器,计时的精度和计时器的位数不能调节。此外,运用纯ARM芯片实现PTP校时,没有为临时跳频功能设计相关寄存器,无法微调时间偏差(临时调频功能集成在很多支持PTP的芯片中)。在时间为基础的触发模式中,如果不能实现频率调整和临时频率调整来校正时间,简单的相位调整可能会错过触发事件。本申请实施例提供的基于车载以太网的分布式CAN记录仪互联装置中的CAN记录仪运用了ARM芯片模块和FPGA芯片模块结合而成的异构芯片。该异构芯片包括ARM芯片模块和FPGA芯片模块,其中ARM芯片模块通过AXI总线与FPGA芯片模块连接。ARM芯片模块设置有BANK 0单元、PS_MIO_500单元、PS_DDR_502单元以及PS_MIO_501单元。FPGA芯片模块设置有HR BANK 13单元、HR_BANK 34单元、PTP单元以及BANK 31单元,其中,HR BANK 13单元包括至少一路CAN收发器端口(CAN通道),例如图2中设置8路的CAN收发器端口。HR_BANK 34单元包括至少一个车载以太网端口,例如图2中设置有2个车载以太网端口TJA1100。PTP单元
其中,PTP单元包括车载以太网MAC控制器IP核。图9是本申请实施例提供的一种MAC控制器IP核结构示意图,参照图9,MAC控制器IP核包括AXI接口模块、DMA读模块、DMA写模块、同步校时处理模块、低优先级发送缓冲区、高优先级发送缓冲区、接收缓冲器、MII发送处理模块、MII接收处理模块和MDIO处理模块。MDIO处理模块通过MDIO总线与车载以太网PHY芯片连接,用于和车载以太网PHY芯片进行通信。MDIO处理模块还与AXI接口模块连接,其中MDIO处理模块用于实现MDIO通讯,配置车载以太网PHY和获取PHY的状态。AXI接口模块通过AXI总线与ARM芯片模块连接,AXI总线接口用于与PS端ARM芯片模块进行通讯和访问DDR。AXI接口模块还与DMA读模块、DMA写模块以及同步校时处理模块连接。AXI接口模块用于实现AXI总线通讯,与PS端RAM进行数据交互和读写DDR。DMA读模块与低优先级发送缓区连接,DMA读模块用于自动读取DDR中的车载以太网帧数据保存到低优先级发送缓冲区等待发送。同步校时处理模块与高优先级发送缓冲区连接,同步校时处理模块用于处理同步校时的相关工作,需要发送同步相关的报文时,根据要发送的同步报文类型自动生成对应的同步报文数据保存到高优先级发送缓冲区进行报文发送。低优先级发送缓冲区和高优先级发送缓冲区均与MII发送处理模块连接,MII发送处理模块通过MII总线与车载以太网PHY芯片连接,MII发送处理模块用于将发送缓冲区的数据按照MII接口时序进行发送,发送时会优先发送高优先级发送缓冲区的数据。MII接收处理模块通过MII总线与车载以太网PHY芯片连接,并与接收缓冲区以及同步校时处理块连接,接收缓冲区与DMA写模块连接,MDA写模块与AXI接口模块连接。MII接收处理模块用于对MII接口的数据进行组包成车载以太网帧,解析校验帧是否正常,解析到是时间同步报文时,将报文提交给同步校时处理模块进行处理。其他车载以太网帧将保存到接收缓冲区。通过DMA写模块自动写到DDR中,让ARM读取利用。通过将车载以太网MAC控制器IP核应用于本申请实施例的CAN记录仪中的ARM+FPGA的异构芯片中,实现兼容不支持硬件时间戳获取功能的网络化测试设备。
通过车载以太网MAC控制器IP核独立于通信链路,调试过程实现了功能模块的分离,使得移植过程更为简单通用。车载以太网MAC控制器IP核通过IP核形式的逻辑设计可以应用于任何可编程逻辑器件。此外,不同于以往的解析报文、获取时间戳的黑河状态,本申请实施例提供的技术方案可以更加便捷地扩展IP核功能,硬件解析数据流可以为更多有实时性要求的应用带来便利。本申请实施例提供的ARM+FPGA硬件架构实现了网络分布式时钟的高精度同步。
在一实施例中,车载以太网端口通过双绞线传输,大大减轻了线缆重量。图10是本申请实施例提供的一种车载以太网电路模型图,参照图10,CAN记录仪主机的车载以太网端口TJA1100通过如图10所述的双绞线与CAN记录仪从机的车载以太网端口连接。随着先进辅助驾驶和信息娱乐***的不断优化,以及自动化驾驶和车联网的快速发展,对车载以太网提出了更高的要求,主要包括传输速度、传输带宽、标准化、可扩展性和兼容性等方面的要求,车载以太网使汽车应用逐渐从封闭***转换为开放和可扩展的网络成为可能。借助车载以太网的优势,不仅可以整合车内的环境结构,还可以让不同模块之间的协调更强。
上述,采用高性能SOC芯片,带有ARM芯片模块和FPGA芯片模块,同类型设备可以直接进行时间同步,灵活使用,实现了根据CAN通道数量的需求组合各种CAN通道。为了降低线缆重量,采用车载以外网双绞线,仅仅占用两根差分线,并且无需屏蔽层,大大节省了布局布线空间。采用FPGA芯片模块实现时间戳模块的功能,利用PTP(Precision TimeProtocol)时间同步,保证各CAN记录仪具有一个准确的触发时刻,即***中作为分布式时钟存在的设备间保持高精度同步(微秒级),在各分布式CAN记录仪设备的传输数据中加入数据采集的准确时间戳,可以克服数据传输链路的不确定性,满足CAN报文分析时,对各分布式测试设备(CAN记录仪)采集数据具有关联性的需求,提高了分布式时钟的准确定,为网络化测试***的基本需求和重要保障,从而保证在***中传输的数据是可控且有序的。
上述,通过CAN记录仪主机和CAN记录仪从机根据同步协议进行时间同步处理,使得CAN记录仪主机和CAN记录仪从机的计时器时间戳一致,同步处理后,CAN记录仪主机和CAN记录仪从机分别通过各自的CAN收发器端口接收CAN数据,并根据各自的计时器将接收到CAN数据时刻的时间信息记录在对应的CAN数据报文中,CAN记录仪主机通过以太网端口接收各个CAN记录仪从机发送的CAN数据报文,并按照时间序列将CAN数据报文进行存储,每隔预设时间间隔,重新进行CAN记录仪主机和CAN记录仪从机的时间同步处理,时间同步完成后,按照新的同步时间戳接收CAN数据,并记录接收时刻的时间信息到对应的CAN数据报文中。采用上述技术手段,可以通过每隔预设时间间隔,重新进行CAN记录仪主机和CAN记录仪从机的时间同步处理,使得每隔预设时间间隔重新调整CAN记录仪主机和CAN记录仪从机的计时器时间戳一致,避免长时间不进行时间同步导致CAN记录仪主机和CAN记录仪从机的计时器时间戳存在偏差,从而可以保障时间同步后各自接收到CAN数据报文中的时间信息的可比性。此外,CAN记录仪主机通过以太网端口接收各个CAN记录仪从机发送的CAN数据报文,使得可以使用CAN记录仪从机的CAN收发器端口实现CAN通道的扩展,需要扩展多少CAN通道就对应互联多少个CAN记录仪从机即可,提高了车载以太网扩展CAN通道的灵活性,避免重新设计硬件和软件,从而实现节约成本投入。并且,CAN记录仪主机按照时间序列将CAN数据报文进行存储,使得后续对于CAN记录仪主机存储的CAN数据报文进行时间信息分析时,可以以相同时间戳为基准分析,在分析得到故障情况时,能够提高确定故障发生时间点的准确性。
本申请实施例提供的基于车载以太网的分布式CAN记录仪互联装置可以用于执行上述实施例提供的基于车载以太网的分布式CAN记录仪互联方法,具备相应的功能和有益效果。
本申请实施例提供了一种基于车载以太网的分布式CAN记录仪互联设备,参照图11,该基于车载以太网的分布式CAN记录仪互联设备包括:处理器31、存储器32、通信模块33、输入装置34及输出装置35。该基于车载以太网的分布式CAN记录仪互联设备中处理器的数量可以是一个或者多个,该基于车载以太网的分布式CAN记录仪互联设备中的存储器的数量可以是一个或者多个。该基于车载以太网的分布式CAN记录仪互联设备的处理器、存储器、通信模块、输入装置及输出装置可以通过总线或者其他方式连接。
存储器32作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请任意实施例所述的基于车载以太网的分布式CAN记录仪互联方法对应的程序指令/模块(例如,基于车载以太网的分布式ARM芯片模块和FPGA芯片模块)。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
通信模块33用于进行数据传输。
处理器31通过运行存储在存储器中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的基于车载以太网的分布式CAN记录仪互联方法。
输入装置34可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置35可包括显示屏等显示设备。
上述提供的基于车载以太网的分布式CAN记录仪互联设备可用于执行上述实施例提供的基于车载以太网的分布式CAN记录仪互联方法,具备相应的功能和有益效果。
本申请实施例还提供一种存储计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种基于车载以太网的分布式CAN记录仪互联方法,该基于车载以太网的分布式CAN记录仪互联方法包括:CAN记录仪主机和CAN记录仪从机根据同步协议进行时间同步处理,以使所述CAN记录仪主机和所述CAN记录仪从机中对应的计数器时间戳一致;所述CAN记录仪主机和所述CAN记录仪从机分别通过各自的CAN收发器端口接收CAN数据,并根据各自的计时器将接收到CAN数据时刻的时间信息记录在对应的CAN数据报文中;所述CAN记录仪主机通过以太网端口接收各个所述CAN记录仪从机发送的CAN数据报文,并按照时间序列将所述CAN数据报文进行存储;每隔预设时间间隔,重新进行所述CAN记录仪主机和所述CAN记录仪从机的时间同步处理,时间同步完成后按照新的同步时间戳接收CAN数据,并记录接收时刻的时间信息到对应的CAN数据报文中。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机***存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机***中,或者可以位于不同的第二计算机***中,第二计算机***通过网络(诸如因特网)连接到第一计算机***。第二计算机***可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括驻留在不同位置中(例如在通过网络连接的不同计算机***中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本申请实施例所提供的一种存储计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的基于车载以太网的分布式CAN记录仪互联方法,还可以执行本申请任意实施例所提供的基于车载以太网的分布式CAN记录仪互联方法中的相关操作。
上述实施例中提供的基于车载以太网的分布式CAN记录仪互联装置、存储介质及基于车载以太网的分布式CAN记录仪互联设备可执行本申请任意实施例所提供的基于车载以太网的分布式CAN记录仪互联方法,未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的基于车载以太网的分布式CAN记录仪互联方法。
上述仅为本申请的较佳实施例及所运用的技术原理。本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行的各种明显变化、重新调整及替代均不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由权利要求的范围决定。
Claims (10)
1.一种基于车载以太网的分布式CAN记录仪互联方法,应用于CAN记录仪,所述CAN记录仪包括ARM芯片模块和FPGA芯片模块,所述CAN记录仪包括CAN记录仪主机和CAN记录仪从机,其特征在于,所述ARM芯片模块和FPGA芯片模块相连,所述CAN记录仪主机的FPGA芯片模块的车载以太网端口通过双绞线与每一所述CAN记录仪从机的车载以太网端口连接,所述方法包括:
CAN记录仪主机和CAN记录仪从机根据同步协议进行时间同步处理,以使所述CAN记录仪主机和所述CAN记录仪从机中对应的计数器时间戳一致;
所述CAN记录仪主机和所述CAN记录仪从机分别通过各自的CAN收发器端口接收CAN数据,并根据各自的计时器将接收到CAN数据时刻的时间信息记录在对应的CAN数据报文中;
所述CAN记录仪主机通过以太网端口接收各个所述CAN记录仪从机发送的CAN数据报文,并按照时间序列将所述CAN数据报文进行存储;
每隔预设时间间隔,重新进行所述CAN记录仪主机和所述CAN记录仪从机的时间同步处理,时间同步完成后按照新的同步时间戳接收CAN数据,并记录接收时刻的时间信息到对应的CAN数据报文中。
2.根据权利要求1所述的方法,其特征在于,所述CAN记录仪主机和所述CAN记录仪从机根据同步协议进行时间同步处理,以使所述CAN记录仪主机和所述CAN记录仪从机中对应的计数器时间戳一致,包括:
所述CAN记录仪主机和各个所述CAN记录仪从机进行报文交互,所述报文包括时间戳信息;
各个所述CAN记录仪从机根据对应报文的时间戳信息计算对应的时钟偏差值和传输延时值;
各个所述CAN记录仪从机根据对应的时钟偏差值和传输延时值修正自身的计时器时间戳,以使自身的计时器时间戳与所述CAN记录仪主机的计时器时间戳一致。
3.根据权利要求2所述的方法,其特征在于,所述CAN记录仪主机和各个所述CAN记录仪从机进行报文交互,包括:
所述CAN记录仪主机发送Sync同步报文给所述CAN记录仪从机,所述Sync同步报文携带发送所述Sync同步报文时的主机时间戳t1;
所述CAN记录仪从机接收到所述Sync同步报文时,获取所述主机时间戳t1,并记录接收到所述Sync同步报文时的从机时间戳t2;
所述CAN记录仪从机发送Delay_Req报文给所述CAN记录仪主机,所述Delay_Req报文携带发送所述Delay_Req报文时的从机时间戳t3;
所述CAN记录仪主机基于接收到的Delay_Req报文发送Delay_Resp报文给所述CAN记录仪从机,所述Delay_Resp报文携带发送所述Delay_Resp报文时主机时间戳t4。
4.根据权利要求3所述的方法,其特征在于,所述各个所述CAN记录仪从机根据对应报文的时间戳信息计算对应的时钟偏差值和传输延时值,包括:
根据公式Delay=(t2-t1)+(t4-t3)/2,计算得到所述时钟偏差值,其中Delay代表时钟偏差值;
根据公式Offset=(t2-t1)-(t4-t3)/2,计算得到所述传输延时值,其中Offset代表传输延时值。
5.根据权利要求1所述的方法,其特征在于,所述每隔预设时间间隔,重新进行所述CAN记录仪主机和所述CAN记录仪从机的时间同步处理,包括:
所述CAN记录仪主机根据预设时间间隔自动生成Sync同步报文,并将所述Sync同步报文写入高优先级发送缓冲区;
每隔预设时间间隔,所述CAN记录仪主机基于所述高优先级发送缓冲区发送所述Sync同步报文给所述CAN记录仪从机后,进行等待接收应答;
若主机等待超时,则继续发送所述Sync同步报文,直到接收到从机应答发送的Delay_Req报文。
6.根据权利要求2所述的方法,其特征在于,所述CAN记录仪主机和各个所述CAN记录仪从机进行报文交互,包括:
所述CAN记录仪主机和各个所述CAN记录仪从机通过以太网帧报文进行交互,其中,所述以太网帧报文的帧结构包括前导码、帧开始定界符、目的MAC、源MAC、协议类型、负荷和FCS。
7.一种基于车载以太网的分布式CAN记录仪互联装置,其特征在于,包括CAN记录仪主机和至少一个CAN记录仪从机;
所述CAN记录仪主机包括ARM芯片模块和FPGA芯片模块,所述ARM芯片模块和FPGA芯片模块相连;
所述CAN记录仪主机通过FPGA芯片模块的车载以太网端口与所述CAN记录仪从机连接,以通过权利要求1-6任一所述的基于车载以太网的分布式CAN记录仪互联方法进行互联。
8.根据权利要求7所述的装置,其特征在于,包括:
所述CAN记录仪主机的FPGA芯片模块包括多个CAN收发器端口;
每一所述CAN记录仪从机包括多个CAN收发器端口;
所述CAN记录仪主机的FPGA芯片模块的车载以太网端口通过双绞线与每一所述CAN记录仪从机的车载以太网端口连接。
9.一种基于车载以太网的分布式CAN记录仪互联设备,其特征在于,包括:
存储器以及一个或多个处理器;
所述存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6任一所述的方法。
10.一种存储计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由处理器执行时用于执行如权利要求1-6任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211242515.3A CN115664574B (zh) | 2022-10-11 | 2022-10-11 | 一种基于车载以太网的分布式can记录仪互联方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211242515.3A CN115664574B (zh) | 2022-10-11 | 2022-10-11 | 一种基于车载以太网的分布式can记录仪互联方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115664574A CN115664574A (zh) | 2023-01-31 |
CN115664574B true CN115664574B (zh) | 2023-09-29 |
Family
ID=84987433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211242515.3A Active CN115664574B (zh) | 2022-10-11 | 2022-10-11 | 一种基于车载以太网的分布式can记录仪互联方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115664574B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108933719A (zh) * | 2018-06-21 | 2018-12-04 | 北京车和家信息技术有限公司 | 车载can网络管理方法、车载can网络、车辆 |
CN109412751A (zh) * | 2018-09-25 | 2019-03-01 | 上海赫千电子科技有限公司 | 车载通信***及通信方法 |
CN110299956A (zh) * | 2018-03-22 | 2019-10-01 | 上海擎感智能科技有限公司 | 一种用于在车载终端设备与外部设备之间通信的数据通信设备和数据通信方法 |
CN110350995A (zh) * | 2019-06-26 | 2019-10-18 | 惠州市德赛西威智能交通技术研究院有限公司 | 一种车载雷达间时间同步的方法 |
CN112367138A (zh) * | 2020-09-30 | 2021-02-12 | 芜湖酷哇机器人产业技术研究院有限公司 | 基于授时***的can总线设备同步方法及*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2506470B1 (en) * | 2011-03-29 | 2013-05-29 | Alcatel Lucent | Method, apparatus and system for time distribution in a telecommunications network |
-
2022
- 2022-10-11 CN CN202211242515.3A patent/CN115664574B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110299956A (zh) * | 2018-03-22 | 2019-10-01 | 上海擎感智能科技有限公司 | 一种用于在车载终端设备与外部设备之间通信的数据通信设备和数据通信方法 |
CN108933719A (zh) * | 2018-06-21 | 2018-12-04 | 北京车和家信息技术有限公司 | 车载can网络管理方法、车载can网络、车辆 |
CN109412751A (zh) * | 2018-09-25 | 2019-03-01 | 上海赫千电子科技有限公司 | 车载通信***及通信方法 |
CN110350995A (zh) * | 2019-06-26 | 2019-10-18 | 惠州市德赛西威智能交通技术研究院有限公司 | 一种车载雷达间时间同步的方法 |
CN112367138A (zh) * | 2020-09-30 | 2021-02-12 | 芜湖酷哇机器人产业技术研究院有限公司 | 基于授时***的can总线设备同步方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN115664574A (zh) | 2023-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11336470B2 (en) | Method and apparatus for transmitting and receiving wake-up signal in vehicle network | |
US8775681B2 (en) | Cross-network synchronization of application S/W execution using flexray global time | |
JP5605959B2 (ja) | プロトコル事象を記録するためのアドバンスド通信制御ユニットおよび方法 | |
JP5080448B2 (ja) | 2つのバスシステムを同期する方法および装置、並びに2つのバスシステムから成る構成 | |
US20200136993A1 (en) | Method and apparatus for allocating transmission opportunities in vehicle network | |
KR101172103B1 (ko) | 통신 시스템의 통신 링크를 통해 메시지에 데이터를전송하기 위한 전송 방법, 통신 모듈, 통신 시스템의서브스크라이버 및 상기 전송 방법을 구현하기 위한 통신시스템 | |
CN103580770B (zh) | 测量带有独立硅时钟的设备之间的时间偏差 | |
US20140348182A1 (en) | Time synchronization between nodes of a switched interconnect fabric | |
US20140348181A1 (en) | Time synchronization between nodes of a switched interconnect fabric | |
JP4903801B2 (ja) | FlexRay通信モジュールとFlexRay加入者装置とを繋ぐ加入者インタフェース、およびFlexRay通信モジュールとFlexRay加入者装置とを繋ぐ加入者インタフェースを経由するメッセージの伝送方法 | |
US20200136857A1 (en) | Method and apparatus for allocating priority transmission opportunities in vehicle network | |
CN101089838A (zh) | 一种实现i2c读写时序的方法 | |
CN111030909A (zh) | 一种应用于can总线多主设备通讯间时间同步的方法 | |
CN111708296A (zh) | 一种基于双通道安全plc的同步控制及数据表决方法 | |
CN102253910A (zh) | 一种i2c传输方法及其装置 | |
CN114866177A (zh) | 多核SoC芯片及其核间时间同步方法、***、汽车 | |
KR101704751B1 (ko) | 모듈 간의 타이밍 정보를 이용하는 멀티코어 시스템의 시뮬레이터, 및 그 시뮬레이션 방법 | |
CN115664574B (zh) | 一种基于车载以太网的分布式can记录仪互联方法及装置 | |
CN113422738B (zh) | 一种智能主机的mcu通信服务方法 | |
JP5372699B2 (ja) | 車載ネットワーク装置 | |
AU2002340733B2 (en) | Method and device for producing program interruptions in subscribers to a bus system, and corresponding bus system | |
CN103490995B (zh) | 报文发送方法和装置 | |
Seo et al. | Development of network gateway between CAN and FlexRay protocols for ECU embedded systems | |
CN214480655U (zh) | 一种兼容可定义确定性通信以太网的嵌入式设备 | |
JP4019840B2 (ja) | ネットワーク通信システム、およびこのネットワーク通信システムを用いた制御処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |